一、设置用户的有效时间-chage命令
1.chage命令使用场景
chage这个命令可以查看的密码过期时间,账户过期时间,两次密码之间的修改间隙,提示用户按时修改密码.
在公司里一般用于设置用户的有效时间,管理员给你的账户一般都设置了有效时间,以防止你在离职后仍可以访问终端.还可以提示你定期修改密码,提高用户安全性
2.chage命令选项
chage [选项]
选项:
-d, --lastday 最近日期 将最近一次密码设置时间设为“最近日期”
-E, --expiredate 过期日期 将帐户过期时间设为“过期日期”
-h, --help 显示此帮助信息并推出
-I, --inactive INACITVE 过期 INACTIVE 天数后,设定密码为失效状态
-l, --list 显示帐户年龄信息
-m, --mindays 最小天数 将两次改变密码之间相距的最小天数设为“最小天数”
-M, --maxdays 最大天数 将两次改变密码之间相距的最大天数设为“最大天数”
-R, --root CHROOT_DIR chroot 到的目录
-W, --warndays 警告天数 将过期警告天数设为“警告天数”
3.查看用户的过期时间
创建一个用户查看用户的过期时间,默认的过期时间是永久.第一次就该密码时间为创建用户的日期.
chage -l 用户名
[root@web1 ~]# useradd jjh
[root@web1 ~]# chage -l jjh
最近一次密码修改时间 :10月 14, 2019
密码过期时间 :从不
密码失效时间 :从不
帐户过期时间 :从不
两次改变密码之间相距的最小天数 :0
两次改变密码之间相距的最大天数 :99999
在密码过期之前警告的天数 :7
4.修改用户的过期时间
如上我创建了一个用户,创建时间是 2019-10-14,我使用chage命令将用户zhangsan的账户设为当前已失效(已经过去的某个时间).提示账号已经过期
chage -E 时间(xxxx-xx-xx) 用户名
- [root@proxy ~]# chage -E 2019-10-13 jjh
- [root@proxy ~]$ ssh [email protected]
[email protected]'s password:
Your account has expired; please contact your system administrator
Authentication failed.
5.定义默认有效期
/etc/login.defs这个配置文件,决定了账户密码的默认有效期。
- [root@proxy ~]# cat /etc/login.defs
- PASS_MAX_DAYS 99999 //密码最长有效期
- PASS_MIN_DAYS 0 //密码最短有效期
- PASS_MIN_LEN 5 //密码最短长度
- PASS_WARN_AGE 7 //密码过期前几天提示警告信息
- UID_MIN 1000 //UID最小值
- UID_MAX 60000 //UID最大值
二、锁定用户-passwd
1.锁定用户
passwd -l 用户名
[root@web1 ~]# passwd -l jjh
锁定用户 jjh 的密码 。
passwd: 操作成功
[root@web1 ~]# passwd -S jjh
jjh LK 2019-10-14 0 99999 7 -1 (密码已被锁定。)
[root@web1 ~]# ssh jjh@localhost //无法登录Permission denied, please try again.
2.解锁用户
passwd -u 用户名
[root@web1 ~]# passwd -u jjh
解锁用户 jjh 的密码。
passwd: 操作成功
[root@web1 ~]# passwd -S jjh
jjh PS 2019-10-14 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)
三、锁定文件-chattr
1.chattr命令
用法:chattr +ASabcdDisut 文件名
A:即Atime,告诉系统不要修改对这个文件的最后访问时间。
S:即Sync,一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘。
a:即Append Only,系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件。
b:不更新文件或目录的最后存取时间。
c:将文件或目录压缩后存放。
d:当dump程序执行时,该文件或目录不会被dump备份。
D:检查压缩文件中的错误。
i:即Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。
s:彻底删除文件,不可恢复,因为是从磁盘上删除,然后用0填充文件所在区域。
u:当一个应用程序请求删除这个文件,系统会保留其数据块以便以后能够恢复删除这个文件,用来防止意外删除文件或目录。
t:文件系统支持尾部合并(
tail
-merging)。
X:可以直接访问压缩文件的内容。
2.使文件无法修改和删除
- [root@proxy ~]# chattr +i /etc/resolv.conf
- [root@proxy ~]# lsattr /etc/resolv.conf //查看权限
- ----i---------- /etc/resolv.conf
- [root@proxy ~]# rm -rf /etc/resolv.conf
- rm: 无法删除"/etc/resolv.conf": 不允许的操作
- [root@proxy ~]# echo xyz > /etc/resolv.conf
- -bash: resolv.conf: 权限不够
四、隐藏系统版本
1.账户在登录Linux系统时,默认会显示登陆信息(包括操作系统内核信息)
/etc/issue这个配置文件里保存的就是这些登陆信息,修改该文件防止内核信息泄露。
- [root@proxy ~]# cat /etc/issue //确认原始文件
- Red Hat Enterprise Linux Server release 6.5 (Santiago)
- Kernel \r on an \m
- [root@proxy ~]# vim /etc/issue //修改文件内容
- Windows Server 2012 Enterprise R2
- NT 6.2 Hybrid
2.测试版本伪装效果
退出已登录的tty终端,或者重启Linux系统,刷新后的终端提示信息会变成自定义的文本内容