建 置 網 路 安 全 閘 道 器 實 驗 手 冊 Ⅰ. 實 驗 目 的 安 全 是 影 響 目 前 網 際 網 路 應 用 最 重 要 的 因 素 企 業 上 網 蔚 為 風 潮, Intranet 的 控 管 與 保 護 也 成 了 網 路 安 全 的 重 要 課 題 本 實 驗 使 用 RedHat 套 件 中 freeware 的 網 路 工 具 ipchains FreeS/WAN 和 Squid 建 立 一 個 符 合 實 務 須 求 的 Security Gateway, 並 測 試 與 紀 錄 Security Gateway 的 各 項 安 全 保 護 功 能 本 實 驗 的 主 要 目 的 有 二 : 1. 訓 練 同 學 熟 悉 Linux 操 作 環 境, 利 用 Linux 建 構 區 域 網 路 2. 在 實 際 操 作 中 了 解 Firewall VPN URL Blocking 的 運 作 原 理 操 作 本 實 驗 的 同 學 應 具 基 本 網 路 常 識, 具 有 基 本 使 用 Linux 的 經 驗, 了 解 Firewall VPN Proxy 的 基 本 意 義 Linux 的 安 裝 與 操 作 請 參 考 實 驗 十 用 Linux 建 立 Intranet Ⅱ. 實 驗 設 備 硬 體 : 項 目 數 量 備 註 個 人 電 腦 4 2 台 PCs 安 裝 Linux 2 台 PCs 安 裝 Windows98 Adaptor 6 NE2000 compatible 網 路 線 4 串 接 server 軟 體 : 軟 體 名 稱 數 量 軟 體 種 類 描 述 Redhat Linux 6.2 1 OS Freeware 可 由 網 路 上 下 載 Windows 98 1 OS Microsoft 公 司 出 版 FreeS/WAN 1 VPN 己 收 錄 於 RedHat Squid 1 Proxy 己 收 錄 於 RedHat ipchains 1 Firewall 己 收 錄 於 RedHat Netscape 1 Browser 用 以 瀏 覽 Internet - 1 -
Ⅲ. 背 景 資 料 網 路 化 是 現 今 各 產 業 都 無 法 倖 免 的 風 潮 走 進 網 際 網 路 (Internet) 確 實 給 企 業 帶 來 了 許 多 利 基, 包 括 行 銷 企 業 形 象 顧 客 關 係 管 理 (CRM, Customer Relationship Management) 等 都 產 生 正 面 的 影 響 然 而 網 際 網 路 (Internet) 廣 闊 無 邊, 也 同 時 波 濤 潛 伏, 企 業 在 上 網 的 同 時 也 遭 受 了 很 多 安 全 上 的 威 脅 為 了 保 護 企 業 內 部 的 Intranet, 建 構 一 個 完 善 的 Security Gateway 隔 絕 所 有 Internet 上 的 騷 擾 和 攻 擊 Intranet 的 安 全 管 理 須 要 擁 有 健 全 的 機 制, 控 制 合 法 的 資 訊 進 出, 阻 絕 攻 擊, 保 護 企 業 內 部 資 料 不 當 流 出 或 遭 到 截 取 表 一 整 理 一 般 企 業 對 Security Gateway 的 功 能 須 求 針 對 表 一 的 須 求, 我 們 設 計 一 個 完 善 Security Gateway 所 須 具 備 的 基 本 功 能 與 技 術 條, 列 於 表 二, 這 些 機 制 分 別 須 要 三 種 網 路 工 具 Firewall VPN Proxy 來 幫 助 我 們 完 成 接 下 來 的 實 驗, 就 是 利 用 這 三 項 freeware 來 建 置 Security Gateway 須 求 方 法 技 術 Restrict 阻 止 非 法 的 對 內 傳 輸 Packet filter illegal Packet filter transmit 阻 止 非 法 的 對 外 傳 輸 URL blocking Prevent attack 阻 止 hacker 的 攻 擊 Packet filter Security LAN to LAN security tunnel VPN with IPSec transport LAN to Host security tunnel VPN with IPSec Transmit log 傳 輸 資 料 的 統 計 log 表 一 :Security Gateway 的 功 能 需 求 Demand Example Technology Tool 限 制 員 工 偷 看 色 情 網 站 URL blocking Proxy Restrict illegal transmit 限 制 某 一 部 門 對 外 連 線 阻 止 任 何 人 從 外 部 telnet Filter outward packet source address. Filter inward packet Firewall Firewall 內 部 server destination address 阻 止 外 部 ping 內 部 主 機 Filter inward echo Firewall Prevent attack request packet 和 另 外 一 個 LAN 建 立 LAN to LAN tunnel VPN Security transport security tunnel 允 許 sales 安 全 存 取 內 部 transport LAN to various host VPN 資 料 tunnel transport Transmit log 紀 錄 所 有 傳 輸 資 料 Log transport packet 表 二 :Security Gateway 應 具 備 的 功 能 在 這 次 實 驗 中, 我 們 選 擇 Linux 做 為 Security Gateway 的 平 台, 因 為 Linux 系 統 穩 定, 功 能 強 大, 是 目 前 網 路 Server 平 台 的 最 佳 人 選, 另 一 個 重 要 的 原 因 是 Linux 作 業 系 統 完 全 - 2 -
free! 我 們 也 選 擇 RedHat[1] 套 件 中 的 三 個 網 路 功 具, 來 扮 演 Security Gateway 中 不 同 的 角 色, 它 們 是 ipchains[2] FreeS/WAN[3] Squid[4], 如 表 三 下 面 我 們 將 逐 一 介 紹 三 項 工 具 及 基 本 的 操 作 1. ipchains 軟 體 名 稱 功 能 執 行 空 間 最 新 版 本 免 費 下 載 ipchains Firewall Kernel 1.3.9 ftp://ftp.rustcorp.com/ipchains /ipchains-scripts.tar.gz FreeS/WAN VPN Kernel 1.4 http://www.freeswan.org/downl oad.html Squid Proxy Daemon 2.4 ftp://ftp.wownet.net/www/ Squid/ 表 三 : 工 具 軟 體 介 紹 目 前 市 面 上 可 見 的 防 火 牆 大 致 分 為 四 類 [5], 封 包 過 濾 器 (packet filter) 防 禦 主 機 (Bastion Host) 代 理 防 火 牆 (proxy firewall) 屏 敝 式 主 機 (screened host) ipchains 屬 於 封 包 過 濾 器 (packet filter), 是 第 三 層 的 網 路 設 備 主 動 檢 查 每 一 個 通 過 防 火 牆 的 packet, 依 照 每 一 個 packet 中 IP Header 的 資 料 決 定 如 何 處 置 這 個 packet 最 大 的 優 點 是 速 度 快 packet Rule1: Rule2: pattern description pattern description action action Rule3: Rule4: pattern description pattern description action action Rule N: any to any deny 圖 一 :ipchains 的 運 作 原 理 ipchains 內 附 於 Red Hat 6.2 之 中, 在 Linux 安 裝 完 成 後, 就 已 經 存 在 系 統 中 ipchains 允 許 系 統 管 理 者 建 立 串 鏈 (chain), 每 一 個 串 鏈 (chain) 由 多 條 規 則 (rule) 規 則 串 接 而 成, 如 圖 一, 每 條 rule 包 含 對 packet 的 描 述, 和 指 定 的 動 作 (action) packet 通 過 防 火 牆 要 逐 一 比 對 每 一 條 rule, 符 合 描 述 特 徵 的 packet 就 依 照 action 中 的 動 作 處 理 packet 對 packet 的 動 作 有 三 種, ACCEPT 代 表 允 許 packet 通 過, DENY 表 示 丟 棄 packet, REJECT 也 是 丟 棄 packet, 但 是 會 回 應 一 個 destination unreachable 的 訊 息 給 packed 的 發 送 端 表 四 整 理 ipchains 內 定 三 條 串 鏈 (chain), 針 對 不 同 的 packet 做 不 同 的 處 理 圖 二 是 ipchains 的 基 本 指 令 格 式, 進 階 操 縱 請 參 考 IPCHAINS-HOWTO[6] 網 頁 - 3 -
名 稱 描 述 Input Input packet rule control chain Output Input packet rule control chain Forwarding IP masquerade packet rule control chain 表 四 :ipchains 內 建 的 control chains 2. FreeS/WAN ipchains -Command chains rule-specification [option] ipchains -Command chains rulenum rule-specification [option] ipchains -Command chains 圖 二 :ipchains 基 本 語 法 以 往 需 要 電 腦 網 路 連 接 各 地 分 公 司 的 企 業 網 路, 必 需 申 裝 專 線, 藉 由 點 對 點 的 專 線 串 接 屬 於 自 己 的 私 有 網 路 ( Private Data Network) 專 線 建 置 私 有 網 路 擁 有 較 佳 的 效 能 及 完 整 的 控 制 權 然 而 現 在 有 公 眾 網 路 建 置 成 本 低 收 費 低 廉 服 務 項 目 多 備 援 性 佳, 在 降 低 成 本 提 昇 競 爭 力 的 前 提 下, 虛 擬 私 有 網 路 (Virtual Private Network, VPN)[7] 應 運 而 生 虛 擬 私 有 網 路 (VPN) 最 簡 單 的 定 義 就 是 在 Internet 公 眾 網 路 上 建 立 屬 於 自 己 的 私 人 網 路 虛 擬, 是 指 不 再 擁 有 實 體 之 長 途 數 據 線 路, 而 是 使 用 Internet 公 眾 網 路 的 長 途 數 據 線 路 企 業 可 以 在 internet 上 為 自 己 量 身 訂 做 一 個 最 符 合 自 己 需 求 自 己 可 以 控 制 的 私 人 網 路 Taipei Kaochung internet Security Tunnel ip2 ip1 Payload ip1 Payload ip1 Payload 圖 三 :VPN 的 Security Tunnel 虛 擬 私 有 網 路 (VPN) 主 要 採 用 四 項 技 術 : 穿 隧 技 術 (Tunneling) 加 解 密 技 術 (Encryption & Decryption) 密 鑰 管 理 技 術 (Key management) 身 份 認 證 技 術 (Authentication) IETF 從 1995 年 起, 陸 續 公 佈 許 多 相 關 之 技 術 標 準 這 些 標 準 統 稱 為 IPSec (IP Security,RFC1825~1829, RFC1851,RFC2085,RFC2104) 如 圖 三, 要 前 往 指 定 目 地 的 packet 會 被 tunneling, 也 就 先 加 密, 再 包 在 第 二 層 IP 封 包 中, 送 到 遠 端 的 VPN Gatweay 收 到 tunneled packet 後 依 事 前 的 - 4 -
協 定 將 封 包 解 密, 再 給 真 正 的 收 件 人 所 以 Client 的 使 用 者 是 沒 有 感 覺 的 我 們 在 Server 之 間 建 立 Security Tunnel,packet 在 通 過 Security Tunnel 時 都 已 經 加 密, 所 以 Internet 上 其 他 的 人 是 無 法 看 到 packet 的 內 容 leftsubnet rightsubnet type=tunnel left=10.11.11.1 leftsubnet=10.11.11.0/24 leftnexthop=33.44.55.66(*) right=10.22.22.1 rightsubnet=10.22.22.0/24 leftnexthop=66.77.88.99(*) left internet right type=tunnel left=10.11.11.1 leftsubnet=10.11.11.0/24 leftnexthop=33.44.55.66(*) right=10.22.22.1 rightsubnet=10.22.22.0/24 leftnexthop=66.77.88.99(*) 圖 四 :FreeS/WAN 建 立 Tunnel 時 的 基 本 設 定 FreeS/WAN 是 目 前 口 碑 最 好 的 VPN 軟 體, 支 援 IPSsec, 可 以 設 定 多 個 tunnel, 對 不 同 的 destination 的 packet 做 不 同 的 加 密 工 作 FreeS/WAN 的 設 定 檔 為 /etc/ipsec.conf, 自 己 這 一 端 叫 left, 而 目 的 端 ( 遠 端 ) 稱 為 right, 如 圖 四 建 立 tunnel 須 指 定 自 己 的 IP Address 和 Subnet, 指 定 遠 端 的 IP Address 和 Subnet, 而 對 方 也 要 以 相 對 的 方 式 把 tunnel 指 向 自 己, 兩 邊 VPN Server 的 參 數 要 配 合 才 能 正 常 通 訊 FreeS/WAN 的 操 作 與 安 裝 請 參 考 Linux FreeS/WAN Configuration 網 頁 [7] 3. Squid 代 理 伺 服 器 (Proxy Server) 是 提 供 代 理 Internet 連 線 服 務 的 伺 服 器, 類 似 一 大 型 的 HTML 文 件 快 取 中 心, 使 用 者 可 將 他 們 的 瀏 覽 器 之 HTTP Proxy 設 定 指 向 一 Proxy 伺 服 器 如 圖 五, 之 後, 這 些 使 用 者 的 所 有 HTTP 文 件 即 會 透 過 該 Proxy 伺 服 器 取 得, 而 非 用 戶 的 瀏 覽 器 親 自 向 Internet 中 伺 服 器 下 載 Internet Transparent proxy 圖 五 :Transparent Proxy 的 運 作 架 構 - 5 -
傳 統 的 Proxy Server 屬 於 被 動 式 的 網 路 設 備,MIS 人 員 需 個 別 的 強 制 設 定 每 位 使 用 者 透 過 它 對 外 連 線 這 不 但 造 成 MIS 人 員 網 路 管 理 層 面 的 問 題, 也 造 成 頻 寬 金 錢 時 間 及 人 力 的 浪 費 通 透 性 代 理 伺 服 器 (Transparent Proxy) 能 自 動 處 理 每 一 筆 要 上 網 的 資 料, 不 需 要 在 每 一 位 使 用 者 的 瀏 覽 器 中 設 定 代 理 伺 服 器, 代 理 伺 服 亦 可 支 援 Internet 上 所 有 服 務, 增 加 網 路 控 管 的 安 全 性 及 便 利 性 我 們 可 以 設 定 Transparent Proxy 中 的 當 ACL(Access Control List) 來 管 理 Intranet 內 人 員 對 外 的 連 線, 達 到 安 伓 控 管 的 目 的 Squid 是 目 前 使 用 最 普 遍 的 Proxy Server, 支 援 ICP(Internet Control Protocol) 和 Transparent Proxy, 許 多 學 校 的 proxy 就 是 使 用 Squid, 主 要 原 因 是 設 定 簡 單 具 彈 性, 統 計 功 能 強 大 籍 由 設 定 檔 /usr/local/squid/etc/squid.conf 來 控 制 Squid proxy 的 運 作 Squid 也 提 供 ACL 的 功 能, 依 照 HTTP request 的 Source IP 和 Destination URL 來 決 定 是 否 可 以 存 取 網 路 操 作 與 安 裝 請 參 考 Squid User Guide[8] Ⅳ. 實 驗 方 法 本 實 驗 練 習 安 裝 與 建 置 一 個 符 合 實 務 須 求 的 Security Gateway 本 實 驗 操 作 環 境 須 要 在 可 以 直 接 連 接 ( 一 般 校 園 網 路 環 境 )Internet 的 實 驗 室 中 進 行, 利 用 ipchains FreeS/WAN Squid 三 項 之 前 介 紹 的 freeware 來 建 置 一 個 Security Gateway, 我 們 將 實 際 設 定 每 一 個 細 節 並 測 試 安 全 防 護 的 功 能 是 否 成 功 為 了 模 擬 各 種 狀 況 的 網 路 環 境, 我 們 將 實 驗 分 為 三 個 階 段 第 一 個 階 段 模 擬 LAN 連 結 Internet 的 環 境 安 裝 一 台 Server 和 一 台 Client 模 擬 企 業 內 部 Intranet, 企 業 內 部 網 路 經 Gateway Server 連 結 Internet, 設 定 Security Gateway 的 限 制 條 件, 控 制 內 往 外 的 通 訊 第 二 階 段 練 習 阻 止 來 自 Internet 的 騷 擾 與 攻 擊 我 們 再 架 設 一 台 機 器 扮 演 Internet 上 的 駭 客, 主 動 對 區 域 網 路 (LAN) 連 線 Security Gateway 必 須 阻 止 外 對 內 不 合 法 對 內 通 訊, 是 依 然 不 影 響 企 業 提 供 給 Internet 的 Service 第 三 階 段 是 最 複 雜 的 階 段, 利 用 VPN 進 行 資 料 加 密 傳 輸, 主 要 工 作 是 使 用 VPN 建 立 Security Tunnel 保 障 資 料 在 Internet 上 傳 輸 時 的 安 全 性, 不 會 受 到 監 聽 或 修 改 一 共 須 要 四 台 機 器, 模 擬 兩 個 LAN 兩 台 VPN Server 間 的 參 數 相 互 配 合 是 實 驗 的 操 作 重 點 - 6 -
Ⅴ. 實 驗 步 驟 在 開 始 實 驗 前, 提 醒 您, 我 們 假 設 使 用 者 熟 悉 基 本 的 Linux 操 作, 具 基 礎 網 路 知 識 及 系 統 安 裝 經 驗, 會 建 構 簡 單 的 區 域 網 路 (LAN) 系 統, 並 已 經 大 致 瀏 覽 ipchains FreeS/WAN Squid 的 相 關 文 件 LAN Win98_1 Linux_1 Internet Lab router server Internet 192.168.2.10 192.168.1.10 140.113.88.79 圖 六 : 第 一 階 段 LAN to Internet 第 一 階 段 實 驗, 如 圖 六, 設 定 Security Gateway, 控 制 內 往 外 的 通 訊 我 們 首 先 架 設 一 台 Linux Server(Linux_1) 做 為 Gateway 和 一 台 Windows98 做 為 client, 再 安 裝 Squid 和 ipchains 在 Linux Server 上 在 Security Gateway 的 設 定 三 項 存 取 限 制 : 限 制 員 工 偷 看 色 情 網 站 限 制 某 一 部 門 對 外 連 線 禁 止 下 載 *.avi 的 檔 案 設 定 完 成 後, 用 Client 的 機 器 實 際 操 作 一 次, 確 認 限 定 條 件 是 否 生 效 LAN Win98_1 Linux_1 Internet 140.113.10.10 192.168.2.10 192.168.1.10 140.113.88.79 Win98_2 圖 七 : 第 二 階 段 Internet to LAN to 接 下 來, 第 二 階 段 兩 個 工 作 是 阻 止 (hacker) 對 企 業 內 部 網 路 進 行 攻 擊 管 制 非 預 期 的 通 訊 產 生 如 圖 七, 我 們 新 架 設 Win98_2, 扮 演 Internet 上 的 駭 客, 主 動 對 區 域 網 路 (LAN) 發 出 連 線 在 Linux_1 上, 利 用 ipchains 的 Packet Filter 功 能 過 濾 來 自 Win98_2 的 packet, 並 阻 止 外 來 的 封 包 ping 內 部 機 器, 以 免 區 域 網 路 架 構 暴 光, 增 加 危 險 性 但 是 依 然 不 影 響 企 業 提 供 給 Internet 的 Service - 7 -
LAN LAN Win98_1 Linux_1 Internet Linux_2 Win98_2 192.168.2.10 192.168.1.10 140.113.88.79 140.113.10.10 192.168.3.10 192.168.4.10 圖 八 : 第 三 階 段 Security Transport 第 三 階 段 須 要 四 台 PC, 如 圖 八, 分 別 模 擬 Internet 上 兩 個 遠 端 的 LAN 我 們 要 在 Linux_1 及 Linux_2 上 安 裝 FreeS/WAN, 並 設 定 Tunnel 的 參 數, 完 成 LAN to LAN 的 安 全 傳 輸, 然 後 修 改 Linux_2 上 FreeS/WAN 的 參 數, 建 立 LAN to Host 的 安 全 傳 輸 以 下, 我 們 逐 步 介 紹 三 階 段 實 驗 的 操 作 步 驟 1. Phase One 1. 取 一 台 PC 一 張 adaptor, 安 裝 Windows 98 系 統, 取 名 為 Win98_1 安 裝 browser (IE/Netscape 皆 可 ) 設 定 Win98_1 的 IP address:192.168.2.10 2. 取 一 台 PC 二 張 adaptor, 安 裝 Ret Hat Linux 6.2 取 名 為 Linux_1 Linux_1 安 裝 過 程 的 utility 選 擇 畫 面 中, 選 取 Firewall 選 項 Linux_1 的 adaptor IP 設 定 如 下 : eth0: 140.113.88.79 eth1: 192.168.1.10 3. 將 Linux_1 的 eth0 連 上 Internet 將 eth1 和 Win98_1 串 接 啟 動 Linux_1 的 routed 功 能, 設 定 routing table 設 定 Linux_1 的 IP Masquerade 功 能 啟 動 NAT, 讓 Win98 和 Internet 正 常 連 線 參 考 實 驗 十 用 Linux 建 立 Intranet 4. 進 入 Linux_1 的 /etc/rc.d/ 目 錄 下, 建 立 文 字 檔 rc.firewall 5. 在 文 字 檔 /etc/rc.d/rc.locol 中 加 入 一 行 指 令 /etc/rc.d/rc.firewall, 改 變 rc.firewall 存 取 權, 改 為 可 執 行 輸 入 指 令 chmod 731 rc.firewall 6. 編 輯 rc.firewall, 設 定 firewall 限 制 條 件 編 輯 後 執 行 rc.firewall 就 會 生 效 /sbin/ipchains -A output -d 206.251.29.10 -i eth0 -j DENY /sbin/ipchains -A output -s 206.251.29.10 -i eth0 -j DENY /sbin/ipchains -A input -s 192.168.50.0/24 -i eth1 -j DENY 7. 執 行 /sbin/ipchains L, 檢 查 設 定 內 容 是 否 正 確, 並 將 執 行 結 果 記 錄 於 實 驗 紀 錄 1 8. 用 Win98_1 執 行 下 列 工 作, 並 將 結 果 記 錄 於 實 驗 紀 錄 2 ping 206.251.29.10 ping www.sex.com - 8 -
ping www.nthu.edu.tw 改 變 Win98_1 的 IP 為 192.178.50.10,ping www.nthu.edu.tw 9. 安 裝 Squid, 將 squid-2.4.devel2-src.tar.gz 放 在 /root 下 執 行 下 面 指 令 # tar -zxvf squid-2.4.devel2-src.tar.gz # cd squid-2.4.devel2 # make install 安 裝 成 功 後, 你 可 以 找 到 下 面 這 個 檔 /usr/local/squid/etc/squid.conf 這 就 是 Squid 的 configure file, 我 們 將 在 squid.conf 設 定 URL Blocking 的 條 件 10. 編 輯 squid.conf, 設 定 URL Blocking 限 制 條 件 acl Badsite url_regex dstdomain www.sex.com acl AVFile urlpath_regex /*.avi http_access deny Badsite http_access deny AVFile http_access allow all 11. 用 Win98_1 執 行 下 列 工 作, 並 將 結 果 記 錄 於 實 驗 紀 錄 3 瀏 覽 www.sex.com 瀏 覽 http://www.nba.com/theater/milk/index.html 並 下 載 網 頁 中 的 AVI 檔 案 2. Phase Two 1. 取 一 台 PC, 一 張 adaptor, 安 裝 Windows 98, 取 名 為 Win98_2 設 定 Win98_1 的 IP address:140.113.10.10 模 擬 Internet 中 的 hacker 2. 將 Linux_1 的 eth0 和 Win98_2 串 接 對 外 串 接, 用 route 指 令 設 定 Linux_1 的 routing table 使 Win98_1 和 Win98_2 可 以 完 全 通 訊 3. 編 輯 rc.firewall, 設 定 firewall 限 制 條 件 編 輯 後 執 行 rc.firewall 就 會 立 即 生 效 /sbin/ipchains -A input -p ICMP --icmp-type ping -i eth0 -j REJECT /sbin/ipchains -A input -p TCP --dport 21 -i eth0 -j DENY /sbin/ipchains -A output -p TCP --dport 23 -i eth0 -j DENY /sbin/ipchains -A input -p TCP --dport 1025:65535 -i eth0 -j REJECT 4. 執 行 /sbin/ipchains L, 檢 查 設 定 內 容 是 否 正 確, 並 將 執 行 結 果 記 錄 於 實 驗 紀 錄 4 5. 用 Win98_2 執 行 下 列 工 作, 並 將 結 果 記 錄 於 實 驗 紀 錄 5 ping 192.168.2.10 ping 192.168.1.10 ping 140.113.88.79 ftp 140.113.88.79 6. 用 Win98_1 執 行 下 列 工 作, 並 將 結 果 記 錄 於 實 驗 紀 錄 6 ping 140.113.10.10 ping 192.168.1.10 ping 140.113.88.79-9 -
telnet 140.113.10.10 3. Phase Three 1. 取 一 台 PC 二 張 adaptor, 安 裝 Ret Hat Linux 6.2 取 名 為 Linux_2 Linux_2 的 adaptor IP 設 定 如 下 : eth0: 140.113.10.10 eth1: 192.168.3.10 2. 將 Linux_1 的 eth0 和 Linux_2 的 eth0 串 接 將 Linux_2 的 eth1 和 Win98_2 串 接 修 改 Win98_2 網 路 卡 IP address 為 192.168.4.10 3. 用 route 指 令 設 定 Linux_1 和 Linux_2 的 routing table, 設 定 IP Masquerade, 使 Win98_1 和 Win98_2 可 以 完 全 通 訊 並 使 用 ping 程 式 測 試, 確 定 通 訊 成 功 4. 在 Linux_1 中 安 裝 FreeS/WAN, 並 make kernel 將 freeswan-1.5-tar.gz 放 在 /usr/src 下 執 行 下 面 指 令 圖 九 是 FreeS/WAN 的 功 能 選 擇 畫 面 使 用 者 各 別 狀 況 不 同 請 參 考 FreeS/WAN 網 頁 # tar -zxvf freeswan-1.5-tar.gz # cd freeswan-1.5 # make xgo # make kinstall # reboot 圖 九 :FreeS/WAM 安 裝 畫 面 5. 在 Linux_2 中 安 裝 FreeS/WAN, 並 make kernel 將 freeswan-1.5-tar.gz 放 在 /usr/src 下 執 行 下 面 指 令 # tar -zxvf freeswan-1.5-tar.gz # cd freeswan-1.5 # make xgo # make kinstall # reboot 6. 系 統 重 新 開 機 後, 就 完 成 FreeS/WAN 安 裝 程 序, 你 會 找 到 兩 個 檔 案 /etc/ipsec.conf 和 - 10 -
/etc/ipsec.secret 請 編 輯 Linux_1 中 /etc/ipsec.conf 檔 案, 建 立 Security Tunnel ( 在 此 僅 條 列 必 要 之 參 數 設 定 ) config setup interfaces="ipsec0=eth0" klipsdebug=none plutodebug=none conn Test type=tunnel left=140.113.88.80 leftsubnet=140.113.88.0/24 leftnexthop= right=140.113.10.10 rightsubnet=140.113.10.0/24 rightnexthop= spibase=0x200 esp=3des-md5-96 keylife=8h keyingtries=0 7. 編 輯 完 後, 將 Linux_1 中 的 /etc/ipsec.conf 檔 案 copy 至 Linux_2 的 /etc/ipsec.conf 中, 使 兩 份 檔 案 內 容 一 樣 8. 用 Win98_1 執 行 下 列 工 作, 並 將 結 果 記 錄 於 實 驗 紀 錄 7 ping 192.168.3.10 ping 192.168.4.10 從 Win98_1 用 FTP 傳 檔 案 給 Win98_2, 檢 查 檔 案 內 容 是 否 一 致 Ⅵ. 實 驗 紀 錄 實 驗 記 錄 1 執 行 的 指 令 執 行 的 結 果 - 11 -
實 驗 記 錄 2 工 作 ping 206.251.29.10 ping www.sex.com ping www.nthu.edu.tw 改 變 Win98_1 的 IP 為 192.178.50.10,ping www.nthu.edu.tw 成 功 與 否 回 應 訊 息 受 限 於 那 一 條 設 定 實 驗 記 錄 3 工 作 瀏 覽 www.sex.com 瀏 覽 www.nba.com/ theater/milk/index.html 下 載 網 頁 中 的 AVI 檔 案 成 功 與 否 回 應 訊 息 受 限 於 那 一 條 設 定 實 驗 記 錄 4 執 行 的 指 令 執 行 的 結 果 實 驗 記 錄 5 工 作 ping 192.168.2.10 ping 192.168.1.10 ping 140.113.88.79 ftp 140.113.88.79 成 功 與 否 回 應 訊 息 受 限 於 那 一 條 設 定 實 驗 記 錄 6 工 作 ping 140.113.10.10 ping 192.168.1.10 ping 140.113.88.79 telnet 140.113.10.10 成 功 與 否 回 應 訊 息 受 限 於 那 一 條 設 定 - 12 -
實 驗 記 錄 7 工 作 ping 192.168.3.10 ping 192.168.4.10 從 Win98_1 用 FTP 傳 檔 案 給 Win98_2, 檢 查 檔 案 內 容 是 否 一 致 成 功 與 否 回 應 訊 息 受 限 於 那 一 條 設 定 Ⅶ. 問 題 與 討 論 1. 在 實 驗 第 一 階 段 中, 將 ipchains 的 條 件 中 的 DENY 全 部 改 為 REJECT, 則 實 驗 紀 錄 2 之 執 行 結 果 為 何? 就 使 用 者 而 言 有 何 不 同 答 : 2. 如 果 利 用 ipchains 將 來 自 subnet 140.113.0.0 16 之 封 包 擋 掉, 但 允 許 來 自 140.113.23.12 之 封 包 進 入, 請 問 如 何 填 入 ipchains 之 規 則 (rule)? 答 : 3. 使 用 transport proxy 和 不 使 用 transport proxy 在 本 實 驗 中 會 產 生 什 麼 影 響, 實 驗 紀 錄 3 之 執 行 結 果 有 何 不 同? 若 不 使 用 transport proxy 也 希 望 產 生 相 同 的 效 果, 須 要 做 那 些 設 定 答 : 4. 如 果 有 一 個 企 業, 因 為 對 外 連 線 頻 寛 有 限, 而 不 允 許 員 工 上 班 時 間 用 FTP 傳 檔 案, 禁 止 封 包 之 流 通, 請 問 是 否 可 以 使 用 ipchains 達 到 這 個 限 制? 如 果 可 以, 應 如 何 設 定 答 : 5. 當 FreeS/WAN 只 有 一 邊 (left) 有 設 Tunnel 而 另 外 一 邊 (right) 完 全 沒 有 設 定 時, 資 料 能 不 能 傳 送? 傳 送 過 程 有 沒 有 加 密? 為 什 麼? 請 分 別 依 left to right 和 right to left 回 答 答 : 6. 請 自 行 發 掘 問 題, 並 自 行 找 到 解 答 答 : - 13 -
Ⅷ. 參 考 文 獻 [1] Red Hat, http://www.redhat.com/ [2] Linux IPCHAINS-HOWTO, http://www.redhat.com/mirrors/ldp/howto/ipchains-howto.html [3] Linux FreeS/WAN, http://www.xs4all.nl/~freeswan/ [4] Squid Web Proxy Cache, http://www.squid-cache.org/ [5] Chapman & Zwicky, Building Internet Firewall, O Reilly, Aug 1998. [6] IP Firewalling Chains, http://www.redhat.com/mirrors/ldp/howto/ipchains-howto-4.html [7] Linux FreeS/WAN Configuration, http://www.freeswan.org/freeswan_trees/freeswan-1.2/doc/configuration.html [8] Squid User Guide, http://squid-docs.sourceforge.net/latest/html/book1.htm - 14 -