@Dant3lion

Как настроить смену порта SSH, чтобы успешно подключаться при его смене?

Здравствуйте. Учусь сейчас работе с SSH. Создал виртуальную машину на базе Ubuntu в VirtualBox. Установил все базовые компоненты, установил ssh.
Пробросил в настройках VirtualBox порты:
6690659adcdb8566590729.png
Виртуальную машину перезапустил.
Локальная машина - WIndows 11 . В качестве SSH-клиента установил Putty.
Начал устанавливать соединение
ssh -p 2222 user@127.0.0.1

Появилось сообщение (привожу подобное)
The authenticity of host '[192.168.1.10]:1234 ([192.168.1.10]:1234)' can't be established.
ED25519 key fingerprint is SHA256:/1Qlz/8c9B4n9gy/3IXrVPSe4rF8z+XgvI6uvTGMCr8.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '[192.168.1.10]:1234' (ED25519) to the list of known hosts.
user@192.168.1.10's password:


Нажал да, т.к. работаю в своей локальной сети.
Перейдя успешно на сервер, изменил в рамках обучения порт подключения (sudo nano /etc/ssh/sshd_config):
#       $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.

Include /etc/ssh/sshd_config.d/*.conf

Port 1234
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

#HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_ecdsa_key
#HostKey /etc/ssh/ssh_host_ed25519_key

# Ciphers and keying
#RekeyLimit default none


Порт сменен с 22 на 1234
Сразу же после этого ввел 2 команды:
sudo service ssh restart
sudo systemctl restart sshd

После этого выполнил подключение на сервере к самому себе (с измененным значением порта).
Выполнено было успешно.

Вышел из соединения

При следующей попытке подключения из локальной машины начало появляться следующее сообщение -
ssh -p 1234 user@127.0.0.1
ssh: connect to host 127.0.0.1 port 1234: Connection refused


Пока пытался разобраться, решил подключиться серверу через другого пользователя на виртуальной машине
Соединение было создано по сценарию с начала (с запросом о согласии на подключение). Написал Да, после чего успешно перешел на сервер.
Изменил текст sshd-config на первоначальный вариант, после чего также рестартнул ssh и sshd. Вышел с сервера, и теперь уже здесь не мог подключится по старому порту, но начал снова успешно подключаться на локальной машине.

UFW отключен.
sudo ufw status
Status: inactive


Можете объяснить, в чем проблема и как её возможно решить?

PS

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

sudo systemctl status ssh
[sudo] password for vboxuser:
● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2024-07-12 01:47:17 MSK; 2min 47s ago
       Docs: man:sshd(8)
             man:sshd_config(5)
    Process: 3511 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
   Main PID: 3512 (sshd)
      Tasks: 1 (limit: 2246)
     Memory: 2.6M
     CGroup: /system.slice/ssh.service
             └─3512 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups

Jul 12 01:47:17 LinuxStudy systemd[1]: Starting OpenBSD Secure Shell server...
Jul 12 01:47:17 LinuxStudy sshd[3512]: Server listening on 0.0.0.0 port 1234.
Jul 12 01:47:17 LinuxStudy sshd[3512]: Server listening on :: port 1234.
Jul 12 01:47:17 LinuxStudy systemd[1]: Started OpenBSD Secure Shell server.
Jul 12 01:49:50 LinuxStudy sshd[3535]: Accepted password for vboxuser from 127.0.0.1 port 41680 ssh2
Jul 12 01:49:50 LinuxStudy sshd[3535]: pam_unix(sshd:session): session opened for user vboxuser by (uid=0)


sudo netstat -tuln | grep 1234
tcp        0      0 0.0.0.0:1234            0.0.0.0:*               LISTEN
tcp6       0      0 :::1234                 :::*                    LISTEN
  • Вопрос задан
  • 314 просмотров
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Во-первых, начало сессии с портом :1234 говорит о том, что не к :2222 вы подключались.

Во-вторых, после смены порта с 22 на 1234 вы правило проброса 2222->22 не меняли? А ведь должно было стать 1234->1234...

И в-третьих, что за служба ssh.service? Есть же посконно-дефолтное sshd.service.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
karabanov
@karabanov
Системный администратор
В правиле проброса надо порт поменять с 22 на 1234
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы