在CentOS上配置Apache2的安全设置涉及多个方面,以下是一些关键的安全配置措施:
更新系统和软件包:
sudo yum update -y
安装必要的安全模块:
sudo yum install mod_security mod_evasive -y
配置防火墙:
firewalld配置防火墙,只允许HTTP(端口80)和HTTPS(端口443)流量。sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
配置SELinux:
enforcing模式,确保它不会阻止Apache的正常运行。可以临时将其设置为permissive模式来测试。sudo setenforce 0
配置Apache:
ServerTokens Prod
ServerSignature Off
LoadModule security2_module modules/mod_security2.so
LoadModule evasive20_module modules/mod_evasive20.so
/etc/httpd/conf.d/security2.conf文件,添加基本的安全规则。/etc/httpd/conf.d/evasive.conf文件,添加基本的防护规则。sudo yum install certbot python2-certbot-apache -y
sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
<VirtualHost *:443>
ServerName yourdomain.com
SSLEngine on
SSLCertificateFile /path/to/your/certificate.crt
SSLCertificateKeyFile /path/to/your/private.key
SSLCertificateChainFile /path/to/your/chainfile.pem
</VirtualHost>
定期更新和监控:
sudo tail -f /var/log/httpd/access_log
sudo tail -f /var/log/httpd/error_log
备份配置文件:
sudo cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak
sudo cp -r /etc/httpd/conf.d /etc/httpd/conf.d.bak
通过以上步骤,你可以显著提高CentOS上Apache2服务器的安全性。记得定期检查和更新你的安全策略,以应对新的威胁和漏洞。