centos 6.5下搭建ipsec/xl2tpd VPN
一、安装(一条命令解决了)
yum install openswan ppp xl2tpd
喜欢源码安装的朋友可去去 http://pkgs.org 去下载相就的源码包。
二、配置
1.编辑/etc/ipsec.conf
vim /etc/ipsec.conf
把下面xx.xxx.xxx.xxx换成你自己VPS实际的外网固定IP。其他的不动。
config setup nat_traversal=yes virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12 oe=off protostack=netkey
conn L2TP-PSK-NAT rightsubnet=vhost:%priv also=L2TP-PSK-noNAT
conn L2TP-PSK-noNAT authby=secret pfs=no auto=add keyingtries=3 rekey=no ikelifetime=8h keylife=1h type=transport left=xx.xxx.xxx.xxx leftprotoport=17/1701 right=%any rightprotoport=17/%any |
2.编辑/etc/ipsec.secrets
vim /etc/ipsec.secrets
192.168.1.100 %any: PSK "YourPsk" |
192.168.1.100换成你自己VPS实际的公网IP, YourPsk你自己定一个密钥,到时候连VPN的时候在安全设置里要用。
3.修改/添加 /etc/sysctl.conf
vim /etc/sysctl.conf
确保下面的字段都有,对应的值或下面一样。省事的话直接在/etc/sysctl.conf的末尾直接把下面内容的粘过去。
net.ipv4.ip_forward = 1 net.ipv4.conf.default.rp_filter = 0 net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.default.send_redirects = 0 net.ipv4.conf.all.log_martians = 0 net.ipv4.conf.default.log_martians = 0 net.ipv4.conf.default.accept_source_route = 0 net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.default.accept_redirects = 0 net.ipv4.icmp_ignore_bogus_error_responses = 1 |
让修改后的sysctl.conf生效:
sysctl -p |
有可以报一些关于ipv6的error,不要管它,继续下一步。
4.验证ipsec的运行状态
service ipsec start ipsec verify |
执行ipsec verify后会有如下输出:
Checking your system to see if IPsec got installed and started correctly: Version check and ipsec on-path [OK] Linux Openswan U2.6.32/K2.6.32-431.el6.x86_64 (netkey) Checking for IPsec support in kernel [OK] SAref kernel support [N/A] NETKEY: Testing for disabled ICMP send_redirects [OK] NETKEY detected, testing for disabled ICMP accept_redirects [OK] Checking that pluto is running [OK] Pluto listening for IKE on udp 500 [OK] Pluto listening for NAT-T on udp 4500 [OK] Checking for 'ip' command [OK] Checking /bin/sh is not /bin/dash [OK] Checking for 'iptables' command [OK] Opportunistic Encryption Support [DISABLED] |
如果有failed,就无法进行下去,那需要自己去百度、google找答案吧,我搭建的时候是没有遇到,记得把selinux关掉。
5.编辑/etc/xl2tpd/xl2tpd.conf
vim /etc/xl2tpd/xl2tpd.conf
内容如下:
[global] ipsec saref = yes listen-addr = 120.26.115.39 ;服务器地址 [lns default] ip range = 192.168.1.2-192.168.1.100 ;这里是VPN client的内网ip地址范围 local ip = 192.168.1.1 ;这里是VPN server的内网地址 refuse chap = yes refuse pap = yes require authentication = yes ppp debug = yes pppoptfile = /etc/ppp/options.xl2tpd length bit = y |
6.编辑 /etc/ppp/options.xl2tpd
vim /etc/ppp/options.xl2tpd
内容如下:
require-mschap-v2 ms-dns 8.8.8.8 ms-dns 8.8.4.4 asyncmap 0 auth crtscts lock hide-password modem debug name l2tpd proxyarp lcp-echo-interval 30 lcp-echo-failure 4 |
7.编辑 /etc/ppp/chap-secrets
此配置文件是设置VPN的用户名,密码:
vim /etc/ppp/chap-secrets
格式如下:
# Secrets for authentication using CHAP # client server secret IP addresses admin * admin * |
此设置表示,vpn的账户和密码都为admin,可以在任何可以上网的客机上登陆此vpn账户。
8.启动 xl2tpd 服务
service xl2tpd start
9.开放端口及转发
1.iptables -t nat -A POSTROUTING -m policy --dir out --pol none -j MASQUERADE 2.iptables -A FORWARD -i ppp+ -p all -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT 3.iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT 4.iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j MASQUERADE |
保存规则:
service iptables save |
至此 IPsec/xl2tpd VPN 已全部配置完成,下面就可以测试了。
10.在win7上测试连接vpn
打开网络共享中心--设置新的连接或网络--连接到工作区--创建vpn
点击右下角网络图标--vpn连接--点击属性
1.常规中的ip为vps的公网ip
2.vpn类型:使用Ipsec 的第二层隧道协议(L2TP/IPsec)
数据加密:需要加(如果服务器拒绝将断开连接)
高级设置:使用预共享的密钥作身份验证
密钥:YourPsk (前面设置过的)
点击确定后输入用户名和密码即可登陆。
更多文章推荐
- F-vuln 自动化web漏洞检测工具 Find-Vulnerability
- 一图流学会摩尔斯电码
- Centos/RHEL一键搭建socks5服务脚本
- 阿里云/VPS/云主机使用DD命令一键安装RouterOS-ROS系统
- Centos7 基于ss5搭建SOCKS5代理服务器
- Centos7 安装openvpn采用webUI管理账号密码与证书认证方式
- Microsoft Edge和Internet Explorer远程代码执行漏洞(CNVD-2019-30525)的补丁
- Apache httpd mod_http2拒绝服务漏洞CNVD-2019-33830
- Apache httpd缓冲区溢出漏洞(CNVD-2019-33835)
- 多IP腾讯云centos6/7配置openvpn不同账号走不同IP的出口
目录 返回
首页