Добавить в корзинуПозвонить
Найти в Дзене
HackWorld

SSH-сервер на Linux: сервер для удалённого администрированния системы

В прошлой статье я рассказал про SSH-клиент и как при помощи него подключиться к серверу. Теперь настало время рассказать про сервер и как его запустить, поехали!
Оглавление

В прошлой статье я рассказал про SSH-клиент и как при помощи него подключиться к серверу. Теперь настало время рассказать про сервер и как его запустить, поехали!

В этой статье про сам протокол SSH я не буду, ведь я это делал раньше, поэтому сразу приступлю к делу.

Начало установки

Для начала нужно установить нужные пакеты. Вот их список:

openssh — для доступа к Linux (установятся клиент ssh и сервер sshd (если вы устанавливали его до этого, можно будет этот пункт пропустить));
autossh — для поддержания тоннеля;
termux-services — для автозапуска autossh.

Все эти пакеты можно установить одной командой:

pkg install openssh autossh termux-devices

Подготовка

Итак, теперь нужно установить пароль для сервера. Вводим это команду:

passwd [ваш пароль]

После нужно вставить этот текст в файл ~/../usr/etc/ssh/sshd_config для установки порта:

Port 2222
PrintMotd no
PasswordAuthentication yes
PubkeyAcceptedKeyTypes +ssh-dss
Subsystem sftp /data/data/com.termux/files/usr/libexec/sftp-server

Теперь нужно перезапустить сервер:

sv down sshd
sv up sshd

Если вы хотите, что-бы ваш SSH-сервер запускался автоматически с запуском Linux, то прописываем эту команду:

sv-enable sshd

SSH-тоннель

Предположим, что у нас есть сервер ssh например serv. Это или домашний сервер, или сервис, который предоставляет доступ к ssh серверу, по типу Free Linux shell server.

Настраиваем тоннель этой командой:

ssh -R 3022:localhost:2222 myserver.ru

Нужно удостовериться, что всё сделано правильно. Для этого вводим эту команду:

ssh srv_rev

Сервис для подключения к SSH-тоннелю

Вводим поочерёдно эти команды:

  • создаём папку
mkdir ~/../usr/var/service/autossh/

  • создаём файл
echo '#!/bin/sh' > ~/../usr/var/service/autossh/run
echo 'exec autossh -M 20022 -NT -f srv_rev' >> ~/../usr/var/service/autossh/run

  • даём права на исполнение
chmod +x ~/../usr/var/service/autossh/run

  • запускаем сервис
sv up autossh

После этого установится ssh тоннель для доступа к Termux с удалённого сервера, если настроено верно.

Подключение к SSH-серверу

Остался самый простой шаг: подключение. Заходим с другого устройства в командную строку, и через SSH-клиент и вводим эту команду:

ssh 127.0.0.1 -p 3022

И на этом всё, ставьте лайки!