Newsgroup: it.comp.os.linux.software
Titolo: Strano comportamento di ssh

Ho collegato in rete un PC Desktop ed un portatile, è un semplice
collegamento ethernet con cavo cross.
Per scambiare i file da una parte all'altra uso ssh e scp, ho notato uno
strano comportamento di ssh.
Nel file /etc/hosts ho specificato il nome e l'ip delle due macchine (su
entrambe le macchine).
Le due macchine si chiamano Nemesis (Debian Potato) e Neutrino(RH7.3).
Se faccio un ping posso tranquillamente utilizzare il nome al posto 
dell'indirizzo, mentre con ssh ottengo comportamente diversi sulle due
macchine.
Su Nemesis se faccio "ssh ant@Neutrino" ottengo l'errore :
ssh_exchange_identification: Connection closed by remote host
se invece di neutrino metto l'ip funziona correttamente.
Su Neutrino se faccio "ssh ant@Nemesis" ottengo risultati variabili, a
volte mi da un connection refused, a volte rimane in freeze per moooolto
tempo e poi si riesce a connettere.
Inutile dire che su entrambe le macchine esiste l'utente "ant".
Da cosa può dipendere questa differenza di comportamento?
Che cosa significa quell'errore?
A queste sono le due versioni di ssh:
su Nemesis:
OpenSSH_3.4p1 Debian 1:3.4p1-0.0potato1, SSH protocols 1.5/2.0, 
OpenSSL 0x0090603f
su Neutrino:
OpenSSH_3.1p1, SSH protocols 1.5/2.0, OpenSSL 0x0090602f
-- 
  _  _ >>Now on Linux<<  _     ||              Home Page:
 | \| |___ _____ ___ ___|_|___ ||  
http://digilander.iol.it/nemesis2001
 | .` | -_|     | -_|_ -| |_ -|||     e niente sarà più come prima ... 
 |_|\_|___|_|_|_|___|___|_|___|||            ... o quasi ;)

 se invece di neutrino metto l'ip funziona correttamente.
Prova ad utilizzare l'opzione "-v" per capire dove è l'intoppo...

Goffredo Baroncelli ha scritto : 

L'ho fatto ma non è che ci capirsco molto, magari mi sapete dare una
mano.
Allora da Nemesis(Potato->RH) ottengo:
OpenSSH_3.4p1 Debian 1:3.4p1-0.0potato1, SSH protocols 1.5/2.0, 
        OpenSSL 0x0090603f
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Rhosts Authentication disabled, originating port will not be trusted.
debug1: ssh_connect: needpriv 0
debug1: Connecting to Neutrino [192.168.0.1] port 22.
debug1: Connection established.
debug1: identity file /home/ant/.ssh/identity type -1
debug1: identity file /home/ant/.ssh/id_rsa type -1
debug1: identity file /home/ant/.ssh/id_dsa type -1
ssh_exchange_identification: Connection closed by remote host
debug1: Calling cleanup 0x8063c5c(0x0)
Invece da Neutrino (RH->Potato) ottengo:
OpenSSH_3.1p1, SSH protocols 1.5/2.0, OpenSSL 0x0090602f
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Rhosts Authentication disabled, originating port will not be 
        trusted.
debug1: restore_uid
debug1: ssh_connect: getuid 500 geteuid 0 anon 1
debug1: Connecting to Nemesis [192.168.0.1] port 22.
debug1: temporarily_use_uid: 500/500 (e=0)
debug1: restore_uid
debug1: temporarily_use_uid: 500/500 (e=0)
debug1: restore_uid
debug1: Connection established.
debug1: read PEM private key done: type DSA
debug1: read PEM private key done: type RSA
debug1: identity file /home/ant/.ssh/identity type -1
debug1: identity file /home/ant/.ssh/id_rsa type -1
debug1: identity file /home/ant/.ssh/id_dsa type -1
debug1: Remote protocol version 1.99, remote software version OpenSSH_3.4p1 
        Debian 1:3.4p1-0.0potato1
debug1: match: OpenSSH_3.4p1 Debian 1:3.4p1-0.0potato1 pat OpenSSH*
Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_3.1p1
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: dh_gen_key: priv key bits set: 122/256
debug1: bits set: 1593/3191
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
Host key verification failed.
debug1: Calling cleanup 0x80634c0(0x0)


         Debian 1:3.4p1-0.0potato1
Perchè 1.99 ? Sulla mia woody è 2.00 ... boh

  OpenSSH_3.1p1, SSH protocols 1.5/2.0, OpenSSL 0x0090602f
metti la stessa verione su entrambe e vivi felice.
-- 
Pa.Ped, Como
http://www.fastflow.it/~paolop
VOTE AGAINST SPAM! 
http://www.politik-digital.de/spam/it/
Contro i brevetti software: 
http://petition.eurolinux.org/index_html

 tempo e poi si riesce a connettere.
Do you know reverse lookup?
Comunque:
Assicurati che per entrambe le due macchine l'IP e il nome sia
risolvibile e reversibile, con nslookup Nemesis, nslookup Neutrino (ma
perche' metti le maiuscole sugli hostname? arrrgh!), e sui corrispondenti
IP.
Una volta fatto questo, controlla, in entrambe le macchine, i file
/etc/hosts.allow e /etc/hosts.deny:
Se nell'/etc/hosts.deny c'e' un
ALL: ALL
o un 
sshd: ALL
Allora devi scrivere nell'/etc/hosts.allow gli IP a cui vuoi permettere
l'accesso al servizio ssh (in entrambe le macchine).  Usa l'IP address.
Ad esempio:
in /etc/hosts.deny di entrambe le macchine:
ALL: ALL
(oppure: sshd: ALL)
in /etc/hosts.allow di entrambe le macchine:
sshd: ip-neutrino, ip-nemesis
La versione di ssh differente, a occhio e croce, non c'entra molto.
Comunque, un consiglio: upgrada le zlib alla 1.1.4, le openssl all'ultima
0.9.6 e ssh-server alla 3.4p1, attivando
l'opzione UsePrivilegeSeparation, soprattutto se quelle due macchine sono
accessibili dall'esterno.
Jop