Table of Contents
Cómo sincronizar archivos/directorios usando Rsync con un puerto SSH no estándar
Hoy, discutiremos sobre cómo sincronizar archivos usando rsync con un puerto SSH no estándar. Quizás se pregunte por qué necesitamos usar un puerto SSH no estándar. Es por razones de seguridad. Todo el mundo sabe que 22. es el puerto SSH predeterminado.
Archivos Rsync sobre puerto no estándar SSH
Por lo tanto, es obligatorio cambiar el número de puerto predeterminado SSH a algo diferente, lo cual es muy difícil de adivinar. En tales casos, ¿cómo sincronizará sus archivos/carpetas con su servidor remoto? No te preocupes, no es tan difícil. Aquí veremos cómo sincronizar archivos y carpetas usando rsync con un puerto SSH no estándar.
Como sabrá, rsync. también conocido como Remote Sync. es una herramienta rápida, versátil y poderosa que se puede usar para copiar y sincronizar archivos/directorios de local a local, o de local a hosts remotos. Para obtener más detalles sobre rsync, consulte las páginas de manual:
# man rsync
O consulte nuestra guía anterior desde el enlace a continuación.
- Rsync: 10 ejemplos prácticos del comando Rsync en Linux
Cambie el puerto SSH a puerto no estándar
Como todos sabemos, de forma predeterminada, rsync usa el puerto SSH predeterminado 22. para sincronizar archivos a través de locales a hosts remotos y viceversa. Debemos cambiar el puerto SSH de nuestro servidor remoto para reforzar la seguridad.
freestar.config.enabled_slots.push
Para hacer esto, abra y edite el archivo /etc/ssh/sshd_config. de configuración SSH:
# vi/etc/ssh/sshd_config
Busque la siguiente línea. Elimine el comentario y cambie el número de puerto de su elección. Te recomiendo que elijas cualquier número que sea muy difícil de adivinar.
Asegúrate de estar usando un número único que no sea utilizado por los servicios existentes. Consulte este artículo de netstat para saber qué servicios se están ejecutando en qué puertos TCP/UDP.
Por ejemplo, aquí utilizo el número de puerto 1431.
[…] Puerto 1431 […]
Guarde y cierre el archivo.
En sistemas basados en RPM como RHEL. CentOS. y Scientific Linux 7. debe permitir el nuevo puerto a través de su firewall o enrutador.
# firewall-cmd–add-port 1431/tcp # firewall-cmd–add-port 1431/tcp–permanent
Activado RHEL/CentOS/Scientific Linux 6 y superior, también debe actualizar los permisos de selinux. para permitir el puerto.
# iptables-A RH-Firewall-1-INPUT-m state–state NUEVO-m tcp-p tcp–dport 1431-j ACCEPT # semanage port-a-t ssh_port_t-p tcp 1431
Finalmente, reinicie el servicio SSH para que se apliquen los cambios.
# systemctl restart sshd [On SystemD. O # service sshd restart [En SysVinit.
Ahora veamos cómo sincronizar archivos usando rsync con non-stand puerto ard.
Cómo sincronizar con Rsync con un puerto SSH no estándar
Ejecute el siguiente comando desde el terminal para sincronizar archivos/carpetas usando Rsync con un puerto ssh no estándar.
Sintaxis: # rsync-arvz-e ‘ssh-p
Para el propósito de este tutorial, usaré dos sistemas.
Detalles del sistema remoto: Dirección IP: 192.168.1.103 Nombre de usuario: tecmint Carpeta de sincronización:/backup1 Detalles del sistema local: Sistema operativo: Ubuntu 14.04 Dirección IP de escritorio: 192.168.1.100 Carpeta de sincronización:/home/sk/backup2
Sincronicemos el contenido de la carpeta/backup1 del servidor remoto con la carpeta de mi sistema local/home/sk/backup2/.
$ sudo rsync-arvz-e ‘ssh-p 1431’–progress–delete [email protected]:/backup1/home/sk/backup2 Salida de muestra Contraseña de [email protected]: recibiendo lista de archivos incremental backup1/backup1/linux-headers-4.3.0-040300-generic_4.3.0-040300.20151 1020949_amd64.deb 752,876 100% 13.30MB/s 0:00:00 (xfr # 1, to-chk = 2/4) backup1/linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb 9,676,510 100% 12.50 MB/s 0:00:00 (xfr # 2, to-chk = 1/4) backup1/linux-image-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb 56,563,302 100% 11.26MB/s 0: 00:04 (xfr # 3, to-chk = 0/4) enviado 85 bytes recibido 66,979,455 bytes 7,050,477.89 bytes/seg el tamaño total es 66,992,688 speedup es 1.00.
Revisemos el contenido de la carpeta/backup1/en el servidor remoto.
$ sudo ls-l/backup1/Total de salida de muestra 65428-rw-r-r–1 raíz raíz 9676510 9 de diciembre 13:44 linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb-rw-r-r–1 raíz raíz 752876 9 de diciembre 13:44 linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb-rw-r-r–1 raíz raíz 56563302 diciembre 9 13:44 linux-image-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb
Ahora, verifiquemos el contenido de la carpeta/backup2/del sistema local.
$ ls/home/sk/backup2/Salida de muestra backup1
Como puede ver en el resultado anterior, el contenido de/backup1/se ha copiado con éxito en el directorio/home/sk/backup2/de mi sistema local.
Verificar/backup1/contenido de la carpeta:
$ ls/home/sk/backup2/backup1/Salida de muestra linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb linux-image-4.3.0-040300-generic_4. 3.0-040300.201511020949_amd64.deb linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb
Ver, tanto remoto como local Las carpetas del sistema tienen los mismos archivos.
Conclusión
Sincronizar archivos/carpetas usando Rsync con SSH no solo es un método fácil, sino también rápido y seguro. Si está detrás de un firewall que restringe el puerto 22, no se preocupe. Simplemente cambie el puerto predeterminado y sincronice archivos como un profesional.