收藏 分享(赏)

Server使用apache.ppt

上传人:gnk289057 文档编号:7929035 上传时间:2019-05-30 格式:PPT 页数:42 大小:1.57MB
下载 相关 举报
Server使用apache.ppt_第1页
第1页 / 共42页
Server使用apache.ppt_第2页
第2页 / 共42页
Server使用apache.ppt_第3页
第3页 / 共42页
Server使用apache.ppt_第4页
第4页 / 共42页
Server使用apache.ppt_第5页
第5页 / 共42页
点击查看更多>>
资源描述

1、1,實驗四 Term Project 架設Wireless LAN Hot Spot服務,Web Server使用apache DHCP Server使用dhcpd Firewall使用iptables NAT使用iptables 撰寫CGI程式使用C,2,Outline,實驗目的 實驗設備與環境 實驗方法與步驟 報告繳交 實驗記錄 問題討論與心得 注意事項 (含DEMO相關資訊) 參考資料,3,實驗目的 (1/4),身分認證 IP 安全,4,實驗目的 (2/4),實作一個Hot Spot,提供user連接Wireless LAN 802.11b Wireless access 只能有一個對外

2、的IP address (Public IP) 提供Web-based認證,只有認證通過的user才可使用網路服務 讓user上網時,簡單上手,5,實驗目的 (3/4),DHCP Server Firewall IP Masquerading (NAT) Forward Web-based authentication,一般使用者 192.168.2.10 IP Address由 DHCP Server配給,Access Point 192.168.2.2 當bridge使用 SSID : netlab_TA (或用HostAP),對內:有線網卡 eth0: 192.168.2.1,對外:無線

3、網卡 eth1: 140.113.24.105,連上WL1,Internet,Station加入192.168.2.0/24網域,透過192.168.2.1的DHCP Server配給IP,並在連外時先連到192.168.2.1的認證網頁,通過認證之後才可對外連結上Internet,6,實驗目的 (4/4),瞭解Hot Spot需要那些技術與如何運作 使用與設定DHCP daemon 使用iptables來達到firewall與IP masquerading(偽裝IP),即NAT的功能 透過Web介面達成基本的認證,7,實驗設備與環境,設備與環境: (23台NB與01台AP) 一台FC5的NB

4、 (含有線與無線網卡介面) Web Server使用apache 2.2 DHCP Server使用dhcpd-3.0.3 Firewall使用iptables NAT使用iptables 撰寫CGI程式使用C 一台不限平台的NB (含無線網卡,當user登入Hot Spot服務) 一台AP (當做無線端介面,做Bridge使用) 可向實驗室借AP,或是借網卡架設HostAP,8,DHCP Server Firewall IP Masquerading (NAT) Forward Web-based authentication,對內:有線網卡 eth0: 192.168.2.1,對外:無線網

5、卡 eth1: 140.113.24.105,連上WL1,Internet,實驗方法與步驟 Web Server (1/3),9,實驗方法與步驟 Web Server (2/3),Web Server使用apache 2.2,Fedora Core 5已預設安裝。到預設安裝目錄/etc/httpd/conf,修改設定檔。 cd /etc/httpd/conf/ vim httpd.conf修改httpd執行的使用者,將原先的apache改成nobody。(之後要修改iptables) User nobody Group nobody,10,實驗方法與步驟 Web Server (3/3),將S

6、erverName改為Web Server對外的IP Address,如此Server的Name才可透過DNS Server name lookup成功。 ServerName 140.113.24.105將Apache Web Server啟動。 httpd k start更多關於httpd man httpd http:/httpd.apache.org,11,對內:有線網卡 eth0: 192.168.2.1,對外:無線網卡 eth1: 140.113.24.105,連上WL1,Internet,實驗方法與步驟 DHCP Server (1/7),DHCP Server Firewall

7、 IP Masquerading (NAT) Forward Web-based authentication,192.168.2.0/24網域,透過192.168.2.1的DHCP Server配給IP,12,實驗方法與步驟 DHCP Server (2/7),安裝dhcp server套件 (dhcp-3.0.3-28),13,實驗方法與步驟 DHCP Server (3/7),安裝完成後,將dhcpd.conf.sample檔案複製到/etc目錄下,並更名為dhcpd.conf。 cp /usr/share/doc/dhcp-3.0.3/dhcpd.conf.sample /etc/dh

8、cpd.conf,14,實驗方法與步驟 DHCP Server (4/7),修改dhcpd server的設定檔案,改成符合所在區域網路的設定值。 vim /etc/dhcpd.conf 第4行:subnet 192.168.2.0 netmask 255.255.255.0 第7行:option routers 192.168.2.1 第12行:option domain-name-servers 140.113.1.1, 140.113.6.2 第21行:range dynamic-bootp 192.168.2.3 192.168.2.10,15,16,實驗方法與步驟 DHCP Serv

