[置顶] RH413企业安全加固 第10章 管理 PAM

第10章 管理 PAM (注意:红字)

 

1、环境 RHEL6.4 CLIENT IP:10.10.10.223

 

 

1、PAM(可插入式身份验证模块)

 

1)查看模块所对应的动态链接库

[root@student ~]# ldd `which sshd`|grep wrap

 libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f41d9684000)

 

2)查看sshd的模块是否支持pam验证模块

[root@student ~]# ldd `which sshd`|grep pam

libpam.so.0 => /lib64/libpam.so.0 (0x00007f30b45bd000)

 

3)查看pam验证模块路径

[root@student ~]# ls  /etc/pam.d/

 

4)查看pam.d 目录下的vsftpd文件

[root@student pam.d]# cat vsftpd 

#%PAM-1.0

session    optional     pam_keyinit.so    force revoke

auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed

auth       required     pam_shells.so

auth       include      password-auth

account    include      password-auth

session    required     pam_loginuid.so

session    include      password-auth

以上的pam_listfile.so是身份验证,这个模块可以将某个文件来使用你的用户来访问控制。

 

2、查看pam的文档(这里把/usr/share/doc/pam-1.1.1目录考到http服务目录下)

 [置顶] RH413企业安全加固 第10章 管理 PAM_第1张图片

3、查看pam_listfile.so帮助内容并如何使用

 [置顶] RH413企业安全加固 第10章 管理 PAM_第2张图片

pam_listfile.so item=[tty|user|rhost|ruser|group|shell] sense=[allow|deny] file=/path/filename onerr=[succeed|fail] [ apply=[user|@group] ] [ quiet ]

可以控制终端、用户、远程主机、远程用户、组和shell,你的senseallowdeny的文件路径在哪里,最后你的返回onerrsucceed还是fail模式

Vsftpd的写法:

#

# deny ftp-access to users listed in the /etc/ftpusers file

#

auth    required       pam_listfile.so \

        onerr=succeed item=user sense=deny file=/etc/ftpusers

 

 

4、PAM的语法

1)PAM调用的动态链接库位置

/lib/security/ 和 /lib64/security/

2)pam.d下主要的文件system-auth 和 password-auth

system-auth控制本地系统

password-auth 控制远程系统

除了以上这两个文件以外还有单独支持的模块如:sshdvsftpd

3)查看sshdpam模块

[root@student pam.d]# cat sshd 

#%PAM-1.0

auth       required     pam_sepermit.so

auth       include      password-auth

account    required     pam_nologin.so

account    include      password-auth

password   include      password-auth

# pam_selinux.so close should be the first session rule

session    required     pam_selinux.so close

session    required     pam_loginuid.so

# pam_selinux.so open should only be followed by sessions to be executed in the user context

session    required     pam_selinux.so open env_params

session    optional     pam_keyinit.so force revoke

session    include      password-auth

 

Includepam的模块的嵌套,会去调用password-auth模块

如果需要限制sshd可以写到system-authpassword-authsshd 都是可以的

4)语法解释

Pam支持4种类型

① 认证管理类型

用来检查用户名和密码

Pam最经典的模块是system-auth下的pam_unix.so

try_first_pass意思是从上一个模块里面去读入用户名和密码,不是首次登录密码

如果密码失败了,才让用户再次输入密码。

pam_cracklib.so try_first_pass retry=3 type=

以上这是控制密码的模块,可以尝试输入错误3次,可以使用这个模块控制密码的

强度和长度,密码的类型。

 

② 账户管理

账户的登录时间,账户允不允许登录

③ 密码管理

是通过密码字典来管理的

④ 会话管理

跟程序和用户通信的方式

 

 

核心的动态链接库位置 /lib64/libpam.so.0

PAM主配置文件 /etc/pam.d/

⑤ 模块的第1列 是模块的功能

auth:检查使用者的身份,提示用户输入用户名和密码

account :管理用户访问时间和密码的有效期

Password:专门为修改密码有关

Session:访问日志限制用户登录次数,跟pam_limits.so有关

[root@student pam.d]# cd /etc/security/ 控制pam_limits在此目录下

 

⑥ 模块的第2列 是模块的状态

Required:验证失败后,仍然继续

Requisite:验证失败后,结束整个过程

Sufficient:验证成功后,立即停止

Optional:不管authaccountPassword行不行反正Session功能是

可以的。

Include:  嵌套

 

⑦ 模块的第3

pam_cracklib.so 控制密码的复杂长度,密码必须要有大写字母和数字。

password  required pam_cracklib.so \

               dcredit=-1 ucredit=-1 ocredit=-1 lcredit=0 minlen=8

 

minlen=8代表是密码长度

ocredit=-1代表是至少有一个特殊字符

dcredit=-1代表数字

ucredit=-1代表大写

lcredit=0代表小写

 

练习:

修改 system-auth文件

password    requisite     pam_cracklib.so try_first_pass retry=3 type=strom

[student@student pam.d]$ passwd

Changing password for user student.

Changing password for student.

(current) UNIX password: 

New strom password: 

以上的是作为提示使用的

password    requisite     pam_cracklib.so try_first_pass retry=3 type=strom  dcredit=-1 ucredit=-1 ocredit=-1 lcredit=0 minlen=8

 

设置student密码

student@student pam.d]$ passwd

Changing password for user student.

Changing password for student.

(current) UNIX password: 

New strom password: 

BAD PASSWORD: it is WAY too short

密码不服长度,说明设置的system-auth已经生效

 

默认的telnet登录不了使用因为远程主机连接是使用pts/n模式

而且没有写入/etc/securetty里面,导致telnet登录不了。

 


 

你可能感兴趣的:([置顶] RH413企业安全加固 第10章 管理 PAM)