shell相关1-----/sbin/nologin理解

/etc/passwd中的每个用户都被指定了使用哪个shell,最常见的两种

1./sbin/nologin

2./bin/bash

后者很好理解,就是系统使用bash shell环境登录。

所以主要学习了/sbin/nologin,并对此进行描述。

若某个账号使用了/sbin/nologin,则此时无法登录系统,即使给了密码也不行。系统账号一般都是使用这它.所谓“无法登陆”指的仅是这个用户无法使用bash或其他shell来登陆系统而已,并不是说这个账号就无法使用系统资源。举例来说,各个系统账号中,打印作业有lp这个账号管理,www服务器有apache这个账号管理,他们都可以进行系统程序的工作,但就是无法登陆主机而已。有时候有些服务,比如邮件服务,大部分都是用来接收主机的邮件而已,并不需要登陆。假如有账号试图连接我的主机取得shell,我们就可以拒绝。

[root@localhost shell]# grep mail /etc/passwd
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
[root@localhost shell]# su - mail
最終ログイン: 2017/07/28 (金) 08:49:58 JST日時 pts/2
This account is currently not available.

另外,如果我想要让某个具有 /sbin/nologin 的用户知道,他们不能登陆主机时,可以新建 /etc/nologin.txt 这个文件,在文件内面写上不能登陆的原因,当用户登录时,屏幕上就会出现这个文件里面的内容。

[root@localhost shell]# mv /etc/nologin.txt.bak /etc/nologin.txt
[root@localhost shell]# cat /etc/nologin.txt
this account is system account or mail account
[root@localhost shell]# su - mail
最終ログイン: 2017/07/28 (金) 09:01:19 JST日時 pts/2
this account is system account or mail account

相关推荐