因为公司业务的需要,需要搭建一个vpn。基于PPTP搭建简单,使用方便,所以搭建基于PPTP协议的VPN。

废话不多说了,下面开整:

1、更新系统软件

sudo apt-get -y update
sudo apt-get -y upgrade

2、安装pptpd和iptables

sudo apt-get install -y pptpd iptables

3、修改配置文件/etc/pptpd.conf(配置远程vpn分配的ip)

sudo vim /etc/pptpd.conf
#找到如下两行,修改成自己想要的
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
比如我的
localip 192.168.0.1
remoteip 192.168.0.10-60

4、修改配置文件/etc/pptpd.conf(配置DNS)

sudo vim /etc/ppp/pptpd-options
找到
#ms-dns 10.0.0.1
#ms-dns 10.0.0.2
取消注释,修改成如下(根据自己需要填写):
ms-dns 223.5.5.5
ms-dns 8.8.8.8

5、修改配置文件/etc/ppp/chap-secrets(设置pptpd的账号等信息)

sudo vim /etc/ppp/chap-secrets
添加自己设置的账号等信息,各位需要修改的就是vpnuser和123456了
#Secrets for authentication using CHAP
#client        server  secret                  IP addresses
vpnuser      pptpd   123456             *

以上pptpd服务器配置基本完工,简单而快速,没有任何难度。

下面开始说,影响你vpn是否能使用的配置了。

1、开启路由转发

查看系统内核是否已经开启了路由转发(新装系统一般是开启的)
sudo cat /proc/sys/net/ipv4/ip_forward
如果得到的值是1说明已经开启,如果没有就开启
sudo echo 1 > /proc/sys/net/ipv4/ip_forward
sudo vim /etc/sysctl.conf
找到对应参数,修改成如下:
net.ipv4.ip_forward=1
保存
sudo sysctl -p

2、配置防火墙规则

sudo iptables -A INPUT -p gre -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 47 -j ACCEPT
sudo iptables -t nat -A POSTROUTING -s 192.168.0.1/24 -o eth0 -j MASQUERADE
NAT转发的这条信息根据自己之前的配置修改,自己的网卡叫啥自己看

因为Ubuntu是不保存iptables规则的,重启电脑就失效了,有个比较方便省事的方法:

把上面的四个规则写入到/etc/rc.local中

sudo vim /etc/rc.local
######################pptpd iptables#####################################
sudo iptables -A INPUT -p gre -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 47 -j ACCEPT
sudo iptables -t nat -A POSTROUTING -s 192.168.0.1/24 -o eth0 -j MASQUERADE
##############################################################################

3、启动pptpd服务

sudo systemctl enable pptpd
sudo systemctl start pptpd

4、测试

使用配好的账号即可,一般不会有问题,windwos配置百度下即可。

注意,下面开始讲一个大坑,这个坑不解决,vpn就不完美。

诸位,连接上vpn后会发现有一些网站无法访问,比如百度、淘宝等。怎么回事呢?

在这里我就不卖关子了,告诉你是mtu的问题,如下图:

这个问题如何解决了,相信各位一百度会发先如下的解决建议:

我要说的是,经过本人的实际测试,以上方法除了手动修改的那个,其他都不管用,修改并不能生效;并且手动修改的只对当前连接有效。一个公司会有多个人连接vpn的这种方式明显蛋疼,不符合实际生产需要的。

那么如何解决呢?经过研究,其实很简单。只需要在一个配置文件里添加一行参数即可。

修改配置文件/etc/ppp/ip-up即可,在文件的最后一行加入如下内容即可

sudo vim /etc/ppp/ip-up
/sbin/ifconfig $PPP_IFACE mtu 1454
#mtu的值大家根据实际更改即可

大家可以看一下这个配置文件,其实很简单,一看就懂了。

修改完成后,保存退出,重启pptpd

再次连接后,可以发现mtu值就是你设置的mtu值,测试百度等网站都可以正常运行。

