Как включить ssh доступ в Линукс?
Чтобы включить SSH-доступ в Linux, выполните последовательность действий, адаптированную под ваш дистрибутив.
Возможно сервер ssh уже установлен - тогда просто запустите его:
PHP код:
sudo systemctl enable sshd
PHP код:
sudo systemctl start sshd
Если же эти команды не помогают - выполните следующие действия
1. Установка OpenSSH-сервера
В зависимости от семейства дистрибутивов используйте соответствующую команду:
Debian/Ubuntu:
bash
sudo apt update
PHP код:
sudo apt install -y openssh-server
RHEL, AlmaLinux, Rocky, Fedora:
bash
PHP код:
sudo dnf install -y openssh-server
Arch Linux:
bash
2. Запуск и активация сервиса
Запустите демон SSH и включите его автозагрузку при старте системы:
bash
PHP код:
sudo systemctl enable --now sshd
Если команда не сработает, попробуйте альтернативные варианты:
bash
PHP код:
sudo systemctl enable --now ssh
3. Проверка работы сервиса
Убедитесь, что служба запущена:
bash
PHP код:
sudo systemctl status sshd
Проверьте, слушает ли порт 22 (по умолчанию для SSH):
bash
PHP код:
sudo ss -lptn 'sport = :22'
или
bash
4. Настройка файервола
Если на системе активен файервол (например, ufw, firewalld), откройте порт 22:
Для firewalld:
bash
PHP код:
sudo firewall-cmd --add-service=ssh --permanent
sudo firewall-cmd --reload
Для ufw:
bash
5. Базовая проверка подключения
Попробуйте подключиться к самому серверу, используя команду:
bash
Если видите запрос на добавление отпечатка ключа и предложение продолжить соединение — SSH настроен корректно.
Дополнительные рекомендации по безопасности
Смена порта по умолчанию (с 22 на другой).
Измените порт в файле /etc/ssh/sshd_config, например:
bash
Затем перезапустите сервис:
bash
PHP код:
sudo systemctl reload sshd
Отключение входа по паролю.
В файле /etc/ssh/sshd_config установите:
bash
PHP код:
PasswordAuthentication no
Перезапустите сервис.
Авторизация по ключам вместо пароля
Сгенерируйте ключи на клиенте:
bash
PHP код:
ssh-keygen -t ed25519 -a 64 -C "yourname@yourhost"
Скопируйте публичный ключ на сервер:
bash
PHP код:
ssh-copy-id user@SERVER_IP
Ограничение доступа по IP.
Настройте файлы /etc/hosts.deny и /etc/hosts.allow.
Отключение доступа root
В файле /etc/ssh/sshd_config установите:
bash
Важные замечания
Всегда делайте резервные копии конфигурационных файлов перед изменениями.
Проверяйте статус сервиса после каждого изменения конфигурации.
Убедитесь, что порт SSH открыт не только в файерволе системы, но и на уровне маршрутизатора (если применимо).
Регулярно обновляйте систему и пакет openssh-server для защиты от уязвимостей.
Следуя этим шагам, вы настроите защищённый SSH-доступ к вашей системе Linux.