August 30, 2020

Установка ssh и настройка root доступа в Debian

В этой статье мы узнаем как установить и настроить ssh сервер на Debian 9 Stretch для удаленного доступа.

Установка ssh сервера

Сначала, обновим списки пакетов с помощью команды:

sudo apt-get update

Списки пакетов должны обновиться как на скриншоте ниже.

В Debian SSH-сервер представлен в виде пакета «openssh-server». Чтобы установить OpenSSH в Debian, выполните следующую команду:

sudo apt-get install openssh-server

Введите «Y» и нажмите <Enter> для продолжения.

SSH-сервер установился.

В Debian по умолчанию сервер OpenSSH работает так, что он запускается автоматически после установки. Вы также можете проверить работу с помощью следующей команды:

sudo systemctl status ssh

Вы должны увидеть статус «active (running)», как показано на скриншоте ниже. Это означает, что сервер SSH работает. Он прослушивает порт 22.

Если ssh-сервер не работает, вы можете использовать следующую команду, чтобы запустить его.

sudo systemctl start ssh

root доступ через ssh

Если вы хотите получить root доступ к серверу, то вы можете попробовать войти так:

ssh [email protected]

Но root доступ в большинстве операционных систем отключен по умолчанию. Это также относится и к Debian. Существует обходной путь без изменения конфигурации, просто войдите в систему как обычный пользователь и смените пользователя на root:

su -

Введите свой пароль от root, и вы должны войти в систему как root, как показано на скриншоте ниже.

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

Для этого откройте файл конфигурации «/etc/ssh/sshd_config» с помощью «nano»:

sudo nano /etc/ssh/sshd_config

Содержимое файла.

Промотаем немного вниз. Вы должны увидеть строку, которая помечена на скриншоте.

Удалите # перед PermitRootLogin и измените «prohibit-password» на «yes». Как только вы закончите, нажмите Ctrl + X, нажмите «y», а затем нажмите <Enter>, чтобы сохранить файл.

Перезапустим ssh-сервер, чтобы изменения вступили в силу.

sudo systemctl restart ssh

Теперь вы сможете напрямую подключиться как пользователь root, как показано на скриншоте ниже.

Подключение по ssh

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

Чтобы узнать ip компьютера, на котором запущен ssh-сервер, выполните следующую команду с этого компьютера.

ip a

На скриншоте видно, что ip адрес — 192.168.10.82

Теперь, подключимся к этому серверу с другого компьютера:

ssh USERNAME@HOST/IP_ADDR

Я подключусь к ssh-серверу с адресом 192.168.10.82 как пользователь «shovon».

ssh [email protected]

После того как вы нажмете , вы должны увидеть следующее приглашение, если вы впервые подключаетесь к серверу.

Просто введите «yes» и нажмите <Enter>.

Затем вам будет предложено ввести пароль от пользователя, под которым вы заходите. Введите пароль и нажмите <Enter>.

После подключения имя хоста изменилось с «linuxhint-pc» на «linuxhint», как вы можете увидеть на скриншоте ниже.

Далее вы можете проверить, что вы подключены к удаленному серверу с помощью следующей команды:

ip a

Как вы видите, ip адрес 192.168.10.82

Вы можете запускать здесь любые команды и управлять удаленным сервером по SSH.

Когда вы закончите настройку, просто выполните следующую команду, чтобы закрыть соединение.

exit

Видите? Мы вернулись обратно к «linuxhint-pc».