Содержание:
Протокол SSH используется для обеспечения безопасного соединения с компьютером, что позволяет производить удаленное управление не только через оболочку операционной системы, но и шифрованный канал. Иногда у пользователей операционной системы Ubuntu возникает надобность поставить SSH-сервер на свой ПК для реализации каких-либо целей. Поэтому мы предлагаем детально ознакомиться с этим процессом, изучив не только процедуру загрузки, но и настройку основных параметров.
Устанавливаем SSH-server в Ubuntu
Компоненты SSH доступны для скачивания через официальное хранилище, потому мы будем рассматривать именно такой метод, он является самым стабильным и надежным, а также не вызывает сложностей у начинающих юзеров. Весь процесс мы разбили на шаги, чтобы вам было проще ориентироваться в инструкциях. Давайте же начнем с самого начала.
Шаг 1: Загрузка и установка SSH-server
Выполнять поставленную задачу будем через «Терминал» с использованием основного набора команд. Обладать дополнительными знаниями или навыками не нужно, вы получите детальное описание каждого действия и все необходимые команды.
- Запустите консоль через меню или зажав комбинацию Ctrl + Alt + T.
- Сразу же начните скачивание файлов сервера с официального репозитория. Для этого потребуется ввести
sudo apt install openssh-server
, а затем нажать на клавишу Enter. - Поскольку мы используем приставку sudo (выполнение действия от имени суперпользователя), вам потребуется ввести пароль от своей учетной записи. Учтите, что символы при вводе не отображаются.
- Вы будете уведомлены о скачивании определенного объема архивов, подтвердите действие, выбрав вариант Д.
- По умолчанию клиент устанавливается вместе с сервером, но не лишним будет убедиться в его наличии, попытавшись инсталлировать его повторно с помощью
sudo apt-get install openssh-client
.
SSH-сервер будет доступен для взаимодействия с ним сразу же после успешного добавления всех файлов в операционную систему, но его еще следует настроить, чтобы обеспечить корректную работу. Советуем ознакомиться со следующими шагами.
Шаг 2: Проверка работы сервера
Для начала давайте убедимся в том, что стандартные параметры были применены верно, а SSH-server отзывается на основные команды и выполняет их правильно, поэтому вам надо:
- Запустите консоль и пропишите там
sudo systemctl enable sshd
, чтобы добавить сервер в автозагрузку Ubuntu, если вдруг этого не случилось автоматически после установки. - Если вам не нужно, чтобы инструмент стартовал вместе с ОС, удалите его с автозапуска путем ввода
sudo systemctl disable sshd
. - Теперь проверим, как производится подключение к локальному компьютеру. Примените команду
ssh localhost
(localhost — адрес вашего локального ПК). - Подтвердите продолжение подключения, выбрав вариант yes.
- В случае успешной загрузки вы получите примерно такую информацию, как видите на следующем скриншоте. Проверить необходимо и подключение к адресу
0.0.0.0
, который выступает в роли выбранного сетевого IP по умолчанию для других устройств. Для этого введите соответствующую команду и нажмите на Enter. - При каждом новом соединении необходимо будет его подтверждать.
Как видите, команда ssh используется для подключения к любому компьютеру. Если у вас появилась надобность соединиться с другим устройством, просто запускайте терминал и вводите команду в формате ssh имя_пользователя@ip_адрес
.
Шаг 3: Редактирование файла конфигурации
Все дополнительные настройки протокола SSH осуществляются через специальный файл конфигурации изменением строк и значений. Не будем сосредотачивать внимание на всех пунктах, к тому же большинство из них сугубо индивидуальны для каждого юзера, мы лишь покажем основные действия.
- Первоочередно сохраните резервную копию файла конфигурации, чтобы в случае чего обратиться к нему или восстановить исходное состояние SSH. В консоль вставьте команду
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original
. - Затем вторую:
sudo chmod a-w /etc/ssh/sshd_config.original
. - Запуск файла настроек выполняется через
sudo vi /etc/ssh/sshd_config
. Сразу же после ввода он будет запущен и вы увидите его содержание, как показано на скриншоте ниже. - Здесь вы можете изменять используемый порт, что всегда лучше сделать для обеспечения безопасности подключения, далее может быть отключен вход от имени суперпользователя (PermitRootLogin) и включена активация по ключу (PubkeyAuthentication). По завершении редактирования следует нажать на клавишу : (Shift + ; на латинской раскладке) и добавить букву
w
, чтобы сохранить изменения. - Выход из файла осуществляется таким же образом, только вместо
w
используетсяq
. - Не забудьте перезапустить сервер, введя
sudo systemctl restart ssh
. - После изменения активного порта его нужно зафиксировать в клиенте. Делается это путем указания
ssh -p 2100 localhost
, где 2100 — номер замененного порта. - Если у вас настроен брандмауэр, там также требуется провести замену:
sudo ufw allow 2100
. - Вы получите уведомление, что все правила были обновлены.
С остальными параметрами вы вправе ознакомиться самостоятельно, прочитав официальную документацию. Там есть советы по изменению всех пунктов, помогающие определить, какие значения следует выбирать лично вам.
Шаг 4: Добавление ключей
При добавлении ключей SSH открывается авторизация между двумя устройствами без надобности предварительного ввода пароля. Процесс идентификации перестраивается под алгоритм чтения секретного и открытого ключа.
- Откройте консоль и создайте новый ключ клиента, введя
ssh-keygen -t dsa
, а затем присвойте название файлу и укажите сам пароль для доступа. - После этого будет сохранен публичный ключ и создастся секретное изображение. На экране вы увидите его вид.
- Осталось только скопировать созданный файл на второй компьютер, чтобы отключить подключение через пароль. Используйте команду
ssh-copy-id username@remotehost
, где username@remotehost — имя удаленного компьютера и его IP-адрес.
Осталось только перезапустить сервер и проверить его корректность работы через открытый и секретный ключ.
На этом процедура установки SSH-сервера и его основная настройка завершена. Если вы вводите все команды правильно, никаких ошибок при выполнении задачи возникнуть не должно. В случае каких-либо проблем с подключением после настройки попробуйте убрать SSH из автозагрузки, чтобы решить неполадку (читайте об этом в Шаге 2).
«Для пакета «openssh-server» не найден кандидат на установку» 🙁
uname: Linux ASUSX556UQ 5.13.0-37-generic #42~20.04.1-Ubuntu SMP Tue Mar 15 15:44:28 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux