Linux、Windows系统安全加固
Linux系统加固:
1.检查是否设置密码有效期,密码复杂度
# 执行备份
cp -p /etc/login.defs /etc/login.defs.$(date +%F).bak
查看文件/etc/login.defs,检查如下参数值是否满足要求:
PASS_MAX_DAYS 90 #密码最长过期天数
PASS_MIN_DAYS 7 #密码最小过期天数
PASS_MIN_LEN 8 #密码最小长度
PASS_WARN_AGE 7 #密码过期警告天数
# 设置密码复杂度
# 执行备份
cp -p /etc/pam.d/system-auth /etc/pam.d/system-auth.$(date +%F).bak
在/etc/pam.d/system-auth中的“password requisite pam_pwquality.so”行尾添加具体参数
比如“minlen=16 ucredit=-1 lcredit=-1 ocredit=-1 dcredit=-1”,表示最小密码长度16位,数字,大小写字母,特殊字符均至少包含1位
2.检查账户认证失败次数限制
执行备份
cp -p /etc/pam.d/system-auth /etc/pam.d/system-auth.$(date '+%F').bak
查看文件/etc/pam.d/system-auth,检查如下参数值是否满足要求:
auth required pam_tally2.so deny=5 onerr=fail no_magic_root unlock_time=180
account required pam_tally2.so
3.检查历史命令设置
echo 'HISTFILESIZE=20' >> /etc/profile
echo 'HISTSIZE=20' >> /etc/profile
source /etc/profile
4.操作系统未限制默认账户(root)的登录模式,未配置SU_WHEEL_ONLY yes
cp -p /etc/login.defs /etc/login.defs.$(date +%F).bak
# 编辑文件/etc/login.defs
echo 'SU_WHEEL_ONLY yes' >> /etc/login.defs
5.检查是否使用PAM认证模块禁止wheel组之外的用户su为root
# 执行备份
cp /etc/pam.d/su /etc/pam.d/su.$(date +%F).bak
# 编辑文件/etc/pam.d/su
# 在文件开头加入如下两行(有则修改,没有则添加):
auth sufficient pam_rootok.so
auth required pam_wheel.so use_uid
# 注意auth与sufficient之间由两个tab建隔开,sufficient与动态库路径之间使用一个tab建隔开
# 说明:(这表明只有wheel组中的用户可以使用su命令成为root用户。你可以把用户添加到wheel组,以使它可以使用su命令成为root用户。)
# 添加方法:
usermod -G wheel username # *****(一定要注意。执行后新开窗口验证普通用户是否能切换到root)*****
6.操作系统未启用NTP服务
# 执行备份
cp /etc/ntp.conf /etc/ntp.conf.$(date +%F).bak
# 编辑ntp.conf文件
vi /etc/ntp.conf
# 在文件中添加如下一行:
server 10.126.196.32
# 重启ntpd服务
systemctl restart ntpd
# 确认配置生效
ntpq -p
ntpstat
timedatectl
7.ICMP timestamp请求响应漏洞
描述:
远程主机会回复ICMP_TIMESTAMP查询并返回它们系统的当前时间。 这可能允许者一些基于时间认证的协议
修复:
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p ICMP --icmp-type timestamp-request -m comment --comment "deny ICMP timestamp" -j DROP
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p ICMP --icmp-type timestamp-reply -m comment --comment "deny ICMP timestamp" -j DROP
8.允许Traceroute探测漏洞
描述:
本插件使用Traceroute探测来获取扫描器与远程主机之间的路由信息。或者也可以利用这些信息来了解目标网络的网络拓扑
修复:
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p ICMP --icmp-type 11 -m comment --comment "deny traceroute" -j DROP
重新加载firewalld配置
firewall-cmd --reload
查看添加的规则
firewall-cmd --direct --get-all-rules
Windows系统加固:
1.windows系统密码复杂度策略:
win+R 输入gpedit.msc—计算机配置—windows设置—安全设置—账户策略—密码策略
设置参数可参考下图
2.windows系统账户锁定策略设置
win+R 输入gpedit.msc—计算机配置—windows设置—安全设置—账户策略—账户锁定策略
设置参数可参考下图
3.开启服务器审计策略
A、win+R 输入gpedit.msc—计算机配置—windows设置—安全设置—本地策略—审核策略
设置参数可参考下图
B、建议设置widows应用程序、安全、系统等日志的,日志存储最大大小,大于50M,并配置日志满时将其存储,不覆盖事件,配置如下图
进入:事件查看器—windows日志—应用程序—右键—属性,安全、系统日志如上操作。
4.登录连接超时及自动退出策略
A、win+R 输入gpedit.msc—计算机配置—windows设置—安全设置—本地策略—安全选项
设置参数可参考下图
B、win+R 输入gpedit.msc—计算机配置—管理模板—windows组件—远程桌面服务—远程桌面会话主机—会话时间限制
设置参数可参考下图
C、开启屏幕保护程序
5.终端服务配置RDP安全层
win+R 输入gpedit.msc—计算机配置—管理模板—windows组件—远程桌面服务—远程桌面会话主机—安全
设置参数可参考下图
6.对特权用户进行权限分离
进入:计算机管理—系统工具—本地用户和组—用户
禁用:administrator等超级管理员用户
新建:数据库管理员、系统管理员、审计管理员、安全管理员—注意各管理员的所在的组
7.禁用系统不必要的端口、服务
A、禁用不必要的系统服务
计算机管理—系统工具—服务和应用程序—服务
建议禁用的服务如Alerter、Remote Registry Servicce Messsenger、Task Scheduler、print spooler等服务器
配置可参考下图
B、禁用不必要的端口
Win+R输入cmd,在命令行输入"netstat -an”,查看列表中的监听端口
建议禁用
TCP 135、139 、45、 593、1025端口,
UDP 135、137、 138、445端口,
一些流行病毒的后门端口,如TCP 2745、3127、6129端口。
8.安全选项“不显示上次的用户名”
操作步骤:
win+R 输入gpedit.msc—计算机配置—windows设置—安全设置—本地策略—安全选项
设置参数可参考下图
9.补丁版本
win补丁连接:https://www.catalog.update.microsoft.com/
补丁无法安装问题,可通过以下命令安装:
> expand –F:* C:\update\Windows8.1-KB2999226-x64.msu C:\update\
> dism.exe /online /Add-Package /PackagePath:C:\update\Windows8.1-KB2999226-x64.cab
10.杀毒软件
本文来自博客园,作者:Black-py,转载请注明原文链接:https://www.cnblogs.com/blackpy/p/15157988.html