centos pptp 单网卡旁挂


pptp安装过程和步骤

这里的场景为PPTP的单网卡模式,即旁挂旁路部署,主要在出口防火墙做1723的端口映射,原因PPTPVPN 拨号纽盾设备体验不好。

系统为最小化安装,centos 6.8,仅仅安装了PPTP 的和必要的服务。


1、验证ppp


用cat命令检查是否开启ppp,一般服务器都是开启的,除了特殊的VPS主机之外。

[root@localhost1 /]# cat /dev/ppp

cat: /dev/ppp: No such device or address

cat出现上面结果,则说明ppp是开启的,可以正常的配置pptp了。

2 安装PPP

先安装epel的扩展源,否则不能进行pptpd的安装和配置文件的更改。

[root@localhost1 /]# yum -y install pptpd

iptables一般情况默认都是系统装好后就已经有了,安装iptables是为了做NAT,让PPTP客户端能够通过PPTP服务器上外网。


4、配置pptp

[root@localhost1 /]# vi /etc/pptpd.conf

在最底下添加下面两行,localip是pptp服务器端IP,remoteip是客户端获取的IP地址范围

localip 172.17.0.100 拨号成功后再VPN 客户端详细信息可以查看。

remoteip 172.17.0-30


5 修改options.pptpd文件


[root@localhost1 /]# vi /etc/ppp/options.pptpd

打开后,找到下面字段,并修改成你想要为VPN用户分配的dns服务器

name pptpd

refuse-pap

refuse-chap

refuse-mschap

require-mschap-v2

require-mppe-128

proxyarp

lock

nobsdcomp

novj

novjccomp

nologfd

ms-dns 114.114.114.114

ms-dns 172.17.9.16 我内网的dns服务器


6 添加vpn的帐号和密码


[root@localhost1 /]# vi /etc/ppp/chap-secrets

一行添加一个账号,每个帐号需要添加的4个字段,分别为:用户名、服务、密码、分配的ip地址(如果IP为*,则表示随机分配,分配范围采用pptp.conf中的设置)


# client server secret IP addresses

hmj pptpd hmj123 *

#kefubu

test pptpd test2017 *

lili pptpd 2017xt *


6、开启ip转发


[root@localhost1 /]# vi /etc/sysctl.conf

把net.ipv4.ip_forward的值改为1,追加即可。找到net.ipv4.ip_forward = 0 改为 net.ipv4.ip_forward = 1

net.ipv4.ip_forward = 1

保存退出,并执行下面命令使内核配置生效:


[root@localhost1 /]# sysctl -p



7、配置iptables转发


[root@localhost1 /]# iptables -t nat -A POSTROUTING -s 172.17.12.0/24 -j SNAT --to-source 172.17.0.100


这条命令是让192.168.100.0这个段的ip地址,可以通过58.33.244.126这个公网IP访问外网。

你需要将192.168.100.0/24替换成你在pptp.conf中设置的ip段和子网掩码,将58.33.244.126替换成你服务器自己的公网ip地址,否则拨上来的用户只能访问内网。


8、启动服务


[root@localhost1 /]# /etc/init.d/pptpd restart \status\stop


将服务配置为开机自动启动


[root@localhost1 /]# chkconfig pptpd on

[root@localhost1 /]# chkconfig iptables on

/etc/init.d/pptpd start

chkconfig --level 35 pptpd on


9 拨号成功后可以看到ppp的隧道口UP.

: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1396 qdisc pfifo_fast state UNKNOWN qlen 3

link/ppp

inet 172.17.0.100 peer 172.17.12.1/32 scope global ppp0


10 #######查看拨号的用户有哪些##pptpd vpn查看当前在线用户################################################

last | grep still | grep ppp


23.iptables -A INPUT -p tcp -m tcp -d 123.123.123.123 --dport 80 -j ACCEPT24.iptables -A INPUT -p tcp -m tcp -d 123.123.123.123 --dport 443 -j ACCEPT25.iptables -A INPUT -p tcp -m tcp -d 123.123.123.124 --dport 1723 -j ACCEPT26.iptables -A INPUT -p icmp -m icmp --icmp-type any -j ACCEPT27.iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT






[root@nginx ~]# ip ad |grep mtu

1: lo: <LOOPBACK,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN

2: eth0: <BROADCAST,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

50: ppp0: <POINTOPOINT,LOWER_UP> mtu 1396 qdisc pfifo_fast state UNKNOWN qlen 3

[root@nginx ~]# cat /sys/class/net/ppp0/mtu vpn 客户端拨号正常后发现某些网页不能打开,mtu 问题,

1396

[root@nginx ~]# echo "1472" > /sys/class/net/ppp0/mtu

[root@nginx ~]#

[root@nginx ~]# cat /sys/class/net/ppp0/mtu

1472

[root@nginx ~]#

手动修改后网页可以正常打开,但是重启又要重新修改,需要些脚本。下面的链接参考。

http://www.cnblogs.com/kevingrace/p/6329722.html?utm_source=itdadao&utm_medium=referral


1、查看mtu:

# ip a | grep mtu

1: lo: <LOOPBACK,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN

2: eth0: <BROADCAST,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000

254: gre0: <NOARP> mtu 1472 qdisc noop state DOWN

# 可以查看到所有网卡的mtu值,此处可以看到eth0的是1500,gre0的是1472

2、 查看某个网卡的MTU,ppp0的需要连接VPN后才能查看

# cat /sys/class/net/ppp0/mtu

#

# 更改其值

# echo "1472" > /sys/class/net/ppp0/mtu

