/usr/sbin/nologin,/bin/false的意思是禁止某个用户登录
比较常用的用法:
#添加一个不能登录的用户
useradd -d /usr/local/apache -g apache -s /bin/false apache
要拒绝系统用户登录,可以将其shell设置为/usr/sbin/nologin
或者/bin/false
usermod -s | --shell /usr/sbin/nologin username
# 或者
usermod -s | -shell /bin/false username
说明及比较:
/bin/false:
/bin/false
什么也不做只是返回一个错误状态,然后立即退出。将用户的shell
设置为/bin/false
,用户会无法登录,并且不会有任何提示。/usr/sbin/nologin:
nologin
会礼貌的向用户显示一条信息,并拒绝用户登录:This account is currently not available.
有一些软件,比如一些ftp
服务器软件,对于本地非虚拟账户,只有用户有有效的shell
才能使用ftp
服务。这时候就可以使用nologin
使用户即不能登录系统,还能使用一些系统服务,比如ftp
服务。/bin/false
则不行,这是二者的重要区别之一。
/etc/nologin
如果存在/etc/nologin
文件,则系统只允许root
用户登录,其他用户全部被拒绝登录,并向他们显示/etc/nologin
文件的内容。
其他用户管理用法
锁定用户账户
passwd -l | --lock username
解锁用户账户
passwd -u | --unlock username
删除用户密码
passwd -d | --delete username