Rsync je jedním z nejdůležitějších nástrojů pro správu serverů. Tento nástroj, který byl původně vytvořen Andrewem Tridgellem a Paulem Mackerrasem a nyní je udržován Wayneem Davisem, je základním kamenem mnoha systémů pro zálohování a synchronizaci dat.
Co je to rsync?
Rsync, což je zkratka pro „remote synchronization“, je nástroj pro unixové systémy, který umožňuje rychlou a efektivní synchronizaci souborů a adresářů mezi dvěma místy na stejném nebo různých počítačích.
Rsync je založen na algoritmu, který hledá rozdíly mezi zdrojovými a cílovými soubory a přenáší pouze tyto rozdíly, místo aby přenášel celé soubory. Tento proces se nazývá „delta přenos“. Delta přenos šetří čas a šířku pásma, což je zvláště důležité při práci se velkými soubory nebo při synchronizaci dat přes pomalé síťové spojení.
Bezpečnostní úskalí rsync
Rsync je mocný nástroj, ale jako každý nástroj má i svá úskalí. Jedním z největších bezpečnostních rizik při používání rsync je jeho „daemon“ režim. Rsync démon je proces, který běží na pozadí a umožňuje jiným systémům připojit se a synchronizovat soubory. Tento režim představuje velké bezpečnostní riziko.
Rsync v režimu démona (rsyncd) nepoužívá šifrování při přenosu dat, což znamená, že všechna data, včetně přihlašovacích údajů, se přenášejí v čitelné podobě. To znamená, že pokud by útočník měl přístup k síti a byl by schopen odposlouchávat komunikaci, mohl by teoreticky odposlechnout a dešifrovat data, včetně hesel. Proto je důležité, aby byl rsync daemon vždy vypnutý a zamaskován. Pokud používáte rsync démona, měli byste zvážit jeho nahrazení za rsync přes ssh, což je dnes standardní typ užívání.
Vypnutí a zakázání rsync daemona:
Systémy založené na Ubuntu/Debianu
systemctl stop rsync
systemctl disable rsync
systemctl mask rsync
Systémy založené na Red Hat Enterprise Linuxu:
systemctl stop rsyncd
systemctl disable rsyncd
systemctl mask rsyncd
Přenos souborů skrze rsync daemona může být vyvolán omylem
Transport přes vzdálený shell se používá vždy, když cesta ke zdroji nebo cíli obsahuje jednu dvojtečku (:) jako oddělovač za specifikací hostitele. Přímý kontakt s rsync démonem nastává, když cesta ke zdroji nebo cíli obsahuje dvojitou dvojtečku (::) jako oddělovač za specifikací hostitele, NEBO když je specifikována rsync url (obsahující rsync://).
Vyvarujte se tedy používání rsync url a dvou dvojteček. Užitečné by mohlo být zakázat v síti i výchozí port protokolu rsync. Jedná se o port 873. Rsync podporuje i přenos přes protokol RSH a ten je rovněž nezabezpečený. Můžete zakázat i jeho port 514.
Na systémech založených na Red Hat Enterprise Linux 8 a vyšších je rsync daemon součást balíčku rsync-daemon, na Red Hat Enrerprise Linux 7 je přímou součástí balíčku rsync. Zamaskovat rsyncd je možné, i když nemáte rsync-daemon nainstalovaný. Balík rsync-daemon na Red Hat Enterprise Linuxech 8 a vyšších neinstalujte.
Jak používat Rsync?
Řekli jsme si, jak rsync nepoužívat a teď se podíváme na pár příkladů použití. Rsync je velmi flexibilní a nabízí mnoho možností, které můžete přizpůsobit svým potřebám. Zde je několik základních příkladů použití rsync:
- Základní synchronizace souborů: Nejjednodušší způsob, jak použít rsync, je synchronizovat dva adresáře na stejném systému. To můžete udělat pomocí následujícího příkazu:
rsync -av /cesta/do/zdrojoveho/adresare/ /cesta/do/ciloveho/adresare
- Synchronizace souborů mezi dvěma systémy: Rsync může také synchronizovat soubory mezi dvěma různými systémy. To můžete udělat pomocí následujícího příkazu:
rsync -av /cesta/do/zdrojoveho/adresare/ uzivatel@vzdalenyhost:/cesta/do/ciloveho/adresare
Code language: JavaScript (javascript)
Rsync můžete používat spolu s SSH klíči, a když z nějakého důvodu nepoužíváte SSH klíče, můžete použít v kombinaci s sshpass.
sshpass -f /cesta/soubor_s_heslem rsync -avrhp /cesta/do/zdrojoveho/adresare/ uzivatel@vzdalenyhost:/cesta/do/ciloveho/adresare
Code language: JavaScript (javascript)
Rsync můžete použít i při synchronizaci skrze reverzní ssh tunel, na příkladu níže je reverzní tunel dostupný na localhostu jako port 2223:
rsync -avhrp -e 'ssh -p 2223' vzdaleny_uzivatel@localhost:/cesta/do/zdrojoveho/adresare/ /cesta/do/ciloveho/adresare
Code language: JavaScript (javascript)
Kdo jsem:
IT nadšenec žijící v Kladně, system engineer, sysadmin, správce informačních systémů.
Proč jsem si založil tento web: někdo si píše deníček, někdo hraje hry, mne linux a svobodný software nepouští ani ve volném čase. Takže sem občas hodím nějakou svojí poznámku, která někomu možná pomůže.
Navíc, kdyby někdo potřeboval pomoc, tak mne může díky webu najít.
S čím vám mohu pomoci:
Počítač: Rád Vám pomohu s omlazením vašeho počítače (desktopu, notebooku) nebo sestavím nový.
Server: Chcete mít vlastní webový server, NAS (síťové úložiště), VPN server nebo CLOUD? Provozovat e-shop? I v tom vám mohu pomoci.
Domácí síť: Potřebujete vyřešit domácí síť, nejste spokojeni s rychlostí a kvalitou WiFi? Potřebujete připojit zařízení k VPN?
Počítač pro home office: Potřebujete nutně počítač pro home office, ale nechcete platit moc?
Počítač pro online výuku: Jste učitel nebo žák/student, či máte doma někoho, kdo je? Nemáte na čem pracovat? Pomohu vám to vyřešit.
Mám rád počítače a moderní technologie, Linux, zejména distribuce Ubuntu a Debian, CentOS a Rhel mi také nejsou cizí. Ve své práci se starám o více než 6000 linuxových serverů (Ubuntu, Red Hat Enterprise Linux, CentOS).
V minulosti jsem kromě správy linuxových serverů získal zkušenosti i se správou Windows Serverů a instalací a konfigurací linuxových a windowsových terminálů (například na docházku, nebo pro jídelny).
Jiří Meitner
IČ: 73763004
Fyzická osoba zapsaná v živnostenském rejstříku
podpora@ITisLove.cz
WhatsApp
Karla Tomana 830
Kladno
Středočeský kraj
272 04
Česko
Systémový inženýr, Linux administáror, správce informačních systémů, admin, IT specialista, IT help
Napsat komentář