9、er (5/7),產生dhcpd執行時所需記載租約的檔案。 touch /var/lib/dhcpd/dhcpd.leases 修改起始dhcpd的script檔案。 vim /etc/rc.d/init.d/dhcpd,17,實驗方法與步驟 DHCP Server (6/7),增加dhcpd檔案內所需要的資訊。 第48行:CONFIGFILE=“/etc/dhcpd.conf” 第49行:LEASEFILE=“/var/lib/dhcpd/dhcpd.leases” 第50行:INTERFACE=“eth0” (有線網卡) 第51行:OPTIONS=“-q” 在start()內, daemo

10、n /usr/sbin/dhcpd cf $CONFIGFILE lf $LEASEFILE $OPTIONS $INTERFACE,18,19,實驗方法與步驟 DHCP Server (7/7),將DHCP Server啟動。 /etc/rc.d/init.d/dhcpd start,20,對內:有線網卡 eth0: 192.168.2.1,對外:無線網卡 eth1: 140.113.24.105,連上WL1,Internet,DHCP Server Firewall IP Masquerading (NAT) Forward Web-based authentication,實驗方法與步驟

11、 Firewall & NAT(1/7),一般使用者 192.168.2.10,Station未認證前,所有連內/外的流量皆不允許通過,21,IPTABLES,filter: default for local nat: 轉譯封包ip/port mangle: 修改/標註封包,22,封包的處理流程,將mangle table忽略後的運作順序,23,實驗方法與步驟 Firewall & NAT(2/7),將系統內Forward Packet功能開啟。 echo “1” /proc/sys/net/ipv4/ip_forward將Firewall功能與NAT功能所需要的modules載入系統中。

12、modprobe ip_tables modprobe ip_nat_ftp modprobe ip_nat_irc modprobe ip_conntrack modprobe ip_conntrack_ftp modprobe ip_conntrack_irc,24,實驗方法與步驟 Firewall & NAT(3/7),將iptables內原先記載的Rule清除並重設為零 -F表示刪除某個table內的rules -X表示刪除使用者定義的rules -Z表示將所有rules中的封包和位元組計數為零。iptables F iptables X iptables Z iptables F t

13、 nat iptables X t nat iptables Z t nat,25,實驗方法與步驟 Firewall & NAT(4/7),設定iptable的filter table內default policy,設定INPUT、OUTPUT與FORWARD iptables P INPUT DROP iptables P OUTPUT DROP iptables P FORWARD DROP設定iptable的nat table內default policy,設定PREROUTING、POSTROUTING與OUTPUT iptables t nat P PREROUTING ACCEPT

14、 iptables t nat P POSTROUTING ACCEPT iptables t nat P OUTPUT ACCEPT,26,設定NAT內主機的IP偽裝(MASQUERADE)。 iptables t nat A POSTROUTING o eth1 s 192.168.2.0/24 j MASQUERADE設定本機的IP Address可以對外部網路與對內部網路連線 iptables A INPUT d 140.113.24.105 j ACCEPT iptables A INPUT d 192.168.2.1 j ACCEPT iptables A OUTPUT s 140

15、.113.24.105 j ACCEPT iptables A OUTPUT s 192.168.2.1 j ACCEPT PS: -A: append , o: output, -s: source, -d: destination, -j: target operation,實驗方法與步驟 Firewall & NAT(5/7),27,實驗方法與步驟 Firewall & NAT(6/7),將上述步驟寫成script以節省時間。 vim set_lab6.sh 第1行:#!/bin/sh 要輸入的命令 修改script執行權限 chmod 755 set_lab6.sh 執行此script

16、 ./set_lab6.sh,28,秀出目前iptables的情形。 iptables L n v iptables t nat L n -v,實驗方法與步驟 Firewall & NAT(7/7),29,DHCP Server Firewall IP Masquerading (NAT) Forward Web-based authentication,對內:有線網卡 eth0: 192.168.2.1,對外:無線網卡 eth1: 140.113.24.105,連上WL1,Internet,實驗方法與步驟 身份認證,內部user在未認證前的80 port流量自動導向認證網頁(即開啟brows

17、er後,不管開啟那個網頁,都會連到認證網頁) 認證過後,可以正常使用對外的網路(本實驗僅考慮web-traffic),30,認證網頁(index.html)必須放在預設的目錄/var/www/html下,實驗方法與步驟 身份認證 網頁 (1/2),31,實驗方法與步驟 身份認證 網頁 (2/2),指定CGI程式所在路徑,利用環境變數傳遞帳號和密碼,32,實驗方法與步驟 身份認證 “Get”,指定GET,browser會將填入的帳號和密碼附加在?後面 當httpd收到request後會將?後面的字串存入QUERY_STRING這個環境變數中 於是CGI程式裡,可用getenv(“QUERY_ST

18、RING”)擷取出帳號和密碼以驗證身份。,33,實驗方法與步驟 身份認證 撰寫CGI程式,CGI程式(.cgi)必須放在預設的目錄/var/www/cgi-bin/,getenv(“QUERY_STRING”),34,實驗方法與步驟 執行iptables變更防火牆規則,當驗證身份成功後,必須執行變更防火牆規則使之放行: iptables I FORWARD s 192.168.2.10 j ACCEPT iptables I FORWARD d 192.168.2.10 j ACCEPT PS: -I: insert 在CGI程式中,可以呼叫system call執行iptables指令: s

