ssh 身份验证 nfs

ssh 身份验证 nfs

我想从机器“ub0”到另一台机器“ub1”进行 ssh,而无需使用密码。我在“ub0”上使用 nfs 进行设置,但仍然要求我输入密码。

以下是我的情况:

  • 机器 ub0 和 ub1 有相同的用户“mpiu”,具有相同的密码、相同的用户 ID 和相同的组 ID
  • 两台服务器共享一个文件夹,该文件夹是“mpiu”的主目录
  • 我在 .ssh 上执行了 chmod 700
  • 我使用 ssh-keygene -t dsa 创建了一个密钥
  • 我执行了“cat id_dsa.pub >> authorized_keys”。在最后一个文件上,我还尝试了 chmod 600 和 chmod 640
  • 当然,我可以保证在机器 ub1 上,用户“shared_user”可以看到我们安装的相同文件,没有任何问题。

以下是我的 .ssh 文件夹的内容

授权密钥
id_dsa
id_dsa.pub
已知主机

完成所有这些调用后,系统会要求我输入密码。你知道我可以尝试什么吗?

我还在两台机器的 ssh_config 文件中取消注释了此行

身份文件 ~/.ssh/id_dsa

我也试过

ssh -i $HOME/.ssh/id_dsa mpiu@ub1

下面 ssh -vv

代码:
OpenSSH_5.1p1 Debian-3ubuntu1,OpenSSL 0.9.8g 2007 年 10 月 19 日
OpenSSH_5.1p1 Debian-3ubuntu1,OpenSSL 0.9.8g 2007 年 10 月 19 日
debug1:读取配置数据 /etc/ssh/ssh_config
debug1:应用选项 *
调试2:ssh_connect:needpriv 0
debug1:连接到ub1 [192.168.2.9]端口22。
debug1:连接已建立。
debug2:key_type_from_name:未知密钥类型'-----BEGIN'
debug2:key_type_from_name:未知密钥类型‘-----END’
debug1:身份文件/mirror/mpiu/.ssh/id_dsa 类型 2
debug1:检查黑名单文件 /usr/share/ssh/blacklist.DSA-1024
debug1:检查黑名单文件 /etc/ssh/blacklist.DSA-1024
debug1:远程协议版本2.0,远程软件版本lshd-2.0.4 lsh - GNU ssh
debug1:无匹配:lshd-2.0.4 lsh - GNU ssh
debug1:启用协议 2.0 的兼容模式
debug1:本地版本字符串 SSH-2.0-OpenSSH_5.1p1 Debian-3ubuntu1
debug2:fd 3 设置 O_NONBLOCK
debug1:SSH2_MSG_KEXINIT 已发送
debug1: 收到 SSH2_MSG_KEXINIT
调试2:kex_parse_kexinit:diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
调试2:kex_parse_kexinit:ssh-rsa,ssh-dss
调试2:kex_parse_kexinit:aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,arcfour256,arcfour,aes192-cbc,aes256-cbc,[电子邮件保护],aes128-ctr,aes192-ctr,aes256-ctr
调试2:kex_parse_kexinit:aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,arcfour256,arcfour,aes192-cbc,aes256-cbc,[电子邮件保护],aes128-ctr,aes192-ctr,aes256-ctr
调试2:kex_parse_kexinit:hmac-md5,hmac-sha1,[电子邮件保护],hmac-ripemd160,[电子邮件保护],hmac-sha1-96,hmac-md5-96
调试2:kex_parse_kexinit:hmac-md5,hmac-sha1,[电子邮件保护],hmac-ripemd160,[电子邮件保护],hmac-sha1-96,hmac-md5-96
调试2:kex_parse_kexinit:无,[电子邮件保护],zlib
调试2:kex_parse_kexinit:无,[电子邮件保护],zlib
调试2:kex_parse_kexinit:
调试2:kex_parse_kexinit:
调试2:kex_parse_kexinit:first_kex_follows 0
调试2:kex_parse_kexinit:保留0
调试2:kex_parse_kexinit:diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
调试2:kex_parse_kexinit:ssh-rsa,spki-sign-rsa
调试2:kex_parse_kexinit:aes256-cbc,3des-cbc,blowfish-cbc,arcfour
调试2:kex_parse_kexinit:aes256-cbc,3des-cbc,blowfish-cbc,arcfour
调试2:kex_parse_kexinit:hmac-sha1,hmac-md5
调试2:kex_parse_kexinit:hmac-sha1,hmac-md5
调试2:kex_parse_kexinit:无,zlib
调试2:kex_parse_kexinit:无,zlib
调试2:kex_parse_kexinit:
调试2:kex_parse_kexinit:
调试2:kex_parse_kexinit:first_kex_follows 0
调试2:kex_parse_kexinit:保留0
debug2:mac_setup:发现 hmac-md5
调试1:kex:服务器->客户端3des-cbc hmac-md5无
debug2:mac_setup:发现 hmac-md5
调试1:kex:客户端->服务器3des-cbc hmac-md5无
debug2:dh_gen_key:私钥位设置:183/384
debug2:位设置:1028/2048
debug1:发送 SSH2_MSG_KEXDH_INIT
debug1:期待 SSH2_MSG_KEXDH_REPLY
debug1:主机“ub1”已知并且与 RSA 主机密钥匹配。
debug1:在 /mirror/mpiu/.ssh/known_hosts:1 中找到密钥
debug2:位设置:1039/2048
debug1: ssh_rsa_verify: 签名正确
调试2:kex_derive_keys
debug2: set_newkeys: 模式 1
debug1: SSH2_MSG_NEWKEYS 已发送
debug1:期望 SSH2_MSG_NEWKEYS
debug2:set_newkeys:模式 0
debug1: 已收到 SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_SERVICE_REQUEST 已发送
调试2:service_accept:ssh-userauth
debug1: 已收到 SSH2_MSG_SERVICE_ACCEPT
debug2:密钥:/mirror/mpiu/.ssh/id_dsa (0xb874b098)
debug1:可以继续的认证:密码,公钥
debug1:下一个认证方法:publickey
debug1:提供公钥:/mirror/mpiu/.ssh/id_dsa
debug2:我们发送了一个公钥包,等待回复
debug1:可以继续的认证:密码,公钥
debug2:我们没有发送数据包,禁用方法
debug1:下一个身份验证方法:密码
mpiu@ub1 的密码:

我挂在这里!

答案1

您的 ssh 客户端正在尝试在公钥认证之前进行密码认证。

检查您的~/.ssh/config/etc/ssh/ssh_config文件中是否有PreferredAuthentications条目。

如果我将以下条目添加到我的~/.ssh/config文件中,我会看到类似的行为:

PreferredAuthentications password,publickey

如果上述任一文件中有类似的内容,请将其注释掉。

相关内容