ubuntu下PPPOE环境搭建

1、安装pppoe-server
sudo apt-get install pppoe
pppoe-server -h 命令查看软件版本

2、配置服务器
在 /etc/ppp 目录下编辑文件:

/etc/ppp/options
找到 # ms-dns 去掉注释,改为实际可用的 DNS 服务器地址,如 114.114.114.114,或8.8.8.8 等通用 DNS;
注释+pap,取消注释-pap;
取消注释+chap,注释-chap.

PAP 和 CHAP 为两种不同的认证协议。

vi  /etc/ppp/chap-secrets
123  *   123   *
表示用户名为123,服务器名为任意,密码为123,IP为任意的IP

/etc/ppp/pppoe-server-options
此文件不存在话就创建,添加以下内容:
auth
require-chap
logfile /var/log/pppd.log


3、设置IP策略
开启IP转发功能
了解 PPPoE 协议的同学都知道,其接入控制的主要方式就是通过对IP数据包的封装再转发。所以要配置 PPPoE 服务器必须要开启IP转发功能。

打开 /etc/sysctl.conf 文件,找到 net.ipv4.ip_forward=1 所在行,取消该行的注释,随后运行 sudo sysctl -p 即可打开 IP 转发功能。

配置iptables的IP策略
该步骤需要在超级用户权限下进行:


运行:

iptables -A POSTROUTING -t nat -s 200.200.156.0/24 -j MASQUERADE

其中 200.200.156.0/24 为实际的网络地址,需要根据自己的实际情况填写。如上图,网卡ens33的IP未200.200.156.117,那么这里可以设置为200.200.156.0/24

运行 PPPoE 服务器

pppoe-server -I ens33 -L 200.200.156.117  -R 200.200.156.118 -N 10

其中:

-I 参数为网络端口名称,可以使用 ifconfig 命令查看当前工作的端口。

-L 参数为一个PPP连接中,PPPoE服务器的IP地址,即当前 Ubuntu 服务器的地址。
-R 参数为当有客户连接到服务器上时,从哪个IP地址开始分配。
-N 参数为至多可以有多少个客户同时连接到当前服务器上。
注:每次重启后需要重新运行此命令,或将此命令设为开机脚本。

pppoe-server -I eth0 -L 172.168.0.1 -R 172.168.0.210 -N 20

-L 172.168.0.1 指定pppoe服务器的ip地址。(注意:此IP地址不是网卡的IP地址,而是PPPOE服务器的虚拟IP,和网卡eth0的地址无关,实际网卡eth0没有IP也可以)
-R 172.168.0.210 pppoe服务器分配给客户端的IP地址,从172.168.0.210开始,递增。
-N 20 指定最多可以连接pppoe服务器的客户端数量

4、添加开机自启动

ubuntu 20.04 | 设置开机启动脚本
  1. 编辑 rc-local.service 文件

sudo chmod 777 /lib/systemd/system/rc-local.service
sudo vi /lib/systemd/system/rc-local.service
在 r c − l o c a l . s e r v i c e rc-local.servicerc−local.service 文件尾部添加以下内容:

[Install]
WantedBy=multi-user.target
Alias=rc-local.service

2. 编辑 rc.local 文件
编辑 r c . l o c a l rc.localrc.local 文件并添加要开机执行的脚本,第一行#!/bin/sh,尾行exit 0。(u b u n t u 18.04 ubuntu18.04ubuntu18.04 版本之后默认没有 / e t c / r c . l o c a l /etc/rc.local/etc/rc.local 文件,需要自己创建)

sudo vi /etc/rc.local

添加下列内容:

#!/bin/sh
echo "看到这行字,说明添加自启动脚本成功。" > /usr/local/test.log
# 中间这一段就是脚本的内容,例如:sudo ssr start
pppoe-server -I ens33 -L 200.200.156.117  -R 200.200.156.118 -N 10
#下面这条需要加上,不然拨号后出不去外网
iptables -A POSTROUTING -t nat -s 200.200.156.0/24 -j MASQUERADE
exit 0

给 r c . l o c a l rc.localrc.local 文件加上权限。

sudo chmod +x /etc/rc.local

3. 创建软链接
在 / e t c / s y s t e m d / s y s t e m /etc/systemd/system/etc/systemd/system 目录下创建软链接。u b u n t u ubuntuubuntu 创建软链接类似于 w i n d o w s windowswindows 下创建快捷方式。

# 创建方式:ln -s 原目录 映射目录

sudo ln -s /lib/systemd/system/rc-local.service /etc/systemd/system/

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值