Cómo usar RSYNC con un puerto no estándar

Cómo usar RSYNC con un puerto no estándar
RSYNC es una utilidad valiosa para transferir archivos entre servidores. RSYNC se usa para copiar archivos localmente, desde un demonio RSYNC remoto a otro host/en otro shell remoto. Usamos ampliamente RSYNC para hacer una copia de seguridad de los datos. Sobre SSH, RSYNC se comunica con el host remoto utilizando el puerto predeterminado 22.

La mayoría de los usuarios del sistema de Linux han cambiado el puerto SSH predeterminado a algunos puertos no estándar para la seguridad‌. En esta condición, debe especificar un puerto SSH en un puerto no estándar para conectar el comando RSYNC. Este artículo verá cómo copiar datos utilizando RSYNC con puertos no estándar. Comencemos cambiando el puerto SSH a un puerto no estándar.

Cómo cambiar el puerto SSH a puerto no estándar

Necesitamos cambiar el puerto SSH de nuestro servidor remoto para ajustar la seguridad. Como ya sabemos, RSYNC utiliza el puerto SSH predeterminado 22 para sincronizar archivos de remoto a localhost y viceversa.

Para cambiar el puerto SSH a un puerto no estándar, abra y edite el archivo de configuración SSH/etc/ssh/sshd_config:

vi/etc/ssh/sshd_config

Encuentre las siguientes líneas y cambie el número de puerto según usted sin cometerlo. Cualquier número que elija puede ser difícil para otros elegir.

Necesitamos permitir el nuevo puerto a través de nuestro enrutador y firewall en sistemas basados ​​en RPM como Scientific Linux 7, CentOS y Rhel.

Firewall-CMD-Add-Port 1431/TCP
firewall-cmd --add-puerto 1431/tcp --permanent

Para permitir el puerto, los permisos de Selinux deben actualizarse.

-Un estado rh -firewall -1 -input -m - -state new -m tcp -p tcp --dport 2345 -j aceptar
Puerto de semanage -a -t ssh_port_t -p tcp the 2345.

Reinicie el servicio SSH para entrar en vigencia.

servicio SSHD reiniciar [en Sysvinit]

O

SystemCTL reiniciar SSHD [en el sistema]

Cómo usar RSYNC con un puerto no estándar

Puede especificar SSH para usar la comunicación RSYNC entre los hosts remotos y locales. Usando SSH a través de un puerto no estándar, su host remoto funciona (2232) utilizando sintaxis RSYNC nativa.

RSYNC [Opciones] SRC [Dest]

El comando RSYNC enumera solo los archivos en la fuente de forma predeterminada, sin destino proporcionado.

rsync /usr /

Ahora, con la ayuda del comando a continuación, podemos copiar localmente.

RSYNC -AV File1 DIR1/

'File1' se copia en 'Dir1' con el comando anterior. Además, aquí la opción -v se usa solo para la salida.

RSYNC SSH a un puerto específico

Podemos conectarnos a una máquina que ejecuta SSH en un puerto específico utilizando RSYNC con la ayuda del siguiente comando.

rsync --rsh = 'ssh -p2345' user@host:/path/to/destination/directorio

Cambiar e incommentar el número de puerto. Aquí, estamos cambiando el puerto número 22 a 2345.

Usando la opción -p, especifique el puerto en el que se ejecuta SSH, como se especifica anteriormente. Usando RSYNC+SSH, copia el archivo.

El comando RSYNC presiona un archivo local con un puerto SSH personalizado 22. Aquí, el puerto SSH local no importa.

Conclusión

Para trabajar con otro host, RSYNC tiene que usar un puerto no estándar desde una perspectiva de seguridad para copiar archivos y datos de copia de seguridad a través del puerto SSH predeterminado. En este artículo, hemos visto cómo se usa RSYNC con puertos no estándar. No dude en contactarnos con cualquier pregunta, problema o dudas sobre la información anterior.