CentOS7配置iptables防火牆


CentOS 7中默認是firewalld防火牆,如果使用iptables需要先關閉firewalld防火牆(1.關閉防火牆,2.取消開機啟動)。

#關閉firewalld
systemctl stop firewalld
#取消開機啟動
systemctl disable firewalld
#查看狀態
firewall-cmd --state

安裝啟用iptables

#先檢查是否安裝了iptables
service iptables status
#安裝iptables
yum install -y iptables
#安裝iptables-services
yum -y install iptables-services
#注冊iptables服務,相當於以前的chkconfig iptables on
systemctl enable iptables.service
#開啟服務
systemctl start iptables.service
#查看狀態
systemctl status iptables.service

設置iptables規則

查看iptables現有規則:iptables -L -n
添加開放80端口:iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT(好像這種方式重啟以后就失效了)
編輯配置文件方式添加端口:
文件位置:/etc/sysconfig/iptables
執行vi /etc/sysconfig/iptables
添加一條規則開放80端口:-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
重啟生效:service restart iptables

關閉iptables

systemctl stop iptables

其他規則:

#查看iptables現有規則
iptables -L -n
#先允許所有,不然有可能會杯具
iptables -P INPUT ACCEPT
#清空所有默認規則
iptables -F
#清空所有自定義規則
iptables -X
#所有計數器歸0
iptables -Z
#允許來自於lo接口的數據包(本地訪問)
iptables -A INPUT -i lo -j ACCEPT
#開放22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#開放21端口(FTP)
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
#開放80端口(HTTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#開放443端口(HTTPS)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
#允許ping
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
#允許接受本機請求之后的返回數據 RELATED,是為FTP設置的
iptables -A INPUT -m state --state  RELATED,ESTABLISHED -j ACCEPT
#其他入站一律丟棄
iptables -P INPUT DROP
#所有出站一律綠燈
iptables -P OUTPUT ACCEPT
#所有轉發一律丟棄
iptables -P FORWARD DROP


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM