Про бібліотеку Net::SSH у Ruby

Бібліотека Net::SSH у Ruby - це інструмент для роботи з SSH протоколом з використанням мови програмування Ruby. Вона дозволяє здійснювати з’єднання з віддаленими серверами через SSH, виконувати команди на цих серверах, отримувати результати та управляти файлами.

Деякі основні можливості бібліотеки Net::SSH

  1. Встановлення з’єднання: Вона дозволяє встановлювати з’єднання з віддаленими серверами через SSH, використовуючи аутентифікацію за допомогою паролів або ключів.
require 'net/ssh'

Net::SSH.start('remote_host', 'username', password: 'password') do |ssh|
  # Ваш код для роботи з віддаленим сервером
end

  1. Виконання команд: Після підключення до сервера ви можете виконувати команди на цьому сервері через SSH, і отримувати їх результати.
ssh.exec!("ls -l") do |channel, stream, data|
  puts "Got: #{data}"
end

  1. Передача файлів: Net::SSH дозволяє передавати файли між локальною машиною та віддаленим сервером через SSH протокол.
ssh.sftp.upload!("/local/path", "/remote/path")

  1. Робота з тунелями: Вона також підтримує створення SSH тунелей для безпечного з’єднання з іншими серверами.
ssh.forward.remote(8080, "remote_host", 80)

Загалом, ця бібліотека дозволяє легко автоматизувати рутинні завдання адміністрування серверів, виконуючи віддалені команди та керуючи файлами через SSH протокол.