ssh: połącz z hostem myremotehost.com port 22: połączenie odrzucone

33

Próbuję więc uruchomić ssh na moim serwerze. Mogę połączyć się w mojej sieci lokalnej z lokalnym adresem IP serwera idealnie. Kiedy próbuję połączyć się zdalnie (przez nazwę domeny, którą skonfigurowałem dla serwera, który, jak wiem, działa), otrzymuję błąd odmowy połączenia:

ssh: connect to host bahhudson.mine.nu port 22: Connection refused

Z przeprowadzonych przeze mnie badań tego problemu wynika, że ​​coś jest nie tak z moim routerem. Skonfigurowałem przekierowanie portów, ale to jedyna myśl, która może powodować błąd „Odmowa połączenia” ... Mój router to WRT120N i skonfigurowałem go do przekierowywania portów w oparciu o Portforward.com , który wydaje się nieco przestarzały ponieważ niektóre z tych obrazów nie są dokładnie takie, jak wyglądają moje ustawienia routera, ale wypróbowałem wiele sposobów konfigurowania przekazywania portów i wiem, że przekazywanie dla portu 80 działa, ponieważ mój serwer ma działający dostęp HTTP ...

Również dostęp VPN był blokowany w sposób, który moim zdaniem jest podobny, więc rozwiązanie zablokowanego portu SSH 22 może być również podobne do rozwiązania blokowanego VPN.

Jakieś pomysły?

Dzięki!

bahudso
źródło

Odpowiedzi:

20

Twój dostawca usług internetowych może blokować połączenia z portem 22 (nic, co Ty lub Twój router nie możecie na to poradzić). Wystarczy ustawić SSHd, aby działał na innym porcie, np. 2222.

W /etc/ssh/sshd_config, zmień Port 22na Port 2222i wtedy sudo service ssh restart. Prześlij dalej 2222 (lub cokolwiek) i spróbuj ponownie.

ish
źródło
Nadal pojawia się ten sam błąd odmowy połączenia (22, gdy nie określam portu, gdy używam ssh i 2222, gdy używam -p 222). Przekierowałem port przychodzący 22 na numer przekierowujący na 2222 i zmieniłem port na 2222 w sshd_config. Czy coś pomijam?
bahudso
1
Spróbuj tego: Przychodzące 2222 na routerze musi przekierować do 2222 (z ustawionym portem 2222 sshd_config).
ish
@izx kudos dla reguł routera. W pewnym momencie pomyślałem, że wariuję i nie wiem, co robię. LOL!
GTodorov,
Dla przyszłych czytelników. Upewnij się, że odwołujesz się do pliku /etc/ssh/sshd_config(notice ssh d ). Po godzinie ciągnięcia za włosy, poznałem tę małą różnicę. ; P
Shashanth
Mój nowy router używa portu 22 do funkcji zdalnej administracji i nie wyświetla go nigdzie w interfejsie, więc niekoniecznie musi to być dostawca usług internetowych.
Tu-Reinstate Monica-dor duh
21

Po prostu się udostępnij. ( może mieć inną konfigurację )

W moim przypadku stwierdziłem, że ten błąd może się zdarzyć, ponieważ nie zainstalowałem go openssh-serverna innym komputerze.

Po zainstalowaniu openssh-server na innym komputerze problem:

ssh: connect to host 192.168.XXX.XXX port 22: Connection refused

jest rozwiązane.

Santosa Sandy
źródło
18
  1. Pierwsza kontrola openssh-serverzainstalowana w tym systemie.

  2. sprawdź status usługi ssh, uruchom usługę ssh.

    sudo service ssh status    
    sudo service ssh start
    
  3. Sprawdź iptablesw tym systemie, czy port 22 jest zablokowany. Po prostu zezwól na port, iptablesa następnie sprawdź.

    sudo iptables -A INPUT -p tcp --dport ssh -j ACCEPT
    
  4. W przeciwnym razie zmień numer portu sshz 22 na 2222 poprzez edycję

    vi etc/ssh/sshd_config    
    /etc/init.d/ssh restart.
    
pravin09
źródło
5

Sprawdź status usługi SSH i uruchom usługę SSH, jeśli jest zatrzymana:

sudo service ssh status

W moim przypadku SSH został zatrzymany, ale po uruchomieniu usługi:

sudo service ssh start

Mogę zdalnie zalogować się do systemu Linux.

Ramesh Raja
źródło
4

Rozwiązałem ten problem za pomocą następujących poleceń:

sudo apt-get purge openssh-server 
sudo apt-get install openssh-server
Soheil Zabihi
źródło
0

Inną prawdopodobną przyczyną jest to, że serwer pośredniczący między sesją terminalową a serwerem hosta potrzebuje dostępu do identyfikatora użytkownika i hasła, który odrzuca, aby umożliwić przepływ ruchu, jest to spowodowane zaporą sieciową lub skarpetami ssl itp.

Vijay-H
źródło
Nie wydaje się to „prawdopodobną przyczyną”, zwłaszcza biorąc pod uwagę przyjętą odpowiedź.
belacqua
0

Rozwiązaniem będzie dodanie numeru portu serwera poprzedzonego „-p”:

Przykład wiersza poleceń:

ssh -L localport:127.0.0.1:localport username@ServerIP **-p** **serverport**
Jaywad
źródło
0

Wystarczy przejść do whm, a następnie otworzyć Zmiana kontroli dostępu do hosta w następujący sposób

sshd ALL zezwala

Arshid KV
źródło
0

Wystąpił ten sam błąd, ale po ponownym uruchomieniu komputera wszystko znów działało.

Więc możesz spróbować przed ponowną instalacją niektórych składników.

Alessandro Buffoli
źródło