ssh при подключении localhost [duplicate]

У меня есть 32-битный Ubuntu Server 10.10 в моем доме. Я делаю SSH-подключения к нему с моего ПК через Putty.

Проблема в том, что иногда я могу войти в систему без проблем. Однако иногда это дает мне такую ​​ошибку: Network error: Connection refused.

Тогда я ничего не меняю, попробую входить в систему несколько раз, подождать некоторое время и повторить попытку. Иногда я могу войти, иногда я не могу.

Редактирование:

И иногда, Putty дает ошибку Network error: Software caused connection abort после отображения login as:.

Вот вывод ping -t:

Pinging 192.168.2.254 with 32 bytes of data: Reply from 192.168.2.254: bytes=32 time=6ms TTL=64 Reply from 192.168.2.254: bytes=32 time=65ms TTL=6 Reply from 192.168.2.254: bytes=32 time=88ms TTL=6 Reply from 192.168.2.254: bytes=32 time=1ms TTL=64 Reply from 192.168.2.254: bytes=32 time=3ms TTL=64 Reply from 192.168.2.254: bytes=32 time=1ms TTL=64 Reply from 192.168.2.254: bytes=32 time=1ms TTL=64 Reply from 192.168.2.254: bytes=32 time=1ms TTL=64 Reply from 192.168.2.254: bytes=32 time=1ms TTL=64

Я отключил брандмауэр маршрутизатора, и теперь все работает. Кроме этого, я все еще не могу войти в свой веб-сервер, набрав внешний IP-адрес с моего ПК.

87
задан 18 December 2013 в 00:31

22 ответа

У меня была такая же проблема, хотя у меня был статический IP-адрес. Оказывается, другому серверу в моей сети был присвоен одинаковый (статический) IP-адрес. (Duh.) Таким образом, похоже, что проблема вызвана конфликтами IP-адресов, но могут быть различные возможные способы их реализации. Если вы ставите статику и все еще имеете проблему, попробуйте выключить машину и выполнить ping-адрес. Если вы получите какие-либо ответы, начните искать то, что еще может иметь один и тот же адрес.

7
ответ дан 18 July 2018 в 12:11

Используйте arping на IP-адресе, у которого возникают проблемы с подключением. Это покажет MAC-адрес для каждого ответа ping и, надеюсь, разоблачит MAC-адрес изгоев.

arping 192.168.2.254

Вы должны проверить пул IP-адресов DHCP на сервере DHCP, убедитесь, что никакие устройства не имеют статических IP-адресов, которые сталкиваются с пулом DHCP.

Эти подсказки указывают на дублирование IP-адреса :

ping ttl и время прохождения в оба конца выглядит как 2 отдельных сервера прерывистых разъединений без перезагрузки
12
ответ дан 18 July 2018 в 12:11

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

Check / var / log / messages для соединения / нисходящей линии Ethernet (или wlan в случае беспроводной связи). Если это так, попробуйте изменить кабели.

3
ответ дан 18 July 2018 в 12:11

Я могу подтвердить эту точную проблему: это не простая проблема с подключением. Ссылка ethernet не изменяет состояние; сервер доступен через ping; ssh соединяется безупречно изредка, то, казалось бы, случайно не подключается, или существующие сеансы ssh снижаются. Это происходит на Ubuntu 10.04 и 11.04. Следуя предложению hheimbuerger, я дал серверу статический IP-адрес, это, казалось, исправить.

Временное решение: изменить адаптер с DHCP на статический.

3
ответ дан 18 July 2018 в 12:11

В основном это связано с любой из следующих причин:

Слишком много пользователей в сети, пытающихся получить доступ к серверу. Более одного компьютера в сети имеет тот же IP-адрес, что и сервер, вызывающий конфликт IP-адресов Неверное имя пользователя или ваши учетные данные были отменены
1
ответ дан 18 July 2018 в 12:11

У меня была точно такая же проблема, и в моем случае это оказался конфликт IP-адресов. У моей Ubuntu VM был динамический адрес, но на другой машине (в данном случае на телефоне) был установлен статический IP-адрес, о котором DHCP-сервер не знал.

Просто изменив IP-адрес, назначенный сервером DHCP к Ubuntu VM исправлены все проблемы подключения.

1
ответ дан 18 July 2018 в 12:11

Вы должны установить openssh-сервер в Linux, прежде чем это сработает. Получите внутренний IP-адрес Ubuntu и используйте этот IP для настройки перенаправления портов в разделе 22 порта вашего маршрутизатора. Если вы не собираетесь использовать SSH вне вашей сети, это не требуется.

Вот как установить openssh-сервер:

sudo apt-get install openssh-server openssh-client [ENTER PASSWORD]
67
ответ дан 18 July 2018 в 12:11

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

Следующее правило разрешает 5 новых подключений в минуту, если вы превысите этот предел, ваши новые соединения будут отклонены через некоторое время: [ ! d1] -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -m limit --limit 5/min -j ACCEPT

См. документацию IPTables / Netfilter, прокрутите бит до limit.

