To jest kanoniczne pytanie dotyczące odmowy połączenia
Widzimy wiele pytań
Kiedy próbuję połączyć się z systemem, pojawia się komunikat
Połączenie odrzucone
Dlaczego to ?
networking
connection-refused
użytkownik9517
źródło
źródło
Odpowiedzi:
Komunikat „Odmowa połączenia” ma dwie główne przyczyny:
Żaden proces nie słucha.
Jest to zdecydowanie najczęstszy powód komunikatu. Najpierw upewnij się, że próbujesz połączyć się z odpowiednim systemem. Jeśli chcesz ustalić, czy to jest problem, uruchom na zdalnym systemie polecenie netstat lub ss 1, np. Jeśli oczekujesz, że proces będzie nasłuchiwał na porcie 22222
lub
W przypadku OSX odpowiednim poleceniem jest
Jeśli nic nie słucha, powyższe nie wytworzy żadnego wyjścia. Jeśli zobaczysz jakieś dane wyjściowe, potwierdź, że tego oczekujesz, a następnie zobacz sekcję zapory poniżej.
Jeśli nie masz dostępu do systemu zdalnego i chcesz potwierdzić problem przed zgłoszeniem go odpowiednim administratorom, możesz użyć tcpdump (wireshark lub podobny).
Podczas próby połączenia z portem IP: gdzie nic nie nasłuchuje, odpowiedzią systemu zdalnego na początkowy pakiet SYN jest pakiet z ustawionymi flagami RST, ACK. To zamyka połączenie i powoduje komunikat o odmowie połączenia, np
Zauważ, że tcpdump używa . do reprezentowania ACK flagę.
Port jest blokowany przez zaporę ogniową
Jeśli port jest blokowany przez zaporę ogniową, a zapora została skonfigurowana tak, aby odpowiadać,
icmp-port-unreachable
spowoduje to również komunikat odmowy połączenia. Ponownie możesz to zobaczyć za pomocą tcpdump (lub podobnego)Pamiętaj, że informuje nas to także o miejscu, w którym znajduje się zapora blokująca.
Teraz już wiesz, co powoduje komunikat „Odmowa połączenia”, powinieneś podjąć odpowiednie działania, np. Skontaktować się z administratorem zapory ogniowej lub ustalić przyczynę, dla której proces nie nasłuchuje.
1 Prawdopodobnie dostępne są inne narzędzia.
źródło
Dla mnie na ściśnięciu Debiana 6 było to tak proste, jak sprawdzenie usługi SSH :
I nie znaleziono niczego (z komunikatem
ssh: unrecognized service
) po prostu instalując usługę :Działa to również, jeśli nie otrzymujesz połączenia SFTP, ponieważ SFTP jest podzbiorem SSH (podczas gdy FTPS jest podzbiorem FTP).
źródło