Kako sinhronizirati datoteke/imenike z uporabo Rsync z nestandardnimi vrati SSH
Danes bomo razpravljali o tem, kako sinhronizirati datoteke z uporabo rsync z nestandardnimi vrati SSH. Morda se sprašujete, zakaj moramo uporabljati nestandardna vrata SSH? To je zaradi varnostnih razlogov. Vsi vedo, da je 22 privzeta vrata SSH.
Torej, obvezno morate spremeniti svojo privzeto številko vrat SSH na nekaj drugega, kar je zelo težko uganiti. Kako boste v takih primerih sinhronizirali datoteke/mape z oddaljenim strežnikom? Brez skrbi, ni tako težko. Tu bomo videli, kako sinhronizirati datoteke in mape z uporabo rsync z nestandardnimi vrati SSH.
Kot morda že veste, je rsync, znan tudi kot oddaljena sinhronizacija, hitro, vsestransko in zmogljivo orodje, s katerim lahko kopirate in sinhronizirate datoteke/imenike z lokalnega na lokalnega ali lokalnega z oddaljenimi gostitelji. Za več podrobnosti o rsync preverite strani z navodili:
# man rsync
Ali pa si oglejte naš prejšnji vodnik po spodnji povezavi.
- Rsync: 10 praktičnih primerov ukaza Rsync v Linuxu
Spremenite vrata SSH v nestandardna vrata
Kot vsi vemo, rsync privzeto uporablja privzeta vrata SSH 22 za sinhronizacijo datotek prek lokalnega z oddaljenimi gostitelji in obratno. Za poostritev varnosti bi morali spremeniti vrata SSH oddaljenega strežnika.
Če želite to narediti, odprite in uredite konfiguracijsko datoteko SSH/etc/ssh/sshd_config:
# vi /etc/ssh/sshd_config
Poiščite naslednjo vrstico. Odznačite in spremenite številko vrat po vaši izbiri. Priporočam vam, da izberete katero koli številko, ki jo je zelo težko uganiti.
Prepričajte se, da uporabljate enolično številko, ki je ne uporabljajo obstoječe storitve. Preverite ta članek o netstatu, če želite vedeti, katere storitve se izvajajo na katerih vratih TCP/UDP.
Tu na primer uporabljam številko vrat 1431.
[...] Port 1431 [...]
Shranite in zaprite datoteko.
V sistemih, ki temeljijo na RPM, kot so RHEL, CentOS in Scientific Linux 7, morate omogočiti nova vrata skozi požarni zid ali usmerjevalnik.
# firewall-cmd --add-port 1431/tcp # firewall-cmd --add-port 1431/tcp --permanent
Na RHEL/CentOS/Scientific Linux 6 in novejših posodobite tudi dovoljenja za selinux, da omogočite vrata.
# 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
Na koncu ponovno zaženite storitev SSH, da začne veljati spremembe.
# systemctl restart sshd [On SystemD] OR # service sshd restart [On SysVinit]
Zdaj pa poglejmo, kako sinhronizirati datoteke z uporabo rsync z nestandardnimi vrati.
Kako sinhronizirati z nestandardnimi vrati SSH
Iz terminala zaženite naslednji ukaz za sinhronizacijo datotek/map z uporabo Rsync z nestandardnimi vrati ssh.
# rsync -arvz -e 'ssh -p <port-number>' --progress --delete [email :/path/to/remote/folder /path/to/local/folder
Za namen te vadnice bom uporabil dva sistema.
IP Address: 192.168.1.103 User name: tecmint Sync folder: /backup1
Operating System: Ubuntu 14.04 Desktop IP Address: 192.168.1.100 Sync folder: /home/sk/backup2
Sinhronizirajmo vsebino mape /backup1
oddaljenega strežnika z mapo mojega lokalnega sistema /home/sk/backup2/
.
$ sudo rsync -arvz -e 'ssh -p 1431' --progress --delete [email :/backup1 /home/sk/backup2
[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.
Preverimo vsebino mape /backup1/
na oddaljenem strežniku.
$ sudo ls -l /backup1/
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
Zdaj pa preverimo vsebino mape /backup2/
lokalnega sistema.
$ ls /home/sk/backup2/
backup1
Kot vidite v zgornjem izhodu, je bila vsebina /backup1/
uspešno kopirana v imenik /home/sk/backup2/
mojega lokalnega sistema.
Preverite vsebino mape /backup1/
:
$ ls /home/sk/backup2/backup1/
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
Glejte, mape oddaljenega in lokalnega sistema imajo enake datoteke.
Zaključek
Sinhronizacija datotek/map z uporabo Rsync s SSH ni le enostavna, temveč tudi hitra in varna metoda. Če ste za požarnim zidom, ki omejuje vrata 22, brez skrbi. Samo spremenite privzeta vrata in sinhronizirajte datoteke kot profesionalec.