相关疑难解决方法(0)

添加只能远程执行脚本的用户

我想创建一个只能做一件事的用户:通过 ssh 指定驻留在一个特定文件夹中的脚本(和脚本的命令行参数)(为了这个问题,让我们称之为/local/remote_only_scripts/foo)并让该脚本执行并返回它的输出。

澄清一些我不希望用户能够做的事情的例子:

  • 本地登录账号。登录应用程序是/bin/login. 它不是/local/remote_only_scripts/foo文件夹中的脚本,因此不应由用户调用。
  • 远程登录帐户。再次登录(是 ssh 调用的内容吗?)不是相关文件夹中的脚本。
  • 列出目录的内容。ls 在/bin/ls. 它不是相应目录中的脚本。
  • 编辑该目录中的文件。emacs、vi、gedit 大多数其他编辑器都不是该目录中的脚本。
  • 查看该目录中文件的内容。
  • 执行那个目录下他无权执行的文件。

请注意,这些示例还有许多其他我不希望用户能够执行的操作。在考虑一个动作时,问“这是由 中的脚本完成的/local/remote_only_scripts/foo吗?” 如果答案是否定的,用户就不能这样做。如果答案是肯定的,那么用户应该能够做到。

PS:让我澄清一下“添加用户”的意思。我的意思不是将用户添加到某个 ssh 子系统。相反,我的意思是将用户添加到计算机系统中。所以,例如,我有一个运行 debian stable 的系统,通过它的地址来调用它,www.hg.bar.com。我想添加一个用户(通过 kuser、users-admin 或 useradd 或类似的方式)称他为 hg_guest。hg_guest 无法在本地登录或执行上述列表中的任何操作。hg_guest 所能做的就是“远程”执行脚本。我说他应该可以通过ssh这样做,但现在想想,也许让他使用ssh可能会让他在本地登录,所以可能需要一些其他机制。

ssh account-restrictions

14
推荐指数
1
解决办法
4687
查看次数

标签 统计

account-restrictions ×1

ssh ×1