iptables 防火牆

iptables 防火牆

firewalld 防火牆

防火牆功能

狀態跟蹤

clip_image002

防火牆的分類

主機防火牆:保護當前主機

網絡防火牆:保護企業的安全

硬件防火牆

軟件防火牆

網絡層防火牆

應用層防火牆

2018/06/27 16:08

iptables -vnL --line-numbers 查看防火牆,帶編號顯示

iptables -vnxL 查看防火牆接收到的包的詳細數量

iptables -S 查看防火牆,顯示的具體的命令

-A 是追加

-I 是插入,默認是第一條

-D 是刪除

-P 修改默認規則

-F 清空所有的規則,清除不了默認規則

-R 修改

-Z 清零

-D 創建自定義鏈

-E 修改自定義鏈的名字

-X 刪除自定義鏈

-s 源地址

-p 協議

-d 目標地址

ACCEPT 允許

DROP 拒絕訪問

REGECT 沒有拒絕訪問,用ping命令客戶端顯示防火牆拒絕

內核中選取五個位置放了五個hook(勾子) function(INPUT、 OUTPUT、 FORWARD、

PREROUTING、 POSTROUTING),而這五個hook function向用戶開放,用戶可以通過一

個命令工具(iptables)向其寫入規則

 由信息過濾表(table)組成,包含控制IP包處理的規則集(rules),規則被分組放

在鏈(chain)上

hook(鉤子)函數,也叫chain 鏈

五個檢查規則

INPUT 輸入

OUTPUT 輸出

FORWARD 前進

PREROUTING 路由表前

POSTROUTING 路由器後

clip_image004

三種報文流向:

流入本機:PREROUTING --> INPUT-->用戶空間進程

流出本機:用戶空間進程 -->OUTPUT--> POSTROUTING

轉發:PREROUTING --> FORWARD --> POSTROUTING

四個表

filter 過濾規則表,根據自定義的規則過濾符合條件的數據包

nat 網絡地址轉換

mangle 修改數據報文

raw 關閉NAT表上的啓用連接跟蹤啓用機制

如果規則有衝突

優先級由高到低的順序爲:raw-->mangle-->nat-->filter

5個chain鏈和四個表是組合關係

raw表 :prerouting output

mangle表:prerouting postpouting INPUT OUTPUT FORWARD

nat 表:prerouting postpouting INPUT OUTPUT

filter表: INPUT OUTPUT FORWARD

clip_image006

iptables -A INPUT -s 192.168.63.131 -j DROP 拒絕192.168.63.131訪問

iptables -D INPUT 1 刪除1編號的防火牆記錄

iptables -A INPUT -s 192.168.63.0/24 -j REJECT 明確拒絕192.168.63.0/24網段訪問

iptables -I INPUT 2 -s 192.168.63.131 -j ACCEPT 在第2條記錄前面加一條記錄,允許192.168.63.131 訪問

關閉firewalld,不用系統的默認規則

systemctl stop firewalld

clip_image008

系統的默認規則是ACCEPT允許

iptables -A INPUT -s 192.168.63.1 -j ACCEPT 允許192.168.63.1訪問。在虛擬機,允許windows訪問

iptables -P INPUT DROP 默認的規則改成DROP,當然修改這一條規則的時候,應該先允許自己允許通過。修改爲默認規則以後就變成DROP ,所有都拒絕

iptables -A INPUT -j DROP 建議使用這條命令更改

iptables -R INPUT 2 -s 192.168.63.17 -j ACCEPT 修改第2條規則爲ACCEPT

iptables -Z 從頭計算

拒絕192.168.63.134 ping協議

iptables -A INPUT -s 192.168.63.134 -p icmp -j REJECT

也可以指定目標地址,拒絕192.168.63.131訪問192.168.63.132的tcp協議

iptables -A INPUT -s 192.168.63.131 -d 192.168.63.132 -p tcp -j REJECT

匹配條件

基本:通用的,PARAMETERS

擴展:需加載模塊,MATCH EXTENTIONS

擴展模塊

拒絕別的主機訪問本機的tcp協議的445和139端口,也就是Samba訪問

iptables -A INPUT -s 192.168.63.132 -p tcp --dport 445 -j REJECT

iptables -A INPUT -s 192.168.63.132 -p tcp --dport 139 -j REJECT

clip_image010

拒絕TCP的新發起的第一次握手

iptables -A INPUT -p tcp --syn -j REJECT

clip_image012

拒絕所有的人ping,我也ping不通別人

iptables -A INPUT -p icmp -j REJECT

clip_image014

拒絕別人ping我,我能ping別人

8 是icmp協議的請求報文

0是icmp協議的發送報文

iptables -A INPUT -p icmp --icmp-type 8 -j REJECT

clip_image016

別人向我發起ping 8請求,拒絕請求

拒絕多個端口,需要用到multiport擴展

iptables -A INPUT -p tcp -m multiport --dports 21,80 -j REJECT

clip_image018

******************************************************************************************************8

自定義鏈

給多個規則加一個統一的名字

例如:

fileshare :Samba ftp

web :http https

iptables -N web 創建自定義鏈

iptables -E web WEB 修改自定義鏈

iptables -X WEB 刪除自定義鏈

第一條,允許自己訪問

iptables -A INPUT -s 192.168.63.1 -j REJECT

clip_image020

iptables -N WEB 創建自定義鏈

在web中加入規則

clip_image022

將web關聯到INPUT中

iptables -I INPUT -s 192.168.30.0/24 -j WEB 當192.168.30.0/24網段訪問的時候,去WEB鏈中去查看規則。如果不是192.168.30.0/24網段中的ip訪問,則去INPUT查看規則

clip_image024

clip_image026

如果企業在後來來增加了一個8080端口,我們只要在web鏈中加入一條規則,這樣就可以實現模塊化的管理

clip_image028

如果要刪除自定義鏈

1.先在INPUT中取消WEB關聯

iptables -D INPUT 1 例如WEB在INPUT中的編號是1

2.清空WEB中的所有規則

iptables -D WEB 1

3.刪除管理

iptables -X WEB

************************************************************************************************8888

mac地址擴展

ip並且mac地址是同一個主機,纔可以訪問

string擴展

對報文中的應用層數據做字符串模式匹配檢測

例如

如果帶有特定的字符串就拒絕

指定模塊string 如果帶有google的字樣就拒絕訪問

clip_image030

time擴展模塊,限制時間範圍

根據將報文到達的數據與指定的時間範圍進行匹配

iptables中的時間是UTP時間,所有得在現有的時間減8小時

connlimit擴展

根據客戶端ip做併發連接數數量匹配,限制併發

limit擴展

基於收發報文的速率做匹配,流量控制

前10個不限制,每分鐘只允許20個包

clip_image032

不滿足這個規則拒絕

clip_image034

state擴展

根據 連接追蹤機制 去檢查連接的狀態

2018/06/29 10:09

新發起80服務的拒絕

clip_image036

正在建立連接的服務允許訪問

clip_image038

centos7要加載nf_conntrack

增加連接跟蹤數量

clip_image040

生效

clip_image042

併發測試

clip_image044

clip_image046

centos7 保存規則

文件自定義

clip_image048

清空規則以後還原

clip_image050

開機以後自動還原

clip_image052

rc.local 開機自動執行,專門用來開機自啓

rc.local默認是讀寫權限,給rc.local執行權限

chmod +x /etc/rc.d/rc.local

vim /etc/rc.d/rc.local

iptables-restore < /etc/iptables-20180629

####################################################################33

網絡防火牆

保護的是網絡,作用在路由器

2018/06/29 11:35

###################################################################3

firewalld服務

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章