編寫Linux安全加固腳本需要考慮以下方面:
禁止不必要的服務(wù)和端口:通過關(guān)閉不必要的服務(wù)和端口來減少系統(tǒng)暴露的攻擊面。
配置強(qiáng)密碼策略:通過強(qiáng)密碼策略來減少密碼被破解的風(fēng)險(xiǎn)。
安裝防火墻:通過安裝防火墻來限制對系統(tǒng)的訪問和流量。
更新系統(tǒng)補(bǔ)?。憾ㄆ诟孪到y(tǒng)補(bǔ)丁來修復(fù)已知漏洞。
禁止root遠(yuǎn)程登錄:禁止root用戶通過SSH遠(yuǎn)程登錄系統(tǒng)。
配置審計(jì)日志:通過配置審計(jì)日志來記錄系統(tǒng)的操作和事件,便于追溯和分析。
下面是一個(gè)簡單的Linux安全加固腳本:
#!/bin/bash
# 關(guān)閉不必要的服務(wù)和端口
systemctl disable iptables
systemctl stop iptables
systemctl disable firewalld
systemctl stop firewalld
systemctl disable nfs
systemctl stop nfs
systemctl disable rpcbind
systemctl stop rpcbind
systemctl disable rpcbind.socket
systemctl stop rpcbind.socket
# 配置強(qiáng)密碼策略
sed -i 's/PASS_MIN_LEN 5/PASS_MIN_LEN 8/g' /etc/login.defs
sed -i 's/PASS_MAX_DAYS 99999/PASS_MAX_DAYS 90/g' /etc/login.defs
# 安裝防火墻
yum install -y firewalld
systemctl enable firewalld
systemctl start firewalld
firewall-cmd --zone=public --add-port=22/tcp --permanent
firewall-cmd --reload
# 更新系統(tǒng)補(bǔ)丁
yum update -y
# 禁止root遠(yuǎn)程登錄
sed -i 's/#PermitRootLogin yes/PermitRootLogin no/g' /etc/ssh/sshd_config
systemctl restart sshd
# 配置審計(jì)日志
sed -i 's/#max_log_file = 8/max_log_file = 30/g' /etc/audit/auditd.conf
sed -i 's/#space_left_action = SYSLOG/space_left_action = SUSPEND/g' /etc/audit/auditd.conf
systemctl enable auditd
systemctl start auditd
注意:上面的腳本只是一個(gè)簡單的示例,實(shí)際應(yīng)用中需要根據(jù)具體情況進(jìn)行修改和完善。