Я настроил sshd для приема логинов ssh на основе ключей с LogLevel на DEBUG и загрузил свой открытый ключ в ~ / .ssh.authorized_keys, где разрешения установлены как:
700 ~ / .ssh 600 ~ / .ssh / authorized_keys
От root я могу su - USERNAME. От клиента я получаю отказ в разрешении (публично). С сервера Вот как он сообщает мне, что «Не удалось открыть авторизованные ключи '/home/USERNAME/.ssh/authorized_keys': Permission denied».
Client protocol version 2.0; client software version OpenSSH_5.2
match: OpenSSH_5.2 pat OpenSSH*
Enabling compatibility mode for protocol 2.0
Local version string SSH-2.0-OpenSSH_5.9p1 Debian-5ubuntu1
permanently_set_uid: 105/65534 [preauth]
list_hostkey_types: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256 [preauth]
SSH2_MSG_KEXINIT sent [preauth]
SSH2_MSG_KEXINIT received [preauth]
kex: client->server aes128-ctr hmac-md5 none [preauth]
kex: server->client aes128-ctr hmac-md5 none [preauth]
SSH2_MSG_KEX_DH_GEX_REQUEST received [preauth]
SSH2_MSG_KEX_DH_GEX_GROUP sent [preauth]
expecting SSH2_MSG_KEX_DH_GEX_INIT [preauth]
SSH2_MSG_KEX_DH_GEX_REPLY sent [preauth]
SSH2_MSG_NEWKEYS sent [preauth]
expecting SSH2_MSG_NEWKEYS [preauth]
SSH2_MSG_NEWKEYS received [preauth]
KEX done [preauth]
userauth-request for user USERNAME service ssh-connection method none [preauth]
attempt 0 failures 0 [preauth]
PAM: initializing for "USERNAME"
PAM: setting PAM_RHOST to "USERHOSTNAME"
PAM: setting PAM_TTY to "ssh"
userauth_send_banner: sent [preauth]
userauth-request for user USERNAME service ssh-connection method publickey [preauth]
attempt 1 failures 0 [preauth]
test whether pkalg/pkblob are acceptable [preauth]
Checking blacklist file /usr/share/ssh/blacklist.RSA-4096
Checking blacklist file /etc/ssh/blacklist.RSA-4096
temporarily_use_uid: 1001/1002 (e=0/0)
trying public key file /home/USERNAME/.ssh/authorized_keys
Could not open authorized keys '/home/USERNAME/.ssh/authorized_keys': Permission denied
restore_uid: 0/0
temporarily_use_uid: 1001/1002 (e=0/0)
trying public key file /home/USERNAME/.ssh/authorized_keys2
Could not open authorized keys '/home/USERNAME/.ssh/authorized_keys2': Permission denied
restore_uid: 0/0
Failed publickey for USERNAME from IPADDRESS port 57523 ssh2
Connection closed by IPADDRESS [preauth]
do_cleanup [preauth]
monitor_read_log: child log fd closed
do_cleanup
PAM: cleanup
chown 1001:1002 /home/USERNAME/.ssh/authorized_keys
Для меня /usr/NX/home/nx/.ssh/authorized_keys было неправильно названо /usr/NX/home/nx/.ssh/authorized_keys2 даже после переустановки. Вот как я это исправил:
/usr/NX/home/nx/.ssh # cp authorized_keys2 authorized_keys
/usr/NX/home/nx/.ssh # chown nx authorized_keys
Я писал об этом в блоге http://www.linuxintro.org/wiki/Nx#The_NX_service_is_not_available
К этим файлам обращается не ваш собственный пользователь, поэтому 600 и 700 работать не будут. К тому же нет необходимости в таком закреплении; В authorized_keys нет ничего безопасного.
Ваши разрешения неверны:
chmod 755 /home/USERNAME/.ssh
chmod 644 /home/USERNAME/.ssh/authorized_keys