Linux安装PPTP

1、安装PPTP

1.1 检查是否支持PPTP

#返回OK
[root@vpn ~]# modprobe ppp-compress-18 && echo ok
ok

1.2 添加EPEL源

#添加EPEL源
[root@vpn ~]# wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

#安装EPEL
[root@vpn ~]# rpm -ivh epel-release-latest-7.noarch.rpm

1.3 安装PPTP

[root@vpn ~]# yum -y install pptpd ppp

2、配置文件

#将它更改为你的dns服务地址
[root@vpn ~]# vim /etc/ppp/options.pptpd
[root@vpn ~]# tail -2 /etc/ppp/options.pptpd
ms-dns 8.8.8.8
ms-dns 8.8.4.4

3、账户密码

#设置 VPN账号 + 服务类型 + VPN密码 + IP
[root@vpn ~]# vim /etc/ppp/chap-secrets
[root@vpn ~]# cat /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client	server	secret			IP addresses
ywb * 123.123 *

4、设置最大传输单元

[root@vpn ~]# vim /etc/ppp/ip-up
[root@vpn ~]# cat /etc/ppp/ip-up
#!/bin/bash
# This file should not be modified -- make local changes to
# /etc/ppp/ip-up.local instead

PATH=/sbin:/usr/sbin:/bin:/usr/bin
export PATH

LOGDEVICE=$6
REALDEVICE=$1

[ -f /etc/sysconfig/network-scripts/ifcfg-${LOGDEVICE} ] && /etc/sysconfig/network-scripts/ifup-post --realdevice ${REALDEVICE} ifcfg-${LOGDEVICE}

/etc/ppp/ip-up.ipv6to4 ${LOGDEVICE}

[ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local "$@"

ifconfig $1 mtu 1500

echo "$PEERNAME 分配IP: $5 登录IP: $6 登录时间: $(date '+%Y-%m-%d %H:%M:%S')"  >> /var/log/ppp/ip.log

exit 0

5、配置pptp配置文件

[root@vpn ~]# vim /etc/pptpd.conf
[root@vpn ~]# tail -2 /etc/pptpd.conf
# (Recommended)
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

6、打开内核的ip 转发功能

#编辑配置文件
[root@vpn ~]# vim /etc/sysctl.conf
[root@vpn ~]# tail -1 /etc/sysctl.conf
net.ipv4.ip_forward = 1

#使其配置生效
[root@vpn ~]# sysctl -p
net.ipv4.ip_forward = 1

7、设置开机启动

#重启PPTP服务
[root@vpn ~]# systemctl restart pptpd

#配置开机自启
[root@vpn ~]# systemctl enable pptpd.service

8、打开防火墙

[root@vpn ~]# systemctl start firewalld
[root@vpn ~]# systemctl enable firewalld
#开启47及1723端口:
[root@vpn ~]# firewall-cmd --permanent --zone=public --add-port=47/tcp 
[root@vpn ~]# firewall-cmd --permanent --zone=public --add-port=1723/tcp
     
#开启 NAT 转发
[root@vpn ~]# firewall-cmd --permanent --zone=public --add-masquerade
     
#允许gre协议:
[root@vpn ~]# firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p gre -j ACCEPT
[root@vpn ~]# firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -p gre -j ACCEPT
     
#设置规则允许数据包由ens32和ppp+接口中进出
[root@vpn ~]# firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i ppp+ -o ens32 -j ACCEPT
[root@vpn ~]# firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i ens32 -o ppp+ -j ACCEPT
     
#设置转发规则,从源地址发出的所有包都进行伪装,改变地址,由ens32发出:(10.1.1.0内网地址,子网地址前两位)
[root@vpn ~]# firewall-cmd --permanent --direct --passthrough ipv4 -t nat -I POSTROUTING -o ens32 -j MASQUERADE -s 192.168.0.0/16
#重启服务器
[root@vpn ~]# firewall-cmd --reload
[root@vpn ~]# systemctl restart pptpd

9、日志

1、上线日志
vim /etc/ppp/ip-up
 
在[ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local "$@" 后加上
 
echo "$PEERNAME 分配IP: $5 登录IP: $6 登录时间: $(date '+%Y-%m-%d %H:%M:%S')"  >> /var/log/ppp/ip.log
 
2、下线日志
vim /etc/ppp/ip-down
 
在/etc/sysconfig/network-scripts/ifdown-post --realdevice ${REALDEVICE} \
    ifcfg-${LOGDEVICE}
后加上
 
echo "$PEERNAME 下线IP: $5 下线时间: $(date '+%Y-%m-%d %H:%M:%S')" >> /var/log/ppp/ip.log

10、连接

image.png-63.2kB

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值