08. Firewall(iptables)

Similar documents
MASQUERADE # iptables -t nat -A POSTROUTING -s / o eth0 -j # sysctl net.ipv4.ip_forward=1 # iptables -P FORWARD DROP #

文件1

Microsoft Word - XN30Chap3.doc

C3_ppt.PDF

一、选择题

Simulator By SunLingxi 2003

IP505SM_manual_cn.doc

¶C¶L§§¬_™¨ A.PDF

Symantec™ Sygate Enterprise Protection 防护代理安装使用指南

飞鱼星多WAN防火墙路由器用户手册

C6_ppt.PDF

Chapter #

穨CAS1042中文手冊.doc

计算机网络概论

<4D F736F F F696E74202D FC2B2B3F85FA44AAB49B0BBB4FABB50B977A8BEA874B2CEC2B2A4B6BB50C0B3A5CE2E707074>

ch09.PDF

Firewall & NAT

untitled

BYOD Http Redirect convergence Client (1) 2008R2 NLB( ) (2) NLB Unicast mode switch flooding (arp ) NLB DNS Redirect 1. Round-Robin DNS DNS IP/DNS Cli

ext-web-auth-wlc.pdf

IP Access Lists IP Access Lists IP Access Lists

GPRS IP MODEM快速安装说明

SEC-220

1 Linux Linux Linux Windows NT Linux Linux UNIX Internet Linux Internet Internet Web Linux 26.3% Web Apache 60% Sendmail Internet Linux ISP/ICP

UDP 8.2 TCP/IP OSI OSI 3 OSI TCP/IP IP TCP/IP TCP/IP Transport Control Protocol TCP User Datagram Protocol UDP TCP TCP/IP IP TCP TCP/IP TC

D E 答 案 :C 3. 工 作 站 A 配 置 的 IP 地 址 为 /28. 工 作 站 B 配 置 的 IP 地 址 为 /28. 两 个 工 作 站 之 间 有 直 通 线 连 接, 两 台

(UTM???U_935_938_955_958_959 V )

A API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内

<4D F736F F F696E74202D20A1B6CFEEC4BFD2BB20B3F5CAB6BCC6CBE3BBFACDF8C2E7A1B7C8CECEF1C8FD20CAECCFA A1A24950D0ADD2E9BACD4950B5D8D6B72E707074>

第4章网络层_2_.doc

Web

工程师培训

