$ sudo apt-get install ppp pppoe
Edit /etc/ppp/pppoe-server-options with the following lines:
logfile /var/log/log.pppoe
require-pap #different authentication protocols are allowed
require-chap
lcp-echo-interval 20 #pppd will send an LCP echo-request frame every n seconds to detect if the remote peer is connected at the moment
lcp-echo-failure 3 #if n LCP requests failed, the session will be terminated
ms-dns 192.168.0.1 #this DNS server ip will sent to client during the session opening
noipx #do not accept IPX protocol inside the session
nobsdcomp #no data compression *
noipdefault #do not accept users manual IP address
lock
Provide pppoe-server with the acceptable user names and their passwords in the /etc/ppp/chap-secrets ** config:
# Secrets for authentication using CHAP
# client server secret IP addresses
“login1″ * “password1″ 10.0.0.9
“login2″ * “password2″ *
You can set ‘*’ symbol in the “IP addresses” column (the IP address will be given from the -R pppoe-server option) or a static IP.
Start pppoe-server process:
$ sudo pppoe-server -C myconcentrator -L 10.0.0.1 -R 10.0.0.2-20
- -C param defines the PPPoE concentrator name
- -L is the server IP address
- -R defines the clients IP addresses pool
Other options are:
- -I interface : the interface to listen on, default is eth0
- -N number : number will be the max amount of the sessions at one time; default is 64
- -O file : config file, default is /etc/ppp/pppoe-server-options
Esthetes can optionally use pppstatus to view some ppp stats in real time.
$ sudo apt-get install pppstatus
——————
* traffic compression requires another part of the server cpu and ram resources; by the way, pppoe-server is not an ideal solution in the high load environments due to a rather slow perfomance
** chap-secrets config contains login data for CHAP auth method, you can also use /etc/ppp/pap-secrets config for PAP

