Sprawdź instalację OpenSSH w systemie Linux
Najpierw sprawdź, czy OpenSSH jest zainstalowany w systemie, czy nie. Polecenie wspomniane poniżej zweryfikuje to.
Sudo Apt List -zainstalowany | Grep Openssh-Server
Jeśli zostanie zainstalowany OpenSSH, zobaczysz następujące dane wyjściowe na terminalu.
W przypadku, gdy OpenSSH nie jest zainstalowany, zainstalujemy go, wykonując następujące polecenie:
sudo apt install openssh-server
Sprawdź usługę SSH
Sprawdźmy teraz, jaki jest status usługi SSH w naszym systemie. Powinien być aktywny lub w stanie działającym. Powodem, dla którego otrzymujesz błąd odmowy połączenia, może być nieaktywny stan SSH w twoim systemie. Uruchom następujące polecenie, aby sprawdzić status:
Status SSH SUDO SERVIC SSH
Wyjście mówi nam, że jest w aktywnym (działającym stanie).
Jeśli Twoja usługa SSH jest nieaktywna, możesz ją uruchomić, wykonując następujące polecenia:
sudo service ssh start
Sudo Service SSH Restart
Sprawdź port słuchowy serwera SSH
Być może łączysz się z niewłaściwym portem, dlatego otrzymujesz błąd odmowy połączenia. Na przykład serwer słucha połączenia w porcie 1068, ale próbujesz połączyć się z portem 22.
Przed próbą połączenia, najpierw sprawdź, który port jest używany przez serwer SSH do słuchania nowych połączeń. Jeśli serwer słucha w domyślnym porcie 22, możesz użyć następującej składni polecenia, aby nawiązać połączenie:
SSH [nazwa użytkownika]@[RemoteServer IP lub nazwa hosta]
Wydaj następujące polecenie, aby sprawdzić, w którym porcie serwer OpenSsh słucha:
sudo netstat -ltnp | Grep Sshd
Jak widzimy 22 port jest używany przez OpenSsh do słuchania połączeń.
W przypadku, gdy jakiś inny port jest używany zamiast 22, wydasz polecenie w ten sposób:
ssh -p [port] [nazwa użytkownika]@[ip_address]
Pozwól SSH w zaporze
Połączenie odmówiono wiadomości może być również spowodowane tym, że zapora ogniowa w systemie blokuje port SSH. Aby umożliwić port za pośrednictwem zapory, wykonaj to polecenie:
sudo ufw zezwalaj na port /tcp
Jeśli używany jest port inny niż 22, wydasz polecenie w ten sposób:
sudo ufw zezwala na 2244/tcp
Po zaktualizowaniu reguł otrzymasz to wyjście na terminalu:
Załaduj zaporę ogniową za pomocą tego polecenia, aby zaktualizować reguły:
Sudo UFW Reload
Teraz sprawdź status zapory, aby sprawdzić, czy port SSH został dozwolony, czy nie.
status sudo UFW
Zobaczysz następującą wiadomość, jeśli używasz portu 2244 dla SSH:
Rozstrzygnij zduplikowane konflikt adresu IP
Innym powodem, dla którego może powodować ten problem, jest zduplikowane adres IP. Musimy więc sprawdzić, czy system ma duplikat adresu, czy nie. Aby to zrobić, potrzebujemy użyteczności Arping w naszym systemie. Zainstaluj go za pomocą następującego polecenia:
sudo apt instinst instaluj arping
Teraz pingowanie adresu IP serwera za pomocą składni polecenia poniżej:
świst
Jeśli otrzymasz odpowiedź z więcej niż jednego adresu MAC, oznacza to, że w systemie uruchomi się zduplikowane adres. Aby rozwiązać ten problem, zmień adres IP serwera SSH.
Wniosek
W dzisiejszym przewodniku omówiliśmy kilka powodów, które mogą spowodować, że połączenie odmówiło błędu i kilka sposobów rozwiązania tego problemu. Ten artykuł z pewnością pomoże ci w rozwiązywaniu problemów.