pppd详解_pppd命令使用详解

======================

关于pppd命令使用

======================

Authentication

----------------

PPP协议对称地允许两端都可以要求对端认证自己。这样,两个不同并相互独立的认证交互过

程发生,这两个认证交互过程可以使用不同的认证协议。

pppd默认接受对端的认证请求,同时不要求对端认证自己本端,但若没有密语,pppd将拒绝对

端认证自己。

pppd将认证时用到的密语保存在密语文件中,对于PAP认证密语文件是/etc/ppp/pap-

secrets,对于CHAP、MS-CHAP、MS-CHAPv2和EAP MD5-Challenge认证密语文件

是/etc/ppp/chap-secrets,对于EAP SRP-SHA1认证密语文件是/etc/ppp/srp-secrets。这些

密语文件格式相同,内容会像选项文件一样被解析为一个个单词。密语文件既保存了pppd认证

对端的密语,也保存了提供给对端认证自己本端的密语。每行有三个域保存一个密语:客户端

名、服务端名和密语。对于PPP服务端,也可在每行后面跟上一组IP地址表,表示指定IP的客

户端才可认证成功。密语以“@”打头表示后续是可以从中读取密语的文件名,客户端名、服

务端名若为“*”表示任意名,IP地址表若为“*”表示所有IP地址。若客户端名为“-”或者

未列出任何IP地址表,表示拒绝所有IP地址客户端的认证。IP地址表以“!”开头表示这些IP

地址的客户端会被拒绝,IP地址表后也可跟上“/”加数字表示子网。

当pppd认证对端时,在密语文件中搜索匹配行,以对端名字匹配客户端名域,以本端名字匹配

服务端域,本端名字默认是本端系统的hostname,若使用domain选项则加上domain name。

当pppd提供密语给对端认证自己本端时,首先需要确认本端的名字,若有user选项使用该选

项,若无此选项默认名字是本端系统的hostname。pppd在密语文件中搜索匹配行,以本端的名

字匹配客户端名域,以对端名字匹配服务端域。在CHAP或EAP认证中,pppd可以从对端发送报

文中确定对端名字,但PAP认证中,pppd只能从remotename选项中确定对端名字,否则使用空

字符串作为对端名字。

当使用PAP认证对端时,对端提供的Password首先与密语文件的密语进行比对,若不匹配,使

用crypt()函数对Password进行加密然后再进行比对,所以密语可以是加密形式。若指定了

papcrypt选项,第一步的未加密情况下的比对步骤将被跳过。

Routing

---------

当IPCP协商成功完成,pppd将设置PPP interface的本地和远端IP地址,这已足够可以创建路

由。与别的机器通信通常需要修改路由表和ARP表,大部分情况下,使用defaultroute和

proxyarp选项就可以了。若不行,就是用/etc/ppp/ip-up脚本。

Scripts

---------

pppd在处理的不同阶段会执行脚步文件,pppd并不等待脚本执行完,脚本以root账户来运行,

并将脚本的标准输入、标准输出、标准错误重定向到/dev/null,参数通过环境变量交换。这

些环境变量如下:

DEVICE:使用的串口设备名

IFNAME:使用的网络接口名

IPLOCAL:本端的IP地址,只有IPCP成功协商才设置该值

The IP address for the local end of the link. This is only set when IPCP has come

up.

IPREMOTE:远端的IP地址,只有IPCP成功协商才设置该值

PEERNAME:对端认证的名字,这仅在对端认证自己的情况下会设置。

SPEED:串口设备波特率

ORIG_UID:运行pppd进程的用户的实际UID

PPPLOGNAME:运行pppd进程的用户的用户名

对于ip-down和auth-down脚本,pppd设置下列环境变量提供连接的统计值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用pppd搭建pppoe服务器,可以按照以下步骤操作: 1. 确保你的Linux服务器上已经安装了pppd和pppoe软件包。你可以使用以下命令安装它们: ``` sudo apt-get install ppp pppoe ``` 2. 编辑 `/etc/ppp/pppoe-server-options` 文件,配置pppoe服务器的选项。你可以根据需要修改以下参数: ``` require-pap # 需要PAP认证 require-chap # 需要CHAP认证 require-mschap # 需要MSCHAP认证 require-mschap-v2 # 需要MSCHAPv2认证 noauth # 不需要认证 lcp-echo-interval 10 # LCP心跳包间隔为10秒 lcp-echo-failure 2 # LCP心跳包失败次数为2 mtu 1492 # 数据包最大传输单元为1492字节 mrpt-interval 5 # MRU和MTU的协商间隔为5秒 ``` 3. 编辑 `/etc/ppp/chap-secrets` 文件,配置用户认证信息。每行代表一个用户的认证信息,格式为: ``` username * password * ``` 其中 `username` 是用户名,`password` 是密码。 4. 编辑 `/etc/ppp/pppoe-server` 文件,配置pppoe服务器的网络接口。找到以下行并取消注释,确保正确配置: ``` pppoe ``` 5. 启动pppoe服务器,使用以下命令: ``` sudo pppoe-server -I eth0 -C username ``` 其中 `eth0` 是服务器的网络接口名称,`username` 是你在 `/etc/ppp/chap-secrets` 文件中配置的用户名。 6. 现在你的pppoe服务器已经搭建完成,可以让客户端使用PPPoE拨号连接到你的服务器。 请注意,这只是一个简单的配置示例,实际环境中可能需要更多的配置和调整。你可以参考pppd和pppoe的文档以获取更详细的信息。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值