/3/15 1, linux. linux,,. : 1.NAT ; 2. (load balance, virtual server);; 3. ; 4. ; 5. 6.VPN; 7. ; 8. ; 9.. (,

穨CAS1042快速安速說明.doc

TCP/IP TCP/IP OSI IP TCP IP IP TCP/IP TCP/IP

A9RBC8B.tmp

網路安全:理論與實務 第二版

財金資訊-80期.indd

自由軟體教學平台

ebook67-9

FreeRouter V2 完全手册

标题

一、

版权声明

05_資源分享-NFS及NIS.doc

Ⅲ. 背 景 資 料 網 路 化 是 現 今 各 產 業 都 無 法 倖 免 的 風 潮 走 進 網 際 網 路 (Internet) 確 實 給 企 業 帶 來 了 許 多 利 基, 包 括 行 銷 企 業 形 象 顧 客 關 係 管 理 (CRM, Customer Relationship M

第一章 Linux與網路資源

第 1 章 概 述 1.1 计 算 机 网 络 在 信 息 时 代 中 的 作 用 1.2 计 算 机 网 络 的 发 展 过 程 *1.2.1 分 组 交 换 的 产 生 *1.2.2 因 特 网 时 代 *1.2.3 关 于 因 特 网 的 标 准 化 工 作 计 算 机 网 络 在

ebook140-11

联想天工800R路由器用户手册 V2.0

Microsoft PowerPoint - 数据通信-ch1.ppt

電子商業伺服器管理(終極版).doc

穨control.PDF

不 知 肉 味 的 用 法 相 同? (A) 長 煙 一 空, 皓 月 千 里 (B) 五 臟 六 腑 裡, 像 熨 斗 熨 過, 無 一 處 不 伏 貼 (C) 兩 片 頑 鐵, 到 他 手 裡, 便 有 了 五 音 十 二 律 似 的 (D) 吾 觀 三 代 以 下, 世 衰 道 微 12. 文

.. 3 N

PS PS GMM SM.zte.com.

1 IT IT IT IT Virtual Machine, VM VM VM VM Operating Systems, OS IT

自由軟體社群發展經驗與 Linux認證介紹


一.NETGEAR VPN防火墙产品介绍

ansoft_setup21.doc

Microsoft Word - PS2_linux_guide_cn.doc

untitled

2 小时玩转 iptables 企业版 v1.5.4.ppt

ebook 185-6


untitled

HP System Management Homepage 7.2 用户指南

本文由筱驀釹贡献

ebook71-13

<4D F736F F D20C9CFBAA3CAD0BCC6CBE3BBFAB5C8BCB6BFBCCAD4C8FDBCB6BFBCCAD4B4F3B8D95FBDA8D2E9B8E55F5F E646F63>

Microsoft Word - 两小时玩转 iptables.doc

目 錄 頁 次 政 風 法 令 宣 導 一 行 政 中 立 實 務 探 討 二 收 到 支 付 命 令 不 可 置 之 不 理 3 9 公 務 機 密 維 護 宣 導 一 淺 談 駭 客 攻 擊 14 二 何 不 自 行 設 計 入 侵 防 禦 系 統? 17 安 全 維 護 宣 導 認 識 爆 竹

untitled

<4D F736F F D20D2F8D0D043444D41CEDECFDFBDD3C8EB41544DBBFAC1AACDF8D3A6D3C3BDE2BEF6B7BDB0B82DD0DEB8C4B0E62E646F63>

杭 州 顺 网 科 技 股 份 有 限 公 司 拟 实 施 股 权 收 购 涉 及 江 苏 国 瑞 信 安 科 技 有 限 公 司 股 权 评 估 项 目 资 产 评 估 报 告 目 录 杭 州 顺 网 科 技 股 份 有 限 公 司 拟 实 施 股 权 收 购 涉 及 的 江 苏 国 瑞 信 安

Chap6.ppt

<4D F736F F D20CDF8B9A42DC9CFCEE7CCE22D3038CFC2>

1 QoS... 1 QoS... 1 QoS QoS... 5 Class DSCP... 7 CoS... 7 IP QoS... 8 IP / /... 9 Cl

ESET Cyber Security

Microsoft Word - A doc

Basic System Administration

IP Camera

SiteView技术白皮书

PowerPoint Presentation

网工新答案

项目采购需求编写模板

计 算 机 网 络 基 础 任 务 教 程 () 组 成 计 算 机 网 络 的 每 台 计 算 机 都 是 独 立 的 即 计 算 机 之 间 没 有 明 显 的 主 从 关 系, 每 台 计 算 机 可 以 连 网 工 作, 也 可 以 不 连 网 工 作 (2) 建 立 计 算 机 网 络 的

北京市工商局网络安全系统解决方案

bingdian001.com

iGENUS爱琴思邮件系统技术白皮书

TRILITHIC 860DSP / 860DSPi 860 DSP 1. SSR & RSVP +20dBmV +80dBuV -20dBmV~~+20dBmV dBmV +110dBuV -40dBmV~~+50dBmV 3. TEL: (020) FAX: (0

<4D F736F F D D352DBED6D3F2CDF8D7E9BDA8D3EBB9DCC0EDCFEEC4BFBDCCB3CCD5FDCEC42E646F63>

國家圖書館典藏電子全文

84

第 11 章 互聯網技術 11.1 互聯 網 和 萬 維 網 的 發 展 歷 史 A. 互聯網的發展 互聯網是由 ARPANET 開 始發展的 1969 年 美國國防部高級研究計劃署 (ARPA) 把部分軍事研究所和大 的電腦連接起來 建造了㆒個實驗性的電腦網絡 稱為 ARPANET 並 列 的功能

OSI OSI 15% 20% OSI OSI ISO International Standard Organization 1984 OSI Open-data System Interface Reference Model OSI OSI OSI OSI ISO Prototype Prot

1 公 司 简 介 2 VRRP 原 理 和 应 用 3 新 产 品 和 创 业 计 划 及 赠 书 活 动

第 7 章 下 一 代 网 际 协 议 IPv6 141 足 的 措 施 只 能 是 权 宜 之 计 (3) 路 由 表 膨 胀 早 期 IPv4 的 地 址 结 构 也 造 成 了 路 由 表 的 容 量 过 大 IPv4 地 址 早 期 为 网 络 号 + 主 机 号 结 构, 后 来 引 入

Linux TCP/IP ~d IP Ãn Ö ô d Š~ Linux ˆ tã ~á Linux µ à n o ÛwÍ Ã Ä lr à µlo ¹ à } º } ø Á ~t ô v Ùm«v iñ d Linux à µ 5-1 ƒ à Linux Š ë ³œ Ø ë «Ý ª žî

Transcription:

Linux 防火牆簡介 防火牆的工作原理 1 2 防火牆優點 : 設定較為簡單 能阻隔多數不法入侵 防火牆缺點 : 無法防禦內部攻擊 針對規則運作可能產生問題 防火牆 防火牆的工作原理 防火牆常被部署在對內 ( 信任 ) 與對外 ( 不信任 ) 網路之間的必經通道之上 連線兩端透過封包傳遞資料 3 4 連線兩端透過封包傳遞資料

各種防護機制於 OSI 七層示意圖 防火牆的工作原理 不同協定之封包封裝 防毒軟體 :5 層 ~7 層 入侵偵測系統等 :3 層 5 層 防火牆 :3 層 ~7 層 5 6 TCP 封包之 header 內容 IP 封包之 header 內容 7 8

防火牆的內部 單一主機的防火牆 AP Service started success Service active Firewall pass Routing OS Sever Sever AP Internet OS Internal Internet 9 10 Iptables 程式介紹 http://www.netfilter.org/index.html 防火牆程式根據規則 (rule) 來處理封包 rule by rule first match policy IPTables 11 12

Chain 工作流程 IP packet Rule 1 Action 1 Iptables 簡介 不同的鏈存在於不同的表 (table) 中 different table for different job table by table Rule 2 Action 2 Rule 10 Action 10 預設動作 (Policy) Action: Accept Deny Drop 13 14 Iptables 簡介 Iptables 內建三個 tables ( 及常用鏈 ): filter INPUT FORWARD OUTPUT nat PREROUTING POSTROUTING OUTPUT mangle PREROUTING OUTPUT Iptables 工作原理 Linux 系統可能處理的封包 From outside From local Input Output 15 16

Iptables 工作原理 Linux 系統對封包的 routing 處理 To local To outside Iptables 工作原理 封包於 iptables 之穿行 When? Where? 17 18 Iptables 程式介紹 一個非本機封包於 iptables 之處理 http://www.netfilter.org/index.html Firewall GUI 19 20

21 22 /etc/init.d/iptables stop /etc/init.d/iptables start 檢查 : # iptables L # /etc/init.d/iptables status 啟動 iptables /sbin/iptables more /etc/sysconfig/iptables http://www.netfilter.org/index.html Iptables 指令 stopped [root@nivek ~]# /etc/init.d/iptables status 表格 :filter Chain INPUT (policy ACCEPT) num target prot opt source destination 1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 2 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain FORWARD (policy ACCEPT) num target prot opt source destination 1 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited started [root@nivek ~]# /etc/init.d/iptables status Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination 23 Chain OUTPUT (policy ACCEPT) num target prot opt source destination 24

iptables -L -v -n Chain INPUT (policy DROP 280 packets, 32685 bytes) pkts bytes target prot opt in out source destination 3300 136K ACCEPT tcp -- eth1 * 192.168.56.1 192.168.56.2 tcp dpt:22 140 51297 LOG all -- eth0 * 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 378K 46M LOG all -- eth1 * 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 140 10220 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 304 35676 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 Chain FORWARD (policy DROP 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 4435 1275K LOG all -- eth1 eth0 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 4717 882K LOG all -- eth0 eth1 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 13 624 ACCEPT tcp -- eth0 eth1 0.0.0.0/0 192.168.56.1 tcp dpt:22 state NEW 4379 1214K ACCEPT all -- eth1 eth0 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 4609 877K ACCEPT all -- eth0 eth1 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 9 396 ACCEPT tcp -- eth1 eth0 0.0.0.0/0 10.10.90.10 tcp dpt:22 state NEW 40 1832 ACCEPT tcp -- eth0 eth1 0.0.0.0/0 192.168.56.10 tcp dpt:22 state NEW Chain OUTPUT (policy DROP 7 packets, 588 bytes) pkts bytes target prot opt in out source destination 5687 6275K ACCEPT tcp -- * eth1 192.168.56.2 192.168.56.1 tcp spt:22 102 48836 LOG all -- * eth4 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 78904 8127K LOG all -- * eth1 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 140 10220 ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0 參數 : -t : 後面接 table, 例如 nat 或 filter, 若省略此項, 使用預設的 filter -L : 列出目前的 table 的規則 -n : 不進行 IP 與 HOSTNAME 的反查, 顯示訊息的速度會快很多 -v : 列出更多的資訊, 包括通過該規則的封包總位元數 相關的網路介面等 25 清除規則 /sbin/iptables [-FXZ] -F : 清除所有的已訂定的規則 -X : 殺掉所有使用者建立的 tables -Z : 將所有 tables 的計數與流量統計歸零 example: /sbin/iptables -F /sbin/iptables -X /sbin/iptables -Z 26 Iptables 語法 語法 : iptables [-t Table] -CMD[Chain] [ 比對規則 ] [ 處理方式 ] 範例 : iptables t filter AINPUT o eth1 s 192.168.1.0/24 j Drop Iptables 語法 iptables 命令格式 : iptables [-t Table] -CMD[Chain][ 比對規則 ] [ 處理方式 ] 常見 command: 檢視規則 :-L : [CHAIN][-n] 增加規則 :-A : CHAINrule 插入規則 :-I : CHAIN[ln] rule 替換規則 :-R : CHAINln rule 刪除規則 :-D : CHAIN <ln rule> 清空整鏈 :-F : [CHAIN] 設定原則 :-P : CHAIN<DROP ACCEPT> 27 28

Iptables 指令 iptables 命令格式 : iptables[-t Table] -CMD [Chain][ 比對規則 ][ 處理方式 ] Tables 類型 --table filter 或 -t filter 是預設的 table --table nat 或 -t nat 進行一對一 一對多 多對多網址轉譯工作 --table mangle 或 -t mangle 特殊的封包的路由旗標有關動作延伸名稱說明 TTL 修改 Time-To-Live 資訊 MARK 允許在封包中的 mark 欄位指定一個值 TOS 支援 IP 表頭 TOS 欄位值的設定 29 Iptables 指令 語法 : iptables [-t Table] -CMD [Chain][ 比對規則 ] [ 處理方式 ] 比對規則 : -i interface(only in PREROUTING, INPUT, FORWARD) -o interface(only in POSTROUING, OUTPUT, FORWARD) -s src.addr(can be ip, net/mask, hostname) -d dest.addr(can be ip, net/mask, hostname) -p proto(can be TCP, UDP, ICMP, ALL) --sport src:port(only with -p TCP & -p UDP, can be port, port:range) --dport dest:port(only with -p TCP & -p UDP, can be port, port:range) --icmp-type(only with -p ICMP, can be type, type/error_code) -j TARGET(depends on table & CHAIN, can be ACCEPT, DROP, SNAT, DNAT, MASQUERADE, REDIRECT, RETURN etc. ) * tips: 規則內容越多, 符合之封包越少 反之, 則越多 30 Iptables 指令 Iptables 指令 比對規則 :-m(match) 之應用 : -m state --state <STATE> NEW ( 新建連線 ) ESTABLISHED ( 已成功建立之連線 ) RELATED ( 新建連線, 但由已建立連線所引發 ) INVALID ( 非法連線 ) UNKOWN ( 不明連線 ) -m mac --mac-source <MAC> ( 比對封包的來源 MAC 位址, 僅限 local subnet ) -m limit --limit <nu/unit> [--limit-burst <burst>] ( 比對每一時間單位最大封包數, 及觸發限制的數量 ) -m owner --uid-owner <uid> ( 比對本機使用者 id ) 31 語法 : iptables [-t 作用的 Table] [ 處理 Chain 的方式 ] [ 比對規則 ] [ 處理方式 ] 常用 iptables 之 [ 處理方式 ](TARGET): filter TARGET ACCEPT: 允許封包通過當前的鏈 DROP: 拒絕封包通過當前的鏈 REJECT: 同 DROP, 但會送回 icmp 通知 nat TARGET SNAT: 修改 source socket DNAT: 修改 destination socket MASQUERADE: 動態修改 source socket 32

定義政策 ( Policy ) http://www.netfilter.org/index.html Iptables 範例 /sbin/iptables [-t tables] [-P] [INPUT,OUTPUT,FORWARD PREROUTING,OUTPUT,POSTROUTING] [ACCEPT,DROP] 參數說明 : -t :table 的名稱例如 nat, filter -P : 定義政策 ( Policy ) INPUT : 封包為輸入主機的方向 OUTPUT : 封包為輸出主機的方向 FORWARD: 封包為不進入主機而向外再傳輸出去的方向 PREROUTING : 在進入路由之前進行的工作 OUTPUT : 封包為輸出主機的方向 POSTROUTING: 在進入路由之後進行的工作 33 34 Example /sbin/iptables -P INPUT ACCEPT /sbin/iptables -P OUTPUT ACCEPT /sbin/iptables -P FORWARD ACCEPT /sbin/iptables -t nat -P PREROUTING ACCEPT /sbin/iptables -t nat -P OUTPUT ACCEPT /sbin/iptables -t nat -P POSTROUTING ACCEPT 35 Iptables Rules Order # 清空規則 iptables -F # 拒絕 ICMP 封包, 接受 ping 封包, iptables-a INPUT -p icmp-j DROP iptables-a INPUT -p icmp --icmp-type 8 -j ACCEPT C:\>ping 192.168.0.1 # 清空規則 iptables-f # 拒絕 ICMP 封包, 接受 ping 封包, iptables-a INPUT -p icmp--icmp-type 8 -j ACCEPT iptables-a INPUT -p icmp-j DROP C:\>ping 192.168.0.1 36

Iptables 應用例析 # 清空規則 iptables -F # 不允许 192.168.0.1 进入防火墙 ipchains-a input -j DENY -s 192.168.0.1 # 接受 loopback 連線 iptables -A INPUT -i lo -j ACCEPT # 拒絕 ICMP 封包, 接受 ping 封包, iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT iptables -A INPUT -p icmp -j DROP # 其餘全部封殺 iptables -A INPUT -j DROP 37 常見 Linux Firewall 應用 常見 Linux Firewall 應用 : 單一 client 允許單向連外, 集中在 filter INPUT 拒絕新建連線進入本機 : iptables-t filter -A INPUT -m state --state NEW -j DROP 單一 server 允許本機連外及特定服務, 集中在 filter INPUT 允許從外部界面 (eth0) 連至本機之 web 連線 : iptables-a INPUT -i eth0 -p tcp--dport80 -j ACCEPT 38 Allow services /sbin/iptables -A INPUT -p TCP --dport 22 -j ACCEPT /sbin/iptables -A INPUT -p TCP --dport 25 -j ACCEPT /sbin/iptables -A INPUT -p UDP --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p TCP --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p TCP --dport 80 -j ACCEPT /sbin/iptables -A INPUT -p TCP --dport 110 -j ACCEPT Iptables 應用 單一 gateway 主機 ( 可路由 ) 應用 : eth1 eth0 39 40

單一 gateway 規則範例 iptables-f iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -p icmp -j ACCEPT # 允許信任操作主機連線 iptables -A INPUT -i eth1 -p tcp --dport 22 -j ACCEPT iptables-a INPUT -i eth0 -s 211.47.1.111-p tcp--dport22 -j ACCEPT # 其餘拒絕 iptables-a INPUT -j DROP 允許服務連線 # 允許確認連線 iptables-a FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT # 允許 DNS 服務連線 iptables -A FORWARD -p udp --dport 53 -d 211.47.56.114 -j ACCEPT # 允許 WEB 服務連線 iptables -A FORWARD -p tcp --dport 80 -d 211.47.56.115 -j ACCEPT # 允許 SMTP 服務連線 iptables -A FORWARD -p tcp --dport 25 -d 211.47.56.116 -j ACCEPT # 允許 SSH 服務連線 iptables -A FORWARD -p tcp --dport 22 -d 211.47.56.117 -j ACCEPT # 其餘拒絕 iptables -A FORWARD -j DROP 41 42 /usr/sbin/tcpd 進行 TCP 的檢驗工作 TCP_Wrappers 檢驗流程設定檔 < 一設定完畢立刻就生效 > /etc/hosts /etc/hosts.allow /etc/hosts.deny 語法 < 服務名稱 > : <IP/network> : <action> network 使用 192.168.0.0/255.255.255.0 Network 不可使用 192.168.0.0/24 43 TCP_Wrappers Example /etc/hosts.allow in.telnetd: 192.168.1.2, 192.168.1.10, 192.168.1.20 in.ftpd: 192.168.1.2, 192.168.1.10, 102.168.1.20 sshd: 192.168.1.0/255.255.255.0 /etc/hosts.deny in.telnetd: ALL in.ftpd: ALL sshd: ALL 44

Reference 謝謝! Linux 防火牆與 NAT 主機 http://linux.vbird.org/linux_server/0250simple_firewall.php Linux 2.4 NAT HOWTO http://www.netfilter.org/documentation/howto/nat- HOWTO.html Linux 防火牆入門相關網站 http://linux.tnc.edu.tw/techdoc/firewall/ref-url.html Red Hat Enterprise Linux 4 安全性設定手冊 http://web.mit.edu/rhel-doc/4/rh-docs/rhel-sg-zh_tw- 4/index.html Q & A 45 46