在Linux上,有多种方式让不安份的用户无法登录。

1.修改用户配置文件/etc/shadow,将第二栏设置为“*”

如下。那么该用户就无法登录。但是使用这种方式会导致该用户的密码丢失,要再次使用时,需重设密码再次启用这个帐号的方法是把“*”去掉就可以了

1test:*:15230:0:99999:7:::

2.使用命令usermod

1usermod -L test ##  锁定帐号test
2usermod -U test ##  解锁帐号test

3.通过修改shell类型

这种方式会更加人性化一点,因为你不仅可以禁止用户登录,还可以告诉他你这么做的原因。如下:

  1. chsh test -s /sbin/nologin #将用户testid的shell进行更改
  2. 修改/etc/nologin.txt(没有就新建一个),
  3. 在里面添加给被禁止用户的提示
  4. 解禁用户的方式就是把shell改为他原有的就可以了。

4.禁止所有的用户登录

如果你是root用户,当你不想让所有用户登录时(比如你要维护系统升级什么的),如果按上面的方式,一个一个地去禁止用户登录,这将是很……无聊的事。而且还容易出错。下面有一种简洁有效的方式:

1##在/etc目录下建立一个nologin文档
2touch /etc/nologin ##如果该文件存在,那么Linux上的所有用户(除了root以外)都无法登录
3
4##在/etc/nologin(注意:这可不是3中的nologin.txt啊!)写点什么,告诉用户为何无法登录
5cat /etc/nologin
69:00-10:00 系统升级,所有用户都禁止登录!

解禁帐号也简单,直接将/etc/nologin删除就行了!