国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關(guān)注微信公眾號

代理服務(wù)器的架設(shè)與維護(一)
2007-01-24   www.qyhc.com

一、對使用者的分析

  現(xiàn)有網(wǎng)絡(luò)情況:

  我校校園網(wǎng)通過光纜已將31座建筑物連通,光纜總長度約15Km,絕大多數(shù)樓中實現(xiàn)結(jié)構(gòu)化布線,連入校園網(wǎng)的網(wǎng)絡(luò)多媒體教室、教學(xué)基地、實驗室、機房等約有數(shù)十個,連網(wǎng)計算機達3000多臺 。我校目前出口有2個,一條速率為10M bps,通過光纖接入中國教育科研網(wǎng)CERNET,另一條速率為4M bps連入中國電信。

  用戶的需求:

  我校校園網(wǎng)的使用者主體為在校學(xué)生及老師。根據(jù)統(tǒng)計,約80%的用戶使用WWW、FTP等資源。我校現(xiàn)有Chinanet ip 126個,不可能分給所有的用戶使用。通過架設(shè)代理服務(wù)器來實現(xiàn)讓所有用戶使用網(wǎng)絡(luò)資源是最簡單并且相對安全和可靠的方法。通過架設(shè)專門的WWW(FTP)代理來滿足用戶的主要需求,通過架設(shè)socks5代理來滿足用戶的其他需求。

  二、硬件及軟件的選擇

  硬件

  Cache Server可以是一臺普通的PC服務(wù)器加上cache軟件(如Squid、Inktomi)構(gòu)成,也可以是軟硬件系統(tǒng)和一臺專門的cache服務(wù)器。根據(jù)Chinanet出口的實際情況,4Mbps速率的出口,每秒最大傳入數(shù)據(jù)量為約500K/s。我校主干網(wǎng)節(jié)點間為雙千兆連接,到達部分實驗室是百兆,到達宿舍為10M。送出的最大數(shù)據(jù)量為約12M/s。傳送的數(shù)據(jù)量不是很大,使用傳統(tǒng)的IA32構(gòu)架服務(wù)器既可滿足需求。我校網(wǎng)絡(luò)中心主機房使用機柜來存放服務(wù)器。惠普公司的LH6000服務(wù)器,具有很強的擴展性,是新型的六路服務(wù)器。代理服務(wù)器的運算負(fù)荷不是很重,對于IO的要求較高。LH6000通過自定義配置可以達到這個要求。通過使用raid可以提高磁盤性能,增加數(shù)據(jù)的可靠性。代理服務(wù)器軟件占用內(nèi)存較大。LH6000可以支持8GB內(nèi)存。最終選擇配置如下:

  配置

  處理器:1個100MHz系統(tǒng)總線的Intel Pentium III Xeon 700MHz處理器
  內(nèi)存:1G PC-133 ECC SDRAM
  磁盤控制器:集成具有32MB高速緩存雙通道Ultra3 SCSI HP NetRAID控制器
  附加單通道:Ultra Wide SCSI控制器
  內(nèi)置存儲:熱插拔5x18G半高驅(qū)動器
  網(wǎng)卡:內(nèi)置INTEL 82559 100M網(wǎng)卡
  電源:3個熱插拔電源

  RAID使用了RAID5模式,這個模式是向陣列中的磁盤寫數(shù)據(jù),奇偶校驗數(shù)據(jù)存放在陣列中的各個盤上,允許單個磁盤出錯。RAID 5也是以數(shù)據(jù)的校驗位來保證數(shù)據(jù)的安全,但它不是以單獨硬盤來存放數(shù)據(jù)的校驗位,而是將數(shù)據(jù)段的校驗位交互存放于各個硬盤上。這樣, 任何一個硬盤損壞,都可以根據(jù)其它硬盤上的校驗位來重建損壞的數(shù)據(jù)。

  軟件

  Squid Internet Object Cache (Harvest Project的後續(xù)版本) 是美國政府大力助的一項研究計劃。Squid是一個開放源代碼的代理服務(wù)器軟件。它是一個為UNIX系統(tǒng)下運行的全功能的代理服務(wù)器軟件。它可以為HTTP協(xié)議、FTP協(xié)議以及其他使用URL方式定位的協(xié)議作緩存。它支持客戶端使用SSL協(xié)議進行數(shù)據(jù)傳送。它可以使用ICP, HTCP, CARP, Cache Digests等協(xié)議和方式和其他運行squid的服務(wù)器進行協(xié)同。它支持SNMP協(xié)議,可以用相應(yīng)的軟件來做協(xié)調(diào)和管理。并且能配置詳細(xì)的訪問控制列表(acl)。

  操作系統(tǒng)

  以前學(xué)校的代理服務(wù)器使用linux作為操作系統(tǒng)。這是因為以前的代理服務(wù)器通常還兼作其他的服務(wù)器。很多服務(wù)器軟件是專門為linux開發(fā)的,或者在linux上運行的效率最高。Squid本身是為unix-like操作系統(tǒng)開發(fā)的。本身對系統(tǒng)沒有太多的要求。目前我校Chinanet代理服務(wù)器使用的是FreeBSD作為操作系統(tǒng)。

  沒有選擇Linux有下面幾點原因:

  Linux的核心部分開發(fā)相對比較開放,FreeBSD的核心是由一個嚴(yán)格的core team來完成的。相對檢查更加嚴(yán)格。從核心部分比較BSD的內(nèi)核更加穩(wěn)定。

  Linux對高負(fù)荷的承載能力不如FreeBSD。對于高負(fù)荷下程序出錯的容忍力,BSD遠(yuǎn)強于Linux。
