找回密码
 立即注册
查看: 34385|回复: 0

Openwrt安装PPTP服务

[复制链接]
发表于 2012-8-24 14:21:10 | 显示全部楼层 |阅读模式
opkg update
opkg install pptpd
opkg install kmod-mppe
(一)1.PPTP需要PPP支持,虽然系统本身有PPP功能,但它并不支持MPPE,所以需要安装kmod-mppe组件

(二)修改配置文件
配置pptpd

#vi /etc/pptpd.conf
--------------------------------------------------------------
#debug
option /etc/ppp/options.pptpd
speed 115200
stimeout 10
localip 10.0.0.1   
remoteip 10.0.0.2-254
#localip & remoteip are not needed, ip management is done by pppd
--------------------------------------------------------------

#vi /etc/ppp/options.pptpd
--------------------------------------------------------------
#debug
#logfile /tmp/pptp-server.log
172.16.1.1:
auth
name "pptp-server"
lcp-echo-failure 3
lcp-echo-interval 60
default-asyncmap
mtu 1482
mru 1482
nobsdcomp
nodeflate
#noproxyarp
#nomppc
mppe required,no40,no56,stateless
require-mschap-v2
refuse-chap
refuse-mschap
refuse-eap
refuse-pap
#ms-dns 59.51.78.210
#plugin radius.so
#radius-config-file /etc/radius.conf


--------------------------------------------------------------
注:一般只需修改ms-dns


#vi /etc/ppp/chap-secrets
--------------------------------------------------------------
#USERNAMNAME PROVIDER PASSWORD IPADDRESS
username pptp-server password 10.0.0.20
vpn * vpn *
--------------------------------------------------------------
每行一个用户信息,分别采用以上格式,用""引用,虽然是明文,但最好设置让此文件非属主不能够读
如果一个用户分配一个固定ip,则可以进一步进行行为控制,方便你的管理

开启NAT转发

iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -j MASQUERADE
启动PPTPD
/etc/init.d/pptpd start

到这就完成了PPTP服务搭建
______________________________________________________________________________________________________

