J'essaie de ssh dans ma station de disque Synology sans mot de passe (authentification par clé publique), mais en tant que non root.
Lorsque j'essaie de ssh en tant que root sans mot de passe, cela fonctionne. Suivre les mêmes étapes exactes pour un autre utilisateur ne fonctionne pas. Il demande toujours un mot de passe (également, l'utilisation d'un mot de passe fonctionne aussi).
J'ai suivi tous les guides pour cela, mais je pense qu'ils sont tous pour DSM 4.x plutôt que pour la nouvelle version 5.0.
Journal de débogage SSH
Voici le journal de débogage lorsque j'essaie avec l'indicateur -vvv:
aether@aether-desktop:~$ ssh -vvv [email protected]
OpenSSH_6.2p2 Ubuntu-6ubuntu0.2, OpenSSL 1.0.1e 11 Feb 2013
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to aether-ds.local [192.168.2.149] port 22.
debug1: Connection established.
debug3: Incorrect RSA1 identifier
debug3: Could not load "/home/aether/.ssh/id_rsa" as a RSA1 public key
debug1: identity file /home/aether/.ssh/id_rsa type 1
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
debug1: identity file /home/aether/.ssh/id_rsa-cert type -1
debug1: identity file /home/aether/.ssh/id_dsa type -1
debug1: identity file /home/aether/.ssh/id_dsa-cert type -1
debug1: identity file /home/aether/.ssh/id_ecdsa type -1
debug1: identity file /home/aether/.ssh/id_ecdsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2p2 Ubuntu-6ubuntu0.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.8p1-hpn13v11
debug1: match: OpenSSH_5.8p1-hpn13v11 pat OpenSSH_5*
debug2: fd 3 setting O_NONBLOCK
debug3: load_hostkeys: loading entries for host "aether-ds.local" from file "/home/aether/.ssh/known_hosts"
debug3: load_hostkeys: found key type RSA in file /home/aether/.ssh/known_hosts:1
debug3: load_hostkeys: loaded 1 keys
debug3: order_hostkeyalgs: prefer hostkeyalgs: [email protected],[email protected],ssh-rsa
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug2: kex_parse_kexinit: ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: [email protected],[email protected],ssh-rsa,[email protected],[email protected],[email protected],[email protected],[email protected],ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-dss
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,[email protected],[email protected],aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected]
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,[email protected],[email protected],aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected]
debug2: kex_parse_kexinit: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-md5,hmac-sha1,[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-md5,hmac-sha1,[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none,[email protected],zlib
debug2: kex_parse_kexinit: none,[email protected],zlib
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: kex_parse_kexinit: ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected]
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected]
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none,[email protected]
debug2: kex_parse_kexinit: none,[email protected]
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: mac_setup: found hmac-md5
debug1: kex: server->client aes128-ctr hmac-md5 none
debug2: mac_setup: found hmac-md5
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: RSA f1:57:47:37:47:d4:5c:cd:a7:a4:5a:9c:a3:e8:1d:13
debug3: load_hostkeys: loading entries for host "aether-ds.local" from file "/home/aether/.ssh/known_hosts"
debug3: load_hostkeys: found key type RSA in file /home/aether/.ssh/known_hosts:1
debug3: load_hostkeys: loaded 1 keys
debug3: load_hostkeys: loading entries for host "192.168.2.149" from file "/home/aether/.ssh/known_hosts"
debug3: load_hostkeys: found key type RSA in file /home/aether/.ssh/known_hosts:2
debug3: load_hostkeys: loaded 1 keys
debug1: Host 'aether-ds.local' is known and matches the RSA host key.
debug1: Found key in /home/aether/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug2: kex_derive_keys
debug2: set_newkeys: mode 1
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug2: set_newkeys: mode 0
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /home/aether/.ssh/id_rsa (0x7f4ee2f47200),
debug2: key: /home/aether/.ssh/id_dsa ((nil)),
debug2: key: /home/aether/.ssh/id_ecdsa ((nil)),
debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/aether/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /home/aether/.ssh/id_dsa
debug3: no such identity: /home/aether/.ssh/id_dsa: No such file or directory
debug1: Trying private key: /home/aether/.ssh/id_ecdsa
debug3: no such identity: /home/aether/.ssh/id_ecdsa: No such file or directory
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
[email protected]'s password:
Toute aide appréciée.
Ce que j'ai essayé jusqu'à présent
- Vérifiez / etc / ssh / sshd_config (RSAAuthentication, PubkeyAuthentication, AuthorizedKeysFile).
- Vérifiez les autorisations et la propriété .ssh / *. J'ai essayé plusieurs combinaisons.
- Vérifiez HOME var dans ~ / .profile.
- Redémarrer sshd via synoservicectl --restart sshd et en redémarrant le NAS entier.
authorized_keys
fichier de l'utilisateur ?Réponses:
J'ai eu le même problème. J'exécute une instance de sshd en mode débogage sur le DiskStation en utilisant "/ usr / syno / sbin / sshd -d", puis je me connecte avec "ssh user @ DiskSation -vvv" et j'ai obtenu les informations de débogage sur le serveur:
J'ai réalisé que le dossier de base avait également besoin des bonnes autorisations:
Et remplacez-le par le nom d'utilisateur réel, comme "utilisateur".
Enfin, le problème est résolu!
la source
chmod 755
sur mon répertoire personnel a résolu cela pour moi sur DSM 6./usr/bin/sshd -p 2222
(et connectez-vousssh -p 2222
) pour qu'il s'exécute sur un port différent pour le débogage - sinon vous risquez de perdre l'accès si vous quittez le démon sshvous devez modifier votre répertoire personnel à 755 (la synologie l'a à 777 par défaut)
la source
chmod 755 /home/admin
réellement changé les autorisations.Comme vos autorisations pour
.ssh
et authorized_keys sont définies correctement, vérifiez simplement que les autorisations pour votre répertoire personnel (/home/aether/
) sont définies correctement (chmod 755 /home/aether/
).Je n'ai pas pu me connecter avec les autorisations par défaut (
711
) et cela a fonctionné après avoir modifié les autorisations.Cheers stephan
la source
J'ai eu le même problème, en vérifiant deux ou trois fois tout ce qui précède et je n'ai toujours pas fonctionné. Enfin, j'ai réalisé que le démon ssh cherchait le fichier authorized_keys au mauvais endroit, car il n'y a pas de répertoire / home / nonrootuser.
Vous devez créer le chemin ou créer un lien symbolique (ces deux options ne fonctionnaient pas pour moi), ou ce qui a finalement fonctionné a été d'ajouter ces deux lignes dans le fichier sshd_config:
De cette façon, vous vous assurez que la clé que vous ajoutez via ssh-copy-id à partir du client est la même que celle proposée par le serveur (synology) pour établir la connexion pour le non-utilisateur racine.
la source
Même problème ici avec dsm 6.0, résolu grâce à ce fil sur les forums Synology
Il semble que la permission de l'utilisateur à la maison soit trop permissive ¿? ¿?? ¿¿?
... et maintenant ça marche!
la source
Cela ressemble beaucoup à cette question:
/programming/12839106/scp-between-2-remote-hosts-without-password/12945060#12945060
Je soupçonne que votre répertoire ou vos fichiers .ssh n'ont pas d'attributs appropriés.
Voici les miennes:
De plus, veuillez vérifier le contenu
/etc/pam.d/sshd
qui peut imposer des restrictions sur les non-root. Au cas où. Ce lien explique PAM en cas de RHEL. Cela peut aider: https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Managing_Smart_Cards/PAM_Configuration_Files.htmlVoici où le problème montre sa tête laide:
Il n'accepte pas id_rsa et continue:
Il abandonne et s'appuie sur un mot de passe
Alors maintenant, la question est pourquoi il n'aime pas id_rsa?
la source
J'ai eu le même problème. Après avoir configuré les autorisations correctes sur mes répertoires de clés autorisées, de fichier d'accueil et .ssh, je ne pouvais toujours pas SSH sur mon Diskstation.
Après avoir lu les informations sur techanic.net, j'ai découvert que je devais également définir mon shell de connexion dans mon
/etc/passwd
fichier. Il a été défini/sbin/nologin
par défaut. Après l'avoir changé en,/bin/sh
j'ai réussi à SSH sur mon Diskstation avec succès.la source
Je viens d'avoir ce même problème avec DSM 5.1 au lieu de 5.0. Aucune des solutions répertoriées n'a résolu le problème. Dans mon cas, les autorisations pour
/var/services/homes/<user>/.ssh/authorized_keys
n'étaient pas correctes. L'exécution de ce qui suit a résolu le problèmela source