所以我想弄清楚如何建立隧道,但没有别的。我不希望用户拥有 shell 访问权限。
我发现这个ssh 隧道只能访问
这些信息是过时的还是什么?每次我尝试通过 ssh 登录时,我已将用户的 shell 设置为 /usr/(s)bin/nologin 或 /bin/false、bin/true 等,
而不是说:
This account is currently not available.
它说:
Permission denied, please try again.
密码正确。我非常肯定地知道这一点,因为我输入了它,然后将其粘贴到控制台中以确保没有错误。将用户的 shell 更改回 nologin 并尝试使用与仍在剪贴板中的实际 shell 相同的密码重新连接,它说 Permission denied。
我尝试将 ForcedCommand internal-sftp 放在配置文件中,但这也没有做任何事情。
我已经尝试使用从搜索中找到的那些脚本来制作 fakesh 并将用户的 shell 设置为此,但 ssh 也不接受。使其工作的唯一方法是将用户设置为实际的外壳。这里发生了什么?
我真的想通了。这是 PAM 的问题。显然您需要将 /usr/bin/nologin 添加到 /etc/shells ,否则它将拒绝验证连接。