& Nbsp; 1. environment server debian2.6.18 authentication server radius + mysql software ppp-2.4.4rp-pppoe-3.8radiusclient 2. setup step 1. Compile the kernel in order to realize PPPoE, first compile the kernel and let the kernel support PPPoE. Compile the kernel. I will not introduce it here
I. environment
Server debian 2.6.18
Authentication Server radius + mysql
Software ppp-2.4.4 rp-pppoe-3.8 (radiusclient)
II. setup steps
1. Compile the kernel
To implement PPPoE, you must first compile the kernel to support PPPoE. Compile the kernel. I will not describe it here. There are a lot of online websites. I believe many people have compiled their own kernels.
2. download and install ppp and pppoe software
(1) install ppp software
The ppp-2.4.4 is used here. after downloading it, unzip it to/usr/src/ppp/
Compile:
Cd/usr/src/ppp/ppp-2.4.4/
./Configure -- prefix =/usr/local/ppp // specify the location of the PPP installation
Make
Maek install
(2) install rp-pppoe
After the rp-pppoe-3.8 is downloaded, decompress it to/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
Specify the rp-pppoe installation location as/usr/local/ppp, load ppp path/usr/src/ppp/ppp-2.4.4
Make
Make install
(3) install radiusclient
This is simple. apt-get install radiusclient directly
But check whether there is a radiusclient.
(4) Create a pppd shortcut
Since my PPP and rp-pppoe are self-compiled and installed in specified paths, the installer will not install pppd to the default system path/usr/bin /, therefore, we need to establish a connection to connect pppd to the default system path.
Ln-s/usr/src/local/ppp/sbin/pppd/usr/bin/pppd
(5) configure pppd
Change/etc/ppp/pppoe. conf. it seems that there is nothing to change, just pay attention
# Ethernet card connected to DSL modem
ETH = eth1
Specify which Nic you want to dial
(6) configure pppoe-server-options
Auth
Refuse-pap
Require-chap
Default-mru
Default-asyncmap
Lcp-echo-interval 60
Lcp-echo-failure 5
Ms-dns x. x
Noipdefault
Noipx
Nodefaultroute
Noproxyarp
Noktune
10.0.0.1: 10.0.0.254
Netmask 255.255.255.255
This is the configuration on my server. For more information, see Configuration instructions.
Refuse pap
Require chap // authentication method
Ms-dns x. x configure the DNS server for the client. The customer will be designated the DNS server.
10.0.0.1: 10.0.0.254
Netmask 255.255.255.255 specify the IP address range allocated after successful PPPoE dialing.
(7) configure options
Asyncmap 0
Auth
Crtscts
Nobsdcomp
Nodeflate
Nopcomp
Plugin/etc/ppp/plugins/radius. so
Radius-config-file/etc/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
Where
Plugin/etc/ppp/plugins/radius. so
Radius-config-file/etc/radiusclient. conf
The two rows specify the location for loading radius. so and the location of the radius-config configuration file. These two are very important because I use radius for authentication.
Check whether there is radius. so in the/etc/ppp/plugins/Directory. if not, COPY one from the installation directory.
Cp/usr/local/ppp/lib/pppd/2.4.4/radius. so/etc/ppp/plugins/
(8) configure/etc/radiusclient. conf
Yes
Auth_order radius
Authserver x: 1812
Acctserverx: 1813
(9) configure/etc/radiusclient/servers
Add the password for communication with the radius server and the server name to the file.
# 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) set IP forwarding
Echo "1">/proc/sys/net/ipv4/ip_forward