设为首页收藏本站

ZMX - IT技术交流论坛 - 无限Perfect,追求梦想 - itzmx.com

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

搜索
查看: 6521|回复: 11

centos搭建pptp中转服务器,radius验证服务器

[复制链接]

签到天数: 31 天

[LV.5]常住居民I

发表于 2016/12/8 16:25 | 显示全部楼层 |阅读模式 |Google Chrome 54.0.2840.99|Windows 7
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
本帖最后由 三笠·阿克曼 于 2016/12/8 16:36 编辑

写在教程之前:
因为工作室的需要,自己需要搭建VPN服务器,而脚本对网络的要求比较高,所以又需要搭建中转服务器,百度找了很多资料,很多资料基本说了等于没说,其实也理解,这是很多VPN商人的生存技术,不肯公布出来也正常。求助了樱妹,得到了一些启发,然后再挂上樱妹的pac上谷歌也找了很久,终于把一切都搞定了,现在把整个过程跟大家分享一下,人比较懒,就不上图了,贴上代码和注释算了

本文中共使用3台服务器演示,其中韩国、香港、国内服务器各一台,分别为kr,hk,cn指代,cn服务器为韩国中转服务器和radius验证服务器

步骤1:3台服务器先搭建好PPTP

检测VPS是否支持TUN和PPP,一般的云服务器都是支持的,如果不支持,找找你的云服务器或者vps面板,是否有开启选项,如果没有发工单吧
  1. cat /dev/net/tun
复制代码

返回:cat: /dev/net/tun: File descriptor in bad state,表示通过
  1. cat /dev/ppp
复制代码

cat: /dev/ppp: No such device or address,表示通过

安装支持库
  1. yum -y install ppp make iptables gcc-c++ logrotate tar cpio perl pam tcp_wrappers
复制代码


下载需要的文件,示例所采用的是32位的rpm包,如果你用的是64位的系统,自己找对应的包
ps:前面已经安装了ppp,只是为了用yum把ppp的依赖包都安装,但是安装的是2.4.5版本,我找了很久都找不到对应的pptpd的rpm包,所以下面会重新安装2.4.4版本的ppp
  1. wget http://poptop.sourceforge.net/yum/stable/packages/dkms-2.0.17.5-1.noarch.rpm
  2. wget ftp://fr2.rpmfind.net/linux/sourceforge/h/ho/hostable/kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
  3. wget ftp://fr2.rpmfind.net/linux/sourceforge/h/ho/hostable/pptpd-1.3.4-1.rhel5.1.i386.rpm
  4. wget ftp://fr2.rpmfind.net/linux/sourceforge/h/ho/hostable/ppp-2.4.4-9.0.rhel5.i386.rpm
复制代码


开始安装下载的rpm包
  1. rpm -ivh dkms-2.0.17.5-1.noarch.rpm
  2. rpm -ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
  3. rpm -qa kernel_ppp_mppe
  4. rpm -Uvh ppp-2.4.4-9.0.rhel5.i386.rpm
  5. rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm
复制代码


开始进行系统设置
  1. mknod /dev/ppp c 108 0
  2. echo 1 > /proc/sys/net/ipv4/ip_forward
  3. echo "mknod /dev/ppp c 108 0" >> /etc/rc.local
  4. echo 1 > /proc/sys/net/ipv4/ip_forward" >> /etc/rc.local
  5. echo "option /etc/ppp/options" >> /etc/pptpd.conf
复制代码


设置pptp的内网ip段和dns,这里我国外的服务器都设置为172.0.0.1-254,国内的中转服务器设置为172.100.0.1-254
  1. echo "localip 172.0.0.1" >> /etc/pptpd.conf
  2. echo "remoteip 172.0.0.2-254" >> /etc/pptpd.conf
  3. echo "#logwtmp" >> /etc/pptpd.conf
  4. echo "ms-dns 8.8.8.8" >> /etc/ppp/options.pptpd
  5. echo "ms-dns 8.8.4.4" >> /etc/ppp/options.pptpd
  6. echo "logfile /var/log/pptpd.log" >> /etc/ppp/options.pptpd
复制代码


设置iptables规则,国内服务器记得改为172.100.0.0/24
  1. iptables -t nat -A POSTROUTING -s 172.0.0.0/24 -j SNAT --to-source 公网ip
  2. iptables -A FORWARD -p tcp --syn -s 172.0.0.0/24 -j TCPMSS --set-mss 1356
  3. service iptables save
复制代码


启动服务及设置开机启动
  1. chkconfig iptables on
  2. chkconfig pptpd on
  3. service iptables start
  4. service pptpd start
复制代码


设置一个帐号密码测试vpn是否能成功连接,格式为"username pptpd password *"(不包括双引号)
  1. vim /etc/ppp/chap-secrets
复制代码


连接VPN进行测试,一般来说设置正确都不会有什么问题,如果连不上可以查看错误信息
  1. tailf /var/log/messages
复制代码


步骤2:国内中转服务器的设置

安装pptp-client,ppp2.4.4连接会有点问题,所以这里又要升级成2.4.5= =#,直接用yum重新再安装ppp就好了
  1. yum install ppp pptp pptp-setup
复制代码


注册加密模块
  1. modprobe ppp_mppe
复制代码


创建VPN连接:连接名可自定义,服务器ip填写你国外服务器ip,用户名和密码填写你
  1. vim /etc/ppp/chap-secrets
