这是出于安全考虑。我们的员工应该可以访问linux服务器上的某些命令,但不是全部。他们应例如可以访问日志文件(less logfile)或启动其他命令(shutdown.sh/ run.sh)。
less logfile
shutdown.sh
run.sh
背景资料:
所有员工都使用相同的用户名访问服务器:我们的产品以“普通”用户权限运行,不需要“安装”。只需将其解压缩到您的用户目录中并运行它即可。我们管理“安装”应用程序的多台服务器。在每台机器上都有一个用户johndoe。我们的员工有时需要在命令行上访问该应用程序,以访问和检查日志文件或手动重新启动该应用程序。只有某些人具有完全命令行访问权限。
johndoe
我们正在服务器上使用ppk身份验证。
如果employee1只能访问日志文件,而employee2也可以执行X等操作,那将是很好的。
解决方案: 作为解决方案,我将使用command已 接受 答案中所述的选项。我将制作自己的小shell脚本,这将是 某些 员工可以执行的唯一文件。该脚本将提供几个可以执行的命令,但没有其他命令。我将使用下列参数authorized_keys从为表示在这里:
command
authorized_keys
command="/bin/myscript.sh",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-dss AAAAB3....o9M9qz4xqGCqGXoJw= user@host
这对我们来说足够安全。谢谢,社区!
您还可以将键限制为允许的命令(在authorized_keys文件中)。
也就是说,用户不会通过ssh登录,然后只有一组受限制的命令,而只能被允许通过ssh执行这些命令(例如“ ssh somehost bin / showlogfile”)