Linux SSH帐号权限限制

来源:http://feedproxy.google.com/~r/JoysBoy/~3/TdH16qMVTJk/

在天朝用SSH来Proxy是家常便饭了,别跟我说你不知道怎么用

我自己也经常在vps上开一些ssh帐号给朋友用,一般都把shell设置为nologin,这样来禁止他们登入服务器

不过有一点很麻烦,密码只能由我设,当然也只能设个简单的,朋友不可能把自己平常用的密码随便告诉我,改密码也只能由我操作

今天看到有人说把这种帐号的shell设置为passwd,登录服务器只能修改密码,其他啥都做不了

试了一下,非常给力啊,这里记录下,顺便也分享一下

首先需要把/usr/bin/passwd加入到/etc/shells中

echo "/usr/bin/passwd" >> /etc/shells


新建账户的方法非常简单

useradd -M -s /usr/bin/passwd username

如果已经建好账户,修改/etc/passwd,把对应帐号最后面的shell改为/usr/bin/passwd即可

搞定,这些账户如果登录服务器,将直接提示修改密码,当然它也只能不停的修改密码

Last login: Mon Aug 15 20:35:17 2011 from *.*.*.* Could not chdir to home directory /home/xxx: No such file or directory Changing password for user xxx. Changing password for xxx (current) UNIX password:

这里会有个小报错,不过没关系,是由于我在新建账户时加了-M参数,不建立用户目录,的确也没必要建这个目录,所以这里warn忽略好了

如果你也有vps,也有这种给朋友开ssh帐号的事情,非常简易你尝试下


1 条评论:

馬克 说...

我也用 Linux Server 的 SSH SERVER 來翻牆,不過我不用 PASSWORD 的方式,我是採用 KEY AUTH 的方式,KEY 採用固定的保護金鑰密碼,萬一 USER 的金鑰掉了,就更換一組。User 的 SHELL 設 /bin/false,即使 USER 有金鑰也一樣無法登入 LINUX SERVER。連 EMAIL 的資源都無法使用,只能使用 SSH PORT FORWARD 的功能。