0
ответ дан 18 July 2018 в 12:11

Конфликт IP-адресов оказался основной причиной, когда я видел это сообщение об ошибке SSH.

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

В этой замечательной статье показано, как использовать arp-scan, чтобы проверить, требовали ли два аппаратных устройства один и тот же IP-адрес.

В моем случае серверная машина имела статический IP-адрес 192.168.1.42, я использовал arp-scan для проверки этого адреса:

$ sudo apt-get install arp-scan $ arp-scan -I eth0 -l | grep 192.168.1.42 192.168.1.42 d4:eb:9a:f2:11:a1 (Unknown) 192.168.1.42 f4:23:a4:38:b5:76 (Unknown) (DUP: 2)

Достаточно было конфликта, как показано выше. Затем я запустил arp-scan без grep, обнаружил, что .43 был доступен, пошел и отредактировал /etc/network/interfaces и изменил статический ip с .42 на .43

35
ответ дан 18 July 2018 в 12:11

arp-scan показывает два дублирующих устройства, но когда я запускаю Advanced IP-сканер на Win8, все они выглядят отлично. Поэтому они не всегда согласны.

Я установил маршрутизатор для отзыва всех договоров аренды, указав, что он дает только 1-часовую аренду. Дайте ему время, чтобы увидеть, очищается ли он.

0
ответ дан 18 July 2018 в 12:11

Что вы получите, если вы это сделаете?

grep 192.168.2.25 /etc/hosts.deny

Если это что-то возвращает, вам нужно удалить его.

2
ответ дан 18 July 2018 в 12:11

У меня была такая же проблема, хотя у меня был статический IP-адрес. Оказывается, другому серверу в моей сети был присвоен одинаковый (статический) IP-адрес. (Duh.) Таким образом, похоже, что проблема вызвана конфликтами IP-адресов, но могут быть различные возможные способы их реализации. Если вы ставите статику и все еще имеете проблему, попробуйте выключить машину и выполнить ping-адрес. Если вы получите какие-либо ответы, начните искать то, что еще может иметь один и тот же адрес.

7
ответ дан 24 July 2018 в 19:55
  • 1
    Я испытал те же симптомы и отследил его до машины с тем же IP-адресом, что и сервер. – SabreWolfy 7 December 2011 в 21:05

Используйте arping на IP-адресе, у которого возникают проблемы с подключением. Это покажет MAC-адрес для каждого ответа ping и, надеюсь, разоблачит MAC-адрес изгоев.

arping 192.168.2.254

Вы должны проверить пул IP-адресов DHCP на сервере DHCP, убедитесь, что никакие устройства не имеют статических IP-адресов, которые сталкиваются с пулом DHCP.

Эти подсказки указывают на дублирование IP-адреса :

ping ttl и время прохождения в оба конца выглядит как 2 отдельных сервера прерывистых разъединений без перезагрузки
12
ответ дан 24 July 2018 в 19:55
  • 1
    Отлично, указал мне прямо на правильный путь! Был способен отслеживать его по второму MAC-адресу, к которому он был, и изменить IP-адрес принтера – Canadian Luke 15 September 2016 в 23:59
  • 2
    Мне нужно было добавить -I wlan0 (wlan0 - мое устройство wifi) – pl-94 15 January 2018 в 18:32

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

Check / var / log / messages для соединения / нисходящей линии Ethernet (или wlan в случае беспроводной связи). Если это так, попробуйте изменить кабели.

3
ответ дан 24 July 2018 в 19:55
  • 1
    Да, я пробовал и добился успеха в создании подключения ssh из-за пределов моей сети (на котором находится мой сервер и мой компьютер). Кажется, он работает хорошо. Мой сервер также является веб-сервером. Когда я пытаюсь подключиться через порт 80 с моего ПК, я вижу страницу входа в модем ADSL. Но когда я пытаюсь сделать то же самое с другого компьютера, который находится за пределами моей сети, я вижу страницу Apache's It Works. – frbry 12 March 2011 в 23:08
  • 2
    Какой у вас ПК ip, ваш ip-сервер и ваш внутренний маршрутизатор adsl? – forcefsck 12 March 2011 в 23:22
  • 3
    ПК: 192.168.2.2 (получен из DHCP) Сервер: 192.168.2.254 (статический, из диапазона DHCP) ADSL-маршрутизатор: 192.168.2.1 – frbry 12 March 2011 в 23:24
  • 4
    Я немного смущен, когда вы подключаетесь с 192.168.2.2 до 192.168.2.254 порт 80, вы получаете логин модема adsl? – forcefsck 12 March 2011 в 23:54
  • 5
    Если вы не настроили какой-либо веб-прокси на свой сервер, то, очевидно, ваш модем adsl отвечает на запросы, сделанные в 192.168.2.254, и, вероятно, это тот случай, когда вы получаете ошибку Connection refused с помощью ssh. Поэтому вам нужно перепроверить настройки вашего модема adsl. – forcefsck 13 March 2011 в 00:27

