Автоматизация с Ruby Net:: SSH (Secure Shell)

click fraud protection

SSH (или "Secure Shell") е мрежов протокол, който ви позволява да обменяте данни с отдалечен хост по криптиран канал. Най-често се използва като интерактивна обвивка с Linux и други UNIX-подобни системи. Можете да го използвате, за да влезете в уеб сървър и да изпълните няколко команди, за да поддържате уебсайта си. Той може да прави и други неща, като например прехвърляне на файлове и пренасочване на мрежови връзки.

Нет:: SSH е начин за рубин да взаимодействат с SSH. Използвайки този скъпоценен камък, можете да се свържете с отдалечени хостове, да стартирате команди, да проверите техния изход, да прехвърляте файлове, да пренасочвате мрежови връзки и да правите всичко, което обикновено бихте направили с SSH клиент. Това е мощен инструмент, който имате, ако често взаимодействате с отдалечени Linux или UNIX-подобни системи.

Инсталиране на Net:: SSH

Най- Нет:: SSH самата библиотека е чиста Ruby - тя не изисква други скъпоценни камъни и не се нуждае от компилатор за инсталиране. Въпреки това, тя разчита на OpenSSL библиотеката, за да извърши всички необходими криптиране. За да видите дали OpenSSL е инсталиран, изпълнете следната команда.

instagram viewer

Ако командата Ruby по-горе извежда версия на OpenSSL, тя е инсталирана и всичко трябва да работи. Инсталаторът на Windows с едно кликване за Ruby включва OpenSSL, както и много други Ruby дистрибуции.

За да инсталирате Нет:: SSH самата библиотека, инсталирайте Нетната-SSH скъпоценен камък.

Основна употреба

Най-разпространеният начин за използване на Net:: SSH е използването на Net: SSH.start метод. Този метод приема името на хоста, потребителското име и паролата и ще върне обект, представляващ сесията, или ще го предаде в блок, ако е даден. Ако дадетеначало метод на блок, връзката ще бъде затворена в края на блока. В противен случай ще трябва ръчно да затворите връзката, когато приключите с нея.

Следващият пример влиза в отдалечен хост и получава изхода на LS (списък на файлове) команда.

В блока по-горе SSH обект се отнася до отворена и удостоверена връзка. С този обект можете да стартирате произволен брой команди, паралелно да стартирате команди, да прехвърляте файлове и т.н. Може също да забележите, че паролата е предадена като хеш аргумент. Това е така, защото SSH позволява различни схеми за удостоверяване и трябва да му кажете, че това е парола.

instagram story viewer