我对此选项有疑问:
# Change to no to disable tunnelled clear text passwords
PasswordAuthentication yes
如果设置为是,用户可以使用本地密码登录。
在这种情况下,“明文”到底是什么意思?
身份验证期间的连接是否未加密?发出的密码是否未经过哈希处理?
我主要感兴趣的是,例如在我的 WLAN 中使用 ngrep 或 tcpdump 时是否有人可以看到密码。
答案1
SSH 中的密码验证就是受 SSH 隧道保护的明文密码通信,不多也不少。
为什么密码没有经过哈希处理?由于技术原因,密码已经在/etc/shadow
文件中经过哈希处理。因此协议无法再次对其进行哈希处理。(好吧,您可以对哈希进行哈希处理,但在我看来这并不能提供额外的安全性)。
在正常情况下,这是安全的。假设您连接到受信任的服务器并验证了服务器签名。
唯一不安全的情况是当您连接到恶意服务器(例如:MITM 攻击)并且您没有验证服务器签名时。在这种情况下,攻击者可以轻松嗅探密码。
密码验证的替代方法是什么?公钥验证,因为在这种模式下,密钥本身永远不会被发送。