环境:vm5.5 centos 5.2
root的配置过程如下:
在Windows客户机上生成密钥对,其中Identity就是私钥文件,Identity.pub这是公钥文件。
#vi/usr/local/etc/sshd_config
做如下修改:
PasswordAuthenticationno(关闭口令认证)
PubkeyAuthenticationyes(开启公钥认证)
AuthorizedKeysFile.ssh/authorized_keys(认证公钥文件位置)
#mkdir/root/.ssh(新建/root目录下的.ssh文件夹)
#chmod700/root/.ssh(修改.ssh文件夹的用户权限)
#ssh-keygen -i -fIdentity.pub >> /root/.ssh/authorized_keys
#chmod 600 authorized_keys
root用户可使用公钥正常连接。用相同的步骤来做普通用户(gyp334)的认证是则报“以服务器方式的公钥验证对于用户gyp334失败。请校验用户名和公/私钥对。”,重新输入用户名,选择公钥后还是报同样的错误,/var/log/secure中信息记录为“Mar 13 23:51:48 centos sshd[17081]: Received disconnect from 192.168.26.98: 13: \347\224\250\346\210\267\345\267\262\345\217\226\346\266\210\351\252\214\350\257\201\343\200\202”。清除本机中.ssh\known hosts的内容后再次连接,还是报同样的信息。
另附sshd_config:
Protocol 2
SyslogFacility AUTHPRIV
PubkeyAuthentication yes
AuthorizedKeysFile ~/.ssh/authorized_keys
PasswordAuthentication no
ChallengeResponseAuthentication no
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL
X11Forwarding yes
Subsystem sftp /usr/libexec/openssh/sftp-server
多谢!!
[ 本帖最后由 gyp334a 于 2009-3-25 14:24 编辑 ] |