SSH Terminál

terminal

Synology DSM je v základu linuxová distribuce, která je od kořene optimalizovaná a upravená pro Synology NAS. Je třeba si uvědomit, že DSM běží na stroji, kterému chybí spousta periferií co má běžný PC tedy jako grafickou kartu, klávesnici, myš, zvukovou kartu, monitor a další. Celý OS je nastaven a přizpůsoben tak, aby se ovládal dálkově pomocí počítačové sítě (LAN). Přes síť se můžeme přihlásit buď přes grafické rozhraní DSM (nejběžnější), SSH Terminál a nakonec Telnet.

Prosím neplést si připojení přes FTP, WebDAV, Samba, NFS a podobně, protože to jsou „pouze“ souborové služby. Tím NAS nenastavíte.

DSM ani Telnet řešit nebudu. DSM je intuitivní a Telnet se již dnes už moc nepoužívá. Podíváme se na SSH Terminál.

SSH (Secure Shell) značí zabezpečené spojení mezi klientským a hostovaným počítačem. Jak jsme si řekli k NAS lze přistupovat jen ze sítě a to jak místní tak i internetové. Aby nedošlo k odposlechu komunikace, běží terminál šifrovaně podle protokolu SSH. Certifikát je nainstalován na NAS a po prvotním připojení k terminálu jsme vyzváni, abychom přijali certifikát k šifrování. Teprve poté se můžeme přihlásit jako uživatel NAS.

Obecně terminál běží na portu 22 a ten je potřeba mít povolený ve Firewallu NAS, pokud chcete přistupovat i z internetu je potřeba ho mít povolený i na routeru mezi vaším NAS a internetem. Nakonec je potřeba mít službu terminál povolenou v NAS.

Terminál je nádherný a zároveň nebezpečný přístup k systému. Můžete přistupovat k částem systému, které nejsou v grafické části (neboli nadstavbě) přístupné. Ovšem za předpokladu, že se v terminálu přihlásíte jako uživatel root. Pomocí terminálu můžeme měnit, nastavovat, instalovat, mazat, což samozřejmě může, také dopadnou zhroucením systému či jeho poškození.

Zatím co u běžných distribucí Linuxu se terminál používá celkem často, u NAS ho běžným způsobem využijete jen zřídka.

Než tedy začneme v terminálu pracovat, je nejdříve nutné mít službu na NAS povolenou, mít povolený port ve Firewall a aktivního uživatele „admin“.

1. Jak se vůbec dostat přes terminál do NAS
U Linuxu a Mac OS je způsob jednodušší. Oba tyto systémy už terminál mají. Stačí terminál pustit a zadat příkaz „ssh admin@ipadresaNAS“. Pokud používáte na NAS jiný port pro SSH, což doporučuji, bude příkaz „ssh -p čísloportu root@ipadresaNAS“.
Po potvrzení je potřeba přijmout otisk klíče zabezpečení. Poté zapsat heslo uživatele „admin“.
U Windows je způsob malinko odlišný v tom, že terminál nemá (zatím, v průběhu léta 2016 by se to mělo změnit). Je nutné si stáhnout například aplikaci PuTTy a teprve pomoci ní se přihlásit do terminálu v NAS.

 

Synology změnila bezpečnostní politiku uživatele „root“ a není možné se pomocí terminálu na uživatele „root“ přihlásit okamžitě. Nejprve je potřeba se přihlásit na uživatele „admin“ a teprve potom pomocí příkazu „sudo su -“ se můžete přihlásit jako uživatel „root“.

2. Práce v terminálu
Práce je stejná jako v terminálu Linux a Mac OS. Seznam příkazů a jejich přepínačů najdete kdekoliv na internetu. Také lze vytvářet vlastní spouštěcí skripty (něco jako batky ve Windows) a některé procesy si automatizovat. Já osobně, protože nejsem až takový machr na terminál, jsem si doinstaloval Midnight Commander a textový editor Nano od https://synocommunity.com/ . Velice se zjednoduší práce v Terminálu jako kopírování, mazání, přehlednost a také změna práv a vlastníků souboru.

mc-screenshot
Než došlo ke změně zabezpečení kolem uživatele „root“ měl jsem v oblibě aplikaci WinSCP, kde jsem mohl pohodlně kopírovat soubory z lokálního pc na NAS. Teď již WinSCP pod uživatelem „root“ nelze spustit. Vyřešil jsem to způsobem, že si nejdříve soubory překopíruji na NAS a poté pomocí Midnight Commander přemístím v systému, kam potřebuji. Je ale také zapotřebí takovému souboru správně nastavit vlastnictví a práva, aby vše správně fungovalo.

3. Usnadnění práce v terminálu
Jako příklad uvedu: Já potřebuji terminál na správu multidoménového mailserveru. Zde musím editovat pár konfiguračních souborů a překompilovat dvě databáze. Po každém restartu NAS, nebo aktualizaci balíčku MailServer se musí provést vlastní úprava konfiguračního souboru a popřípadě zkompilovat databáze.
Nyní je to tak, že konfigurační soubory mám za zálohované ve svém adresáři a vytvořený skript ve kterém definuje kopírování a nahrazení původních souborů za mé upravené a nakonec restartování služby postfix.
! Soubory musí být samozřejmě nastaveny vlastníky „root“ a skript navíc jako spustitelný.
V DSM -> Control panel -> spuštění úloh definuji kompletní cestu k tomuto skriptu včetně /volume1/. Nenastavuji žádný časový plán. Skript se automaticky spustí, při naběhnutí NAS nebo po ručním spuštění. Výhoda je, že skript se spouští, až když je NAS celkově nastartován včetně balíčků, tedy nedochází k žádné kolizi.

run_skript
Výsledek: Po restartu nebo výpadku napájení již není třeba mého zásahu do NAS, aby došlo k plné funkci multidoménového serveru. Nyní se veškeré soubory a znovunačtení balíčků provede automaticky. Navíc jsem upozorněn mail notifikací a spuštění skriptu.

Tak to bylo jen na okraj.