版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、軟件需求: 紅帽自帶的:rp-pppoe,ppp,freeradius,freeradius-mysql,mysql,mysql-devel,mysql-server,openssl。 另需:freeradius-2.1.3以及ppp2.4.4的源代碼包。 有一點(diǎn)要說明,freeradius需要openssl 庫,所以如果系統(tǒng)里沒安裝的話,還是要事先安裝一下的。第一部分:實(shí)現(xiàn)簡單的pppoe撥號(hào)服務(wù) 檢查系統(tǒng)上的rp-pppoe以及ppp軟件是否安裝,命令: #rpm-qrp-pppoeppp 如果安裝則會(huì)有顯示軟件包的名稱,若未安裝,找到安裝盤上的相關(guān)rpm包安裝。 配置 /etc/ppp/
2、options lockcrtsctsnobsdcompnodeflatenopcomp然后配置/etc/ppp/pppoe-server-options文件,內(nèi)容為: #PPPoptionsforthePPPoEserver #LIC:GPLauthrequire-chapdefault-mrudefault-asyncmaplcp-echo-interval 60lcp-echo-failure 5ms-dns 0noipdefaultnoipxnodefaultrouteproxyarpnoktunelogfile /var/log/pppd.log 文件內(nèi)容不做解釋,可以通過manpp
3、pd查尋相關(guān)幫助。此時(shí)pppoe服務(wù)器從/etc/ppp/chap-secrets文件中讀取驗(yàn)證的用戶名和密碼信息,此文件格式為: #SecretsforauthenticationusingCHAP #clientserversecretIPaddresses aaa*aaa* 想要多添加用戶,再加入新行即可。 然后可以啟動(dòng)pppoe服務(wù)了,命令是: # pppoe-server -I eth1 -L 4 -R -N 10我簡單介紹一下這條命令中的各個(gè)參數(shù)的意思。I:指定響應(yīng)PPPOE請求的端口,本例中是在eth1口上。L:PPPOE服務(wù)器的IP地址,這是客戶端所填的PPPOE服務(wù)器的地址。
4、R:這是分配給客戶端的地址池起始地址,本例中從開始N:地址池的IP地址遞增幾個(gè),本例中添增10,也就是從開始,到4結(jié)束。可以看出我們在LINUX中將以上步驟都完成了,也就是說PPPOE服務(wù)準(zhǔn)備好了,客戶端PPPOE撥號(hào),順利的話就可以撥號(hào)成功了。當(dāng)然現(xiàn)在客戶端還不能上網(wǎng),因?yàn)镻PPOE服務(wù)器還沒有啟用NAT,我們用IPTABLES軟件來實(shí)現(xiàn),寫一個(gè)這樣的腳本即可:echo 1 /proc/sys/net/ipv4/ip_forwardiptables -t nat -A POSTROUTING -s /24 -o wan -j SNAT -to 5第一行的作用是啟用IP轉(zhuǎn)發(fā),第二行是啟動(dòng)IPT
5、ABLES進(jìn)行NAT轉(zhuǎn)換,下面是對各個(gè)參數(shù)的解釋-t nat表示進(jìn)行NAT轉(zhuǎn)化-s /24表示源地址為/24這個(gè)網(wǎng)段-j SNAT -to 5表示將源地址都轉(zhuǎn)化成5這個(gè)外網(wǎng)地址啟動(dòng)NAT以后,這臺(tái)PPPOE服務(wù)器就功能完整了,客戶端不僅可以撥通服務(wù)器,撥通后還可以上網(wǎng)。注:紅帽自帶的pppoe服務(wù)器,在RHEL5至RHEL5U2的版本上與系統(tǒng)的syslog服務(wù)有沖突??涩F(xiàn)關(guān)閉syslog服務(wù),讓pppoe服務(wù)器正常運(yùn)行。 第二部分:讓pppoe服務(wù)使用freeradius服務(wù)器進(jìn)行驗(yàn)證 1)首先更改/etc/ppp/pppoe-server-options,添加一行設(shè)置: #PPPoption
6、sforthePPPoEserver #LIC:GPLauthrequire-chapdefault-mrudefault-asyncmaplcp-echo-interval 60lcp-echo-failure 5ms-dns 0noipdefaultnoipxnodefaultrouteproxyarpnoktuneplugin /usr/lib/pppd/2.4.4/radius.soradius-config-file /etc/ppp/radiuds/radiusclient.conflogfile /var/log/pppd.log表示讓pppoe-server在運(yùn)行時(shí)加入pppd
7、的radius查檢,可以讓pppoe服務(wù)通過freeradius來驗(yàn)證和記賬。 添加此行之后,可以創(chuàng)建/etc/ppp/radiuds/目錄,創(chuàng)建完之后,我們需要使用一下ppp的源代碼,因?yàn)榧t帽沒有給我們提供相應(yīng)的配置文件。 解壓ppp的源代碼目錄: #wget /pub/ppp/ppp-2.4.4.tar.gz#tarxvfzppp-2.4.4.tar.gz #cdppp-2.4.4 #cdpppd/plugins/radius/etc/ #cp*/etc/ppp/radiuds/ 2) 這個(gè)目錄下有我們需要的所有相關(guān)的配置文件,其中最重要的是/etc/ppp/radiuds/radiusc
8、lient.conf,我們先打開此文件配置,其內(nèi)容為(已去掉注釋): auth_order radiuslogin_tries 4login_timeout 60nologin /etc/nologinissue /etc/ppp/radiuds/issueauthserver localhost:1812acctserver localhost:1813servers /etc/ppp/radiuds/serversdictionary /etc/ppp/radiuds/dictionarylogin_radius /usr/local/sbin/login.radiusseqfile /v
9、ar/run/radius.seqmapfile /etc/ppp/radiuds/port-id-mapdefault_realmradius_timeout10radius_retries3login_local /bin/login 3) 另外,還需更改此目錄下的servers文件,此文件用來指定讀取的radius服務(wù)器的主機(jī)名稱以及key值(需要在freeradius配置中指定)。編輯 /etc/ppp/radius/servers ,設(shè)定radius 服務(wù)器的位置 localhost 123 / 這里的123是我前面設(shè)置的nas(localhost)訪問radius服務(wù)器的密碼4)
10、編輯/etc/ppp/radius/dictionary ,修改一些路徑設(shè)置,主要是最后一個(gè)dictionary.microsoft 的路徑設(shè)置INCLUDE /etc/ppp/radiuds/dictionary.microsoft#INCLUDE /etc/ppp/radiuds/dictionary.ascend#INCLUDE /etc/ppp/radiuds/dictionary.merit#INCLUDE /etc/ppp/radiuds/pat5) 此時(shí)pppoe服務(wù)已經(jīng)可以通過radius認(rèn)證了。然后進(jìn)行freeradius的配置。 首先檢查freeradius是否安裝: rp
11、m-qfreeradiusfreeradius-mysql 其中freeradius-mysql包使用來讓freeradius連接mysql數(shù)據(jù)庫的,本部分還用不到。 首先打開/etc/raddb/clients.conf配置客戶端訪問控制,文件內(nèi)容如下: client secret=123 shortname=localhost nastype=othe 表示客戶端之允許從的ip登錄radius服務(wù),并且需要驗(yàn)證的secret為123,就是在上面的servers文件中需要配置的信息。若要實(shí)現(xiàn)可以從別的機(jī)器訪問,請參考注釋獲得幫助。 6) 然后配置naslist文件,內(nèi)容為: #NASName
12、ShortNameType #- #pm1.NYlivingston #pm1.LAlivingston localhostlocalportslave 此文件用來配置記錄有哪些指定的nas服務(wù)器需要使用radius進(jìn)行記賬?,F(xiàn)在指定的是localhost。 7)主控配置文件是radiusd.conf,目前沒有需要改的,可通過注釋學(xué)習(xí)其中配置方法。此文件主要是用來指定freeradius服務(wù)器默認(rèn) 的驗(yàn)證和記賬方式。我們目前使用本地的文件方式,就是/etc/raddb/users文件,在其中添加我們需要提供給pppoe服務(wù)認(rèn)證的用戶信息,內(nèi) 容如下(用戶名前面一定不能有空格): aaaAuth
13、-Type:=Local,Simultaneous-Use:=1,User-Password=aaa Service-Type=Framed-User, Framed-Protocol=PPP, Framed-IP-Address=, Framed-IP-Netmask=55 其中Simultaneous-Use:=1字段用來設(shè)置每個(gè)用戶同時(shí)登錄的個(gè)數(shù)。所有字段信息都在freeradius的源代碼中有文檔給予解釋。另外要注意,添加的用戶字段應(yīng)寫在文件DEFAULT字段前面添加,否則可能不會(huì)生效。 8) 為了讓radius能正確地調(diào)用mysql,還要指定一下庫的位置: echo /usr/lib
14、 /etc/ld.so.confldconfig9) 都配置完畢后,可以通過radiusd-X命令以排錯(cuò)方式啟動(dòng),此時(shí)再啟動(dòng)pppoe-server,用客戶端撥號(hào)驗(yàn)證一下,檢查pppoe服務(wù)是否成 功通過freeradius來驗(yàn)證用戶。如果成功,這一部分完成。可通過serviceradiusdrestart來正常啟動(dòng)radius服務(wù)。radiusd -X radtest aaa aaa localhost 0 123 看到 Access-Accept 之類的字樣就表示OK了。 這時(shí)可以正式啟動(dòng)radiusd第三部分:配置freeradius從mysql數(shù)據(jù)庫讀取用戶信息 1) 首先更改/etc
15、/raddb/radiusd.conf,首先將$INCLUDE$confdir/sql.conf字段這行原有的注釋去掉,然后編輯/etc/raddb/radiusd.conf 使其支持mysql認(rèn)證; authorize preprocesschapmschapsuffixsql.accounting .#radutmp (因?yàn)槲乙褂肧imultaneous-Use:=1(同一用戶一次只能登陸一臺(tái)機(jī)器),用它在radiusd意外結(jié)束會(huì)有問題,所以禁用)sql.session #radutmp (同上) sql2)需要更改sql.conf中的設(shè)置,主要是設(shè)置讀取的mysql服務(wù)器的相關(guān)信息,可
16、更改如下一些字段: driver = rlm_sql_mysqlserver=localhost數(shù)據(jù)庫服務(wù)器 login=mysql_username數(shù)據(jù)庫用戶 password=mysql_password 數(shù)據(jù)庫密碼 radius_db=radius數(shù)據(jù)庫名稱 3)當(dāng)然前提是你要現(xiàn)把mysql服務(wù)設(shè)置好,設(shè)置方法是:先處理一下mysql的庫,freeradius默認(rèn)查找libmysqlclient_r.so,可是mysql默認(rèn)為 libmysqlclient.so,內(nèi)容完全一樣,做個(gè)鏈接即可:(至關(guān)重要,否則啟動(dòng)freeradius的時(shí)候會(huì)提示找不到 rlm_sql_mysql.so:Co
17、uld not link driver rlm_sql_mysql: file not found) # echo /usr/lib/mysql /etc/ld.so.conf # ldconfig # cd /usr/lib/mysql/ # ln -s libmysqlclient.so.15.0.0 libmysqlclient_r.so先啟動(dòng)你的mysqld: servicemysqldstart 然后設(shè)置root帳戶密碼: mysqladminurootppassword12345 創(chuàng)建radius數(shù)據(jù)庫 mysqladminurootp123456createradius 建立my
18、sql的數(shù)據(jù)庫raius的表,我們可以通過軟件已經(jīng)給出的sql腳本導(dǎo)入數(shù)據(jù)庫: mysql-urootp123456radius/usr/share/doc/freeradius-1.1.3/examples/mysql.sql 這樣,所有radius需要的數(shù)據(jù)庫和表都已經(jīng)建立好了。 此時(shí)可以添加測是帳號(hào)來測試是否正常工作。具體方法就不在這說了。我們待會(huì)要使用freeradius源代碼自帶的dialup_admin來進(jìn)行數(shù)據(jù)庫的管理工作,那是一個(gè)基于web的管理界面,使用php編寫,要比直接用sql語句方便的多。 這里要注意的是,如何在數(shù)據(jù)庫里添加限制沒用戶同時(shí)登錄個(gè)數(shù)的限制,比如,我先用sq
19、l語句添加一個(gè)測試用戶,然后來限制他的登錄個(gè)數(shù),語句是: mysql-urootp123456radius insert into radgroupreply (groupname,attribute,op,value) values (user,Auth-Type,:=,Local);insert into radgroupreply (groupname,attribute,op,value) values (user,Service-Type,=,Framed-User);insert into radgroupreply (groupname,attribute,op,value) v
20、alues (user,Framed-Protocol,=,ppp);insert into radgroupcheck (groupname, attribute, op, value) values (user, Auth-Type, :=, Local);insert into radgroupcheck (groupname, attribute, op, value) values (user, Simultaneous-Use, :=, 1);然后加入用戶信息:insert into radcheck (username,attribute,op,value) values (bb
21、b,User-Password,=,bbb);然后把用戶加到組里:insert into usergroup(username,groupname) values(bbb,user);這樣就給我們的數(shù)據(jù)庫中添加了一個(gè)帳戶測試帳戶bbb,并讓bbb帳戶屬于user組。 然后我們可以通過設(shè)置user組的檢查屬性來設(shè)置此組帳戶的登錄數(shù)限制,以后只要用戶加入這個(gè)組,登錄數(shù)都不能超過1次: 好了,限制完成。我們現(xiàn)在可以使用bbb帳戶登錄,并測試是否是通過mysql數(shù)據(jù)庫驗(yàn)證的。并且可以檢查是不是只能登錄一個(gè)。 第四部分:使用dialup_admin來管理radius服務(wù)器 服務(wù)器搭建成功后如果需要web
22、管理,freeradius自帶了一個(gè)web管理程序dialup_admin。 首先測試Apache與PHP安裝的正確性。Apache的WEB目錄在/var/www/html下首先測試Apache,在瀏覽器輸入Http:/下看到Apache界面表示正常。 編輯一個(gè)PHP測試文件,內(nèi)容為,保存為phpinfo.php。在瀏覽器輸入Http:/phpinfo.php看到php相關(guān)信息頁面,表示php運(yùn)作正常。 直接將freeradius源代碼中的dialup_admin/文件夾全部拷貝到Apache網(wǎng)頁目錄下/etc/local下。 修改dialup_admin/conf/下的admin.conf文
23、件中的如下參數(shù): sql_type:mysql sql_server:localhost/sql地址 sql_port:3306/默認(rèn)端口 sql_username:root sql_password:123456/密碼 sql_database:radius/數(shù)據(jù)庫名 general_base_dir:/var/www/html/dialup_admin/dialup_admin主目錄general_radiusd_base_dir: /usr/sbin/radiusdgeneral_domain:/這個(gè)可改也可不改,沒什么影響,改了還看點(diǎn)而已 general_radius_server_a
24、uth_proto:chap/將pap改成chap general_encryption_method:clear/將crypt改成clear 說明一下,general_encryption_method:clear是必須得改的,否則用web管理界面添加用戶后會(huì)出現(xiàn)密碼 被加密后無法識(shí)別導(dǎo)致認(rèn)證失敗,clear方式是以明文存儲(chǔ)密碼,freeradius默認(rèn)是用明文存儲(chǔ)密碼,兩者要對應(yīng),所以這里要用clear方式。 修改dialup_admin/conf/下的naslist.conf文件如下 nas1_name:nas1.%general_domain nas1_model:Computer/N
25、AS服務(wù)器的類型 nas1_ip:/NAS服務(wù)器的IP地址 nas1_port_num:15 nas1_community:public 其他的通通刪掉或用#號(hào)注釋掉,這樣修改的目的是方便在web管理界面中直觀的看到每個(gè)NAS服務(wù)器連接用戶的情況。 導(dǎo)入相關(guān)數(shù)據(jù)庫表 cd/var/www/html/dialup_admin/sql mysql-urootp123456radiususerinfo.sql mysql-urootp123456radiustotacct.sql mysql-urootp123456radiusmtotacct.sql mysql-urootp123456radiu
26、sbadusers.sql dialup_admin用的是php3格式的文件,需要web服務(wù)器支持這種格式, 修改/etc/httpd/conf/httpd.conf文件,在此文件最后添加 AddTypeapplication/x-httpd-php.php.html.htm.php3 并在默認(rèn)的主頁目錄下建立一個(gè)指向/usr/local/dialup_admin/htdocs的符號(hào)連接htdocs 保存后重啟httpd服務(wù) servicehttpdrestart 訪問:http:/localhost/htdocs/index.html 能正常打開各頁面就ok了。默認(rèn)是打開的sql調(diào)試模式??梢栽赼dmin.conf中找到sql_debug.把true改為false即可關(guān)閉。第五部分:使用用戶認(rèn)證來管理radius服務(wù)器Apache服務(wù)器已經(jīng)內(nèi)置用戶驗(yàn)證機(jī)制,大家只要適當(dāng)?shù)募右栽O(shè)置,便可以控制網(wǎng)站的某些部分要用戶驗(yàn)證。大家只要跟著我一步步做下來就應(yīng)該能輕松實(shí)現(xiàn)用戶驗(yàn)證。第1步:我們在/var/www/html/dialup_admin/htdocs然后我們編輯httpd.conf添加Alias /radiusadmin /var/www/html/dialup_admin/htdocsOptions Indexes MultiViewsAllowOverrid
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《密封件基礎(chǔ)知識(shí)》課件
- 2024年貴州建設(shè)職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫標(biāo)準(zhǔn)卷
- 單位管理制度集合大全人事管理十篇
- 單位管理制度匯編大全人事管理
- 單位管理制度合并匯編【人員管理】
- 單位管理制度呈現(xiàn)匯編職工管理篇十篇
- 單位管理制度呈現(xiàn)大全人員管理
- 《礦山勞動(dòng)衛(wèi)生》課件
- 《生活中的問題》課件
- 《安全防護(hù)欄標(biāo)準(zhǔn)》課件
- 技能成才強(qiáng)國有我課件模板
- “雙減”背景下小學(xué)數(shù)學(xué)“教、學(xué)、評”一體化的思考與實(shí)踐
- 中外美術(shù)評析與欣賞智慧樹知到期末考試答案章節(jié)答案2024年湖南大學(xué)
- 事業(yè)單位考試《綜合知識(shí)和能力測試》試卷
- 福利住房與購房補(bǔ)貼制度
- 康師傅烏龍茗茶營銷策劃書
- 【川教版】《生命 生態(tài) 安全》四上第13課《預(yù)防凍瘡》課件
- 工廠籌建方案
- UPVC管道安裝施工方法
- 河南省鄭州高新技術(shù)產(chǎn)業(yè)開發(fā)區(qū)2023-2024學(xué)年三年級(jí)上學(xué)期1月期末科學(xué)試題
- 計(jì)算機(jī)基礎(chǔ)理論-進(jìn)制的概念及換算試題及答案
評論
0/150
提交評論