有没有办法只是执行用户(SSH)login命令(或脚本),然后退出? 某种用自定义脚本replace默认的shell。
我想要一个用户只能重新启动一个服务,但不能有正常的shell访问
谢谢
你想要这样做的方法是使用ssh键,并在用户的.ssh / authorized_keys文件中设置与该键相关的命令。 快速谷歌给了我这个 ,特别是“强制命令”部分。
编辑:这是第二部分passwd -l用户,以便基于密码的login是不可能的。
在Ubuntu中,我能够创build一个重新启动服务的脚本。 然后在用户的/ etc / passwd项中,我将脚本设置为loginshell(最后一个字段)。
从/ etc / passwd:
testaccount:X:1001:1001:1 ,,:/首页/ testaccount:/home/testaccount/login.sh
像这样的东西?
root@admin:~ # ssh root@www 'df -h' Filesystem Size Used Avail Use% Mounted on /dev/ubda 3.5G 2.1G 1.4G 61% / tmpfs 96M 4.0K 96M 1% /dev/shm