Что такое SSH. Настройка доступа по SSH на операционной системе Debian 10. Авторизация без пароля (по ключу).

Что такое SSH. Настройка доступа по SSH на операционной системе Debian 10. Авторизация без пароля (по ключу).

SSH (Secure Shell — «безопасная оболочка») — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов). Схож по функциональности с протоколом Telnet , но, в отличие от него, шифрует весь трафик, включая и передаваемые пароли. SSH допускает выбор различных алгоритмов шифрования. SSH-клиент и SSH-серверы доступны для большинства сетевых операционных систем.


Механизм обеспечения безопасности данных протоколом SSH

Приложения клиента посылают запросы на открытие сессии определенному порту сервера. Сервисы прослушивают специфические запросы, отправленные, как правило, прямым текстом, и реагируют нужным образом.

Наиболее часто используемые порты – это FTP (21), SMTP (25), HTTP (80), TELNET (23). Протокол SSH создает «безопасную оболочку» таким подключениям, перенаправляя пакеты на 22 порт (обслуживаемый SSH), где преобразовывает, шифрует и инкапсулирует данные.

Применение протокола SSH

Область применения протокола SSH практически неограничена. Исходя из его основной функции — удаленного входа в операционную систему, протокол используют:

  • системные администраторы для удаленной настройки компьютеров локальной сети;
  • для настройки почтовых служб (повышает безопасность данных);
  • для скрытого обмена внутри сети массивными файлами;
  • для интернет-игр.

Функции надежного шифрования, сжатия, аутентификации и системы контроля данных, реализуемые протоколом SSH-2, позволяют использовать его для сокрытия и защиты от внешних атак передаваемой информации, сократить количество используемого трафика, снизить нагрузку на центральный процессор за счет создания многопоточного соединения через порт SSH.


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

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

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

sudo apt-get update

3.Установите OpenSSH.

sudo apt-get install openssh-server

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

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

sudo ufw allow ssh

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

sudo systemctl status ssh

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

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

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

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

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

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

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

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

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

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

sudo nano /etc/ssh/sshd_config

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

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

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

sudo systemctl restart sshd

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

ssh user@host -p 1234

Где:

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

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

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

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

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

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

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

sudo nano /etc/ssh/sshd_config

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

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

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

sudo systemctl restart sshd

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

Для начала необходимо создать ключевую пару.

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

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

ssh-keygen

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

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

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

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

ssh-copy-id user@host -p 1234

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

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

После того, как ключи были созданы откройте терминал

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

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

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

sudo nano /etc/ssh/sshd_config

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

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

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

sudo systemctl restart sshd

Добавить комментарий