# 改完以后测试立即就能访问百度了。看来真的是这个问题。于是把它添加到连接自动设置其值。

3、配置VPN连接自动设置MTU的值

# 2. 写到/etc/ppp/ip-up中

# vim /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 "$@"

/sbin/ifconfig ppp0 mtu 1472 # 添加到这里

exit 0

# 断开VPN后重新测试连接,发现一切正(http://www.linuxidc.com/Linux/2015-02/113178.htm)参考链接


注意点:.启动pptpd

/sbin/service pptpd start


注:重新启动pptpd


Shutting down pptpd: [ OK ]

Starting pptpd: [ OK ]

Warning: a pptpd restart does not terminate existing

connections,so new connections may be assigned the same IP

address and cause unexpected results. Use restart-kill to

destroy existing connections during a restart.


提示建议不要这么做,那就传统的吧

service pptpd restart-kill

service pptpd start


iptables -A INPUT -p tcp --dport 1723 -j ACCEPT

iptables -A INPUT -p tcp --dport 47 -j ACCEPT

iptables -A INPUT -p gre -j ACCEPT

iptables -A INPUT -p UDP --dport 53 -j ACCEPT



在安装的时候又出现没有/etc/pptpd.conf 文件,于是安装epel 的扩展源问题yun install -y pptpd 解决。

处理PPTP 的各种问题,619 错误

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


linux下开机自启: 在/etc/init.d目录下新建文件elasticsearch 并敲入shell脚本: 注意, 前两行必须填写,且要注释掉。 第一行为shell前行代码,目的告诉系统使用shell。 第二行分别代表运行级别、启动优先权、关闭优先权,且后面添加开机服务会用到。 shell脚本
1、因为在centos7中/etc/rc.d/rc.local的权限被降低了,所以需要赋予其可执行权 chmod +x /etc/rc.d/rc.local 2、赋予脚本可执行权限假设/usr/local/script/autostart.sh是你的脚本路径,给予执行权限 chmod +x /usr
最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用ls -ll,会显示成字节大小,而ls- lh会以KB、MB等为单位进行显示,这样比较直观一些。 通过命令du -h –max-depth=1 *,可以查看当前目录下各文件、文件夹的大小,这个比较实用。 查询当前目录总大小可以使用d
ASP.NET Core应用程序发布linux在shell中运行是正常的。可一但shell关闭网站也就关闭了,所以要配置守护进程, 用的是Supervisor,本文主要记录配置的过程和过程遇到的问题 安装Supervisor&#160;1 yum install python-setuptools
设置时区(CentOS 7) 先执行命令timedatectl status|grep &#39;Time zone&#39;查看当前时区,如果不是时区(Asia/Shanghai),则需要先设置为中国时区,否则时区不同会存在时差。 #已经是Asia/Shanghai,则无需设置 [root@xia
vim&#160;/etc/sysconfig/network-scripts/ifcfg-eth0 BOOTPROTO=&quot;static&quot; ONBOOT=yes IPADDR=192.168.8.106 NETMASK=255.255.252.0 GATEWAY=192.168.
一、安装gcc依赖 由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v),如果没有安装,执行以下命令进行安装 [root@localhost local]# yum install -y gcc 二、下载并解压安装包 [root@localhost local
第一步 On CentOS/RHEL 6.*: $ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm On CentOS/RHEL 7: $
/// &lt;summary&gt; /// 取小写文件名后缀 /// &lt;/summary&gt; /// &lt;param name=&quot;name&quot;&gt;文件名&lt;/param&gt; /// &lt;returns&gt;返回小写后缀,不带“.”&lt;/ret
which nohup .bash_profile中并source加载 如果没有就安装吧 yum provides */nohup nohup npm run start &amp; nohup ./kibana &amp;
1.1 MySQL安装 1.1.1 下载wget命令 yum -y install wget 1.1.2 在线下载mysql安装包 wget https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm 1.1.3 安装My
重启 reboot shutdown -r now init 6 关闭 init 0 shutdown -h now shutdown -h 20:25 #8点25关机查看内存 free CPU利用率 top 日期 date 设置时间 date 033017002015 #月日时间年 日历 cal
1、firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status firewalld 开机禁用 : systemctl disable firewalld 开机启用 :
1 下载并安装MySQL官方的&#160;Yum Repository wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 使用上面的命令就直接下载了安装用的Yum Repository,大概
CentOS6.x CentOS6中转用Upstrat代替以前的init.d/rcX.d的线性启动方式。 一、相关命令 通过initctl help可以查看相关命令 [root@localhost ~]# initctl help Job commands: start Start job. sto
1、使用命令:df -lk 找到已满磁盘 2、使用命令:du --max-depth=1 -h 查找大文件,删除
ifconfig:查看网卡信息 网卡配置文件位置: /etc/sysconfig/network-scripts/文件夹 nmtui:配置网卡 netstat -tlunp:查看端口信息 端口信息存储位置: /etc/services文件 route:查看路由信息 wget:下载网路文件,例如 wg
ps -ef:查看所有进程,&#160;ps -ef |grap firewalld 查看与firewalld相关的进程 which :查看进程:which firewalld kill 进程id:杀掉进程 kill 640,强制杀:kill -9 640 man:查看帮助,例如 man ps 查看
useradd:添加用户 useradd abc,默认添加一个abc组 vipw:查看系统中用户 groupadd:添加组groupadd ccna vigr:查看系统中的组 gpasswd:将用户abc添加到ccna组 gpasswd -a abc ccna groups abc:查看用户abc属