GNU/Linux >> Linux Esercitazione >  >> Linux

Connessione SSH rifiutata da TCP Wrapper

Il problema

Il server non è riuscito ad accedere tramite ssh con i seguenti errori.

Dal client ssh:

$ ssh -vvv [email protected]
OpenSSH_7.6p1, LibreSSL 2.6.2
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 48: Applying options for *
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to 10.131.12.10 port 22.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file /Users/yaozhenqiang/.ssh/id_rsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/yaozhenqiang/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/yaozhenqiang/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/yaozhenqiang/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/yaozhenqiang/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/yaozhenqiang/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/yaozhenqiang/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/yaozhenqiang/.ssh/id_ed25519-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_7.6
ssh_exchange_identification: read: Connection reset by peer

Dal server ssh:

# /usr/sbin/sshd -D -ddd
....snip....
debug1: Bind to port 22 on ::.
Server listening on :: port 22.
debug3: fd 5 is not O_NONBLOCK
debug1: Server will not fork when running in debugging mode.
debug3: send_rexec_state: entering fd = 8 config len 583
debug3: ssh_msg_send: type 0
debug3: send_rexec_state: done
debug1: rexec start in 5 out 5 newsock 5 pipe -1 sock 8
debug1: inetd sockets after dupping: 3, 3
debug1: Connection refused by tcp wrapper

La soluzione

La connessione ssh è stata rifiutata dal wrapper TCP. Per determinare se una macchina client può connettersi a SSH, i wrapper TCP fanno riferimento ai due file seguenti:

  • /etc/hosts.deny
  • /etc/hosts.allow

Segui i passaggi seguenti per determinare quale indirizzo IP del client ssh è stato rifiutato dal wrapper TCP:

1. Commenta tutte le righe in /etc/hosts.deny e /etc/hosts.allow

2. Ora ssh login dovrebbe funzionare normalmente:

$ ssh [email protected]
[email protected]'s password:
Last login: Fri Mar 16 11:14:44 2018 from server1

3. Vai al server ssh, apri /var/log/secure e vai ai messaggi intorno al timestamp "Last login:Fri Mar 16 11:14:44 2018" mostrati nel passaggio 2, quindi possiamo ottenere l'indirizzo IP del client ssh che è stato rifiutato in precedenza dal wrapper TCP.

4. Ripristina /etc/hosts.deny e /etc/hosts.allow e aggiungi la riga seguente in /etc/hosts.allow (diciamo che 192.168.1.2 è l'indirizzo IP che otteniamo nel passaggio 3)

# vi /etc/hosts.allow
sshd:192.168.1.2:allow

5. Verifica se ssh login funziona.


Linux
  1. Ssh – Utilizzo di un canale Ssh già stabilito?

  2. Connessione Ssh rifiutata dall'interno della LAN?

  3. Connessione ripristinata da [ip] Porta 22 (ubuntu 16.04)?

  4. mosquitto-client ottiene la connessione rifiutata

  5. Connessione rifiutata a MongoDB errno 111

Come correggere l'errore rifiutato dalla connessione SSH

Utilizzo del file di configurazione SSH

Correzione ::Connessione errore SSH Linux rifiutata

connettersi all'host localhost porta 22:connessione rifiutata

Connessione di inoltro PuTTY, CygwinX e X11 rifiutata

strumento per dividere i file pcap tramite connessione TCP?