Re: [問題] 大家應該會覺得很蠢的iptable問題
※ 引述《nike0519 (沒暱稱)》之銘言:
: ※ 引述《lookatit (天空)》之銘言:
: : 以下是在網路上看到的語法
: : 有個地方很奇怪也!
: : 既然一開始INPUT 都DROP 所以封包都進不去才對
: : 那這行就沒有意義啦
: : iptables -A INPUT -p tcp --dport 80 -j ACCEPT
: : 不是進來的封包來的都被DROP了嗎??
: : 麻煩各位大大解惑一下 好怪唷! 可是很多網路上得範例都是這樣寫的
: : ------------------------------------------------------------------
: : ##指定預設 policy
: : #封包可以 OUTPUT
: : iptables -P OUTPUT ACCEPT
: : #封包不可以 INPUT
: : iptables -P INPUT DROP
: : #封包不可以 FORWARD
: : iptables -P FORWARD DROP
: 我想你所說的應該是這個吧 ─→ iptables -P INPUT DROP
: -P 是設定 default policy 的規則用的
: 指定預設 policy 雖然在 iptable 中會被列在最上面的位置
: 但其實它是當底下所有的規則都不符合時,才會去執行到的規則
: 所以 iptables -P INPUT DROP 的意思是說 ──
: 當其他所有的比對條件都不符合時,才把這個封包給 drop 掉
: 並不是從一開始就把全部的封包都 drop 掉
補述
在運用iptables 的條件上有項規則,「先開放特定,再拒絕所有」
思考上也是用此順序,所以越先增加(-A)的規則,擁有越高的優先權。
而當執行iptables -P INPUT DROP
等同於在「最後一行」補上 iptables -A INPUT -j DROP
也因此它的優先權是最後。
所以,以下兩者效果是相同的: (若有錯請指教 :P )
iptables -P INPUT DROP
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
與
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -j DROP
都是只有80埠能進入,其他都擋下來。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.165.96.62
→
07/21 10:34, , 1F
07/21 10:34, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):