Abstract
Работа с SSH-ключами: генерация, добавление ключей на сервер, отключение входа по паролю, создание нового пользователя с доступом по ключу и настройка прав.
Генерация SSH-ключа
ssh-keygen -t ed25519 -C "your_email@example.com"ed25519 — современный алгоритм, ключи короче и быстрее, чем у RSA.
Добавление публичного ключа на сервер
Если вход по паролю ещё включен, самый простой способ — ssh-copy-id:
ssh-copy-id user@target_hostЕсли вход по ключу уже настроен, добавьте ключ вручную:
echo "paste-your-public-key-here" >> ~/.ssh/authorized_keysОтключение входа по паролю
Отредактируем конфигурацию SSH-сервера:
sudo nano /etc/ssh/sshd_configИзменим следующие строки:
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no
PermitRootLogin no
PubkeyAuthentication yesПерезапустим службу:
sudo systemctl restart sshdПеред отключением пароля
Убедитесь, что вход по ключу работает. После отключения пароля попасть на сервер без ключа не получится.
Создание нового пользователя с SSH-ключом
1. Создание пользователя
sudo useradd -m -s /bin/bash newusernameПрава доступа — критично
| Путь | Права | Владелец |
|---|---|---|
~/.ssh/ | 700 | пользователь |
~/.ssh/authorized_keys | 600 | пользователь |
Неправильные права = отказ входа
SSH строго проверяет права. Если
.sshилиauthorized_keysдоступны для записи другим пользователям, вход по ключу молча отклоняется.
Связанные статьи
- — базовая установка SSH-сервера в локальной сети
Связанные