如果用户有loginShell=/sbin/nologin
,仍然可以
ssh user@machine [command]
假设用户在其主目录中具有正确的ssh密钥,可以用来进行身份验证?
我的目标是让用户保持登录状态,但仍然能够在网络上的其他几台计算机上执行命令(类似于通过“ sudo -u”使用它),并且想知道这是否合理。
设置/sbin/nologin
为用户的外壳程序(或/bin/false
或/bin/true
,几乎是等效的),将禁止用户登录以运行任何命令。SSH总是调用用户的登录Shell来运行命令,因此您需要将登录Shell设置为能够运行某些命令的外壳。
有几个受限制的外壳程序,它们使用户只能运行一些命令。例如RSSH和scponly都是这样壳,其允许用户运行几个预定义的命令(例如scp
,sftp-server
,rsync
,...)。另请参见限制linux中的用户访问,并且您需要SCP的外壳程序吗?
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句