站长之站 站长之站QQ群:16356000 100345456 16263640 130690866
还没有任何记录...
当前位置:站长之站 > 服务器类 > 正文 > ubuntu搭建pptp vpn

ubuntu搭建pptp vpn

来源:网络作者:网络日期:2021/4/29 0:25:00收藏
本文链接:ubuntu搭建pptp vpnhttp://www.cncncc.com/ArtServ/Show.Asp?id=1887

安装和配置pptp安装pptp

sudo apt-get -y install pptpd

配置ip信息

编辑vi /etc/pptpd.conf,添加如下设置,其中localip为服务器地址,remoteip为将要分配给客户端的地址

localip 192.168.9.1
remoteip 192.168.9.11-200,192.168.9.254

配置dns

编辑vi /etc/ppp/pptpd-options配置dns如下。这里是用了google的dns服务8.8.8.8,你也可以使用其他的dns服务

ms-dns 8.8.8.8
ms-dns 8.8.4.4

增加路由转发

编辑vi /etc/sysctl.conf,搜索ip转发规则并设置如下。这里设置后可以在公网ip和刚设置的私有ip之间转发数据包以完成代理功能。

net.ipv4.ip_forward = 1

之后输入如下命令让路由转发生效:

sysctl -p

配置iptables防火墙规则

配置iptables防火墙规则这里需要分具体情况来处理,这也就是为什么很多时候我们按照其他网上教程之后仍然会碰到无法连接vpn服务器或者连接了vpn服务器之后无法浏览网页的原因。对于仅作vpn代理的服务器设置

仅作为vpn服务器使用的情况比较简单,不需要考虑开发哪些端口屏蔽哪些端口,因为本身服务器上没有任何其他应用需要使用特定的端口。所以只需要设置nat转发就可以了。

apt-get install iptables

iptables -t nat -a postrouting -o  -j masquerade

iptables-save

为了确保每次重启服务器之后nat转发规则都能生效,可以编辑/etc/rc.local,设置如下

#!/bin/sh -e
iptables -t nat -a postrouting -o  -j masquerade
exit 0

注意:其中的eth0需要根据服务器网卡具体设置,输入ifconfig可以查看服务器网卡信息。

对于既要运行网站又要使用vpn代理的情况

由于vps主要的目的是架设自己的网站,所以之前设置了iptables防火墙规则禁止了大部分的端口,恰恰是这些端口的禁用会导致vpn连接、转发规则无法正常实现。

首先新建防火墙规则并保存为/etc/iptables.firewall.rules,具体设置规则如下:

*filter

#  allow all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
# 允许所有本地连接
-a input -i lo -j accept
-a input -d 127.0.0.0/8 -j reject

#  accept all established inbound connections
# 允许入站连接
-a input -m state --state established,related -j accept

#  allow all outbound traffic - you can modify this to only allow certain traffic
# 允许所有类型出站数据
-a output -j accept

#  allow http and https connections from anywhere (the normal ports for websites and ssl).
# 允许http或https连接
-a input -p tcp --dport 80 -j accept
-a input -p tcp --dport 443 -j accept

#  allow ssh connections
# 允许ssh连接
#  the -dport number should be the same port number you set in sshd_config
#
-a input -p tcp -m state --state new --dport 22 -j accept

#  allow ping
# 允许ping
-a input -p icmp --icmp-type echo-request -j accept

#  log iptables denied calls
# 记录iptables拒绝的请求
-a input -m limit --limit 5/min -j log --log-prefix "iptables denied: " --log-level 7

# ebable pptp ports
# 允许pptp端口
-a input -i eth0 -p tcp --dport 1723 -j accept
-a input -i eth0 -p gre -j accept
-a forward -i ppp+ -o eth0 -j accept
-a forward -i eth0 -o ppp+ -j accept

#  drop all other inbound - default deny unless explicitly allowed policy
# 拒绝其他连接请求
-a input -j drop
-a forward -j drop

commit

*nat
# 设置nat转发规则
-a postrouting -o eth0 -j masquerade

commit

对比一些教程上所推荐的为网站服务器设置防火墙规则,这里多出来的部分主要是新增了允许pptp端口和设置nat转发规则,只是因为架设网站的服务器我们通常会禁用不常用端口,包括了pptp vpn需要用到的端口。

之后保存iptables规则

iptables-restore < /etc/iptables.firewall.rules

配置开机运行pptp

cat >/etc/network/if-pre-up.d/firewall<<eof
#!/bin/sh
/sbin/iptables-restore < /etc/iptables.firewall.rules
eof

新建vpn用户账户以上的步骤结束后,基本上创建pptp vpn已经结束,现在需要的就是为用户创建账号和密码。用户和密码保存在/etc/ppp/chap-secrets文件中,编辑文件并添加用户名和密码如下所示:

username pptpd password *

所有设置结束之后,重启pptp

service pptpd restart

也别忘了重启服务器试试是否仍然有效

如果需要安装l2tp vpn估计方法也差不多,最重要的是确保iptables规则不要冲突。

原文:http://www.zhangpeng.info/web/ubuntu-install-pptp-vpn/

注:原文经过本站修改修正



作者:站长之站 收集整理,任何媒体转发须保留作者个人微信和来源,不尊重作者劳动的行为将受到举报。
本文链接:ubuntu搭建pptp vpnhttp://www.cncncc.com/ArtServ/Show.Asp?id=1887

【ubuntu搭建pptp vpn】由站长之站收集整理,您可以自由传播,请主动带上本文链接

觉得有用就多来支持一下,没有能帮到您,站长之站也只能表示遗憾,希望有一天能帮到您。

(责任编辑:站长之站)

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
站长之站 · CNCMS
站长之站
编程开发
ASP教程 .NET教程 JSP教程 PHP教程 Xml/Xslt Shtml教程 CGI专区 JavaScrip 其他编程
服务器类
Web服务器 Ftp服务器 Mail服务器 Dns服务器 Linux服务器 Win服务器 安全防护 服务器其他
网页设计
Html教程 设计心得 动态网页 JS/Ajax Div/Css CSS教程 设计其它
软件教程
Photoshop Fireworks FLASH Dreamweaver Frontpage 其他教程
数据库类
MSAccess MS_SQL My_SQL VFP PowerBuilder Oracle 其它数据
全站导航
编程开发服务器类网页设计软件教程数据库类
关于我们/版权
版权所有:
Copyright © 2008 - 2020 站长之站 www.cncncc.com
PowerBy:CNCMS(5.1.20)

苏ICP备16002106号-1