关键词不能为空

当前您在: 主页 > 英语 >

Linux网路安全讲义Netfilter机制与iptable

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-28 10:43
tags:

-

2021年2月28日发(作者:chew)


Linux


網路安全講義


:Netfilter


機制與


iptables


工具



一、


iptables


簡介



1.



iptables


下載與技術資源總站


./




2.



使用


iptables


前先確認核心版 本


(#uname -r)



Kern el


必須是


2.4


以上版本

< p>


3.



演進歷程介紹


:


-


舊版


Linux


上使用



IP-Masquerade




IP


偽裝以便於達成該功能。


- kernel 2.0.x


時代,是使用



ipfwadm


程式。


(


這個說法不算是完全正確


)- kernel 2.1.x/2.2.x


時代,則是使用



ipchains


程式,


port


forwardin g


需要搭配


ipmasqadm


程式來 輔助才能夠達成。


- kernel 2.3.x/2.4.x


時代,使用



netfilter



濾機制,



是使用


iptables


程式。!注意!


(Kernel 2.4


使用



netfilter project




firewall


機制,該環境允


許 使用者使用舊版


ipchains


設定


firewall


,不過要先掛入


ipchains

< p>
模組。若是系統已經掛入


ipchains


模組,


要先執行



# ipchains -F ipchains



X



rmmod ipchains


即可開始使用



iptables


了。



4.



目前



kernel 2.4.x < /p>


配合使用


netfilter


核心過濾機 制



可以達到的功能相當強悍



netfilter


可提供的機制如下:



?



?



?



?



?



?



傳統



ipchains

< p>
的任何功能


(


來源與目的封包過濾、導向、偽裝< /p>


)




提供



Source NAT




Destination NAT


的功能。



可以針對特定使用者、群組、


PID


等限制網路連結的過濾存取。



可以設定封包在



Routing Table


進出前時先預先處理。



可以針對外面自動建立、與現有連線有關這類連線過濾處理。



可以針對



Mac


卡號直接處理。



5.



使用


i ptables


前先確認下列核心功能已設定正確:


CONFI G_PACKET



CONFIG_NETFILTER



CONFIG_IP_NF_CONNTRACK

< br>、


CONFIG_IP_NF_FTP



CONFIG_IP_NF_IPTABLES



CO NFIG_IP_NF_MATCH_LIMIT



CONFI G_IP_NF_MATCH_MAC



CONFIG_IP_ NF_MATCH_MARK



CONFIG_IP_NF_M ATCH_MULTIPORT



CONFIG_IP_NF_ MATCH_TOS



CONFIG_IP_NF_MATCH _TCPMSS



CONFIG_IP_NF_MATCH_S TATE



CONFIG_IP_NF_MATCH_UNCL EAN



CONFIG_IP_NF_MATCH_OWNER



CONFIG_IP_NF_FILTER

< br>、


CONFIG_IP_NF_TARGET_REJECT


CONFIG_IP_NF_TARGET_MIRROR



CONFIG_IP_NF_NAT


CONFIG_IP_NF_TARGET_MASQUERADE



CONFIG_IP_NF_TARGET_REDIRECT


< p>
CONFIG_IP_NF_TARGET_LOG


CONFIG_IP_NF_TARGET_TCPMSS



CONFIG_IP_NF_PAT_IPCHAINS



C ONFIG_IP_NF_PAT_IPFWADM




二、基本原理



1.



iptables


預設的


Table & Chains


組合


(User


可以 自訂


chains)


1


/


12


過濾表


(Table)


filter


nat


mangle


說明



過濾透通本機的封包



(


預設


)


轉譯封包位址資訊



修改或標註封包




2.



各種封包的處理流程

< p>
(



)


Forward Packet Processing


Input Packet Processing


Output Packet Processing



3.



各種 封包的處理流程


(



)




規則鏈


(chains)


PREROUTING


INPUT


FORWARD


OUTPUT


執行時機



封包進入本機,在判斷路由前



通過路由表後,目的地為本機



通過路由表後,目的地不是本機



由本機主動建立的封包,在通過路由表前



POSTROUTING


通過路由表後,要發送出去前




4.



封包過濾流程

< br>(



)




2


/


12


PREROUTING


FORWARD


POSTROUTING


Route Table


INPUT


OUTPUT


Local Process




5.



IP Packet Header






三、指令介紹



1.



iptables


指令包含以下四項元件


:


?



?



?



?



table


ACTION <


命令


>


rule specification - pattern <


比對規則


>


extension <


延伸選項


>




netfilter


處理判斷順序:



Tables



?




Chains



?




Rules



?




Policy



3


/


12


指定


action


處理方式



#iptables



t filter



A INPUT



i eth0



p tcp



s any/0 --sport 80



d 185.100.35.1



j ACCEPT


指定


table


(


預設為


filter table)



指定比對


rule


指定


rule


延伸選





語法


:# iptables [-t TABLE] ACTION [PATTERN] [-j TARGET]





[-t

]


:


如不指定預設為



filter ta ble



可指定為


< br>-


t nat”



< p>
-


t mangle”



ACTION


:要操作的動作,若未指定哪個


Chain


,則為該


Table


中所有的


Chains


。常用的指令包含



ACTION


指令



-L CHAIN


-A CHAIN


-D CHAIN <>


-I CHAIN <>


-R CHAIN <>


-P CHAIN


--list CHAIN


--append CHAIN


--delete CHAIN <>


--insert CHAIN <>


--replace CHAIN <>


--policy CHAIN


長指令



說明



顯示



CHAIN


中的所有規則




CHAIN


新增一條規則



刪除



CHAIN


中的一條規則





CHAIN


中插入一條規則



替換



CHAIN


中的某一條規則



< br>CHAIN


設定預設的


Policy

;只有


內建的


chains


可以指 定


policy



policy


不可指定為另一個


chain


-F CHAIN


-N USER-CHAIN


-X USER- CHAIN


-Eold-chainnew-chain


-h [icmp]



--flush CHAIN


--new-chain USER-CHAIN


--delete-chain USER-CHAIN


--rename-chain old-chainnew-chain



清除


CHAIN

中所有規則



自訂一個


USER- CHAIN


刪除自訂的


USER-CHAIN


更名自訂的


USER-CHAIN


Help [


列出


icmp type


清單


]


PATTERN


:設定比對條件的參數


(


下列「長、短參數 」擇一使用即可;參數值前面加


”!”


代表

”Not”)



短參數



長參數



--protocol


--source


--destination


--in-interface


--out- interface


參數值



PRO TOCOL


名稱


或號碼


(0=all)


說明



通訊協定為



PROTOCOL


者,


PROTOCOL: tcp, udp,


icmp, all


或者為



/etc/protocols


內所記錄的協定



指定



Source IP Address



ADDRESS [port]


指定



Destination IP Address




ADDRESS [port]


指定封包進入的網路卡介面


(eth0,eth 1,ppp0…)



eth+



所有


eth


介面卡



-p


-s


-d


-i


-o


ADDRESS port


ADDRESS port


INTERFACE[+]


INTERFACE[+]


封包輸出的網路卡介面



4


/


12


-m


-n


--match


--numeric


MATCH





指定進階的選項



以數字表示主機


(IP)


,服務


(port)


資訊



搭配


-L

< p>
使用可列出


rule


編號



詳細輸出



--line- numbers


-v


-


-verbose





PROTOCOL




tcp(-p tcp)


,則另外可設定的參數


(


參數值前面加


”!”


代表


”Not”)



短參數



--sport


--dport


長參數



--source-port


--destination- port


參數值



n:m


n:m


mask p


說明



指定來源


Port



n


m


的範圍


(


例如:


1023


以上


?


1023:




) 0~65535

< p>
指定目的


Port



n< /p>



m


的範圍


(< /p>


例如



256


以 下


?


:256




)


0~65535


--tcp-flags


指定


TCP


協定中的旗號,可使用的旗號包含


:


SYN/ACK/FIN/RST/URG/PSH/ALL/NONE



mask:






分隔的檢查遮罩



p:






分隔的符合項目


< br>例如:



-


< br>tcp-flags SYN,ACK,FIN



SY N


」表示符合設定


SYN


旗號,但未設 定


ACK,FIN


旗號的封包



tcp-flag


說明


:URG :


緊急指標



建立

TCP


連線



ClientServer


SYN




??


SYN+ACK


ACK




?



中止


TC P


連線



ClientServer


FIN+ACK


??







ACK












?





FIN+ACK


ACK







?



ACK :


確認回報號碼




PSH :


接收端盡快將此資料傳給應用程式



RST :


重置該連線


(


對不存在的埠號請求連線


)


SYN :

< p>
將序號同步以產生連線


(TCP


開始傳送即產生一 個序號






syn=


起始序號


+1)


FIN :


發送端完成資料傳送



表示


SYN


位元被開啟,而


ACK



FIN


位元被關閉的 封包,


這是發起連線的狀態


(


等於


--tcp-flags SYN,RST


,ACK SYN)


--syn






PROTOCOL




udp(-p udp)


,則另外可設定的參數


(


參數值前面加


”!”


代表


”Not”)



短參數



--sport


--dport


長參數



--source-port


--destination- port


參數值



n:m


n:m


說明



指定來源



Port




n




m


的範圍



指定目的



Port




n




m


的範圍





PROTOCOL




icmp


,另外可設定


(


參 數值前面加


”!”


代表


”Not”)< /p>



長參數



--icmp-type


參數值



NAME


說明



ICMP


封包的類別名稱或代碼:


(


參閱


#iptables



p icmp -h)


例如:


echo request(ping,8)


??


echo reply(pong,0)




MATCH (-m)


被指定時,可另外設定的參數

< p>
(


參數值前面加


”!”


代 表


”Not”)



MATCH


mac


參數



--mac-source


參數值



MAC ADDRESS


說明



網路卡位址


xx:xx:xx:xx:xx:xx


備註



需為乙太網卡


&


PREROUTING



FORWARD

< br>,



INPUT chains


5


/


12


limit



--limit


--limit-burst


RATE


NUMBER


n,m


符合的最大平均值



符合的上限值



來源



Port


目的



Port


XX/[s,m,h]





multiport


--source-port




mark


owner





state


--destination-port


n,m


--port


--mark


--uid-owner


--gid-owner


--pid-owner


--sid-owner


--state


n,m


VALUE/MASK


UID


GID


PID


SID


STATE[,state..]


來源與目的


Port


相同




標記封包資訊



使用者識別碼



群組識別碼



行程識別碼



Session


識別碼



封包的狀態


:


NEW


INVALID


ESTABLISHED


RELATED


NEW


:新連線產生的封包或




和非雙向連線的關連封包



INVALID


:和已知的連線沒



有關係的封包



ESTABLISHE D



雙向連線的


關連封包



RELATED


:和現有連線相關


的新連線封包


(



ftp- data



icmp)


IP


表頭內的



TOS





只能在


mangle table


使用



只有


OUTPUT chain


有用



tos


--tos


TOS


參閱


#iptables -m tos -h


例如:


iptables



A INPUT



p tcp



--sport 21



m state --state ESTABLISHED



-j ACCEPT



< p>
TARGET(


可指向自訂的


chain)


:不同的



Table


有不同的



Extension Target


Target


LOG


REJECT


nat


SNAT


DNAT


MASQUERADE


REDIRECT


mangle


TTL


MARK


TOS


Basic Target


一覽表



Target


ACCEPT


DROP


RETURN


說明



讓封包通過



丟棄封包



不作比對直接返回



說明



紀錄該封包資訊



退回該封包



轉譯來源位址



轉譯目的位址



轉譯來源位址成為



NIC


的位址



轉送至本機某個



Port


修改



Time To Live


資訊



標記該封包



設定



Type Of Service


資訊



Table


filter


6


/


12

-


-


-


-


-


-


-


-



本文更新与2021-02-28 10:43,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/680456.html

Linux网路安全讲义Netfilter机制与iptable的相关文章

  • 余华爱情经典语录,余华爱情句子

    余华的经典语录——余华《第七天》40、我不怕死,一点都不怕,只怕再也不能看见你——余华《第七天》4可是我再也没遇到一个像福贵这样令我难忘的人了,对自己的经历如此清楚,

    语文
  • 心情低落的图片压抑,心情低落的图片发朋友圈

    心情压抑的图片(心太累没人理解的说说带图片)1、有时候很想找个人倾诉一下,却又不知从何说起,最终是什么也不说,只想快点睡过去,告诉自己,明天就好了。有时候,突然会觉得

    语文
  • 经典古训100句图片大全,古训名言警句

    古代经典励志名言100句译:好的药物味苦但对治病有利;忠言劝诫的话听起来不顺耳却对人的行为有利。3良言一句三冬暖,恶语伤人六月寒。喷泉的高度不会超过它的源头;一个人的事

    语文
  • 关于青春奋斗的名人名言鲁迅,关于青年奋斗的名言鲁迅

    鲁迅名言名句大全励志1、世上本没有路,走的人多了自然便成了路。下面是我整理的鲁迅先生的名言名句大全,希望对你有所帮助!当生存时,还是将遭践踏,将遭删刈,直至于死亡而

    语文
  • 三国群英单机版手游礼包码,三国群英手机单机版攻略

    三国群英传7五神兽洞有什么用那是多一个武将技能。青龙飞升召唤出东方的守护兽,神兽之一的青龙。玄武怒流召唤出北方的守护兽,神兽之一的玄武。白虎傲啸召唤出西方的守护兽,

    语文
  • 不收费的情感挽回专家电话,情感挽回免费咨询

    免费的情感挽回机构(揭秘情感挽回机构骗局)1、牛牛(化名)向上海市公安局金山分局报案,称自己为了挽回与女友的感情,被一家名为“实花教育咨询”的情感咨询机构诈骗4万余元。

    语文