前言
账户安全的重要性体现在Linux系统内储存着大量的企业文件和企业机密,如果一旦被不法分子攻破,被使用于不合法及恶劣的事件中,公司的损失是不言而喻的,同样,对linux运维工程师来说,是技术上的缺失,更是心理上的谴责。
一、将非登陆用户的shell设为/sbin/nologin
1、查询用户账号是否允许登陆案例
二、锁定长期不使用的账户
1、使用usermod 锁定/解锁用户案例 2、使用passwd锁定/解锁用户案例
三、删除无用的账号
1、使用userdel删除用户案例
四、锁定账户文件passwd、shadow
1、Chattr 命令 1.1、基本命令 chattr 参数 文件 1.2、参数 1.3、案例 2、lsattr 命令 2.1、命令含义:查看由chattr操作的文件状态 2.2、案例
五、密码安全控制
1、设置密码有效期 1.1、知识点1:工作环境下,正常的有效期设置为30(一个月),或者90天换一次 1.2、知识点2:编辑vim /etc/login.defs 查看:chage -L 新建用户 已存用户修改密码有效期:chage -M 修改日期 用户 1.3、案例 1.3.1、新用户查询密码有效期 1.3.2、老用户修改密码有效期 2、要求用户下次登陆时修改密码 2.1、基本命令:chage -d 0(零) 已有用户 2.2、案例
六、命令历史限制
1、临时删除历史记录 2、减少记录的命令条数
3、注销时自动清空命令历史 3.1、重启以后历史还在案例 3.2、重启以后历史彻底消失案例 4、终端自动注销
七、su命令
1、基本命令:su - 用户名 表:切换到目标用户中 2、基本命令:su 用户名 (没有—) 表:当前目录 3、密码验证:root切换到任意用户,不需要密码验证 4、密码验证:普通用户切换到其他用户,验证目标用户的密码 5、限制使用su 命令的用户 5.1、将允许使用su 命令的用户加入wheel组中; 5.2、启用pam_wheel 认证模块 5.3、案例 6、两行默认状态(即开启第一行,注释第二行),这种状态下是允许所有用户间使用su命令进行切换的。 7、两行都注释也是运行所有用户都能使用su命令,但root’下使用su切换到其他普通用户需要输入密码;如果第一行不注释,则root使用su切换普通用户就不需要输入密码(pam rootok. so模块的主要作用是使uid为0的用户,即root用户能够直接通过认证而不用输入密码。)
8、如果开启第二行,表示只有root用户和wheel组内的用户才可以使用su命令
9、如果注释第一行,开启第二行,表示只有whee1组内的用户才能使用su命令,root用户也被禁用su命令。
八、PAM安全认证
1、su命令的安全隐患:第一默认情况下,任何用户都可以通过反复尝试其他用户的登陆密码,带来安全隐患;第二为了加强su命令的使用控制,可以借助PAM认证模块,只允许极个别用户使用su 命令进行切换。
2、PMA可插拔式认证模块:首先它是一款高效且灵活便利的用户级别的认证方式;其次也是当前linux服务器普遍使用的认证方式
3、访问顺序:Users访问server服务,服务具体调用服务中的某一个具体的服务(su);其次再递进访问某一个具体服务中的配置文件(/etc/pam.d/su),再调用配置文件中的某个具体的模块(wheel.So)
九、总结
在Linux使用过程中,首先账户的基本操作,例如添加useradd、删除userdel,账户锁定(usermod -L/chattr +i)、账户解锁(passwd -u/chattr -i)等操作应该是烂熟于心,其次密码安全,密码安全是最为重要的部分,密码的更新是为了防止有些有心人故意攻击或者篡改系统内部的文件和系统配置,一般来说密码有效期为30或者90天为一周期进行更替,同时密码归置于/etc/passwd中,对于新创用户的而言,在创建初期就该设定好密码有效期,对于已存用户使用chage -M 日期 用户名的方式修改有效期,同时,为了防止遗忘修改密码,可设置该用户下次登陆时强制修改密码,chage -d 0 用户即可,第三是历史记录,历史记录的清除是防止黑客攻进系统后查阅历史记录,得知一些企业机密而存在,在全局系统环境profile中修改保留条数,并且到bashrc中添加一条echo ‘ ’ > ~/.bash_history 命令,可达到每次重启后命令自动消失的效果。最后是su命令,su 命令是切换的作用,有心者会使用su命令按个尝试其他用户,攻破密码,非常危险,此时使用pam—wheel认证可有效的防止有心者破坏系统,或做出违规违法行为。
|