Dnes si ukážeme, jak pomocí Rsync a ssh certifikátu poslat z Ubuntu serveru data do synology. O generování ssh klíčů pro přihlášení mezi servery i zálohvání pomocí Rsync jsem zde již psal, nicméně zprovoznit vše u synology trochu obtížnější.
Pozor
U synology mohou přistupovat k SSH pouze uživatelé s právy administrátorů. Proto je na místě, abyste na to mysleli a buď zálohování rozjeli lokálně kde nehrozí napadení SSH účtu, nebo pro komunikaci povolili jen nezbytné IP adresy. Mějte na paměti, že tímto způsobem můžete vystavit Váš NAS plný vašich dat útoku z internetu.
Nejprve je nutné povolit SSH v ovládacích panelech
položka Terminál a SNMP.
Jako další je nutné povolit službu Rsync v ovládacích panelech položka Souborové systémy.
Jakmile máme povolené SSH je nutné upravit nastavení služby, aby umožnovala přihlášení certifikátem. Editujte tedy na Synology soubor /etc/ssh/sshd_config
#RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
A teď nastává problém se kterým jsem se setkal, když jsem nastavoval mé zálohování. Jde totiž o to jakým uživatelským účtem budete provádět zálohu. Ten v případě mého Ubuntu rsync fungoval pouze pod uživatelem root, jak na straně zálohovacího serveru tak Synology. Pokud jsem použil rozdílné uživatele rsync vždy skončil chybou odmítnutí přístupu při pokusu zapsat data. Jediné funkční řešení tedy bylo zálohovací skript pouštět jako root a ss přihlášení použít jako root@ip_synology. Proto v návodu píši SSH klíč dostat do složky /root/.ssh
Poznámka
Účet Root je v synology standartně nefunkční a pomocí ssh se k němu normálně nelze přihlásit pomocí zadáním helsa nicméně pokud povolíte ověření certifikátem pak se do synology přes ssh jako root přihlásite.
Přihlaste se k SSH Synology pomocí účtu s právy administrátora. Poté pomocí příkazu sudo -i získáte práva root. Vytvořte adresář .ssh pro uživatele Root a vytvořte v něm soubor authorized_keys
cd /root
mkdir .ssh
touch .ssh/authorized_keys
do souboru authorized_key uložte obsah souboru root/.ssh/id_rsa.pub ze zálohovaného ubuntu a funkčnost můžete ověřit příkazem
ssh root@ip_synology
pokud i nadále bude terminál vyžadovat vložení hesla proveďte následující příkazy v terminálu Synlology samozřejmě pod root účtem.
homedir=$(eval echo ~$USER);
sudo chown $USER:users $homedir -R;
chmod 700 $homedir;
chmod 700 $homedir/.ssh/;
chmod 600 $homedir/.ssh/authorized_keys;
Skript opraví práva k souboru authorized_keys pod jakýmkoliv uživatelem v našem případě tedy pod root. Jakmile příkazy necháte aplikovat již byste se k synology měli pomocí SSH přihlásit bez hesla. Nyní už stačí jen spustit zálohovací skript a zálohování je funkční. Například tento.
rsync -ave ssh --progress --delete --exclude="archiv_kam" /var/www/ root@ip_synology:/volume1/backup-www/ijacek007.cz/`date +%a`/ > /var/www/zalohovani-new.log
Mohlo by Vás zajímat
Vložit komentář
* - vyžadované údaje. RSS kanál s komentáři