iptables和SELinux是Linux系统中两种不同的安全机制,它们可以相互配合使用,以提供更强大的安全保护。以下是它们如何配合使用的一些建议:
# 允许SSH连接
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# 阻止所有来自特定IP的连接
iptables -A INPUT -s 192.168.1.100 -j DROP
# 保存规则(具体命令可能因发行版而异)
service iptables save
# 查看当前SELinux状态
sestatus
# 设置SELinux为 enforcing 模式(强制执行策略)
setenforce 1
# 修改文件上下文以符合SELinux策略
chcon system_u:object_r:httpd_sys_content_t:s0 /var/www/html/index.html
# 编辑SELinux策略文件(通常位于 /etc/selinux/config)
SELINUX=enforcing
iptables -A INPUT -p tcp --dport 80 -s 192.168.1.100 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j DROP
# 假设Web服务器进程的PID是1234
ps -ef | grep httpd
chcon system_u:object_r:httpd_sys_content_t:s0 /var/www/html/index.html
semanage fcontext -a -t httpd_sys_content_t "/var/www/html(/.*)?"
restorecon -Rv /var/www/html
总之,通过合理地结合使用iptables和SELinux,你可以显著提高Linux系统的安全性。