Automatizarea cu Ruby Net:: SSH (Secure Shell)

SSH (sau "Secure Shell") este un protocol de rețea care vă permite să faceți schimb de date cu o gazdă la distanță pe un canal criptat. Este cel mai frecvent utilizat ca un shell interactiv cu Linux și alte sisteme similare UNIX. Puteți să-l utilizați pentru a vă autentifica într-un server Web și să executați câteva comenzi pentru a vă menține site-ul. Poate face și alte lucruri, cum ar fi transferul fișierelor și conexiunile de rețea înainte.

Net:: SSH este o cale pentru Rubin să interacționeze cu SSH. Folosind această bijuterie, vă puteți conecta la gazdele de la distanță, puteți rula comenzi, examina ieșirea lor, transfera fișierele, transmite conexiunile de rețea și puteți face orice faceți în mod normal cu un client SSH. Acesta este un instrument puternic pe care îl aveți dacă interacționați frecvent cu sisteme la distanță Linux sau UNIX.

Instalarea Net:: SSH

Net:: SSH biblioteca în sine este pur Ruby - nu necesită alte pietre și nu are nevoie de un compilator pentru instalare. Cu toate acestea, se bazează pe biblioteca OpenSSL pentru a face toate criptarea necesară. Pentru a vedea dacă este instalat OpenSSL, executați următoarea comandă.

instagram viewer

Dacă comanda Ruby de mai sus emite o versiune OpenSSL, aceasta este instalată și totul ar trebui să funcționeze. Windows One-Click Installer pentru Ruby include OpenSSL, la fel ca multe alte distribuții Ruby.

Pentru a instala dispozitivul Net:: SSH biblioteca în sine, instalați net-ssh bijuterie.

Utilizare de bază

Cel mai frecvent mod de a utiliza Net:: SSH este să folosești Net:: SSH.start metodă. Această metodă ia numele de gazdă, numele de utilizator și parola și va returna un obiect reprezentând sesiunea sau îl va transmite unui bloc, dacă este dat. Dacă dațistart metoda unui bloc, conexiunea va fi închisă la sfârșitul blocului. În caz contrar, va trebui să închideți manual conexiunea când ați terminat cu ea.

Următorul exemplu se conectează la o gazdă la distanță și primește ieșirea din ls (listă fișiere) comanda.

În blocul de mai sus, ssh obiectul se referă la conexiunea deschisă și autentificată. Cu acest obiect, puteți lansa orice număr de comenzi, comenzi de lansare în paralel, transfer de fișiere etc. De asemenea, puteți observa că parola a fost transmisă ca argument hash. Acest lucru se datorează faptului că SSH permite o varietate de scheme de autentificare și trebuie să-i spuneți că este o parolă.