Шаг 1: Установка SSH-сервера
Установите SSH-сервер на вашу систему Debian с помощью следующей команды:
sudo apt update
sudo apt install openssh-server
После установки SSH-сервера он должен запуститься автоматически. Проверьте его статус:
sudo systemctl status sshd
Шаг 2: Настройка SSH-сервера
Файл конфигурации SSH-сервера находится в /etc/ssh/sshd_config
. Отредактируйте его, если необходимо, для изменения настроек, таких как порт, разрешения и опции аутентификации:
sudo nano /etc/ssh/sshd_config
В этом файле можно, например, изменить стандартный порт SSH (22) на другой, чтобы улучшить безопасность:
Port 2222
Не забудьте раскомментировать и изменить следующую строку для разрешения аутентификации по ключу:
PubkeyAuthentication yes
После внесения изменений перезапустите SSH-сервер:
sudo systemctl restart sshd
Шаг 3: Генерация SSH-ключей
Существует несколько способов генерации SSH-ключей. Самый распространённый способ — использовать команду ssh-keygen
:
ssh-keygen -t rsa -b 4096
Это создаст новую пару ключей RSA с длиной ключа 4096 бит в домашней директории пользователя (~/.ssh/id_rsa
для приватного ключа и ~/.ssh/id_rsa.pub
для публичного ключа).
Также можно сгенерировать SSH-ключи с помощью утилиты Putty Key Generator
Нажимаете Generate и совершаете беспорядочные движения мышкой
Шаг 4: Размещение публичного ключа на SSH-сервере
Чтобы использовать SSH-ключ для подключения к серверу, необходимо скопировать публичный ключ на сервер. Это можно сделать с помощью команды ssh-copy-id
:
ssh-copy-id -i ~/.ssh/id_rsa.pub user@your_server_ip
Вторым способом является записывание публичного ключа в конфигурационный файл
серверу как root или пользователь с sudo-правами. Вот как это можно сделать:
Перейдите в домашний каталог пользователя которому ставите ключ :
cd /home/user
Если вы выполняете действия от имени root или с sudo-правами, убедитесь, что вы меняете владельца созданных файлов на user
после их создания.
Проверьте существование директории
.ssh
:
Если директория .ssh
ещё не существует, её нужно создать:
mkdir -p .ssh
Добавьте ключ в файл
authorized_keys
:
bashCopy codeecho 'Наполнеие Pub файла' >> .ssh/authorized_keys
Установите правильные разрешения:
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
Убедитесь, что владелец директории и файлов — это
user
:
chown -R d.alexeev:d.alexeev .ssh
Шаг 5: Подключение к серверу
Теперь вы можете подключиться к серверу с использованием вашего приватного ключа:
ssh -i ~/.ssh/id_rsa user@your_server_ip
При первом подключении вам будет предложено подтвердить отпечаток ключа сервера.
В putty добавление ключа выглядит следующим образом :
Шаг 6: Безопасность
Для дополнительной безопасности после настройки аутентификации по ключам можно отключить аутентификацию по паролю, отредактировав /etc/ssh/sshd_config
:
PasswordAuthentication no
Не забудьте снова перезапустить SSH-сервер после изменения конфигурации.