I thought I would throw this one out there as it took me about 30 min to figure this out.
I had an OpenIndiana server that I was working on and I wanted to make a new user that had a public key for access. The problem was that when I tried to connect, it would just come back with the usual "Permission denied (publickey)." error.
Normally, this is because you forgot to set the key permissions correctly:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
"Server refused public-key signature despite accepting key!"
By default, OI does not log like linux does so I had to enable auth logging:
vi /etc/syslog.conf
(uncomment the following line)
auth.notice ifdef(`LOGHOST', /var/log/authlog, @loghost)
svcadm restart system-log
root@zfs-server:~# tail -f /var/log/authlog
Jan 8 18:29:48 zfs-server sshd[6387]: [ID 7311328 auth.notice] pam_unix_account: sshd-pubkey attempting to validate locked account johnny from 10.1.1.50
Jan 8 18:29:48 zfs-server sshd[6387]: [ID 8000347 auth.notice] Failed publickey for johnny from 10.1.1.50 port 64885 ssh2
passwd -u johnny