除了 chroot jail 之外,还有其他方法可以限制 SSH 用户吗?

问题描述

我需要为外国 SSH 用户创建一个安全的环境,该用户必须对我们的服务器具有非常有限的访问权限。即:

  • 只能执行被允许的命令
  • 只能使用允许的特定软件
  • 在任何情况下都不得查看/修改/删除他/她的根文件系统之外的文件夹和文件

在使用 jailkit 工具 之前,我曾尝试使用 chroot jail 作为一个较小的项目,该项目不需要太多的自定义并且工作正常,但是这个项目要大得多,需要更多的自定义允许的软件和命令的条款。

对安全环境的要求是:

  • 能够使用基本命令,例如 ls、cd、grep 等。
  • 能够运行 dotnet 脚本
  • 能够利用正在运行的 RabbitMQ 代理(代理在环境之外运行)
  • 能够利用正在运行的 PostgreSQL 数据库(数据库在环境之外运行)

我听说过 multistrapdebootstrap,但我不确定这些工具是否足以解决我的问题。

服务器在 Debian OS v. 9 和 10 上运行。所有必需的软件都安装在根文件系统中并且运行良好。我所需要的只是让受限用户能够使用它而不会损坏/损坏根文件系统。

我的问题是:

  1. 是否还有其他我没有提到的有用(更好)的工具可以解决我的问题?
  2. 对于我提到的软件,是否有任何有用的指南可以解决我的问题?

解决方法

万一有人面临同样的问题。我使用 Docker 容器和单独的 SSH 服务器并在其上安装了所有必需的软件来解决它。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...