? 1.1.1 将系统设置成无法登录
? ? [root@localhost ~?] #? ? tail /etc/passwd? ? ? ? ? ? ? ? ? ? ? ?#? 查看lisi的属性
? ? [root@localhost ~?] #? ? chsh -s /sbin/nologin lisi? ? ? ? ?#? ?修改lisi的shell属性
? ??[root@localhost ~?] #? ? tail -1 /etc/passwd? ? ? ? ? ? ? ? ? #? ?查看lisi的属性
? 1.1.2 锁定账户?
? ??[root@localhost ~?] #? ? passwd -l zhaosi? ? ? ? ? ? ? ? 锁定用户zhaosi的密码
? ??[root@localhost ~?] #? ? su zhangsan? ? ? ? ? ? ? ? ? ? ? ?切换用户为zhangsan
? ??[zhangsan@localhost ~?] #? ? su zhaosi? ? ? ? ? ? ? ? ? ?鉴定故障zhaosi
? ??[root@localhost ~?] #? ? passwd -u zhaosi? ? ? ? ? ? ? ?解锁用户zhaosi的密码
? 1.1.3 删除用户
? ? ?格式:userdel -r 用户名
? 1.1.4 锁定配置文件
? ? chattr
选项 | 功能 |
---|---|
-a | 追加文件或目录 |
-i | 不得任意更改文件或目录 |
??
? ? 格式:su [options...] [-] [user [args...]]
? ? 切换用户的方式:
? ? ? su UserName:非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录,即不完全切换
? ? ? su - UserName:登录式切换,会读取目标用户的配置文件,切换至自已的家目录,即完全切换
? ? 说明:root切换至其他用户无须密码;非root用户切换时需要密码
? ? su和su - 的区别
? ? ? su - 这个选项切换的更加彻底;而su这个选项只能切换一部分
? ? 限制使用su命令的用户
?a)以上两行是默认状态(即开启第一行,注释第二行),这种状态下是允许所有用户间使用su命令进行切换的。
b)两行都注释也是允许所有用户都能使用su命令,但root'下使用su切换到其他普通用户需要输入密码;如果第一行不注释,则root使用su切换普通用户就不需要输入密码(pam rootok. so模块的主要作用是使uid为0的用户,即root用户能够直接通过认证而不用输入密码。)
c)如果开启第二行,表示只有root用户和wheel组内的用户才可以使用su命令
d)如果注释第一行,开启第二行,表示只有whee1组内的用户才能使用su命令,root用户也被禁用su命令。
? ??PAM提供了对所有服务进行认证的中央机制,适用于本地登录,远程登录。
? ? ?[root@localhost ~ ] #? ? rpm -qi pam? ? ? ? 查看当前系统pam
? ? ?[root@localhost ~ ] #? ? rpm -ql?pam? ? ? ? 查看当前模块
主配置文件:/etc/pam.conf,默认不存在,一般不使用主配置
为每种应用模块提供一个专用的配置文件:/etc/pam.d/APP_NAME
注意:如/etc/pam.d存在,/etc/pam.conf将失效
? ??PAM认证的顺序:Service(服务)→PAM(配置文件)→pam_*.so
? ? 格式:type? ? ? ? control? ? ? ? module-path? ? ? ? arguments
? ? ?type:指模块类型
? ? ?control :PAM库该如何处理与该服务相关的PAM模块的成功或失败情况,一个关键词实现
? ? ?module-path: 用来指明本模块对应的程序文件的路径名
? ? ?Arguments: 用来传递给该模块的参数
? ?模块类型
? ? ??Auth 账号的认证和授权
? Control
? ? required 一票否决 如果失败,一定失败,但是会继续运行验证
? ? requisite 一票否决 如果失败会立即结束验证,同时反馈失败
? ? sufficient 验证成功则立即返回,暴露再继续,否则忽略结果并继续
? 第三列代表PAM模块
? ? 默认是在/lib64/security/目录下,如果不在此默认路径下,要填写绝对路径。
? ??每一行可以区分为三个字段: 认证类型 控制类型 PAM 模块及其参数
? ??PAM 认证类型包括四种:
? ? 作用:规定检查shell,pam_shells 只允许 规定的shell类型通过,而且它是在/etc/shells 文件中存在的。
? ? 命令:man pam_shells。
? ? ??如果/etc/nologin文件存在,将导致非root用户不能登陆,当该用户登陆时,会显示/etc/nologin文件内容,并拒绝登陆。
? ? ? 此模块对ssh登录有效,但不影响su登录
? ??在用户级别实现对其可使用的资源的限制。
选项 | 功能 |
---|---|
-H | 设置硬件资源,一旦设置无法添加 |
-S | 设置软件资源,可以添加但不能超过硬件资源 |
-a | 显示当前所有的limit信息 |
-c | 最大的core文件大小,单位为blocks |
-d | 进程最大的数据段,单位为Kbytes |
-f | 最大创建的文件量,单位为blocks |
-l | 最大可枷锁内存的大小,单位为Kbytes |
-m | 最大内存,单位为Kbytes |
-n | 最大文件描述符数量 |
-p | 管道缓冲区大小,单位为Kbytes |
-s | 线程栈大小,单位为Kbytes |
-t | 最大CPU占用时间,单位为秒 |
-u | 用户最大可用进程数 |
-v | 进程可用最大的虚拟内存,单位为Kbytes |
? ??允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,udo使一般用户不需要知道超级用户的密码即可获得权限。
? ??配置文件格式说明:/etc/sudoers,/etc/sudoers.d/
? ? sudo别名有四种类型:
? ? ? User_Alias(用户)
? ? ? Runas_Alias(代表用户)
? ? ? Host_Alias(登录主机)
? ? ? Cmnd_Alias(命令)
? ? 注意:别名格式必须大写字母,数字可以使用但是不能放在开头