Ssh: подключение к хосту 127.0.0.1 порт 2222: отказано в подключении

Здравствуйте, я создал пользователя в Ubuntu и хочу подключиться к нему с помощью ssh используя эту команду

ssh user@127.0.0.1 -p 2222

и я получил эту ошибку

ssh: connect to host 127.0.0.1 port 2222: Connection refused

Я пытался

ssh -vvv user@127.0.0.1 -p 2222

и получил

OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014 debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug2: ssh_connect: needpriv 0 debug1: Connecting to 127.0.0.1 [127.0.0.1] port 2222. debug1: connect to address 127.0.0.1 port 2222: Connection refused sssh: connect to host 127.0.0.1 port 2222: Connection refused

какая-нибудь помощь?

Примечание: Я использую virtualbox

Я не устанавливал ssh, как его установить и настроить?

Обратите внимание, что 127.0.0.1, он же localhost, - это ваш локальный компьютер. Обычно на этом этапе вы используете IP-адрес или имя хоста удаленного хоста.

  • Сначала установите ssh-сервер и клиент на вашем целевом хосте и на вашем локальном хосте

    sudo apt-get install ssh

    Настройка не требуется.

  • По умолчанию SSH прослушивает порт 22, поэтому используйте

    ssh user@127.0.0.1 -p 22

    или

    ssh user@127.0.0.1
  • Или перенастроить порт для ssh-сервер (целевой хост)

    sudo nano /etc/ssh/sshd_config

    и изменить

    Port 22

    к

    Port 2222

    перезагрузите конфигурацию

    sudo service ssh force-reload

    и подключаться через

    ssh user@127.0.0.1 -p 2222

Пара моментов здесь

  • По умолчанию Ubuntu имеет ssh клиент (который предназначен для исходящего соединения с вашим куда-то еще), но нет ssh сервер (чтобы разрешить входящие подключения с других компьютеров к вашему). Это означает, что если вы хотите подключиться к нашему компьютеру по ssh, вам нужен сервер, который вы можете получить с помощью sudo apt-get install openssh-server.
  • ssh по умолчанию выполняется на порту 22. Если вы попробуете использовать любой другой порт, в подключении будет отказано. Итак, как только у вас есть ssh-сервер, вы можете просто ssh username@localhost, и это по умолчанию перенаправит вас на порт 22. Теперь, если вы хотите включить ssh-вход на порт 2222, вам нужно будет включить переадресацию портов. Тем более, что вы используете virtualbox.

Похоже, у вас нет ни того, ни другого:

  1. sshd демон, работающий внутри виртуальной машины, или

  2. переадресация портов настроена правильно

Для 1. вам нужно проверить, является ли sshd сервер работает на виртуальной машине, например, проверяя с помощью консоли VB, что service ssh status возвращает то, что является активным и запущенным. Если не запустить sudo service ssh start.

Для 2. вы можете проверить, прослушивает ли VB этот порт. Вы можете сделать это, проверив все открытые порты в режиме ПРОСЛУШИВАНИЯ. sudo netstat -anp | grep -w LISTEN должен включать порт 2222 (при условии, что вы используете linux в качестве хост-ОС).

У вас должно быть что-то вроде этого в выводе:

tcp     0    0 0.0.0.0:**2222**             0.0.0.0:*               LISTEN      1564/sshd 

(в данном случае sshd процесс прослушивает порт 2222)

Кроме того, вы должны сообщить нам, какова ваша сетевая конфигурация внутри VB. Без этого трудно сказать, правильна ли команда, которую вы используете.

Следующий набор команд решит проблему для Ubuntu 18.04Введите следующие команды в терминале:

sudo rm /etc/ssh/ssh_host_*sudo dpkg-reconfigure openssh-server

Теперь проверьте с:

ssh localhost

Это сработает.И если вы хотите, то снова установите openssh с помощью следующей команды:

sudo apt-get install open-ssh

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

После входа в систему просто откройте

cmd =$vi /etc/crontab  

и добавить

*/5 *  * * *   root    service ssh restart

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

выполнить команду

grep "^[^#;]" /etc/ssh/sshd_config

и проверьте параметр

GSSAPICleanupCredentials да

если значение равно "нет", то обновите значение "да" и повторите попытку

Использование приведенной ниже команды сработало для меня.

$systemctl start sshd.service

Порт по умолчанию - 22. С помощью ssh xxxt@127.0.0.1 -p 22 -i ~/.ssh/xxx должно сработать.

Вы должны перенаправлять на адрес обратной связи (127.0.1.1) для ubuntu, а не 127.0.0.1 IMO: https://unix.stackexchange.com/a/146028

Вы установили ssh-сервер? Вы настроили его на прослушивание порта 2222? Обычно он прослушивает порт 22!

Пожалуйста, покажите вывод ssh -vvv user@127.0.0.1 - с. 2222.

Вы настроили “sshd” для прослушивания порта 2222? если нет, то используйте ssh user@127.0.0.1