Kako sinkronizirati datoteke/direktorije koristeći Rsync s nestandardnim SSH priključkom


Danas ćemo raspravljati o tome kako sinkronizirati datoteke pomoću rsync s nestandardnim SSH portom. Možda se pitate zašto trebamo koristiti nestandardni SSH port? To je zbog sigurnosnih razloga. Svi znaju da je 22 SSH zadani port.

Dakle, obavezno je promijeniti svoj SSH zadani broj porta na nešto drugo što je vrlo teško pogoditi. U takvim slučajevima, kako ćete sinkronizirati svoje datoteke/mape sa svojim udaljenim poslužiteljem? Bez brige, nije tako teško. Ovdje ćemo vidjeti kako sinkronizirati datoteke i mape pomoću rsync s nestandardnim SSH portom.

Kao što možda znate, rsync, također poznat kao Remote Sync, brz je, svestran i moćan alat koji se može koristiti za kopiranje i sinkronizaciju datoteka/direktorija s lokalnog na lokalni ili lokalni za udaljena računala. Za više detalja o rsync-u, provjerite man stranice:

man rsync

Ili pogledajte naš prethodni vodič putem donje veze.

  1. Rsync: 10 praktičnih primjera naredbe Rsync u Linuxu

Promijenite SSH priključak u Nestandardni priključak

Kao što svi znamo, rsync prema zadanim postavkama koristi zadani SSH port 22 za sinkronizaciju datoteka preko lokalnih na udaljena računala i obrnuto. Trebali bismo promijeniti SSH port našeg udaljenog poslužitelja kako bismo pojačali sigurnost.

Da biste to učinili, otvorite i uredite datoteku konfiguracije SSH /etc/ssh/sshd_config:

vi /etc/ssh/sshd_config 

Pronađite sljedeći redak. Uklonite komentar i promijenite broj priključka po svom izboru. Preporučujem da odaberete bilo koji broj koji je vrlo teško pogoditi.

Provjerite koristite li jedinstveni broj koji ne koriste postojeće usluge. Provjerite ovaj netstat članak da biste saznali koji servisi rade na kojim TCP/UDP portovima.

Na primjer, ovdje koristim port broj 1431.

[...]
Port 1431
[...]

Spremite i zatvorite datoteku.

U sustavima koji se temelje na RPM-u kao što su RHEL, CentOS i Scientific Linux 7, morate dopustiti novi priključak kroz svoj vatrozid ili usmjerivač.

firewall-cmd --add-port 1431/tcp
firewall-cmd --add-port 1431/tcp --permanent

Na RHEL/CentOS/Scientific Linux 6 i novijim verzijama također biste trebali ažurirati selinux dozvole kako biste omogućili port.

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 kraju ponovno pokrenite SSH uslugu kako bi promjene stupile na snagu.

systemctl restart sshd        [On SystemD]
OR
service sshd restart          [On SysVinit]

Pogledajmo sada kako sinkronizirati datoteke pomoću rsync s nestandardnim priključkom.

Kako Rsync s nestandardnim SSH priključkom

Pokrenite sljedeću naredbu s terminala za sinkronizaciju datoteka/mapa koristeći Rsync s nestandardnim ssh priključkom.

Sintaksa:
rsync -arvz -e 'ssh -p <port-number>' --progress --delete user@remote-server:/path/to/remote/folder /path/to/local/folder

U svrhu ovog vodiča, koristit ću dva sustava.

Pojedinosti o daljinskom sustavu:

IP Address: 192.168.1.103
User name: tecmint
Sync folder: /backup1

Pojedinosti o lokalnom sustavu:

Operating System: Ubuntu 14.04 Desktop
IP Address: 192.168.1.100
Sync folder: /home/sk/backup2

Sinkronizirajmo sadržaj mape /backup1 udaljenog poslužitelja s mapom mog lokalnog sustava /home/sk/backup2/.

sudo rsync -arvz -e 'ssh -p 1431' --progress --delete [email :/backup1 /home/sk/backup2
Uzorak izlaza
[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.

Provjerimo sadržaj mape /backup1/ na udaljenom poslužitelju.

sudo ls -l /backup1/
Uzorak izlaza
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

Sada provjerimo sadržaj mape /backup2/ lokalnog sustava.

ls /home/sk/backup2/
Uzorak izlaza
backup1

Kao što vidite u gornjem izlazu, sadržaj /backup1/ uspješno je kopiran u /home/sk/backup2/ direktorij mog lokalnog sustava.

Provjerite sadržaj mape /backup1/:

ls /home/sk/backup2/backup1/
Uzorak izlaza
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

Vidite, mape udaljenog i lokalnog sustava imaju iste datoteke.

Zaključak

Sinkronizacija datoteka/mapa pomoću Rsync-a sa SSH nije samo laka, već i brza i sigurna metoda. Ako ste iza vatrozida koji ograničava priključak 22, bez brige. Samo promijenite zadani priključak i sinkronizirajte datoteke kao profesionalac.