通过 SSH 登录 Debian (stable-slim) docker 时遇到问题。
Dropbear 已启动(使用supervisord或者手动)和:
dropbear -E -B -m -F -p 2222 -r /home/warbandserver/.config/dropbear/dropbear_rsa_host_key -c '/home/warbandserver/.ssh_login.sh'
看起来运行良好,(并由尝试通过 ssh 登录的同一用户运行。)
但是,当尝试 ssh 进入 dropbear 时,dropbear 会抱怨
用户帐户“warbandserver”已被锁定
但检查之后,我实在看不出该帐户是如何被锁定的。
sudo passwd --status 战队服务器
返回:
warbandserver P 08/02/2020 0 99999 7 -1
sudo grep warbandserver /etc/shadow
返回:
战队服务器:$6$0vNqyM8xCqRk7h14$rAigJ1hWzib0eWA4XTwjCwi.YouWuAPbdyeZLfdlGZqCVJ3zVg2tKyxkhHlzd/pjlccwLB.K9JCqSzu0rIsja.:18476:0:99999:7:::
该问题在 debian 打包版本和来自 github 源的最新 dropbear 版本中均有发生。
这可能与此有关(密码/影子)问题:https://serverfault.com/a/952633,即使错误消息不同?
一些值得注意的链接:
答案1
看来问题确实与/etc/shadow,而实际上并不是用户帐户被锁定或禁用的情况。
由于我还没有找到比我遇到的更好的 Debian 解决方案Alpine 上也有类似问题. 似乎解决这个问题的最佳方法是(再次)将运行 Dropbear 的用户添加到组'阴影'
如果服务器以非 root 身份运行,您很可能无法分配 pty,并且您无法以除运行守护进程的用户之外的任何用户身份登录(显然)。影子密码也将无法使用,因为非 root 用户。
(注意:在高度重视安全性的情况下,这种解决方法可能并不理想)