1.修改用户的账号属性,设置为有效期日失效(禁止登录)
1)正常情况下,未过期的账号可以正常登录,使用chage可以修改账户有效期
chage命令的语法格式: chage -l 账户名称 #查看账户信息 chage -E 时间 账户名称 #修改账户有效期
2)失效的用户将无法登录
使用chage命令将用户的账户设为当前已失效(比如已经过去的某个时间)
[root@proxy ~]# useradd zhangsan #创建账户 [root@proxy ~]# passwd zhangsan #设置密码 [root@proxy ~]# chage -E 2017-12-31 zhangsan #设置账户过期时间
尝试以用户zhangsan重新登录,输入正确的用户名、密码后直接闪退,返回登录页,说明此帐号已失效。
3)重设用户的属性,将失效时间设为2019-12-31
[root@proxy ~]# chage -E 2019-12-31 zhangsan #修改失效日期 [root@proxy ~]# chage -l zhangsan #查看账户年龄信息 Last password change : May 15, 2017 Password expires : never Password inactive : never Account expires : Dec 31, 2019 Minimum number of days between password change : 0 Maximum number of days between password change : 99999 Number of days of warning before password expires : 7
4)重设用户zhangsan的属性,将失效时间设为永不过期
[root@proxy ~]# chage -E -1 zhangsan #设置账户永不过期
5)定义默认有效期
/etc/login.defs这个配置文件,决定了账户密码的默认有效期
[root@proxy ~]# cat /etc/login.defs PASS_MAX_DAYS 99999 #密码最长有效期 PASS_MIN_DAYS 0 #密码最短有效期(root可以随便改,0:当天随便改,1:一天之后才能改) PASS_MIN_LEN 5 #密码最短长度 PASS_WARN_AGE 7 #密码过期前几天提示警告信息 UID_MIN 1000 #UID最小值 UID_MAX 60000 #UID最大值
2.临时锁定用户的账户,使其无法登录,验证效果后解除锁定
1)锁定用户账号
使用passwd或usermod命令将用户zhangsan的账户锁定
[root@proxy ~]# passwd -l zhangsan #锁定用户账号(lock) 锁定用户 zhangsan 的密码。 passwd: 操作成功 [root@proxy ~]# passwd -S zhangsan #查看状态(status) zhangsan LK 2018-02-22 0 99999 7 -1 (密码已被锁定。)
2)验证用户zhangsan已无法登录,说明锁定生效
输入正确的用户名、密码,始终提示“Login incorrect”,无法登录。3)解除对用户zhangsan的锁定
root@proxy ~]# passwd -u zhangsan #解锁用户账号(unlock) 解锁用户 zhangsan 的密码 。 passwd: 操作成功 [root@proxy ~]# passwd -S zhangsan #查看状态 zhangsan PS 2018-08-14 0 99999 7 -1 (密码已设置,使用 SHA512 加密。)
3.修改tty终端提示,使得登录前看到的第一行文本为“............",第二行文本为".......”
1)账户在登录Linux系统时,默认会显示登陆信息(包括操作系统内核信息)
/etc/issue这个配置文件里保存的就是这些登陆信息,修改该文件防止内核信息泄露。
[root@proxy ~]# cat /etc/issue #确认原始文件 Red Hat Enterprise Linux Server release 7.5 Kernel \r on an \m [root@proxy ~]# cp /etc/issue /etc/issue.origin #备份文件 [root@proxy ~]# vim /etc/issue #修改文件内容 Windows Server 2012 Enterprise R2 NT 6.2 Hybrid
2)测试版本伪装效果 退出已登录的tty终端,或者重启Linux系统,刷新后的终端提示信息会变成自定义的文本内容
4.锁定文件/etc/resolv.conf、/etc/hosts,以防止其内容被无意中修改
1)语法格式
# chattr +i 文件名 #锁定文件(无法修改、删除、追加等)(包括root用户) # chattr -i 文件名 #解锁文件 # chattr +a 文件名 #锁定后文件仅可追加 # chattr -a 文件名 #解锁文件 # lsattr 文件名 #查看文件特殊属性
2) 使用+i锁定文件,使用lsattr查看属性
[root@proxy ~]# chattr +i /etc/resolv.conf [root@proxy ~]# lsattr /etc/resolv.conf ----i---------- /etc/resolv.conf
3)使用+a锁定文件(仅可追加),使用lsattr查看属性
[root@proxy ~]# chattr +a /etc/hosts [root@proxy ~]# lsattr /etc/hosts -----a---------- /etc/hosts
4)测试文件锁定效果
[root@proxy ~]# rm -rf /etc/resolv.conf rm: 无法删除"/etc/resolv.conf": 不允许的操作 [root@proxy ~]# echo xyz > /etc/resolv.conf -bash: resolv.conf: 权限不够 [root@proxy ~]# rm -rf /etc/hosts #失败 [root@proxy ~]# echo "192.168.4.1 xyz" > /etc/hosts #失败 [root@proxy ~]# echo "192.168.4.1 xyz" >> /etc/hosts #成功
5)恢复这两个文件原有的属性
[root@proxy ~]# chattr -i /etc/resolv.conf [root@proxy ~]# chattr -i /etc/hosts [root@proxy ~]# lsattr /etc/resolv.conf /etc/hosts --------------- /etc/resolv.conf --------------- /etc/hosts
5.关闭不需要的服务
[root@ecs-proxy ~]# systemctl stop postfix atd tuned
[root@ecs-proxy ~]# yum remove -y postfix at audit tuned kexec-tools firewalld-*
[root@ecs-proxy ~]# vim /etc/cloud/cloud.cfg
# manage_etc_hosts: localhost 注释掉这一行
[root@ecs-proxy ~]# reboot