Fájlok/könyvtárak szinkronizálása Rsync használatával nem szabványos SSH-porttal
Ma arról fogunk beszélni, hogyan szinkronizálhatunk fájlokat rsync használatával nem szabványos SSH-porttal. Kíváncsi lehet, miért kell nem szabványos SSH-portot használnunk? Ez biztonsági okok miatt van. Mindenki tudja, hogy a 22 az alapértelmezett SSH-port.
Tehát kötelező megváltoztatni az alapértelmezett SSH portszámot valami másra, amit nagyon nehéz kitalálni. Ilyen esetekben hogyan szinkronizálja fájljait/mappáit a távoli szerverrel? Ne aggódj, ez nem olyan nehéz. Itt látni fogjuk, hogyan szinkronizálhatunk fájlokat és mappákat az rsync használatával nem szabványos SSH-porttal.
Mint azt bizonyára tudja, az rsync, más néven Távoli szinkronizálás, egy gyors, sokoldalú és hatékony eszköz, amellyel fájlok/könyvtárak másolhatók és szinkronizálhatók helyiről helyi, vagy helyi távoli gazdagépekhez. Az rsync-ről további részletekért tekintse meg a man oldalakat:
man rsync
Vagy tekintse meg korábbi útmutatónkat az alábbi linkről.
- Rsync: 10 gyakorlati példa az Rsync parancsra Linuxban
Módosítsa az SSH portot nem szabványos portra
Mint mindannyian tudjuk, az rsync alapértelmezés szerint a 22-es SSH-portot használja a fájlok helyi és távoli gazdagépek közötti szinkronizálásához, és fordítva. A biztonság szigorítása érdekében módosítanunk kell távoli szerverünk SSH-portját.
Ehhez nyissa meg és szerkessze az SSH konfigurációs /etc/ssh/sshd_config fájlt:
vi /etc/ssh/sshd_config
Keresse meg a következő sort. Törölje a megjegyzéseket, és módosítsa a választott portszámot. Azt javaslom, hogy válasszon bármilyen számot, amelyet nagyon nehéz kitalálni.
Győződjön meg arról, hogy egyedi számot használ, amelyet a meglévő szolgáltatások nem használnak. Tekintse meg ezt a netstat cikket, hogy megtudja, mely szolgáltatások futnak melyik TCP/UDP-portokon.
Például itt az 1431-es portot használom.
[...]
Port 1431
[...]
Mentse és zárja be a fájlt.
Az olyan RPM-alapú rendszerekben, mint az RHEL, a CentOS és a Scientific Linux 7, engedélyeznie kell az új portot a tűzfalon vagy az útválasztón keresztül.
firewall-cmd --add-port 1431/tcp
firewall-cmd --add-port 1431/tcp --permanent
RHEL/CentOS/Scientific Linux 6 és újabb verziók esetén frissítenie kell a selinux engedélyeket is a port engedélyezéséhez.
iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1431 -j ACCEPT
semanage port -a -t ssh_port_t -p tcp 1431
Végül indítsa újra az SSH szolgáltatást a változtatások érvénybe léptetéséhez.
systemctl restart sshd [On SystemD]
OR
service sshd restart [On SysVinit]
Most nézzük meg, hogyan szinkronizálhatunk fájlokat az rsync használatával nem szabványos porttal.
Rsync nem szabványos SSH-porttal
Futtassa a következő parancsot a terminálról a fájlok/mappák szinkronizálásához az Rsync használatával nem szabványos ssh-porttal.
Szintaxis:
rsync -arvz -e 'ssh -p <port-number>' --progress --delete user@remote-server:/path/to/remote/folder /path/to/local/folder
Ebben az oktatóanyagban két rendszert fogok használni.
Távoli rendszer részletei:
IP Address: 192.168.1.103
User name: tecmint
Sync folder: /backup1
Helyi rendszer részletei:
Operating System: Ubuntu 14.04 Desktop
IP Address: 192.168.1.100
Sync folder: /home/sk/backup2
Szinkronizáljuk a távoli szerver /backup1
mappájának tartalmát a helyi rendszerem /home/sk/backup2/
mappájával.
sudo rsync -arvz -e 'ssh -p 1431' --progress --delete [email :/backup1 /home/sk/backup2
Minta kimenet
[email 's password:
receiving incremental file list
backup1/
backup1/linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_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.50MB/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)
sent 85 bytes received 66,979,455 bytes 7,050,477.89 bytes/sec
total size is 66,992,688 speedup is 1.00.
Ellenőrizzük a /backup1/
mappa tartalmát a távoli szerveren.
sudo ls -l /backup1/
Minta kimenet
total 65428
-rw-r--r-- 1 root root 9676510 Dec 9 13:44 linux-headers-4.3.0-040300_4.3.0-040300.201511020949_all.deb
-rw-r--r-- 1 root root 752876 Dec 9 13:44 linux-headers-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb
-rw-r--r-- 1 root root 56563302 Dec 9 13:44 linux-image-4.3.0-040300-generic_4.3.0-040300.201511020949_amd64.deb
Most nézzük meg a helyi rendszer /backup2/
mappájának tartalmát.
ls /home/sk/backup2/
Minta kimenet
backup1
Amint a fenti kimeneten látható, a /backup1/
tartalma sikeresen átmásolásra került a helyi rendszerem /home/sk/backup2/
könyvtárába.
Ellenőrizze a /backup1/
mappa tartalmát:
ls /home/sk/backup2/backup1/
Minta kimenet
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
Lásd, mind a távoli, mind a helyi rendszer mappáiban ugyanazok a fájlok vannak.
Következtetés
A fájlok/mappák szinkronizálása az Rsync használatával SSH-val nem csak egyszerű, hanem gyors és biztonságos módszer is. Ha a 22-es portot korlátozó tűzfal mögött áll, ne aggódjon. Csak módosítsa az alapértelmezett portot, és szinkronizálja a fájlokat, mint egy profi.