#先檢查是否安裝了iptables
service iptables status
#安裝iptables
yum install -y iptables
#升級iptables
yum update iptables
#安裝iptables-services
yum install iptables-services
複製代碼
禁用/中止自帶的firewalld服務tcp
#中止firewalld服務
systemctl stop firewalld
#禁用firewalld服務
systemctl mask firewalld
設置現有規則ide
複製代碼
#查看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
複製代碼
其餘規則設定rest
複製代碼
#若是要添加內網ip信任(接受其全部TCP請求)
iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT
#過濾全部非以上規則的請求
iptables -P INPUT DROP
#要封停一個IP,使用下面這條命令:
iptables -I INPUT -s ... -j DROP
#要解封一個IP,使用下面這條命令:
iptables -D INPUT -s ... -j DROP
複製代碼
保存規則設定接口
#保存上述規則
service iptables save
開啓iptables服務 ip
複製代碼
#註冊iptables服務
#至關於之前的chkconfig iptables on
systemctl enable iptables.service
#開啓服務
systemctl start iptables.service
#查看狀態
systemctl status iptables.service
複製代碼it
解決vsftpd在iptables開啓後,沒法使用被動模式的問題table
1.首先在/etc/sysconfig/iptables-config中修改或者添加如下內容class
#添加如下內容,注意順序不能調換
IPTABLES_MODULES="ip_conntrack_ftp"
IPTABLES_MODULES="ip_nat_ftp"
2.從新設置iptables設置ftp
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPTdate
如下爲完整設置腳本
複製代碼#!/bin/shiptables -P INPUT ACCEPTiptables -Fiptables -Xiptables -Ziptables -A INPUT -i lo -j ACCEPTiptables -A INPUT -p tcp --dport 22 -j ACCEPTiptables -A INPUT -p tcp --dport 21 -j ACCEPTiptables -A INPUT -p tcp --dport 80 -j ACCEPTiptables -A INPUT -p tcp --dport 443 -j ACCEPTiptables -A INPUT -p icmp --icmp-type 8 -j ACCEPTiptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPTiptables -P INPUT DROPiptables -P OUTPUT ACCEPTiptables -P FORWARD DROPservice iptables savesystemctl restart iptables.service