linux pam简介 认识linux系统安全之pam

kevin.Zhu 发布于:2013-1-16 11:35 分类:Linux  有 10 人浏览,获得评论 0 条  


1——叫即插验证模块,应用于验证分离

2——pam的模块放在/etc/security下面

3—–查询某个程序具体使用的哪一个pam模块

例如:

/etc/pam.d/login

/etc/pam.d/sshd

/etc/pam.d/vsftpd

4—对vim /etc/pam.d/login中

第一列 第二列 第三列  第四列

Auth required 模块    参数

Account     requisite

Password     sufficient

Session     include

Optional

Auth:是用来检查用户名和密码,还检查用户有没有被锁定

Account:除了用户名和密码以外但是对登录又起决定性作用的,例如,在规定的时间内,网段终端等,和用户名密码没有关系的,还检查用户名有无过期

Password:只有当用户修改密的时候才有用

Session:会话

Required:它想hi后的模块必须通过验证,如果验证成功继续向下验证,最终结果由后续模块决定,如果不成功,互惠返回失败,继续向下验证,但最终结果100%失败

Requisite:也称必要条件,差别在于requisite如果验证成功,继续向下验证,最终结果由后模块决定,如果不成功立刻返回失败

Sufficient:充分条件,后的模块如果验证失败,立刻返回成功,如果不成功继续向下验证,对最终的结果无影响

Include:后跟文件 包含

Optinonal:可选条件,它后面的模块,无论成功与否对最终结果无影响

5—–pam管理员手册

firefox /usr/share/doc/pam-0.99.6.2/html/Linux-PAM_SAG.html

vim /etc/securetty 存放的虚拟终端

vim /etc/security/pam_env.conf 设置环境变量的模块

auth_pam_unix.so 用来验证用户和密码的

account_pam_unix.so 验证用户有没有过期

         pam_rootok.so 判断当前用户是否为root

pam_nologin.so 拒绝非root用户登录

pam_access.so 限制用户访问终端

pam_time.so 拒绝某个时间段访问某个服务

6—–pam产生的日志:/var/log/secure

如:touch /etc/nologin 只要存在这个文件,其他的任何用户都登录不进来(终端测试),但是已经登录的没有影响

7——注意:在auth的pam_unix.so系统中和弦的一个pam模块,专门验证下面2个文件

/etc/passwd

/etc/shadow

Auth只检查shadow中的某一行的前两个冒号(:)的部分

在account的pam_unix.so

Account就检查后面剩下的几个冒号的部分

8—-例题:

限制用户访问终端

Vim /etc/pam.d/login

添加: auth required pam_access.so

Vin /etc/security/addess.conf

添加:- : wjx : tty3

拒绝某个人对你sshd

Vim /etc/pam.d/sshd

添加:auth required pam_access.so

Vim /etc/security/access.conf

添加:-:All : 192.168.119.120 # – 代表拒绝

+ 代表允许

决绝某个时间段访问某个服务

Vim /etc/pam.d/login

在account添加:account        required        pam_time.so

Vim /etc/security/time.cong

添加:Login; tty5; wjx; Mo1000-2300

echo模块

vin /etc/pam.d/login

添加:auth        required        pam_echo.so file=/usr/hell0.txt

touch /usr/hello.txt

vim hello.txt

hello world !!!

(5) 用户登录3次以上就在20秒以内拒绝这个用户登录

Vim /etc/pam.d/login

添加:auth        required        pam_tally.so deny=3 unlock_time=20