- Как установить и настроить SSH-сервер на Debian
- Основные понятия
- Как установить OpenSSH
- Как установить и настроить SSH-сервер на Debian
- Что такое SSH
- Установка SSH в Debian
- Установка OpenSSH
- Настройка SSH-сервера
- Подведём итоги
- Настройка SSH в Debian
- Установка SSH в Debian
- Настройка сервера SSH
- 1. Смена порта
- 2. Отключение входа суперпользователя
- 3. Авторизация по ключу
- Настройка клиента
- Выводы
Как установить и настроить 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
Как установить и настроить SSH-сервер на Debian
Технология Secure Shell ( SSH ) предоставляет пользователям возможность удаленного доступа к машине или серверу Linux. Пользователи могут отдавать команды серверу так же, как если бы они использовали клавиатуру на своём ПК. Результаты выполнения любых команд передаются в текстовом формате. В этом материале мы рассмотрим процесс настройки SSH в Debian 10 и подробно разберём основные факторы, о которых следует помнить в начале использования.
Что такое SSH
На Debian часто требуется настройка веб-сервера безопасной оболочки, сокращенно SSH. SSH – это протокол сетевой безопасности, который позволяет пользователям удаленно получать доступ к серверу и управлять им. Он работает на основе взаимодействия между пользовательским компьютером и сервером. Аутентификация этих двух субъектов необходима и может быть выполнена тремя способами: через ip-адрес, с помощью пароля или с использованием пары ключей. SSH по умолчанию использует порт 22.
OpenSSH – это мощный набор утилит, предназначенный для безопасного общения по сети. Он основан на протоколе SSH и позволяет шифровать сетевые сессии. С помощью него можно удаленно посылать команды на сервер, обмениваться с ним данными в режиме реального времени.
OpenSSH использует множество компонентов, таких как SCP, SFTP, SFTP-server и т.д. Он также обеспечивает аутентификацию пользователей с помощью встроенных механизмов. Чтобы обеспечить безопасность ваших данных на Debian, необходимо установить пакет программ OpenSSH и выполнить определенные настройки.
Установка SSH в Debian
Скорее всего, SSH на вашем компьютере уже есть. Обычно его устанавливают в процессе установки Debian. На всякий случай перед настройкой проверьте функционал.
$ sudo systemctl status sshd
В строчке Active должно быть указано значение «active (running)». Если у вас другие параметры, придётся дополнительно установить SSH-сервер.
$ sudo apt install openssh-server ssh
$ sudo systemctl start sshd
Когда впервые будете подключаться, не забудьте согласиться на добавление ключа сервера в файл ~/.ssh/known_hosts. После этого увидите приглашение ввода в консоли SSH.
Установка OpenSSH
Установить набор программ OpenSSH тоже можно в терминале.
sudo apt-get install openssh-server
sudo systemctl status ssh
в открывшемся окне тоже должен отобразиться параметр «active (running)».
Настройка SSH-сервера
Параметры сервера SSH указаны в файле /etc/ssh/sshd_config. Чтобы их не потерять безвозвратно и получить возможность их восстановить, следует сделать его резервную копию. Введите следующую команду.
$ sudo cp /etc/ssh/sshd_config{,_back}
Настраивать SSH-сервер просто, нужно пройти всего 3 этапа.
Серьёзная опасность скрывается в использовании публичного IP-адреса. Его атакует огромное количество ботов, задача которых – найти открытый порт 22 и подобрать пароль. Поэтому порт нужно защитить, заменив его в конфигурационном файле.
Укажем другое значение. В нашем примере это 2222
Перезапустите SSH-сервер, чтобы применить настройки.
$ sudo systemctl restart sshd
Указываем актуальный порт, используя опцию -p.
Чтобы подобрать пароль, боты могут ориентироваться на логин пользователя с правами root. Чтобы снизить риски, его авторизацию желательно отключить. Однако важно оставить хотя бы одного пользователя, через которого сможете потом пройти авторизацию.
В том же файле отыщите строку PermitRootLogin, укажите для неё значение «no».
В строке подключения SSH указываем значением «yes».
Для обеспечения максимальной безопасности есть возможность вообще отключить авторизацию по паролю. Вместо этого лучше задать авторизацию по ключу. Изменения тоже производятся в конфигурационном файле.
В строке PubkeyAuthentication ставим «yes».
В строках ChallengeResponseAuthentication, PasswordAuthentication, UsePAM ставим «no».
Подведём итоги
Теперь у вас есть пошаговая инструкция для установки и настройки SSH-сервера на Debian. Мы разобрали, какие инструменты для этого применяются и как обеспечить максимальную безопасность при удалённой работе.
Настройка SSH в Debian
Технология SSH или Secure Shell позволяет пользователям подключаться к компьютеру с Linux или серверу удалённо и выполнять на нём команды, так как бы они вводились с клавиатуры непосредственно на нём. Вывод команд тоже передаётся в реальном времени в текстовом режиме, от чего складывается впечатление, что вы работаете непосредственно на той машине, к которой подключены.
В этой небольшой статье мы рассмотрим как настроить SSH в Debian 10 для подключения к системе извне, а также основные параметры на которые стоит обратить внимание.
Установка SSH в Debian
Если во время установки Debian вы выбрали установку SSH сервера, то в готовой системе он будет уже установлен и запущен. Для проверки его состояния выполните:
sudo systemctl status sshd
Если отображается надпись active, running, значит всё хорошо. В противном случае надо установить SSH сервер. Для этого используйте такую команду:
sudo apt install openssh-server ssh
Затем для запуска сервиса выполните:
sudo systemctl start sshd
Если на вашем сервере используется фаервол UFW, то вам надо разрешить удалённое подключение к порту 22:
Установка ssh в Debian завершена. Теперь вы можете попытаться подключится к SSH серверу локально:
При первом подключении надо будет подтвердить добавление ключа сервера в файл ~/.ssh/known_hosts. Затем перед вами откроется приглашение ввода в консоли SSH.
Настройка сервера SSH
Все настройки сервера SSH находятся в файле /etc/ssh/sshd_config. Перед тем, как его редактировать лучше сделать резервную копию на всякий случай:
sudo cp /etc/ssh/sshd_config
1. Смена порта
Одна из самых частых настроек, которую надо выполнять на большинстве серверов, это смена порта. Если у сервера есть публичный IP адрес, то его сканируют множество ботов, и как только они находят открытый порт 22, то сразу начинают пытаться перебрать пароль. Откройте конфигурационный файл и найдите строчку Port, расскоментируйте её, если нужно:
Затем пропишите нужное значение порта, например 2222:
Для того, чтобы изменения вступили в силу надо перезагрузить SSH сервер:
sudo systemctl restart sshd
Теперь, чтобы подключится к этому серверу надо будет явно указать порт с помощью опции -p:
2. Отключение входа суперпользователя
Чаще всего боты используют для перебора пароля логин суперпользователя. Авторизацию для этого пользователя можно отключить. Перед тем, как это делать убедитесь, что у вас есть в системе ещё как минимум один пользователь от имени которого вы сможете авторизоваться. Затем найдите строку PermitRootLogin и замените её значение на no:
Чтобы разрешить подключение ssh Debian для пользователя root, замените значение этого параметра на yes.
3. Авторизация по ключу
Следующий шаг по обеспечению безопасности вашего сервера — отключить вообще авторизацию по паролю, а использовать только авторизацию по ключу. Подробнее про авторизацию по ключу рассказано здесь. В конфигурационном файле sshd вам надо изменить только несколько строчек:
Сначала найдите строку PubkeyAuthentication и замените её значение на yes:
Перед тем как отключать возможность входа по паролю убедитесь, что вы добавили ключ для авторизации, как это описано в статье выше. Затем замените значения параметров ChallengeResponseAuthentication, PasswordAuthentication, UsePAM на no.
Настройка клиента
Для каждого пользователя можно сделать отдельные настройки клиента SSH. Для этого используется файл .ssh/config. Синтаксис файла такой:
Хост имя_хоста Параметр значение
Таких секций может быть сколько угодно. Сначала надо указать хост, для которого будут применяться настройки, затем параметры для него. Можно создать секцию, которая будет работать для любого хоста, для этого используйте *. Например, чаще всего для подключения по SSH используется пользователь root. Давайте использовать его по умолчанию для всех подключений:
Если для какого либо хоста вы меняли порт, что чтобы не вводить его каждый раз, можно настроить порт по умолчанию в этом файле, например:
Теперь при подключении можно просто набрать:
Выводы
В этой статье мы рассмотрели как установить ssh, а также как выполняется настройка SSH в Debian. Теперь вы знаете основные моменты, которые надо сделать чтобы комфортно пользоваться этим сервисом. А какие настройки SSH делаете вы? Напишите в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.