Ubuntu修改密码及密码复杂度策略和日志审计设置方法
版本查看
cat /etc/issue
cat /proc/version
内核查看
uname -a
Ubuntu修改密码及密码复杂度策略设置方法
一、修改密码
1、修改普通用户密码
passwd
2、修改root用户密码
sudo passwd root
默认root用户被禁止登录,如果需要解除限制,修改配置即可
sudo vim /etc/ssh/sshd_config
将默认配置注释掉,添加一行新的配置,默认的配置为允许root登录,但是禁止root用密码登录
二、密码复杂度策略
1、安装cracklib模块
安装PAM的cracklib模块,cracklib能提供额外的密码检查能力
sudo apt-get install libpam-cracklib
2、相关策略设置(1) 禁止使用旧密码
sudo vim /etc/pam.d/common-password
找到如下配置,并在后面添加remember=5,表示禁止使用最近用过的5个密码,己使用过的密码会被保存在/etc/security/opasswd
设置最短密码长度和复杂度
sudo vim /etc/pam.d/common-password
配置如下:
password requisite pam_cracklib.so retry=3 minlen=8 difok=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
password [success=1 default=ignore] pam_unix.so obscure use_authtok try_first_pass sha512 remember=5
# here's the fallback if no module succeeds
password requisite pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
3、设置密码过期期限
sudo vim /etc/login.defs
三 、超时、登录失败锁定
vi /etc/profile
export TMOUT=600
source /etc/profile
[root@localhost ~]>echo "$TMOUT"
结果如下:
1、编辑PAM的配置文件
sudo vim /etc/pam.d/login
在第二行添加
auth required pam_tally2.so deny=3 unlock_time=5 even_deny_root root_unlock_time=10
参数介绍
even_deny_root 也限制root用户;
deny 设置普通用户和root用户连续错误登陆的最大次数,超过最大次数,则锁定该用户;
unlock_time 设定普通用户锁定后,多少时间后解锁,单位是秒;
root_unlock_time 设定root用户锁定后,多少时间后解锁,单位是秒;
2、修改sshd文件
这个只是限制了用户从tty登录,而没有限制远程登录,如果想限制远程登录,需要改sshd文件
sudo vim /etc/pam.d/sshd
第二行添加
auth required pam_tally2.so deny=3 unlock_time=5 even_deny_root root_unlock_time=10
重启sshd服务
service sshd restart
使用sudo pam_tally2 -u user命令查看
sudo pam_tally2 -u user
远程ssh的时候,输入密码错误超过三次但是没有提示,但是只要超过设定的值,输入正确的密码也是登陆不了的!还是要等到设定的时间在重新尝试输入正确密码进行登录认证。
四、审计
audit
auditctl : 即时控制审计守护进程的行为的工具,比如添加规则等等。
aureport : 查看和生成审计报告的工具。
ausearch : 查找审计事件的工具
auditspd : 转发事件通知给其他应用程序,而不是写入到审计日志文件中。
autrace : 一个用于跟踪进程的命令。
/etc/audit/audit.rules : 记录审计规则的文件。
/etc/audit/auditd.conf : auditd工具的配置文件
1.下面开始启动,先确认系统是否安装了audit服务
service auditd status
2.ubuntu执行以下命令安装
sudo apt-get install auditd
3、启动audit服务
systemctl restart auditd
4、一些相关命令
查看审计规则
auditctl -l
添加审计规则
-w path : 指定要监控的路径,上面的命令指定了监控的文件路径 /etc/passwd
-p : 指定触发审计的文件/目录的访问权限
-k 给当前这条监控规则起个名字,方便搜索过滤
rwxa : 指定的触发条件,r 读取权限,w 写入权限,x 执行权限,a
属性(attr)
auditctl -w /etc/passwd -p rwxa
查看审计日志
ausearch -f /etc/passwd
生成简要报告
aureport
日志文件目录:
/var/log/audit/audit.log
注意:用 auditd 添加审计规则是临时的,立即生效,但是系统重启失效。
想要重启仍然有效,需要在 /etc/audit/audit.rules 文件中添加规则,然后重启服务:
service auditd restart
或
service auditd reload
5、修改配置文件:
auditd的配置文件为/etc/audit/audit下的auditd.conf 和audit.rules,auditd.conf 主要是定义了auditd服务日志和性能等相关配置,audit.rules才是定义规则的文件,其实就是把auditctl的命令直接拿过来即可,auditctl里支持的选项都可以在这个文件里指定。
基本参数与命令auditctl一致,只需要直接写入配置文件/etc/audit/audit.rules,重启auditd服务即可。
/etc/audit/rules.d下放置的文件,可以被导入到audit.rules配置文件。
导入命令:
augenrules --load
/etc/audit/rules.d 规则可写
来源:https://blog.csdn.net/szgyunyun/article/details/122862302