在Ubuntu18.04.2服务器下搭建PPTP相关推荐

  1. ESP8266基于WIN10+UBUNTU18.04的开发环境搭建(RTOS 3.2)(比较水)

    ESP8266基于WIN10+UBUNTU18.04的开发环境搭建(RTOS v3.2) 软件基础环境参考 硬件环境参考 软件环境安装的详细内容 软件基础环境参考 WIN10家庭版1803的64位版本 ...

  2. ubuntu下php服务器搭建_Ubuntu服务器下搭建php运行环境的方法

    本文实例讲述了Ubuntu服务器下搭建php运行环境的方法.分享给大家供大家参考,具体如下: 安装 Apache2: sudo apt-get install apache2 安装PHP模块: sud ...

  3. 解决Ubuntu18.04版本高分辨率下导致字体过小问题

    我所使用的是小米笔记本,显示屏是3.2K的分辨率.由于分辨率太高了,然后在ubuntu18.04的版本下显示的字体很小,小到都看不清了那种.于是查找了调整18.04版本字体大小的方法如下: 安装gno ...

  4. Ubuntu的快乐学习1——Ubuntu18.04的ROS平台搭建

    Ubuntu的快乐学习1--Ubuntu18.04的ROS平台搭建 学习前言 安装步骤 一.修改中科大源 1.备份原来的源 2.编辑现在的源 二.修改软件与更新 三.ROS软件源设置 1.设置sour ...

  5. Windows10 Ubuntu18.04 双系统下修复GRUB引导(亲测当boot-repair工具无效时,该方法完美解决)

    Windows10 Ubuntu18.04 双系统下修复GRUB引导(亲测当boot-repair工具无效时,该方法完美解决) 0.准备条件 1.问题描述: 2.修复Ubuntu18.04的引导 0. ...

  6. win10+ubuntu18.04 双系统下,Ubuntu扩容

    win10+ubuntu18.04 双系统下,Ubuntu扩容 让你当时分配空间的时候多给/home一点的,后悔了吧 step1 先在Ubuntu系统中装扩容工具gparted step2 win系统 ...

  7. 在IIS服务器下搭建FTP服务

    为了实现文件局域网或远程共享与访问,在IIS服务器手动搭建一个FTP Server共享服务. 基于Windows 11 操作系统. 一.安装FTP服务 打开"控制面板"->双 ...

  8. Linux服务器下搭建JDK、Tomcat环境和部署web应用

    1.下载JDK和Tomcat jdk下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-188026 ...

  9. ubuntu下搭建pptp服务器

    1. 安装软件包
在Debian或者Ubuntu的 apt-get 安装包管理下,使用如下命令 sudo apt-get   install pptpd 2. 配置
修改配置文件/etc/sysctl ...

最新文章

  1. Windows下怎样使用bat设置Redis和Nginx开机自启动
  2. 各种加密算法用法及作用
  3. 全国计算机等级考试题库二级C操作题100套(第94套)
  4. es6箭头函数(墙裂推荐)
  5. linux下自己安装软件做成命令
  6. windows8 系统语言由中文修改为英文系统
  7. 命主属性是水什么意思_跟水有关的字女孩名字寓意她们柔美水灵-可爱点
  8. 实习成长之路——设计模式实战一:充血模型DDD与贫血模型MVC的区别?如何利用DDD开发一个虚拟钱包系统?
  9. windows环境下kafka源代码开发环境搭建
  10. c语言程序设计双语版答案,C程序设计(双语版)习题答案.doc
  11. 如何在自己的板子上实现android关机
  12. python调用pyd_使用python pyd时出错
  13. LR https接口
  14. 阿里免费网盘teambition使用初体验
  15. 工业级氯化锂2022年全球行业分析报告
  16. 第十四届蓝桥杯大赛软件赛省赛-试题 B---01 串的熵 解题思路+完整代码
  17. docker学习笔记---基础入门
  18. 【GD32F310开发板试用】GD电机驱动底层配置——永磁同步电机控制
  19. RNN-人名分类器算法
  20. ubuntu 17linux输入法,Ubuntu17.04 安装搜狗中文输入法的方法

热门文章

  1. Python面相对象以英雄联盟讲解
  2. SqlServer count(1),count(*),count(列名)
  3. golang报错 missing key in map literal
  4. PHP与Python对比
  5. python赋值浅拷贝和深拷贝的区别_python赋值、浅拷贝、深拷贝区别
  6. 2022-2027年中国卤制品行业市场深度分析及投资战略规划报告
  7. iOS开发3DTouch(一)
  8. Python画王者荣耀英雄能力雷达图
  9. 苹果AirPods耳机推送新固件更新,TWS耳机与Find My可实现智能防丢
  10. win10 升级到win11镜像setup安装