許多著名的網(wǎng)站,如:yahoo, netease 等著名的商業(yè)網(wǎng)站使用的就是freebsd,穩(wěn)定性和性能早已通過很多專家的評測,遠(yuǎn)遠(yuǎn)強于Linux。

  在著名的文章“Linux vs BSD: A Tale of Two System”中,是這樣評價Freebsd的: FreeBSD focuses on the Intel Architecture PC and server platforms, and on providing the best performance and stability possible. The DEC/Compaq Alpha is also supported.

  但是Freebsd也有不如Linux的弱點。主要表現(xiàn)在磁盤IO的性能上。這主要是因為Freebsd使用的文件系統(tǒng)?UFS的性能不如linux上使用的ext2/ext3。但是在加上softupdate之后會有很大的改進。而且出國代理上配置的使用raid5模式,磁盤使用高轉(zhuǎn)速scsi硬盤,在上述硬件配置的情況下,讀取squid cache的數(shù)k大小的小文件使用ext2和ufs+softupdate的效率的差別在萬分之一以下。對于負(fù)載數(shù)千用戶的代理服務(wù)器來說,可以忽略這樣的效率差別。

  基于以上原因,最終選用Freebsd作為代理服務(wù)器的操作系統(tǒng)。
  三、代理服務(wù)器軟件的安裝

  squid的安裝

  freebsd本身的ports程序帶有squid的穩(wěn)定版本。目前squid的最新版本是2.4.STABLE6。在freebsd的/usr/ports/www/squid 目錄下執(zhí)行make;make install就會將最新版本的squid代碼下載、編譯并最終安裝到/usr中的相應(yīng)路徑中。

  Squid本身會被安裝到/usr/local/sbin下
  Squid的cache目錄默認(rèn)為/usr/local/squid/cache
  Squid的log目錄默認(rèn)為/usr/local/squid/logs
  squid的配置文件目錄默認(rèn)為/usr/local/etc/squid

  這樣的安裝方式比直接使用二進制的package安裝要好。因為二進制的package不能保證在自定義的系統(tǒng)上穩(wěn)定運行。下載源代碼代碼在本地進行編譯之前,首先會校驗源代碼的MD5 checksum,這樣能保證我得到的源代碼是未經(jīng)修改過的版本。然后再在本地進行編譯。最后安裝到相應(yīng)目錄。

  Squid的配置

  Squid的配置文件是squid.conf

  部分參數(shù)的配置如下:(為保證代理服務(wù)器安全,部分參數(shù)用*代替)

  http_port 8080 設(shè)置http代理端口為8080
  cache_peer pa.us.ircache.net sibling 3128 3130 login=*:*
  cache_peer sj.us.ircache.net sibling 3128 3130 login=*:*
  cache_peer * parent 13280 4827 htcp *:*

  這幾行是使用squid可以和其他幾臺機器進行協(xié)同工作的特性,同幾臺組成cache_peer。具體設(shè)置在后面的優(yōu)化部分會解釋。

  cache_peer_domain * .edu.cn設(shè)置.edu.cn的域名使用某個cache_peer訪問
  cache_mem 400 MB設(shè)定內(nèi)存cache的大小為400M
  cache_swap_low 80
  cache_swap_high 97這兩行是設(shè)置cache進行替換的閘值。當(dāng)占用到97%的cache后,cache中的內(nèi)容將被清空20%。
  maximum_object_size 20000 KB 最大對象大小為20M.
  maximum_object_size_in_memory 10000 KB 內(nèi)存中最大的對象大小為10M
  ipcache_size 4096 ip對應(yīng)cache的大小為4096
  fqdncache_size 4096 域名全稱cache的大小為4096
  cache_replacement_policy heap LFUDA cache替換策略
  memory_replacement_policy heap LRU 內(nèi)存替換策略
  cache_dir ufs /usr/local/squid/cache 25000 16 256 cache存放的路徑大小及具體配置
  dns_nameservers * * * * * 內(nèi)部指定dns服務(wù)器
  authenticate_program * * 身份認(rèn)證程序
  authenticate_children 32 身份認(rèn)證程序啟動的進程數(shù)目
  request_body_max_size 5 MB 最大請求的body大小
  reply_body_max_size 20 MB 最大回應(yīng)的body大小
  acl all src 0.0.0.0/0.0.0.0
  acl dorm proxy_auth 192.168.0.0/255.255.0.0 REQUIRED
  acl bjpu proxy_auth 202.112.64.0/255.255.240.0 REQUIRED
  acl bjpu2 proxy_auth 211.71.80.0/255.255.240.0 REQUIRED

  訪問控制列表

  acl banned_sites {過濾的關(guān)鍵字}
  http_access deny banned_sites
  deny_info ERR_BANNED_SITE banned_sites

  禁止訪問違禁站點的設(shè)置

  acl manager proto cache_object
  acl localhost src 127.0.0.1/255.255.255.255
  acl SSL_ports port 443 563
  acl Safe_ports port 80 # http
  acl Safe_ports port 21 # ftp
  acl Safe_ports port 443 563 # https, snews
  acl Safe_ports port 70 # gopher
  acl Safe_ports port 210 # wais
  acl Safe_ports port 1025-65535 # unregistered ports
  acl Safe_ports port 280 # http-mgmt
  acl Safe_ports port 488 # gss-http
  acl Safe_ports port 591 # filemaker
  acl Safe_ports port 777 # multiling http
  acl CONNECT method CONNECT

  設(shè)置可以連接的端口

  http_access allow dorm
  http_access allow bjpu
  http_access allow bjpu2
  http_access allow manager localhost
  http_access deny manager
  http_access deny !Safe_ports
  http_access deny CONNECT !SSL_ports
  http_access deny all

  允許http訪問

  icp_access allow *允許cache_peer使用ICP協(xié)議訪問
  proxy_auth_realm BJPU proxy-caching web server 驗證框提示的banner
  cache_mgr liukange@netease.com cache管理員的電子郵件地址
  cache_effective_user *
  cache_effective_group * 執(zhí)行cache程序的用戶uid和gid
  visible_hostname cnproxy.bjpu.edu.cn cache服務(wù)的機器名
  memory_pools on 內(nèi)存池設(shè)置為打開。
  memory_pools_limit 50 MB 內(nèi)存池的大小
 Socks5代理的安裝

  出國代理上選用的socks5代理軟件是NEC公司制作的軟件。它實際上是一個商業(yè)版軟件。但是根據(jù)它的license文件所述,在非商業(yè)用途上使用這個軟件是免費的。在RFC-1928對socks5如何運行做了詳細(xì)的描述。這個標(biāo)準(zhǔn)就是NEC公司的“Ying-Da Lee”和HP及IBM公司制定的。在相應(yīng)的測試中,NEC公司的這個socks5代理軟件的性能是較好的。雖然它有一些安全上的漏洞,但是使用freebsd的ports方式安裝,將會自動對源代碼打補丁,修正安全隱患。

  在/usr/ports/net/socks5下執(zhí)行make;make install就能安裝好該程序。相應(yīng)的文件將被安裝在下列目錄:

  socks5可執(zhí)行文件被放在/usr/local/bin
  socks5.conf文件被放在/usr/local/etc下

  bugtraq上曾經(jīng)提到socks5的密碼驗證部分有安全隱患,因此沒有使用該功能。

  Socks5代理的配置

  Socks5代理的配置文件是socks5.conf,內(nèi)容如下:

  set SOCKS5_MAXCHILD 8000
  permit - - 192.168. - (1024,65535) -
  permit - - 202.112.64.0/255.255.240.0 - (1024,65535) -
  permit - - 211.71.80.0/255.255.240.0 - (1024,65535) ?C

  限制工大可以使用該socks5代理,限制目標(biāo)端口為1024-65535。設(shè)置最多可以有8000個進程運行。

  配置文件的切換

  為了避免帶寬的浪費,出國代理設(shè)置為夜間取消最大下載對象限制。這是是使用crontab來做到的。每天夜間23:30將配置文件切換為沒有最大下載對象限制的。每天上午7:30切換回有最大下載對象限制的。

  四、使用情況分析

  單位時間內(nèi)流量

    input (total) output
  packets errs bytes packets errs bytes colls
  917 0 646248 1015 0 767928 0
  941 0 667858 1287 0 1548180 0
  832 0 673330 897 0 836839 0
  895 0 655289 1067 0 878449 0

  *以上數(shù)據(jù)為出國代理負(fù)載中等時的數(shù)據(jù)。

  Chinanet出口已經(jīng)被占滿,經(jīng)過cache的作用,送出數(shù)據(jù)大于進入數(shù)據(jù)

  CPU負(fù)荷

  使用top命令看到的CPU的負(fù)荷: load averages: 0.72, 0.86, 0.86(1mi,5min,15min),此數(shù)據(jù)為出國代理負(fù)載中等時的數(shù)據(jù)。

  Hourly usage

  [img:01091db545]http://www.frontfree.net/articles/pages/0000000597/hourlyusage.gif[/img:01091db545]

  通過這張圖可以清晰的了解出國代理的使用情況。

  早6時,宿舍通電。出國代理的使用頻度增加數(shù)倍。
  早8時,機房、實驗室開始開放,出國代理的使用頻度近一步增多。
  上午11時,課程結(jié)束,部分學(xué)生離開機房、實驗室,午餐時間使用頻度略微減少。
  中午13時,下午課程開始,學(xué)生離開宿舍,使用頻度減少。
  下午15時,機房和實驗室用戶增多。
  下午17時,部分機房、實驗室關(guān)閉,教師離開學(xué)校,造成使用頻度減少。
  晚18-20時,學(xué)生去上自習(xí)或選修課,使用頻度呈減少趨勢
  晚21時-22時,選修課結(jié)束,學(xué)生回到宿舍,使用頻度急劇增加,并且達到每天的最高點。
  晚23時,部分宿舍斷電,實驗室斷電。使用頻度進一步減少。
  0時-5時,宿舍學(xué)生大多已經(jīng)休息,使用頻度程減少趨勢。

  Daily usage

  [img:01091db545]http://www.frontfree.net/articles/pages/0000000597/dailyusage.gif  [/img:01091db545]

  通過上面可以看出我校Chinanet線路代理服務(wù)器每天的使用情況。出國代理的日訪問日志在約600M。圖中顯示出周末,尤其是周日訪問量很大。這是由于周末我校宿舍不斷電,作為用戶主體的學(xué)生的使用網(wǎng)絡(luò)的時間大大增加。對此稱為“周末效應(yīng)”。

熱詞搜索:

上一篇:用LINUX做網(wǎng)吧雙線接入服務(wù)器
下一篇:代理服務(wù)器的架設(shè)與維護(二)

分享到: 收藏
主站蜘蛛池模板: 昌江| 贺兰县| 天峻县| 广灵县| 广宁县| 潞城市| 尚义县| 忻城县| 广南县| 台北市| 博湖县| 精河县| 闽清县| 阿鲁科尔沁旗| 神农架林区| 新乡县| 东阳市| 鄂州市| 永定县| 宜兴市| 大荔县| 萍乡市| 册亨县| 肃北| 益阳市| 多伦县| 中西区| 视频| 乌鲁木齐县| 长汀县| 白银市| 黄浦区| 土默特右旗| 迁安市| 乐昌市| 兰考县| 耿马| 门头沟区| 忻城县| 洛川县| 阿克苏市|