myw*_*hog 4 linux ssh login shell
这是我不久前研究过的,并找到了一些有用的信息......但现在我实际上需要这样做,当然我再也找不到我看到的指南了。
无论如何,情况是这样的。我有一个通过 SSH 使用 ncurses 菜单运行的程序。我希望用户能够通过 SSH 登录到该程序,但仅限于该程序。
我必须做什么才能使这种情况成为可能?
我的目标是完全限制他们看到命令行,并且仅限于该程序。这可能吗?我/我将如何去做?
这也称为强制登录。
将程序的执行和退出附加到用户的 ~/.profile 中。
exec /usr/local/bin/program
exit
Run Code Online (Sandbox Code Playgroud)
聪明的用户知道他们可以在 ssh 客户端中提供一个不是您期望的 shell 的命令。使用 sshd 配置中的 ForceCommand 来防止这种情况发生:
部队指挥部
强制执行由 ForceCommand 指定的命令,忽略客户端和 ~/.ssh/rc(如果存在)提供的任何命令。该命令是通过使用用户的登录 shell 和 -c 选项来调用的。这适用于 shell、命令或子系统执行。它在 Match 块内最有用。
Match Group programusers
ForceCommand /usr/local/bin/program
Run Code Online (Sandbox Code Playgroud)