Automatizácia pomocou Ruby Net:: SSH (Secure Shell)

SSH (alebo „Secure Shell“) je sieťový protokol, ktorý umožňuje výmenu údajov so vzdialeným hostiteľom cez šifrovaný kanál. Najčastejšie sa používa ako interaktívny shell s operačným systémom Linux a inými systémami typu UNIX. Môžete ho použiť na prihlásenie do webového servera a spustenie niekoľkých príkazov na údržbu svojej webovej stránky. Môže však robiť aj iné veci, napríklad prenášať súbory a posielať ďalej sieťové pripojenia.

Čistá:: SSH je to spôsob rubín komunikovať so SSH. Pomocou tohto skvostu sa môžete pripojiť k vzdialeným hostiteľom, spúšťať príkazy, skúmať ich výstup, prenášať súbory, posielať ďalej sieťové pripojenia a robiť čokoľvek, čo by ste bežne robili s klientom SSH. Toto je výkonný nástroj, ak často komunikujete so vzdialenými systémami Linux alebo UNIX.

Inštalácia siete:: SSH

Čistá:: SSH knižnica samotná je čisto Ruby - nevyžaduje žiadne ďalšie drahokamy a na inštaláciu nepotrebuje kompilátor. Spolieha sa však na knižnicu OpenSSL, aby vykonala všetky potrebné šifrovania. Ak chcete zistiť, či je nainštalovaný OpenSSL, spustite nasledujúci príkaz.

instagram viewer

Ak príkaz Ruby vyššie vydá verziu OpenSSL, je nainštalovaný a všetko by malo fungovať. Inštalátor Windows One-Click pre Ruby obsahuje OpenSSL, rovnako ako mnoho iných distribúcií Ruby.

Ak chcete nainštalovať Čistá:: SSH knižnicu samotnú, nainštalujte net-ssh gem.

Základné použitie

Najbežnejším spôsobom používania siete Net:: SSH je použitie systému Čistá:: SSH.start metóda. Táto metóda prevezme meno hostiteľa, užívateľské meno a heslo a buď vráti objekt predstavujúci reláciu, alebo ho odovzdá bloku, ak je daný. Ak dáteštart Ak blokuje spojenie, spojenie sa uzavrie na konci bloku. V opačnom prípade budete musieť pripojenie po dokončení manuálne ukončiť.

Nasledujúci príklad sa prihlási do vzdialeného hostiteľa a získa výstup servera ls (zoznam súborov) príkaz.

V rámci vyššie uvedeného bloku ssh objekt odkazuje na otvorené a overené pripojenie. S týmto objektom môžete spúšťať ľubovoľný počet príkazov, paralelne spúšťať príkazy, prenášať súbory atď. Môžete si tiež všimnúť, že heslo bolo odovzdané ako hashovací argument. Je to preto, že SSH umožňuje rôzne schémy overovania a musíte im povedať, že ide o heslo.