19、ystem(“sudo iptables I FORWARD s 192.168.2.10 j ACCEPT”); system(“sudo iptables I FORWARD d 192.168.2.10 j ACCEPT”);因為httpd是以nobody的權限執行,所以必須以sudo指令轉換到superuser的權限,才可執行iptables sudo指令是參考/etc/sudoers,因此必須利用在root登入的情況下以visudo指令編輯這個檔案,使得nobody可執行sudo,並且設定不需輸入密碼,35,實驗方法與步驟 利用vim sudo編輯sudoers檔案,36,實驗記錄

20、(1/2),書面報告:分實驗紀錄、問題討論與心得三節 附上CGI的程式碼,並詳加註解你認為重要的地方。 詳加解釋貴組所設計的iptable的rules (認證前/後) 印出iptabels內的情形 (必貼圖),用指令: iptables L v n iptables t nat L v -n 介紹貴組所設計的routing scheme 並印出NAT主機的routing table 可用指令route n 並請畫出你們的環境架構(如IP address相關設定)請介紹你們所設計的authentication scheme 並畫出你們的認證流程 (本部份佔報告75%),37,實驗記錄 (2/2)

21、,詳述貴組實做的特別功能,以下為舉例: 增加管理功能 提供網頁介面可以新增使用者到allow list中。 提供網頁介面可以刪除allow list的使用者。 提供網頁介面知道目前有哪些使用者在使用此Hot Spot。 對連線增加時間限制,超出就將此使用者斷線。 增加log file紀錄使用者的連線資訊,比方使用者名稱,認證時間,使用時間,配置的IP address等等。 L7-filter (Application Layer Packet Classifier for Linux) Linux netfilter的外掛模組,讓iptables支援應用層的封包過濾功能,限制使用動態port的

22、網路軟體(如:P2P、即時通訊等)。 其他所想的到的Hot Spot應具備的功能,愈周全完善分數愈高。 (本部份佔報告15%),38,問題討論與心得,問題討論 (本部份佔報告10%) 請列出至少兩個可能出現security hole的地方,並請解釋該如何解決上述的security hole? 在實做的過程當中,遇到的問題有哪些,如何解決?請詳細敘述。 心得 (本部份佔報告10%) 請告知助教,你認為在Hotspot中最重要的部份是什麼、在本次實驗中最難的部份是什麼、有學到哪些東西。,39,注意事項,Demo時間為期末考週的下一個星期:1/16(三)17(四) 登記日期12/27(四)1/3(四

23、),請至EC446B門口登記時間。組半小時,請提前10mins來架設器材,遲到者demo部分扣10分。 Demo 50% Report 50% 需要借用AP或無線網卡者,下課後即可至446B登記借用,demo當天繳回,同時繳交實驗報告。(數量有限),40,參考資料 (1/3),Apache 2.2 http:/www.apache.org /var/www/manual/ 簡易 WWW 伺服器設定 http:/linux.vbird.org/linux_server/0360apache.php DHCP Server http:/www.isc.org/sw/dhcp/ dhcpd.conf

24、的man page DHCP mini-HOWTO http:/www.tldp.org/HOWTO/DHCP/index.html 簡易 DHCP 伺服器設定 http:/linux.vbird.org/linux_server/0340dhcp.php,41,參考資料 (2/3),NAT http:/filter.org/ iptable tutorial http:/iptables- 簡易NAT與Linux防火牆伺服器 http:/linux.vbird.org/linux_server/0320nat.php http:/linux.vbird.org/linux_server/0250simple_firewall.php http:/linux.tnc.edu.tw/techdoc/firewall/iptables-intro.html Linux網路安全講義: Netfilter機制與iptables工具 http:/www.adj.idv.tw/download/download/20030626-Linux-Firewall.doc,42,參考資料 (3/3),HTML語法教學 http:/.tw/html/ CGI程式入門 http:/ind.ntou.edu.tw/documents/cgi/ sudo http:/

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报