1. 编辑 /etc/pptpd.conf 文件,确定本地VPN服务器的IP地址和客户端登录后分配的IP地址范围。pptpd.conf是PPTP服务PPTPD运行时使用的配置文件,常用选项如下(#号后是选项说明):
option /etc/ppp/options.pptpd #PPP组件将使用的配置文件
#stimeout 10 #开始PPTP控制连接的超时时间,以秒计
debug #把所有debug信息记入系统日志/var/log/messages
localip 192.168.0.1 #服务器VPN虚拟接口将分配的IP地址
remoteip 192.168.1.254 #客户端VPN连接成功后将分配的IP,如果是地址范围可表示为192.168.1.200-234的形式

vi /etc/pptpd.conf
option /etc/ppp/options.pptpd
stimeout 10
localip 10.0.0.1   
remoteip 10.0.0.2-254
#localip & remoteip are not needed, ip management is done by pppd

2. 编辑 /etc/ppp/options.pptpd 文件,它是PPP功能组件pppd将使用的配置文件,由于PPTP VPN的加密和验证都与PPP相关,所以PPTP的加密和验证选项都将在这个配置文件中进行配置。
vi /etc/ppp/options.pptpd
lock
debug
name vpn1
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
#require-mppe-128
proxyarp
3. 编辑 /etc/ppp/chap-secrets文件,在此配置能够连接到VPN服务器的用户、密码和IP等信息:

vi /etc/ppp/chap-secrets
#USERNAMNAME PROVIDER PASSWORD IPADDRESS
username * password *

(三)启动PPTP服务
pptpd               
killall pptpd 关闭pptp服务
用 #netstat –an命令查看,TCP 1723端口是否处于监听状态。
(四)防火墙配置
要让外部用户能连接PPTP VPN,还需要在防火墙中加入以下规则(也就是服务器的1723端口和47端口打开,并打开GRE协议):
(五)在PPTP服务器上开启NAT服务,以便于客户端上网
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -j MASQUERADE

配置文件为:
vi /etc/pptpd.conf
ppp /usr/sbin/pppd             ###指名了pppd的所在
    option /etc/ppp/pptpd-options ###pptpd在ppp下的配置文件
    logwtmp                        ####使用/var/log/wtmp记录客户连接和断开
    localip 10.0.0.1           ###localip是pptpd的对外服务的ip,也就是客户端需要拨号的ip
    remoteip 10.0.0.2-254      ###remoteip是拨号服务器分配给拨号用户的ip ,可以用-表示ip范围
                                   ###/etc/ppp下的配置文件
vi /etc/ppp/pptpd-options
name pptpd                    #VPN服务器的名字
    refuse-pap                    #拒绝pap身份验证
    refuse-chap                   #拒绝chap身份验证
    refuse-mschap                 #拒绝mschap身份验证#
    require-mschap-v2             #注意在采用mschap-v2身份验证方式时可以同时使用MPPE进行加密 #
    require-mppe-128          #使用 128-bit MPPE 加密#
    proxyarp                      #启动ARP代理,如果分配给客户端的IP地址与内网网卡在一个子网就需要启用ARP代理
    nodefaultroute
    debug                         #如上,把信息写入系统日志
    dump
    logfile /var/log/pptpd.log    #日志存放的路径#
    lock                          #锁定PTY设备文件
    nobsdcomp
vi /etc/ppp/chap-secrets添加用户、设置密码
# Secrets for authentication using CHAP
    # client server secret IP addresses
    vpn * 123456 *    ##用户名:vpn 密码:123456
   
重启pptpd服务
    /etc/init.d/pptpd restart



Openwrt安装PPPOE-Server服务

Step1.安装rp-pppoe-server

opkg update
opkg install rp-pppoe-server



Step2.配置/etc/ppp/pppoe-server-options
vi /etc/ppp/pppoe-server-options

--------------------------------------------------------------
# PPP options for the PPPoE server
# LIC: GPL
require-pap
#login
auth
mru 1480
mtu 1480
lcp-echo-interval 10
lcp-echo-failure 2
--------------------------------------------------------------




Step3.配置/etc/ppp/pap-secrets
这个文件配置验证时的帐号密码的。
vi /etc/ppp/chap-secrets

--------------------------------------------------------------
#USERNAME PROVIDER PASSWORD IPADDRESS
pppoe *    pppoe *
test     *   test      10.0.1.2
--------------------------------------------------------------



Step4.设置开机自启动

vi /etc/init.d/pppoe-server
--------------------------------------------------------------
#!/bin/sh /etc/rc.common
# Copyright (C) 2006 OpenWrt.org
START=50

DEFAULT=/etc/default/pppoe-server

start() {
/usr/sbin/pppoe-server -k -T 60 -I br-lan -N 100 -L 10.0.1.1 -R 10.0.1.2
cp -f /etc/ppp/pppoe-server-options.conf /etc/ppp/pppoe-server-options
iptables -t nat -A POSTROUTING -s 10.0.1.0/24 -j MASQUERADE
}

stop() {
killall pppoe-server
}
--------------------------------------------------------------

Step5.运行pppoe-server
chmod +x /etc/init.d/openvpn-server
/etc/init.d/pppoe-server enable

/etc/init.d/pppoe-server start



Step6.拨号
所有配置已经完成,接下来就可以拨号了。


pppoe-server参数

-L: 指定PPPOE服务器的IP地址
-R: 指定PPPOE拨入服务器分配给客户端的IP地址段
-N: 允许客户端同时拨入的数量(默认是64 最大是65534)
-k: 使用内核方式(不过好象无法使用)


root@OpenWrt:/etc# pppoe-server -help
Usage: pppoe-server [options]
Options:
   -I if_name     -- Specify interface (default eth0.)
   -T timeout     -- Specify inactivity timeout in seconds.
   -C name        -- Set access concentrator name.
   -m MSS         -- Clamp incoming and outgoing MSS options.
   -L ip          -- Set local IP address.
   -l             -- Increment local IP address for each session.
   -R ip          -- Set start address of remote IP pool.
   -S name        -- Advertise specified service-name.
   -O fname       -- Use PPPD options from specified file
                     (default /etc/ppp/pppoe-server-options).
   -p fname       -- Optain IP address pool from specified file.
   -N num         -- Allow 'num' concurrent sessions.
   -o offset      -- Assign session numbers starting at offset+1.
   -f disc:sess   -- Set Ethernet frame types (hex).
   -s             -- Use synchronous PPP mode.
   -k             -- Use kernel-mode PPPoE.
   -u             -- Pass 'unit' option to pppd.
   -r             -- Randomize session numbers.
   -d             -- Debug session creation.
   -x n           -- Limit to 'n' sessions/MAC address.
   -P             -- Check pool file for correctness and exit.
   -h             -- Print usage information.

PPPoE-Server Version 3.10, Copyright (C) 2001-2006 Roaring Penguin Software Inc.
PPPoE-Server comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under the terms of the GNU General Public License, version 2
or (at your option) any later version.
http://www.roaringpenguin.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|第一站论坛 ( 蜀ICP备06004864号-6 )

GMT+8, 2024-5-2 10:52 , Processed in 0.085973 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表