?? install.txt
字號(hào):
首 頁(yè) 中國(guó)教育 教育資源 科研發(fā)展 教育信息化 教育在線 CERNET 校園之窗
新聞 重要資訊 專題 專家專欄 理論研究 分析報(bào)告 行業(yè)觀察 學(xué)術(shù)會(huì)議 建設(shè)快車道 遠(yuǎn)程教育 基礎(chǔ)網(wǎng)絡(luò) 數(shù)字化校園 教學(xué)產(chǎn)品
您所在的位置:EDU首頁(yè) > 教育信息化 > 基礎(chǔ)網(wǎng)絡(luò) > 網(wǎng)絡(luò)管理 Squid代理服務(wù)器的計(jì)費(fèi)與流量控制
http://www.edu.cn 2006-10-10 中國(guó)教育網(wǎng)絡(luò) 作者:尤國(guó)君 李杏姣 字體選擇 【大】 【中】 【小】 最新推薦CANS’2007 中美高級(jí)網(wǎng)絡(luò)技... 07-18 APAN學(xué)術(shù)會(huì)議通知 07-18
CERNET第十四屆學(xué)術(shù)會(huì)議征文... 07-04 數(shù)字圖書館 改變每個(gè)人的生活 06-28
隨著寬帶網(wǎng)絡(luò)用戶數(shù)量的迅速膨脹,網(wǎng)絡(luò)管理員通常面臨IP地址缺乏、用戶訪問(wèn)計(jì)費(fèi)困難以及內(nèi)部網(wǎng)絡(luò)安全難于管理等一系列問(wèn)題,而使用代理服務(wù)器是解決這些問(wèn)題的有效方法之一。Squid以其權(quán)限管理靈活、性能高和效率快等特點(diǎn)成為L(zhǎng)inux和UNIX平臺(tái)下最為流行的高性能免費(fèi)應(yīng)用層代理服務(wù)器。但只有解決了該服務(wù)器軟件本身不提供日志分析軟件功能所帶來(lái)的計(jì)費(fèi)和流量控制等問(wèn)題,才能提高其應(yīng)用性能
實(shí)現(xiàn)思路
使用MySAR對(duì)Squid日志進(jìn)行分析,將用戶訪問(wèn)外網(wǎng)的記錄保存在MySQL數(shù)據(jù)庫(kù)中,然后利用所編寫的程序,對(duì)用戶的流量進(jìn)行統(tǒng)計(jì)。當(dāng)流量超過(guò)設(shè)置值時(shí)調(diào)用iptables防火墻,禁止用戶再訪問(wèn)Squid服務(wù)器。
實(shí)現(xiàn)方法
第一步:安裝和配置Squid服務(wù)(這里安裝的系統(tǒng)版本均為Red Hat Enterprise Linux 4 Update 1,4張光盤分別簡(jiǎn)稱為光盤1、光盤2、光盤3、光盤4)。
1.將光盤2放入光驅(qū),加載光驅(qū)后,使用下面命令安裝Squid:
rpm -ivh /media/cdrom/RedHat/RPMS/squid-2.5.STABLE6-3.4E.5.i386.rpm
2.先將Squid主配置文件/etc/squid/squid.conf復(fù)制為/etc/squid/squid.conf.bak,然后刪除/etc/squid/squid.conf配置文件的原有內(nèi)容,并加上下面這些語(yǔ)句,有了這些最基本的設(shè)置Squid就可以啟動(dòng)使用了。
http_port 192.168.1.8:8080
cache_mem 64 MB
cache_dir ufs /var/spool/squid 4096 16 256
cache_effective_user squid
cache_effective_group squid
dns_nameservers 61.144.56.101
cache_access_log /var/log/squid/access.log #設(shè)置日志的保存路徑和文件名
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
acl all src 0.0.0.0/0.0.0.0
http_access allow all
logfile_rotate 30 #設(shè)置循環(huán)保存日志文件的個(gè)數(shù)
3.使用命令/usr/sbin/squid -z建立硬盤緩沖區(qū)的緩存目錄結(jié)構(gòu)。
第二步:安裝Apache和PHP解釋器。
1.將光盤2放入光驅(qū),加載光驅(qū)后,使用下面命令安裝Apache服務(wù):
rpm -ivh /media/cdrom/RedHat/RPMS/httpd-2.0.52-12.ent.i386.rpm
2.將光盤2放入光驅(qū),加載光驅(qū)后,使用下面命令安裝PHP解釋器:
rpm -ivh /media/cdrom/RedHat/RPMS/php-4.3.9-3.6.i386.rpm
第三步:安裝MySQL。
1.安裝MySQL服務(wù)及相關(guān)程序。
將光盤4放入光驅(qū),加載光驅(qū)后,使用下面命令安裝MySQL服務(wù)及其相關(guān)程序:
rpm -ivh /media/cdrom/RedHat/RPMS/perl-DBD-MySQL-2.9004-3.1.i386.rpm
rpm -ivh /media/cdrom/RedHat/RPMS/mysql-server-4.1.10a-2.RHEL4.1.i386.rpm
rpm -ivh /media/cdrom/RedHat/RPMS/mysql-devel-4.1.10a-2.RHEL4.1.i386.rpm
2.安裝MySQL客戶端程序。
將光盤3放入光驅(qū),加載光驅(qū)后,使用下面命令安裝MySQL客戶端程序:
rpm -ivh /media/cdrom/RedHat/RPMS/mysqlclient10-3.23.58-4.RHEL4.1.i386.rpm
3.安裝PHP -MySQL支持包。
將光盤2放入光驅(qū),加載光驅(qū)后,使用下面命令安裝PHP -MySQL支持包:
rpm -ivh /media/cdrom/RedHat/RPMS/php-mysql-4.3.9-3.6.i386.rpm
4.啟動(dòng)MySQL服務(wù)。
使用下列命令啟動(dòng)MySQL服務(wù)
/etc/init.d/mysqld start
5.修改MySQL用戶root的口令。
缺省MySQL的root用戶沒(méi)有口令,為了保證數(shù)據(jù)庫(kù)安全,應(yīng)該使用以下命令修改MySQL用戶root的口令(本例設(shè)置口令為ygjalarm):
mysqladmin -u root password ygjalarm
第四步:安裝和設(shè)置MySAR。
1.訪問(wèn)http://giannis.stoilis.gr/software/mysar,點(diǎn)擊 “download”下載最新版的MySAR安裝軟件mysar-2.0.7.tar.gz。
2.使用命令tar zxvf mysar-2.0.7.tar.gz -C /usr/local將其解壓到/usr/local目錄中。
3.使用命令vi /usr/local/mysar/www/install/index.php打開(kāi)安裝向?qū)У脑次募ndex.php,在第70行插入語(yǔ)句“usr_iptables tinyint(1) unsigned NOT NULL default '0',”,創(chuàng)建usr_iptables字段用于判斷用戶是否已被限制訪問(wèn)服務(wù)器。
4.使用命令vi /etc/httpd/conf/httpd.conf打開(kāi)httpd.conf配置文件,在配置文件的末尾添加語(yǔ)句“Alias /mysar/ "/usr/local/mysar/www/" ”設(shè)置虛擬目錄,使虛擬目錄指向MySAR目錄中的www子目錄。
5.使用命令/etc/init.d/httpd restart重啟Apache服務(wù)器。如圖1所示,通過(guò)訪問(wèn)http://服務(wù)器IP地址或域名/mysar/這一地址打開(kāi)MySAR的安裝向?qū)?,并依照向?qū)崾就瓿蒑ySAR的安裝。
6.使用命令vi /usr/local/mysar/bin/mysar-importer.php打開(kāi)mysar-importer.php文件(注:該文件的作用是讀取Squid的日志文件/var/log/squid/access.log,并對(duì)日志進(jìn)行分析,然后將相應(yīng)的數(shù)據(jù)寫入數(shù)據(jù)庫(kù)中),并在103行插入如圖2方框內(nèi)的語(yǔ)句,用于判斷訪問(wèn)的目的主機(jī)是否為網(wǎng)內(nèi)主機(jī)(該處假設(shè)網(wǎng)內(nèi)目的主機(jī)為IP地址192.168.*.*),如果為網(wǎng)內(nèi)目的主機(jī),則訪問(wèn)流量不進(jìn)行統(tǒng)計(jì)。
7.使用命令vi /usr/local/mysar/etc/mysar.cron打開(kāi)文件mysar.cron,并在文件末尾添加語(yǔ)句“01 1 * * * root squid -k rotate”,使Squid的日志每天循環(huán)保存一次(注:由于MySAR是通過(guò)分析Squid日志的方法來(lái)統(tǒng)計(jì)流量的,如果日志文件太大會(huì)降低MySAR的運(yùn)行效率,同時(shí)也可能使統(tǒng)計(jì)出錯(cuò))。然后再使用命令crontab /usr/local/mysar/etc/mysar.cron設(shè)置自動(dòng)作業(yè),這時(shí)就可以通過(guò)訪問(wèn)http://服務(wù)器IP地址或域名/mysar/查看用戶使用Squid代理服務(wù)器訪問(wèn)外網(wǎng)的情況了。
第五步:編寫C程序用于執(zhí)行iptables命令。
出于安全上的考慮,PHP程序默認(rèn)情況下是不允許直接調(diào)用Linux系統(tǒng)命令的,因此通過(guò)該C程序來(lái)間接調(diào)用iptables命令可以在很大程度上保護(hù)服務(wù)器的安全。具體程序源代碼如下。
#include <stdio.h>
#include <getopt.h>
#include <unistd.h>
int main(int argc ,char *argv[])
{int optch;
while( (optch = getopt( argc , argv , "ad" ) ) != -1 )/*分析命令行參數(shù)*/
{switch( optch ) {
case 'd':
execlp("iptables","iptables","-I","INPUT","-s",argv[2],"-j","DROP",(char *) 0 );
break;/*設(shè)置iptable規(guī)則,禁止用戶訪問(wèn)服務(wù)器*/
case 'a':
execlp("iptables","iptables","-D","INPUT","-s",argv[2],"-j","DROP",(char *) 0 );
break;/*刪除iptable規(guī)則*/
default: printf("error \n");} }}
1.編寫完成后以.c為后綴名保存文件(本例文件名為uip.c),然后再分別使用gcc -c uip.c和make uip.o編譯連接程序。
2.使用命令chmod u+s uip修改程序uip的執(zhí)行權(quán)限,使PHP程序能夠調(diào)用它。
第六步:編寫PHP程序mysar.php用于管理代理用戶。
該程序通過(guò)統(tǒng)計(jì)數(shù)據(jù)庫(kù)中代理用戶的流量數(shù)據(jù)判斷是否超出限制,如果超出則調(diào)用c程序設(shè)置iptables規(guī)則,禁止用戶訪問(wèn)代理服務(wù)器(需要具體代碼的讀者可和作者聯(lián)系)。
使用體會(huì)
通過(guò)以上六個(gè)步驟的設(shè)置,解決了基于Linux系統(tǒng)代理服務(wù)器Squid的計(jì)費(fèi)與流量控制。筆者所在單位應(yīng)用該系統(tǒng)后,不僅有效掌握了用戶的上網(wǎng)情況,而且實(shí)現(xiàn)了對(duì)大量占用網(wǎng)絡(luò)帶寬的用戶的有效的控制。
共2頁(yè) 首頁(yè) 上一頁(yè) 1 2 下一頁(yè) 尾頁(yè) 轉(zhuǎn)到第頁(yè) 頁(yè)面功能 【打印】 【關(guān)閉】 【我有話說(shuō)】延伸閱讀分類信息集團(tuán)接入 個(gè)人接入 技術(shù)服務(wù) 數(shù)據(jù)中心 專業(yè)解決方案
賽爾畢博 撥號(hào)接入 信息服務(wù) 網(wǎng)絡(luò)新校園 NIC服務(wù)
這個(gè)不顯示的層是用來(lái)處理IE粑粑情況的,如果沒(méi)有這個(gè)層IE里就會(huì)多出來(lái)一行字 要 聞下一代互聯(lián)網(wǎng)
專家呼吁中國(guó)抓住互聯(lián)網(wǎng)技術(shù)“換代”機(jī)遇
下一代互聯(lián)網(wǎng)盛會(huì)在京開(kāi)幕 欲打造中國(guó)"IETF"
讓P2P為IPv6應(yīng)用解“渴”
借IPv6東風(fēng)完善國(guó)內(nèi)互聯(lián)網(wǎng)建設(shè)
IPv6發(fā)展迅速 將成為下一代網(wǎng)絡(luò)核心技術(shù)
綜述:IPv6的優(yōu)勢(shì)、演進(jìn)方案和前景展望
熱點(diǎn)新聞
聯(lián)通與中國(guó)教育網(wǎng)合作升級(jí)開(kāi)通波道服務(wù)
HP校園網(wǎng)應(yīng)用:在升級(jí)的歷練中成長(zhǎng)
教育信息化建設(shè)關(guān)鍵在“用”
一個(gè)現(xiàn)代信息技術(shù)教育的新觀念——全息教育觀
發(fā)展研究:網(wǎng)絡(luò)時(shí)代教育技術(shù)研究的必然選擇
情感——網(wǎng)絡(luò)教育中不可缺少的組成部分
建設(shè)快車道數(shù)字圖書館
家校通
多媒體教室
遠(yuǎn)程教育
校園一卡通
校校通
校園廣播電視
教育信息化學(xué)術(shù)會(huì)議長(zhǎng)江學(xué)者信息科學(xué)學(xué)術(shù)論壇6月6日召開(kāi)
下一代互聯(lián)網(wǎng)示范工程CNGI工程技術(shù)論壇6月召開(kāi)
2007(第三屆)教育行業(yè)信息安全大會(huì)暨校園網(wǎng)安全應(yīng)急響應(yīng)機(jī)制建設(shè)研討會(huì)通知
2007中國(guó)教學(xué)儀器設(shè)備分會(huì)科研課題申報(bào)
第29屆全國(guó)高教儀器展五月在哈爾濱開(kāi)展
專題報(bào)道
2007年第三屆教育行業(yè)信息安全大會(huì)
家校通:攜手托起明天的太陽(yáng)
中國(guó)教育和科研計(jì)算機(jī)網(wǎng)版權(quán)與免責(zé)聲明
①凡本網(wǎng)未注明稿件來(lái)源的所有文字、圖片和音視頻稿件,版權(quán)均屬本網(wǎng)所有,任何媒體、網(wǎng)站或個(gè)人未經(jīng)本網(wǎng)協(xié)議授權(quán)不得轉(zhuǎn)載、鏈接、轉(zhuǎn)貼或以其他方式復(fù)制發(fā)表。已經(jīng)本網(wǎng)協(xié)議授權(quán)的媒體、網(wǎng)站,在下載使用時(shí)必須注明"稿件來(lái)源:中國(guó)教育和科研計(jì)算機(jī)網(wǎng)",違者本網(wǎng)將依法追究責(zé)任。
②本網(wǎng)注明稿件來(lái)源為其他媒體的文/圖等稿件均為轉(zhuǎn)載稿,本網(wǎng)轉(zhuǎn)載出于非商業(yè)性的教育和科研之目的,并不意味著贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性。如轉(zhuǎn)載稿涉及版權(quán)等問(wèn)題,請(qǐng)作者在兩周內(nèi)速來(lái)電或來(lái)函聯(lián)系。 版權(quán)所有:中國(guó)教育和科研計(jì)算機(jī)網(wǎng)網(wǎng)絡(luò)中心 Copyright?1994-2007 CERNIC,CERNET 京ICP備020072
關(guān)于假冒中國(guó)教育網(wǎng)的聲明 | 有任何問(wèn)題與建議請(qǐng)聯(lián)絡(luò):Webmaster@staff.cernet.com
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -