sudo ufw disablehtml
sudo ufw enableubuntu
sudo ufw statustcp
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -Fpost
iptables -t nat -F POSTROUTINGui
apt-get remove iptablesspa
iptables -L -x -n命令行
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPThtm
iptables -A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT //注意網卡blog
iptables -A INPUT -j DROP接口
進行至此,仍有一個問題,就是環回接口也被阻斷了。剛纔添加DROP規則的時候其實就可使用-i eth0來解決這一問題。然而咱們也能夠爲環回接口添加一條新規則來解決這個問題。可是不能將新規則追加到末尾,由於前一條規則已經把全部報文都丟棄了, 而應該把它插到DROP規則前面,即規則表中第四行的位置。
iptables -I INPUT 3 -i lo -j ACCEPT
iptables -L -v
iptables -D INPUT 4
iptables -t nat -D POSTROUTING 1
iptables -A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT
iptables -I INPUT 3 -i lo -j ACCEPT
注意:規則的次序很是關鍵,誰的規則越嚴格,應該放的越靠前,而檢查規則的時候,是按照從上往下的方式進行檢查的
sudo iptables -I INPUT -p tcp -m tcp --dport 25550 -j ACCEPT
iptables屏蔽三種ip段
封64.0.0.0—64.255.255.255 ip段的方法是在源ip裏輸入,64.0.0.0/8;
封64.64.0.0—64.64.255.255 ip段的方法是在源ip裏輸入,64.64.0.0/16;
封64.64.64.0—64.64.64.255 ip段的方法是在源ip裏輸入,64.64.64.0/24;
例子 sudo iptables -I INPUT -s 60.181.60.0/16 -j DROP
# iptables-save > /etc/iptables.up.rules #須要sudo su - root切換用戶後執行,直接sudo cmd是不行的
查看nat規則
iptables -t nat -L
二、若是想取消上面所加的規則:
iptables -F -t nat
iptables -X -t nat
iptables -Z -t nat
三、阻止一個IP鏈接本機
iptables -t filter -A INPUT -s 192.168.1.5 -i eth0 -j DROP
四、查看本機的IPTABLES的所填規則
iptables -L -n
一、設置爲1表示開啓數據包轉發
echo 1 > /proc/sys/net/ipv4/ip_forward
二、配置轉發規則和端口
iptables -t nat -A PREROUTING -d 120.24.4.118 -p tcp --dport 25560 -j DNAT --to 218.67.90.216
三、 數據包返回通道
iptables -t nat -I POSTROUTING -p tcp --dport 3306 -j MASQUERADE
2:rinetd端口轉發
wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz&&cd rinetd
sed -i 's/65536/65535/g' rinetd.c
mkdir /usr/man&&make&&make install
建立配置文件
cat >>/etc/rinetd.conf <<end
# allow 192.168.2.*
# deny 192.168.1.*
# bindadress bindport connectaddress connectport
0.0.0.0 3306 xxxx.rds.aliyuncs.com 3306
logfile /var/log/rinetd.log
end
echo rinetd >>/etc/rc.local
(2011-07-10 17:46:21)
轉載▼
標籤: 雜談 |
分類:iptables |
背景:
某公司須要鏈接業務平臺,可是又不能直接鏈接,須要一臺機器A做爲數據跳轉。
具體需求:
B機器訪問A機器的80端口須要跳轉到C機器的80
解決方法:
使用iptables 的DNAT,SNAT實現。
A機器iptables設置:
iptables -t nat -A PREROUTING -s B機器地址 -p tcp -m tcp --dport 80 -j DNAT --to-destination C機器地址:80 (實現數據映射)
iptables -A FORWARD -s B機器地址 -j ACCEPT(容許B機器的數據經過這臺機器)
iptables -P FORWARD DROP (設置默認FORWARD規則)
iptables -t nat -A POSTROUTING -j MASQUERADE (設置SNAT地址轉換)
開啓機器的路由轉發:
vi /etc/sysctl.conf
將 net.ipv4.ip_forward = 0 改爲:
net.ipv4.ip_forward = 1
sysctl -p
這樣就能夠實現拉。
記得保存設置
service iptables save
SNAT 指定目的地址的 轉換:
iptables -t nat -A POSTROUTING -d xxx.xxx.xxx.xxx -j SNAT --to-source xxx.xxx.xxx.xxx:port
應用於中起色器:
訪問A 機器地址的 8080 經過轉換估定 IP 轉發B 機器的 80
每每這個時候是訪問A機器其餘端
60.181.60.197
sudo iptables -L
sudo iptables -L -x -n
/sbin/iptables -P INPUT ACCEPT
/sbin/iptables -F
在CentOS/RHEL 7上開啓端口
啓動CentOS/RHEL 7後,防火牆規則設置由firewalld服務進程默認管理。一個叫作firewall-cmd的命令行客戶端支持和這個守護進程通訊以永久修改防火牆規則。
使用這些命令來永久打開一個新端口(如TCP/80)。
$ sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
$ sudo firewall-cmd --reload
若是不使用「--permanent」標記,把麼防火牆規則在重啓後會失效。
在CentOS/RHEL 6上開啓端口
在CentOS/RHEL 6甚至更早版本系統上,iptables服務負責維護防火牆規則。
使用iptables的第一條命令能夠經過防火牆開啓一個新TCP/UDP端口。爲了永久保存修改過的規則,還須要第二條命令。
$ sudo iptables -I INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
$ sudo service iptables save
另外一種方法是經過一個名爲system-config-firewall-tui的命令行用戶接口(TUI)的防火牆客戶端。
$ sudo system-config-firewall-tui
選擇位於中間的「Customize」按鈕,按下ENTER鍵便可
iptables -t nat -A PREROUTING -d 210.83.2.206 -p tcp --dport 21 -j DNAT --to 192.168.1.3 轉發規則