Подготовка к настройке
Перед началом убедитесь, что у вас есть права суперпользователя. Проверьте наличие установленного сервиса OpenSSH:
- Запустите команду ssh -V. Если она показывает версию, SSH установлен.
- Если SSH не установлен, выполните команду sudo apt update && sudo apt install openssh-server (для Debian/Ubuntu) или аналогичный пакет для вашей системы.
Конфигурация сервера SSH
- Откройте файл конфигурации командой sudo nano /etc/ssh/sshd_config.
- Измените или добавьте следующие параметры:
- Port 22 – укажите желаемый порт, если хотите сменить стандартный.
- PermitRootLogin no – запрещает вход под root для повышения безопасности.
- PasswordAuthentication yes – разрешает вход по паролю, или no для аутентификации по ключам.
- AllowUsers user1 user2 – ограничивает доступ определёнными пользователями.
- Сохраняете изменения и закрываете файл (Ctrl+O, Enter, Ctrl+X).
- Перезапускаете SSH-сервис командой sudo systemctl restart sshd.
Настройка ключей SSH
Используйте аутентификацию по ключам для повышения безопасности.
- На клиентской машине выполните генерацию ключа командой:
ssh-keygen -t ed25519 -C "ваша_почта@example.com"
- Следуйте подсказкам, можно оставить значения по умолчанию. После этого ключи сохранятся в папке ~/.ssh/.
- Передайте публичный ключ на сервер командой:
ssh-copy-id -p [порт] user@server
- Проверьте соединение командой:
ssh user@server
Проверка и завершение
После настройки протестируйте подключение. Обратите внимание на корректность указанных портов и правил в конфигурации. При необходимости, добавьте правила в файрволл для входящих соединений на выбранный порт.
- Для ufw используйте:
sudo ufw allow [порт]/tcp
- Перезагрузите сервер при необходимости или применяйте изменения без перезагрузки.