Ilustrace Rsync od Walkera Cahalla
Úvod
Tento tutoriál vás provede nastavením démona rsync na vašem linuxovém serveru. Možná budete chtít démona rsync, pokud máte soubory, které chcete mít k dispozici, aby si kdokoli (nebo jen vy sami) mohl stáhnout existující soubory nebo nahrát nové soubory. Tato příručka zkontroluje spuštění rsync jako vlastního démona a jeho spuštění přes xinetd.
Předpoklady
– Linuxový server s nainstalovaným rsync – pokud ještě nemáte server, proč nezprovoznit robustní a spolehlivý VPS server do 30 sekund.
– (Volitelné) Nainstalovaný Xinetd.
– Odpovídající oprávnění ke čtení a/nebo zápisu na démonu rsync (tento tutoriál ukáže příkazy spuštěné jako uživatel root).
Nastavení démona Rsync
Nejprve pomocí preferovaného textového editoru budete muset vytvořit konfigurační soubor /etc/rsyncd.conf
, pokud jej ještě nemáte. Níže je uveden příklad našich základních konfiguračních parametrů a vysvětlení každého z nich.
pid file = /var/run/rsyncd.pid lock file = /var/run/rsync.lock log file = /var/log/rsync.log port = 12000 [files] path = /home/public_rsync comment = RSYNC FILES read only = true timeout = 300
pid file
:Soubor ID procesu, který démon používá.
lock file
:Soubor zámku démona.
log file
:Umístění souboru protokolu.
port
:Pokud nechcete, aby démon rsync běžel na svém výchozím portu (873), můžete zde zadat nový port. Ujistěte se, že je tento port ve vaší bráně firewall otevřený. Rsync používá pro své přenosy protokol TCP.
[files]
:Toto je název modulu. Zde použitý název je to, co vložíte do příkazu rsync pull jako první část zdroje (/files/../..). Můžete si to pojmenovat, jak chcete, a můžete jich mít tolik, kolik chcete.
path
:Cesta k souborům přidruženým k tomuto modulu.
comment
:Popisný komentář k tomuto modulu.
read only
:Toto říká démonovi, že adresář pro tento modul je pouze pro čtení. Nelze do něj nahrávat. Pouze pro nahrávání použijte upload only =true.
timeout
:Čas v sekundách, po který bude démon rsync čekat, než ukončí mrtvé spojení.
Toto je pouze základní konfigurace. Podrobnější seznam možností naleznete na stránce manuálu.
Spuštění Rsync jako démona
Nyní s touto základní konfigurací můžeme spustit samotného démona spuštěním níže:
rsync --daemon
Můžete ověřit, že démon běží pomocí:
ps x | grep rsync
Pokud máte ve výstupu něco divného, jako je prohlášení s uvedením unconfined, možná máte SELinux blokování démona. Budete muset pracovat na přidání rsync, aby byl přijat SELinuxem, abyste mohli spustit démona.
.
Nyní, když je spuštěn démon rsync, je připraven přijímat připojení. Pokud si nejste jisti, jak se připojit z klienta rsync, přečtěte si našeho průvodce připojením k rsync.
Chcete-li démona zastavit, můžete spustit kill
příkaz.
kill `cat /var/run/rsyncd.pid`
.
Spuštění Rsync přes Xinetd
Pokud již ke správě služeb používáte xinetd, můžete přidat také ovládání démona rsync. I když xinetd poskytuje větší centrální kontrolu nad běžícími procesy, uvědomte si, že to nutně neznamená vyšší bezpečnost.
Nejprve upravte soubor xinet.d pro rsync, pokud již existuje (pokud ne, můžete jej vytvořit a použít příklad konfigurace níže). Změňte hodnotu disabled
řádek na no
. Budete také chtít přidat port
řádek s výchozím (873) nebo vaším vlastním portem.
Poznámka:Pokud používáte vlastní port, budete také muset upravit port rsync v souboru služby (
/etc/services
) na váš vlastní port.
.
Pomocí preferovaného textového editoru vytvořte nebo upravte /etc/xinetd.d/rsync
jak je uvedeno níže:
# default: off # description: The rsync server is a good addition to an ftp server, as it \ # allows crc checksumming etc. service rsync { disable = no flags = IPv6 socket_type = stream port = 12000 wait = no user = root server = /usr/bin/rsync server_args = --daemon log_on_failure += USERID }
Nyní stačí restartovat xinetd a démon rsync by se měl spustit.
/etc/init.d/xinetd restart
.
Testování adresářů Rysnc
Chcete-li otestovat své připojení k démonu rsync a zjistit, které cesty máte k dispozici, jednoduše se připojte ze svého klienta k hostiteli rsync pomocí následující metody. Tato metoda spustí pouze část příkazu pull, ale odhalí vám cesty.
rsync -rdt rsync://IPADDR:RsyncPort/
Najít cestu k souboru
Tento příkaz ukáže, které adresáře máte otevřené. Pokud neznáte název souboru, můžete proces opakovat (přidávat do cesty k souboru), dokud nenajdete zamýšlené soubory.
rsync -rdt rsync://IPADDR:RsyncPort/DirectoryName
Bylo zjištěno více cest k souborům
A jakmile soubor najdete, můžete dokončit příkaz a stáhnout jej.
rsync -rdt rsync://IPADDR:RsyncPort/DirectoryName/File /DestinationDirectory/
Byla nalezena úplná cesta
Přidání uživatelských jmen a hesel do démona Rsync
Můžete zvýšit zabezpečení svého démona rsync přidáním požadavku na uživatelské jméno a heslo do jeho konfiguračního souboru. Otevřete /etc/rsyncd.conf
pomocí vašeho preferovaného textového editoru a zadejte tyto parametry pod modulem.
[files] path = /home/public_rsync comment = RSYNC FILES read only = true timeout = 300 auth users = rsync1,rsync2 secrets file = /etc/rsyncd.secrets
auth users
:Seznam uživatelů oddělených čárkami. Nemusí nutně existovat v systému, ale musí existovat v tajném souboru.
secrets file
:Cesta k vašemu tajnému souboru, který obsahuje seznam uživatelských jmen a hesel.
Poté znovu pomocí preferovaného textového editoru otevřete nebo vytvořte svůj /etc/rsyncd.secrets
soubor. Použijte následující formát username:password
.
rsync1:9$AZv2%5D29S740k rsync2:Xyb#vbfUQR0og0$6 rsync3:VU&A1We5DEa8M6^8
Jakmile tento soubor uložíte, zabezpečte jej, aby jej mohl číst nebo upravovat pouze uživatel root.
chmod 600 /etc/rsyncd.secrets
Všimněte si, že jsme přidali uživatele rsync3, kterého jsme nezadali v parametru auth users v /etc/rsyncd.conf
. Níže uvidíte proč.
Nyní, když se připojujete k tomuto démonu rsync, musíte si být jisti, že používáte správné uživatelské jméno.
Platný uživatel rsync
Pokud se pokusíte připojit k uživateli, který není povolen v auth users, zobrazí se níže uvedená chyba.
Neplatný uživatel rsync
Pamatujte, že autorizovaní uživatelé se musí objevit jak v /etc/rsyncd.conf
a /etc/rsyncd.secrets
files.
.
A to je vše pro základy démona rsync. Nyní byste měli být schopni vytvořit základního démona rsync a mít určené adresáře pro nahrávání, stahování nebo obojí! Vraťte se sem, abyste získali další aktualizace a zvažovali vedoucí server Linux VPS hostující na trhu od Atlantic.Net.
Zjistěte více o našich hostingových službách VPS a virtuálních privátních serverech.