复制代码
设置好的密码
如:
连接名:cn01tokr01
PPTP服务器ip : 这里用111.111.111.111做例子
用户名:itzmx
密码:pwitzmx
则命令如下
  1. pptpsetup --create cn01tokr01 --server 111.111.111.111 --username itzmx  --password pwitzmx
复制代码


配置VPN开启关闭脚本
  1. cp /usr/share/doc/ppp-2.4.5/scripts/pon /usr/sbin/
  2. cp /usr/share/doc/ppp-2.4.5/scripts/poff /usr/sbin/
  3. chmod +x /usr/sbin/pon
  4. chmod +x /usr/sbin/poff
复制代码


开启VPN连接,命令为:pon+连接名
  1. pon cn01tokr01
复制代码


cn和kr之间已经建立了vpn连接,本地电脑再连接上cn的pptp

现cn连接kr内网ip段为172.0.0.1,用户连接cn,内网ip段为172.100.0.1
输入
  1. ifconfig
复制代码
,可以看到2个ppp连接,一个ppp0和ppp1,根据内网ip,区分出哪个是哪个是cn-kr的连接

配置转发规则,实现中转
  1. iptables -t nat -A POSTROUTING -s 172.100.0.0/24 -o ppp1 -j MASQUERADE
复制代码

把172.100.0.0/24网段全转到ppp1上,这里的ppp1,请根据上面
  1. ifconfig
复制代码
查看到的,具体是ppp0还是ppp1自己判断
  1. ip rule add from 172.100.0.0/24 table 1
  2. ip route add 172.0.0.1 dev ppp1 table 1
  3. ip route add default via 172.0.0.1 table 1
  4. ip route flush cache
复制代码


至此,中转已经全部完成,连上cn的pptp,打开ip138,你会发现已经是kr的ip地址

步骤3:radius验证,实现一号通用

本来实际工作中,我用不到radius实现一号通用,不过本着生命在于折腾的原则,既然都弄到这份上了,干脆再加个radius算了

现在有事要出去了,回来再抽空把这个补上吧

最后再感谢下 @小樱  樱妹的帮助,么么哒
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

签到天数: 31 天

[LV.5]常住居民I

 楼主| 发表于 2016/12/8 16:31 | 显示全部楼层 |Google Chrome 54.0.2840.99|Windows 7
本帖最后由 三笠·阿克曼 于 2016/12/8 16:32 编辑

没艾特成功,再艾特一次 @小樱
[发帖际遇]: 三笠·阿克曼 在论坛发帖时没有注意,被小偷偷去了 1 樱币. 幸运榜 / 衰神榜
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

 成长值: 84

签到天数: 4489 天

[LV.Master]伴坛终老

发表于 2016/12/8 16:46 | 显示全部楼层 |Google Chrome 55.0.2883.75|Windows 7
三笠·阿克曼 发表于 2016/12/8 16:31
没艾特成功,再艾特一次 @小樱

大佬QWQ
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 31 天

[LV.5]常住居民I

 楼主| 发表于 2016/12/8 16:48 | 显示全部楼层 |Google Chrome 54.0.2840.99|Windows 7

为什么我就是艾特不出来@小樱

点评

格式@用户名 空格  发表于 2016/12/8 17:36
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

 成长值: 84

签到天数: 4489 天

[LV.Master]伴坛终老

发表于 2016/12/8 17:35 | 显示全部楼层 |Google Chrome 55.0.2883.75|Windows 7
三笠·阿克曼 发表于 2016/12/8 16:48
为什么我就是艾特不出来@小樱



欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

 成长值: 84

签到天数: 4489 天

[LV.Master]伴坛终老

发表于 2016/12/8 17:35 | 显示全部楼层 |Google Chrome 55.0.2883.75|Windows 7
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

 成长值: 84

签到天数: 4489 天

[LV.Master]伴坛终老

发表于 2016/12/8 17:35 | 显示全部楼层 |Google Chrome 55.0.2883.75|Windows 7
[发帖际遇]: 小樱 被钱袋砸中进医院,看病花了 4 樱币. 幸运榜 / 衰神榜
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 31 天

[LV.5]常住居民I

 楼主| 发表于 2016/12/8 17:37 | 显示全部楼层 |Google Chrome 54.0.2840.99|Windows 7

为什么我艾特显示的就不是蓝色的
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

 成长值: 84

签到天数: 4489 天

[LV.Master]伴坛终老

发表于 2016/12/8 17:49 | 显示全部楼层 |Google Chrome 55.0.2883.75|Windows 7
三笠·阿克曼 发表于 2016/12/8 17:37
为什么我艾特显示的就不是蓝色的

早上没洗脸吧
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 31 天

[LV.5]常住居民I

 楼主| 发表于 2016/12/8 18:02 | 显示全部楼层 |Google Chrome 54.0.2840.99|Windows 7

被发现了 @小樱
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

签到天数: 3 天

[LV.2]偶尔看看I

发表于 2019/3/26 20:23 | 显示全部楼层 |Google Chrome 69.0.3497.100|Windows 10
被发现了
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册论坛 新浪微博账号登陆用百度帐号登录

本版积分规则

手机版|Archiver|Mail me|网站地图|IT技术交流论坛 ( 闽ICP备13013206号-7 )

GMT+8, 2024/4/19 22:49 , Processed in 0.438807 second(s), 21 queries , MemCache On.

Powered by itzmx! X3.4

© 2011- sakura

快速回复 返回顶部 返回列表