Я могу подтвердить эту точную проблему: это не простая проблема с подключением. Ссылка ethernet не изменяет состояние; сервер доступен через ping; ssh соединяется безупречно изредка, то, казалось бы, случайно не подключается, или существующие сеансы ssh снижаются. Это происходит на Ubuntu 10.04 и 11.04. Следуя предложению hheimbuerger, я дал серверу статический IP-адрес, это, казалось, исправить.

Временное решение: изменить адаптер с DHCP на статический.

3
ответ дан 24 July 2018 в 19:55

В основном это связано с любой из следующих причин:

Слишком много пользователей в сети, пытающихся получить доступ к серверу. Более одного компьютера в сети имеет тот же IP-адрес, что и сервер, вызывающий конфликт IP-адресов Неверное имя пользователя или ваши учетные данные были отменены
1
ответ дан 24 July 2018 в 19:55

У меня была точно такая же проблема, и в моем случае это оказался конфликт IP-адресов. У моей Ubuntu VM был динамический адрес, но на другой машине (в данном случае на телефоне) был установлен статический IP-адрес, о котором DHCP-сервер не знал.

Просто изменив IP-адрес, назначенный сервером DHCP к Ubuntu VM исправлены все проблемы подключения.

1
ответ дан 24 July 2018 в 19:55

Вы должны установить openssh-сервер в Linux, прежде чем это сработает. Получите внутренний IP-адрес Ubuntu и используйте этот IP для настройки перенаправления портов в разделе 22 порта вашего маршрутизатора. Если вы не собираетесь использовать SSH вне вашей сети, это не требуется.

Вот как установить openssh-сервер:

sudo apt-get install openssh-server openssh-client [ENTER PASSWORD]
69
ответ дан 24 July 2018 в 19:55
  • 1
    Не отвечает на вопрос напрямую, но это полезно, поскольку Ubuntu не поставляется с предустановленным сервером SSH. – ostati 30 December 2015 в 21:50
  • 2
    Недавно я получил новый ноутбук и полностью забыл, что он не установлен по умолчанию = D – Izkata 5 April 2016 в 17:31

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

Следующее правило разрешает 5 новых подключений в минуту, если вы превысите этот предел, ваши новые соединения будут отклонены через некоторое время: [ ! d1] -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -m limit --limit 5/min -j ACCEPT

См. документацию IPTables / Netfilter, прокрутите бит до limit.

0
ответ дан 24 July 2018 в 19:55

Конфликт IP-адресов оказался основной причиной, когда я видел это сообщение об ошибке SSH.

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

В этой замечательной статье показано, как использовать arp-scan, чтобы проверить, требовали ли два аппаратных устройства один и тот же IP-адрес.

В моем случае серверная машина имела статический IP-адрес 192.168.1.42, я использовал arp-scan для проверки этого адреса:

$ sudo apt-get install arp-scan $ arp-scan -I eth0 -l | grep 192.168.1.42 192.168.1.42 d4:eb:9a:f2:11:a1 (Unknown) 192.168.1.42 f4:23:a4:38:b5:76 (Unknown) (DUP: 2)

Достаточно было конфликта, как показано выше. Затем я запустил arp-scan без grep, обнаружил, что .43 был доступен, пошел и отредактировал /etc/network/interfaces и изменил статический ip с .42 на .43

35
ответ дан 24 July 2018 в 19:55
  • 1
    Фактически, запуск этой команды показывал только одну строку в моем поле, за исключением того, что это имя было именем другого устройства. – assylias 26 July 2012 в 04:26
  • 2
    Большое вам спасибо за то, что вы в правильном направлении по поводу конфликта IP-адресов. Схожая проблема! +1 – DominikAngerer 10 January 2015 в 06:47
  • 3
    Просто спас меня так много времени ... ... – Chris Barlow 8 July 2015 в 22:31
  • 4
    спасли меня много времени, спасибо – liang 12 April 2016 в 18:55
  • 5
    Иногда мой маршрутизатор просто нужно перезапустить, чтобы решить эту проблему. – Gabriel Staples 12 September 2016 в 01:47

arp-scan показывает два дублирующих устройства, но когда я запускаю Advanced IP-сканер на Win8, все они выглядят отлично. Поэтому они не всегда согласны.

Я установил маршрутизатор для отзыва всех договоров аренды, указав, что он дает только 1-часовую аренду. Дайте ему время, чтобы увидеть, очищается ли он.

0
ответ дан 24 July 2018 в 19:55

Что вы получите, если вы это сделаете?

grep 192.168.2.25 /etc/hosts.deny

Если это что-то возвращает, вам нужно удалить его.

2
ответ дан 24 July 2018 в 19:55
  • 1
    Это одно из печально известных «бесполезных применений cat». - вы можете просто grep 192.168.2.25 /etc/hosts.deny – Tobias Kienzler 26 February 2014 в 14:19
  • 2
    @TobiasKienzler Исправлено – wjandrea 23 May 2017 в 23:09

Другие вопросы по тегам:

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