在Debian環(huán)境下架設PPPoE服務器方法步驟 |
發(fā)布時間: 2012/7/6 15:02:01 |
一、環(huán)境 服務器debian 2.6.18 認證服務器radius+mysql 軟件ppp-2.4.4 rp-pppoe-3.8 radiusclient
二、架設步驟 1、編譯內核 為了能實現PPPoE,要先編譯內核,讓內核支持PPPoE。就在對內核進行編譯。這里就不做介紹了,網上很多,相信很多人也編譯過自己的內核。
2、下載、安裝ppp,pppoe軟件 (1)安裝ppp軟件 這里用的是ppp-2.4.4,下載后,解壓到/usr/src/ppp/ 編譯: cd /usr/src/ppp/ppp-2.4.4/ ./configure --prefix=/usr/local/ppp //指定PPP安裝的位置 make maek install
(2)安裝rp-pppoe 也是將rp-pppoe-3.8下載后,解壓到/usr/src/ppp/下 cd /usr/src/ppp/rp-pppoe-3.8/src ./configure --prefix=/usr/local/ppp --enable-plugin=/usr/src/ppp/ppp-2.4.4 指定rp-pppoe的安裝位置為/usr/local/ppp ,加載ppp的路徑/usr/src/ppp/ppp-2.4.4 make make install
(3)安裝radiusclient 這個很簡單,直接apt-get install radiusclient 不過先查找一下有沒有radiusclient
(4)創(chuàng)建pppd的快捷方式 由于我的PPP和rp-pppoe是自己編譯和指定路徑安裝的,所以安裝程序不會將pppd安裝到系統(tǒng)默認的系統(tǒng)路徑/usr/bin/,所以這里我們要建立一個連接,將pppd 連接到系統(tǒng)默認的路徑中去 ln -s /usr/src/local/ppp/sbin/pppd /usr/bin/pppd
(5)配置pppd 更改/etc/ppp/pppoe.conf ,這個好象沒有什么地方需要更改的,只是要注意一下 # Ethernet card connected to DSL modem ETH=eth1 這里需要指定你要進行撥號的網卡是哪一張
(6)配置pppoe-server-options
auth refuse-pap require-chap
default-mru default-asyncmap lcp-echo-interval 60 lcp-echo-failure 5 ms-dns x.x.x.x noipdefault noipx nodefaultroute noproxyarp noktune 10.0.0.1:10.0.0.254 netmask 255.255.255.255
這是我服務器上的配置,請參見配置說明,需要說明的是 refuse pap require chap //認證方式
ms-dns x.x.x.x 在這里為客戶端配置DNS服務器?蛻魧⒈恢付―NS服務器這里設定的DNS
10.0.0.1:10.0.0.254 netmask 255.255.255.255 這里指定PPPoE撥號成功后的分配的IP地址范圍
(7)配置options
asyncmap 0 auth crtscts nobsdcomp nodeflate nopcomp plugin /etc/ppp/plugins/radius.so radius-config-file /etc/radiusclient/radiusclient.conf defaultroute local lock hide-password modem proxyarp lcp-echo-interval 30 lcp-echo-failure 4 ipcp-accept-local ipcp-accept-remote noipx idle 3600
其中 plugin /etc/ppp/plugins/radius.so radius-config-file /etc/radiusclient/radiusclient.conf
這兩行指定加載radius.so的位置和radius-config配置文件的位置,這兩個很重要,因為我采用的radius 進行認證。
檢查/etc/ppp/plugins/目錄下有沒有radius.so,如果沒有,從安裝目錄下COPY一個過來就可以了
cp /usr/local/ppp/lib/pppd/2.4.4/radius.so /etc/ppp/plugins/
(8)配置/etc/radiusclient/radiusclient.conf
需要更改是
auth_order radius authserver x:1812 acctserver x:1813
(9)配置/etc/radiusclient/servers
在文件中添加與 radius服務器之間進行通信的密碼和服務器名
# Make sure that this file is mode 600 (readable only to owner)! # #Server Name or Client/Server pair Key #---------------- --------------- #portmaster.elemental.net hardlyasecret #portmaster2.elemental.net donttellanyone msrv whereknife
(10)設置IP轉發(fā)
echo "1" > /proc/sys/net/ipv4/ip_forward 本文出自:億恩科技【1tcdy.com】 |