Card image cap

Генерация SSH-ключа Ed25519 и настройка доступа к Linux серверу

SSH (Secure Shell) — это протокол для безопасного удаленного доступа к серверам. Ключи Ed25519 считаются более безопасными и эффективными по сравнению с традиционными RSA-ключами. В этой статье я покажу, как создать SSH-ключ Ed25519 и настроить доступ к вашему Linux серверу.

Почему именно Ed25519?

Безопасность: Устойчив к ряду атак, которые могут затрагивать RSA.

Производительность: Быстрее генерация и операции подписи.

Размер: Меньший размер ключа при сопоставимой безопасности.

 

Шаг 1: Генерация SSH-ключа Ed25519

Откройте терминал на вашем локальном компьютере и выполните:

ssh-keygen -t ed25519

Где: -t ed25519 — указывает тип ключа

В процессе генерации вам будет предложено:

Указать место сохранения ключа (по умолчанию ~/.ssh/id_ed25519)

Ввести passphrase (рекомендуется для дополнительной безопасности)

 

Пример выполнения:

Generating public/private ed25519 key pair.

Enter file in which to save the key (/home/user/.ssh/id_ed25519):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /home/user/.ssh/id_ed25519

Your public key has been saved in /home/user/.ssh/id_ed25519.pub

 

Шаг 2: Проверка созданных ключей

Убедитесь, что ключи созданы правильно:

ls -la ~/.ssh/id_ed25519*

Вы должны увидеть два файла:

id_ed25519 — приватный ключ (никогда никому не передавайте!)

id_ed25519.pub — публичный ключ

 

Шаг 3: Копирование публичного ключа на сервер

Способ 1: Использование ssh-copy-id (рекомендуется)

ssh-copy-id -i ~/.ssh/id_ed25519.pub username@server_ip

где:

username - имя пользователя на сервере

server_ip - IP-адрес или домен сервера

 

Способ 2: Ручное копирование

Если ssh-copy-id недоступен, скопируйте содержимое публичного ключа:

cat ~/.ssh/id_ed25519.pub

На сервере дополните файл авторизованных ключей ~/.ssh/authorized_keys

 

Шаг 4: Тестирование подключения

Попробуйте подключиться к серверу:

ssh username@server_ip или ssh -i ~/.ssh/id_ed25519 username@server_ip

Если вы установили passphrase, вам будет предложено ввести его.

ВАЖНО. Если забыли passphrase, придется генерировать новый ключ, так как passphrase не восстанавливается.

 

Шаг 5: Дополнительные настройки (опционально)

Настройка SSH-клиента

Создайте/отредактируйте файл ~/.ssh/config на локальном компьютере:

Host mykomputer

    HostName server_ip

    User mykomputer

    IdentityFile ~/.ssh/id_ed25519

    Port 22

Теперь можно подключаться просто командой:

ssh mykomputer

 

Отключение аутентификации по паролю (для повышения безопасности)

На сервере отредактируйте /etc/ssh/sshd_config:

PasswordAuthentication no

PubkeyAuthentication yes

И перезагрузите SSH-демон:

sudo systemctl reload ssh

 

Заключение

Теперь у вас настроен безопасный доступ к серверу с использованием современных SSH-ключей Ed25519. Такой подход обеспечивает:

Высокий уровень безопасности.

Быстрое подключение.

Удобство использования (особенно с файлом config).

Не забывайте хранить приватный ключ в безопасности и используйте passphrase для дополнительной защиты!

Удачи!


Поддержать развитие блога
Отправить Донат
36 минут назад Категория Linux 3
Список всех статей в журнале