Перейти к основному контенту

Как установить и настроить SSH-сервер на Debian

В этой статье мы рассмотрим понятия Debian, SSH и OpenSSH, расскажем из каких этапов состоит настройка SSH-сервера на Debian и покажем, как её сделать.

Основные понятия

Debian — это одна из самых популярных и распространенных операционных систем Linux (GNU). Дистрибутив разработан по принципу свободного ПО с открытым исходным кодом. Debian является универсальной операционной системой, поскольку подходит как для повседневного использования, так и для специфической работы на серверах. Она оказала значительное влияние на развитие подобного типа ОС.

Нередко на Debian приходится настраивать SSH-сервер. SSH (от англ. Secure Shell ― безопасная оболочка) ― это один из сетевых протоколов безопасности, который позволяет удаленно подключаться к серверу и управлять им. Протокол работает по принципу взаимодействия двух сторон — клиента и сервера. Он требует аутентификации сторон одним из способов: по IP-адресу, по паролю или с помощью ключевой пары. Secure Shell по умолчанию проводит соединения по порту 22. Подробнее читайте в статье.

Лучшим инструментом для работы по SSH на сервере является OpenSSH. OpenSSH (Open Secure Shell) — набор утилит, который работает на базе протокола SSH и позволяет шифровать сеансы связи в процессе работы через сеть. Благодаря Secure Shell можно в режиме реального времени удаленно посылать команды на сервер и обмениваться с ним данными. OpenSSH содержит такие компоненты, как SCP, SFTP, SFTP-server и другие. Этот комплект ПО аутентифицирует пользователей с помощью нескольких встроенных механизмов: вызов-отклик, публичные ключи, протокол аутентификации kerberos и интерфейс GSS-AP.

Чтобы настроить защищенное соединение на Debian, необходимо не только установить набор программ OpenSSH, но и внести дополнительные настройки. О том, как это сделать, мы рассказали в инструкциях ниже.

Как установить OpenSSH

  1. 1.
    Откройте терминал.
  2. 2.

    Обновите список пакетов с помощью команды:

    sudo apt-get update
  3. 3.

    Установите OpenSSH:

    sudo apt-get install openssh-server

    Введите «yes», чтобы продолжить установку.

  4. 4.

    Если вы используете фаервол UFW, нужно разрешить удалённое подключение к порту 22. Для этого выполните команду:

    sudo ufw allow ssh
  5. 5.

    Проверьте работу SSH-сервера с помощью команды:

    sudo systemctl status ssh

    Если установка прошла корректно, вы увидите следующее сообщение:

    SSH на Debian 1 Настройка SSH Debian 11

    Статус «active (running)» означает, что server запущен. Также в строке «Server listening on» вы увидите порт, через который работает SSH.

Готово.

Как изменить порт для OpenSSH

По умолчанию OpenSSH использует порт 22. Этот порт нужно изменить по следующим причинам:

  • из соображений безопасности. Если сервер просканируют боты и обнаружат, что он отвечает по открытому порту 22, они могут попытаться подобрать пароль;
  • для доступности сервера. Если порт 22 занят другой службой — например, веб-сервером — сервер SSH не будет работать.

Все настройки нужно сделать в конфигурационном файле. Чтобы изменить порт:

  1. 1.
    Откройте терминал.
  2. 2.

    Создайте резервную копию конфигурационного файла с помощью команды:

    sudo cp /etc/ssh/sshd_config{,_back}
  3. 3.

    Откройте конфигурационный файл командой:

    sudo nano /etc/ssh/sshd_config
  4. 4.

    Раскомментируйте строку «Port» и замените порт 22 на значение в диапазоне от 1 до 65 535. Проверьте, чтобы новый порт не был занят другой службой:

    SSH на Debian 2

    После того как вы указали порт, нажмите Ctrl + O и Enter, чтобы сохранить изменения. Затем нажмите Ctrl + X, чтобы закрыть текстовый редактор.

  5. 5.

    Чтобы применить изменения, перезагрузите SSH-сервер:

    sudo systemctl restart sshd
  6. 6.

    Для подключения используйте команду:

    ssh user@host -p 1234

    Где:

    • user — имя пользователя,
    • host — адрес целевого компьютера,
    • 1234 — порт, по которому работает SSH.

Готово.

Как отключить вход для суперпользователя OpenSSH

Перед тем, как отключить вход для суперпользователя убедитесь, что создан хотя бы ещё один пользователь. После этого:

  1. 1.
    Откройте терминал.
  2. 2.

    Создайте резервную копию конфигурационного файла с помощью команды:

    sudo cp /etc/ssh/sshd_config{,_back}
  3. 3.

    Откройте конфигурационный файл с помощью команды:

    sudo nano /etc/ssh/sshd_config
  4. 4.

    Раскомментируйте строку «PermitRootLogin» и укажите значение «no»:

    SSH на Debian 3

    Чтобы сохранить изменения, нажмите Ctrl + O и Enter. Затем закройте редактор сочетанием клавиш Ctrl + X.

    Вы можете изменить решение: для этого в строке «PermitRootLogin» укажите значение «yes».

  5. 5.

    Чтобы применить настройки, выполните команду:

    sudo systemctl restart sshd

Готово, вы отключили вход для суперпользователя.

Как настроить авторизацию по ключу

Перед настройкой убедитесь, что у вас создана ключевая пара.

Как создать ключевую пару
  1. 1.
    Откройте терминал.
  2. 2.

    Выполните команду:

    ssh-keygen
  3. 3.

    Система предложит директорию, в которой будут сохранены ключи. Нажмите Enter, чтобы согласиться, или укажите путь до другого каталога:

    SSH на Debian 4 Debian 11 настройка SSH

  4. 4.

    Введите пароль, чтобы защитить открытый ключ:

    SSH на Debian 5

  5. 5.

    Повторите пароль:

    SSH на Debian 6

  6. 6.

    Если создание ключей прошло корректно, вы увидите сообщение:

    SSH на Debian 7

  7. 7.

    Скопируйте открытый ключ:

    ssh-copy-id user@host -p 1234

    Где:

    • user — имя пользователя,
    • host — адрес целевого компьютера,
    • 1234 — порт, по которому работает SSH.
  8. 8.

    Чтобы продолжить подключение, введите yes:

    SSH на Debian 8

  9. 9.

    Если передача ключа прошла успешно, вы увидите сообщение:

    SSH на Debian 9

  1. 1.
    Откройте терминал.
  2. 2.

    Создайте резервную копию конфигурационного файла с помощью команды:

    sudo cp /etc/ssh/sshd_config{,_back}
  3. 3.

    Откройте конфигурационный файл командой:

    sudo nano /etc/ssh/sshd_config
  4. 4.

    Раскомментируйте строку «PubkeyAuthentication» и укажите в ней значение «yes»:

    SSH на Debian 10

    Чтобы сохранить изменения, нажмите Ctrl + O и Enter. Затем закройте редактор сочетанием клавиш Ctrl + X.

  5. 5.

    Чтобы применить настройки, выполните команду:

    sudo systemctl restart sshd

Готово, вы настроили авторизацию по ключу.

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 0 из 0