Как разрешить ошибки Connection Connection в SSH-соединении?

80

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

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

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

Что я могу сделать, чтобы решить эту проблему?

Edit:

И иногда, 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-адрес с моего ПК.

    
задан frbry 12.03.2011 в 19:07
источник

12 ответов

61

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

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

sudo apt-get install openssh-server openssh-client
[ENTER PASSWORD]
    
ответ дан MacGyver 20.04.2012 в 22:55
34

Конфликт 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 с 0,42 до 0,43

    
ответ дан Rian Sanderson 24.05.2012 в 01:23
11

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

arping 192.168.2.254

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

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

  • ping ttl и время прохождения в оба конца выглядит как 2 разных сервера.
  • прерывистые разъединения без перезагрузки.
ответ дан John Shalamskas 17.08.2012 в 23:30
7

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

    
ответ дан DLosc 11.08.2011 в 17:17
3

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

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

    
ответ дан forcefsck 12.03.2011 в 19:41
3

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

Обходной путь: измените адаптер с DHCP на статический.

    
ответ дан George 07.07.2011 в 21:07
2

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

grep 192.168.2.25 /etc/hosts.deny

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

    
ответ дан Jodi MIddleton 02.03.2013 в 12:27
2

откройте файл ssh config:

sudo nano /etc/ssh/ssh_config

найдите порт

#port 22

удалите острый параметр порта

затем сохраните файл с помощью ctrl + x и перезапустите службу

sudo service ssh restart
    
ответ дан Amin 17.04.2017 в 21:40
1

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

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

    
ответ дан hheimbuerger 14.04.2011 в 10:21
1

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

  1. Слишком много пользователей в сети, пытающихся получить доступ к серверу
  2. Более одного компьютера в сети имеет тот же IP-адрес, что и сервер, вызывающий конфликт IP
  3. Неверное имя пользователя или ваши учетные данные были отменены.
ответ дан Mevin Babu 10.12.2012 в 14:16
0

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

Следующее правило разрешает 5 новых подключений в минуту, если вы превысите этот предел, ваши новые соединения будут отклонены через некоторое время:

-A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -m limit --limit 5/min -j ACCEPT

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

    
ответ дан Lekensteyn 12.03.2011 в 20:04
0

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

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

    
ответ дан SDsolar 23.06.2017 в 23:15