[OpenSSH] - Mauvais fonctionnement

Fermé
B@|-|@N Messages postés 386 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 7 décembre 2007 - 22 nov. 2006 à 09:57
 Menestrel - 8 juil. 2010 à 10:56
Bonjour à toutes et à tous.

J'ai un collègue qui a installé OpenSSH sur sa machine (windows NT) grâce à SSHWindows et qui veut que j'aille déposer automatiquement chaque jour un fichier sur cette machine.

Je suis pour ma part sous Unix AIX 5.2 et je peux utiliser la commande sftp sans problème.

Nous voudrions pouvoir automatiser ce transfert et donc utiliser soit des clefs RSA soit des clefs DSA. Nous avons commencé par essayer avec les clefs RSA. J'ai donc généré avec ssh-keygen une clef RSA publique et sa consoeur privée. J'ai envoyé la publique à mon collègue par mail et il a ajouté cette clef à son fichier authorized_keys.

Il a sur sa machine le fichier sshd_config suivant :
# $OpenBSD: sshd_config,v 1.65 2003/08/28 12:54:34 markus Exp $
Protocol 2
PermitRootLogin yes
StrictModes yes
/etc/ssh/ssh_known_hosts
IgnoreUserKnownHosts yes
PasswordAuthentication yes
UsePrivilegeSeparation no
MaxStartups 10:30:60
Banner /etc/banner.txt
Subsystem	sftp	/usr/sbin/sftp-server
Quand j'essaie de me connecter via la commande suivante :
$ /usr/local/bin/sftp -v LOGIN@DESTINATAIRE
J'ai le résultat suivant :
Connecting to DESTINATAIRE...
OpenSSH_3.7.1p1, SSH protocols 1.5/2.0, OpenSSL 0.9.7b 10 Apr 2003
debug1: Reading configuration data /usr/local/etc/ssh_config
debug1: Connecting to DESTINATAIRE [IP] port 22.
debug1: Connection established.
debug1: identity file HOME_USER/.ssh/id_rsa type 1
debug1: identity file HOME_USER/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_3.8.1p1
debug1: match: OpenSSH_3.8.1p1 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_3.7.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: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'DESTINATAIRE' is known and matches the RSA                                host key.
debug1: Found key in HOME_USER/.ssh/known_hosts:3
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received

                            ****USAGE WARNING****

This is a private computer system. This computer system, including all
related equipment, networks, and network devices (specifically including
Internet access) are provided only for authorized use. This computer system
may be monitored for all lawful purposes, including to ensure that its use
is authorized, for management of the system, to facilitate protection against
unauthorized access, and to verify security procedures, survivability, and
operational security. Monitoring includes active attacks by authorized entities
to test or verify the security of this system. During monitoring, information
may be examined, recorded, copied and used for authorized purposes. All
information, including personal information, placed or sent over this system
may be monitored.

Use of this computer system, authorized or unauthorized, constitutes consent
to monitoring of this system. Unauthorized use may subject you to criminal
prosecution. Evidence of unadebug1: Authentications that can continue: publickey                               ,keyboard-interactive
debug1: Next authentication method: publickey
debug1: Offering public key: HOME_USER/.ssh/id_rsa
debug1: Authentications that can continue: publickey,keyboard-interactive
debug1: Trying private key: HOME_USER/.ssh/id_dsa
debug1: Next authentication method: keyboard-interactive
debug1: Authentications that can continue: publickey,keyboard-interactive
debug1: No more authentication methods to try.
Permission denied (publickey,keyboard-interactive).
debug1: Calling cleanup 0x20011dbc(0x0)
Connection closed
Je ne comprends pas les lignes en gras. Pourquoi j'offre ma clef publique ? Et pourquoi il prend id_rsa comme clef publique ?? Pourquoi essaie-t-il la clef privée id_dsa ??

Logiquement, il me semble que le ssh fonctionne comme ceci :
1. Je donne ma clef publique au serveur
2. J'essaie de me connecter au serveur
3. Il m'envoie un défi, i.e. un identifiant crypté avec ma clef publique
4. Je résouds le défi grâce à ma clef privée
5. Je peux me connecter

Quelqu'un pourrait m'aider svp. Je vous avoue être un peu perdu là...

Merci d'avance pour votre aide.

Bahan
A voir également:

2 réponses

(Ok ça date de 2006/2007, mais ça m'intéresse)

C'est une bonne question et je me pose la même.

Ma théorie, c'est que le client propose sa clef publique à la connexion, que le serveur va ensuite comparer celle-ci à celles listées dans le fichier de clefs autorisée (par défaut ~/.ssh/authorized_keys) et que si celle-ci y figure il va lancer le défi, etc...

La conséquence c'est que ta clef privée n'est pas du tout liée à ton PC, et que si tu déplaces les fichiers de clefs privée et publique sur un autre ordi, tu pourra te connecter sans password à ton serveur.

Ça demande quelques tests pour vérifier mais j'ai un peu la flemme. :]

Et pour être absolument sûr il faudrait aussi aller voir le code source, mais j'ai encore plus la flemme.

Voilou.
0
Eh bien, ne dois-tu pas donner ta clé publique afin que le serveur puisse générer le défi?

(C'est une réponde un peu au pif, enfin, une déduction personelle ...)

Maybe i'm wrong... no se ...

:P
-2