Ключі SSH є потужним інструментом для забезпечення безпеки під час з’єднання з віддаленими серверами Linux . Вони дозволяють вам з’єднуватися з сервером, не вводячи пароль кожного разу, а також забезпечують аутентифікацію на високому рівні безпеки.
У Ruby ви можете використовувати SSH ключі для з’єднання з віддаленими серверами за допомогою бібліотеки Net::SSH.
Ось приклад використання SSH ключів для з’єднання з віддаленим сервером у Ruby:
require 'net/ssh'
# Інформація про віддалений сервер
host = 'your_remote_host'
username = 'your_username'
# Шлях до вашого приватного ключа
private_key_path = '/path/to/your/private_key'
# Підключення до віддаленого сервера за допомогою SSH ключа
Net::SSH.start(host, username, keys: [private_key_path]) do |ssh|
# Тут ви можете виконати різні дії на віддаленому сервері
# Наприклад, вивести результат команди 'uname -a'
puts ssh.exec!("uname -a")
end
У цьому коді:
require 'net/ssh'
- підключає бібліотеку Net::SSH.- Ви вказуєте інформацію про віддалений сервер (
host
іusername
). - Ви вказуєте шлях до вашого приватного ключа (
private_key_path
). Net::SSH.start
встановлює SSH-з’єднання з використанням вказаного ключа.- У блоку
do |ssh|
ви можете виконати команди на віддаленому сервері через об’єктssh
.
Переконайтеся, що ваш публічний ключ відомий на віддаленому сервері та доданий до файлу ~/.ssh/authorized_keys
.