热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

OpenVZDebian系统VPS如何安装PPTPVPN服务器

本教程是在OpenVZVPS上成功实现Debian系统pptpvpn的搭建。并能顺利访问网络,在此提供教程步骤如下,以及本人在测试中出现的问题给予解答。理论上支持XEN的VPS和Ubuntu系统。如果VPS上安装了Webmin,那么这里很多步骤可以简化!首先我们需要检测VPS是否支持

本教程是在OpenVZ VPS上成功实现Debian系统pptp vpn的搭建。并能顺利访问网络,在此提供教程步骤如下,以及本人在测试中出现的问题给予解答。理论上支持XEN 的VPS和Ubuntu系统。如果VPS上安装了Webmin,那么这里很多步骤可以简化! 首先我们需要检测VPS是否支持搭建VPN,
执行以下两条命令
cat /dev/net/tun
返回结果:
cat: /dev/net/tun: File descriptor in bad state
cat /dev/ppp
返回以下结果:
cat: /dev/ppp: No such device or address
那么恭喜,你的VPS支持搭建VPN,你页可以问问VPS客服,来确认VPS是否支持搭建VPN。

1.安装 pptpd
apt-get update
apt-get install pptpd
2.配置 pptpd IP范围,pptp支持的IP不能超过100个,对于自己使用来说足够!
修改 /etc/pptpd.conf
#localip 192.168.0.1
#remoteip 192.168.0.234-238,192.168.0.245
去除前面的 #,也可以自己更改IP,比如改为:
localip 10.0.0.1
remoteip 10.0.0.10-20
3.添加PPTP VPN用户
修改 /etc/ppp/chap-secrets 增加
username pptpd password *
其中username为你要添加的VPN帐号的用户名,password为你VPN帐号的明文密码。
4.修改DNS服务器,在此我们使用Google公用DNS。
修改 /etc/ppp/options 加入
ms-dns 8.8.8.8
ms-dns 8.8.4.4
5.开启ip转发
编辑/etc/sysctl.conf文件,去掉net.ipv4.ip_forward=1前的注释#
保存退出,并执行下面的命令来生效它:
sysctl -p
6.重启pptpd服务
service pptpd restart
7.安装Linux防火墙:iptables,需要使用iptables转发来实现VPN连网。
apt-get install iptables
一般VPS默认都会安装。
8.开启iptables转发,开启转发前请使用ifconfig确认VPS网卡名是否叫venet0,如果不是,请将下面venet0改为你VPS物理网卡名,一般情况下OpenVZ VPS网卡都叫venet0。
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o venet0 -j SNAT ?to-source xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxx 是你 vps 的 ip 地址。注意,如果你在前面localip和remoteip写的不是10.0.0.X的话,需要将此处10.0.0.0换成你在上面写的网段,比如你使用的是localip为192.168.88.1,那么本行中10.0.0.0就需要改为192.168.88.0。
9.保存iptables设置
iptables-save > /etc/iptables.pptp
10.VPS重启自动运行PPTP转发规则
在/etc/network/if-up.d/目录下创建iptables文件,内容如下:
#!/bin/sh
iptables-restore 给脚本添加执行权限:
chmod +x /etc/network/if-up.d/iptables
至此PPTP VPN服务器端的设置就完成了。
11.手动开启iptables转发规则
iptables-restore /etc/iptables.pptp
12.连接错误解决方案
错误619 ,执行命令
mknod /dev/ppp c 108 0
然后重启VPS
错误800 ,则修改/etc/ppp/pptpd-options文件,在require-mppe-128字段前面加#即可,并将本地的windows系统的vpn属性改为可选加密


推荐阅读
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文探讨了Unix和Linux操作系统的起源和发展历程。从20世纪60年代计算机技术的初期阶段,到Unix的诞生及后续Linux的崛起,文章详细介绍了这些操作系统如何逐步成为现代计算不可或缺的一部分。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 解决微信电脑版无法刷朋友圈问题:使用安卓远程投屏方案
    在工作期间想要浏览微信和朋友圈却不太方便?虽然微信电脑版目前不支持直接刷朋友圈,但通过远程投屏技术,可以轻松实现在电脑上操作安卓设备的功能。 ... [详细]
  • 本文详细介绍了如何在Ubuntu系统中下载适用于Intel处理器的64位版本,涵盖了不同Linux发行版对64位架构的不同命名方式,并提供了具体的下载链接和步骤。 ... [详细]
  • 本文介绍如何在Linux Mint系统上搭建Rust开发环境,包括安装IntelliJ IDEA、Rust工具链及必要的插件。通过详细步骤,帮助开发者快速上手。 ... [详细]
  • 本文详细介绍了如何在预装Ubuntu系统的笔记本电脑上安装Windows 7。针对没有光驱的情况,提供了通过USB安装的具体方法,并解决了分区、驱动器无法识别等问题。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 本文探讨了为何相同的HTTP请求在两台不同操作系统(Windows与Ubuntu)的机器上会分别返回200 OK和429 Too Many Requests的状态码。我们将分析代码、环境差异及可能的影响因素。 ... [详细]
  • 2012年7月30日,语言岛团队宣布其智能记单词软件V0.3.4.554版本正式开源。该版本不仅支持跨平台使用,还引入了多项创新功能,旨在帮助用户更高效地记忆单词。 ... [详细]
  • 搭建Jenkins、Ant与TestNG集成环境
    本文详细介绍了如何在Ubuntu 16.04系统上配置Jenkins、Ant和TestNG的集成开发环境,涵盖从安装到配置的具体步骤,并提供了创建Windows Slave节点及项目构建的指南。 ... [详细]
  • 当我在命令行登录MySQL后,无法访问任何依赖数据库连接的PHP应用。此问题每次都会出现。以下是复现问题的具体步骤及解决方案。 ... [详细]
  • 本文介绍了如何在Ubuntu 16.04系统上配置Nginx服务器,以便能够通过网络访问存储在服务器上的图片资源。这解决了在网页开发中需要使用自定义在线图标的需求。 ... [详细]
  • Linux环境下配置Subclipse访问SVN+SSH仓库的方法
    本文详细介绍如何在Linux操作系统中配置Subclipse,以便通过SSH协议安全访问SVN仓库。不同于常见的Windows配置指南,本文提供了针对Linux用户的详细步骤。 ... [详细]
  • 在Ubuntu 14.04 (Desktop AMD64) 上安装与配置ROS Indigo
    本文档详细介绍了如何在Ubuntu 14.04 (Desktop AMD64) 系统上安装和配置ROS Indigo。包括设置软件源、安装ROS核心组件、初始化rosdep以及创建ROS工作空间等步骤。 ... [详细]
author-avatar
520那孩HAPPY
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有