架设基于StrongSwan的L2tp/IPSec VPN服务器
架设基于StrongSwan的L2tp/IPSec VPN服务器
参考: http://agit8.turbulent.ca/bwp/2011/01/setting-up-a-vpn-server-with-ubuntu-1004-and-strongswan/
以下操作基于Debian 6
安装StrongSwan
apt-get install libgmp3-dev libssl-dev make cd /tmp wget http://download.strongswan.org/strongswan-4.6.2.tar.gztar zxvf strongswan-4.6.2.tar.gz cd /tmp/strongswan-4.6.2 ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib --with-ipsecdir=/usr/lib/strongswan --enable-cisco-quirks --enable-openssl --enable-nat-transport --disable-mysql --disable-ldap --disable-static --enable-shared --enable-eap-mschapv2 --enable-eap-radius --enable-eap-md5 --enable-dhcp make make install
编辑 IPSec 配置文件
cp /etc/ipsec.conf /etc/ipsec.conf.old cat >/etc/ipsec.conf<<EOF 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 plutostart=yes charonstart=yes conn L2TP-PSK-NAT rightsubnet=vhost:%priv also=L2TP-PSK-noNAT conn L2TP-PSK-noNAT type=transport authby=psk keyexchange=ikev1 pfs=no keyingtries=3 rekey=no left=%defaultroute leftnexthop=%defaultroute leftprotoport=17/1701 right=%any rightprotoport=17/%any rightsubnetwithin=0.0.0.0/0 auto=add EOF
设置 PSK 预共享密钥,需要修改成你自己服务器的公网IP及”nsshell.com”部分
cat >/etc/ipsec.secrets<<EOF 216.187.89.188 %any: PSK "nsshell.com" EOF
调整网络策略, for 循环语句,请一行一行地输入,输完后按回车。
[wp_ad_camp_1]
function updateipv4conf() { for each in /proc/sys/net/ipv4/conf/* do echo 0 > $each/accept_redirects echo 0 > $each/send_redirects done }
updateipv4conf
重启IPSec 服务,StrongSwan的ipsec命令应该会自动添加到$PATH中
ipsec restart
安装 L2TP
apt-get install xl2tpd
编辑 xl2tpd 配置文件,请修改下面对应的服务器IP
cat >/etc/xl2tpd/xl2tpd.conf<<EOF [global] port = 1701 listen-addr = < SERVER_PUBLIC_IP > ipsec saref = yes [lns default] local ip = 10.31.2.1 ip range = 10.31.2.2-10.31.2.254 require chap = yes refuse pap = yes require authentication = yes ppp debug = yes pppoptfile = /etc/ppp/options.xl2tpd length bit = yes name = xl2tpd EOF
PPP 的安装配置
cat >/etc/ppp/options.xl2tpd<<EOF 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 xl2tpd proxyarp lcp-echo-interval 30 lcp-echo-failure 4 mtu 1410 mru 1410 connect-delay 50 EOF
添加 VPN 用户
cat >>/etc/ppp/chap-secrets<<EOF test * test * EOF
[wp_ad_camp_3]
包转发及iptables设置在前面已经设置好(见OpenVPN配置页面中关于iptables的配置)
重启xl2tpd
/etc/init.d/xl2tpd restart
注意:Strongswan需要单独运行ipsec命令来启动服务,安装strongswan后,以root用户执行
ipsec
命令,即可启动strongswan. 试用
ipsec statusall
架设基于StrongSwan的L2tp/IPSec VPN服务器的更多相关文章
- 如何在 Debian / Ubuntu 服务器上架设 L2TP / IPSec VPN
本站的 Rio 最近在一台 Ubuntu 和一台 Debian 主机上配置了 L2TP / IPSec VPN,并在自己的博客上做了记录.原文以英文写就,我把它大致翻译了一下,结合我和 Rio 在设置 ...
- PPTPD/L2TP/IPSec VPN一键安装包 For CentOS 6
一.一键安装PPTPD VPN 本教程适用于Openv VPS.Xen VPS或者KVM VPS. 1.首先运行如下命令: cat /dev/net/tun 返回的必须是: cat: /dev/net ...
- windows7 自带l2tp/ipsec VPN客户端连接Cisco ASA
搞了半天,最后发现其实很简单,在ASA默认配置的基础上,把所有crypto ipsec ikev1 transform-set 加上mode transport,然后把tunnel-group Def ...
- 在EC2上搭建L2TP over IPSec VPN服务器
注意(:wq保存文件 putty登陆用户名为ec2-user) 安装与配置: 环境介绍: OS:CentOS 6.4 x86_64 Minimal 1. 修改 /etc/sysctl.conf,新增如 ...
- [转]Mac下配置基于SecurID的Cisco IPSec VPN全攻略(有图)
来自: http://www.eefocus.com/Kevin/blog/11-09/230878_53c71.html RSA的SecurID长的是这个样子滴: Mac里面,可以设置VPN, 方法 ...
- 配置L2TP IPsec VPN (CentOS 6.5)
1. 安装相关包 yum install -y ppp iptables make gcc gmp-devel xmlto bison flex libpcap-devel lsof vim-enha ...
- IPSEC VPN配置实例
TL-R400VPN应用——IPSEC VPN配置实例 TL-ER6120是TP-LINK专为企业应用而开发的VPN路由器,具备强大的数据处理能力,并且支持丰富的软件功能,包括VPN.IP/MAC 地 ...
- 利用开源软件strongSwan实现支持IKEv2的企业级IPsec VPN,并结合FreeRadius实现AAA协议(下篇)
续篇—— 利用开源软件strongSwan实现支持IKEv2的企业级IPsec VPN,并结合FreeRadius实现AAA协议(上篇) 上篇文章写了如何构建一个支持IKEv2的VPN,本篇记录的是如 ...
- Centos6一键搭建L2TP VPN服务器
用VPS在墙上打洞还有一种叫L2TP,也是常见的一种方式.本脚本结合了L2TP(Layer Tunneling Protocol)和IPSec(Internet Protocol Security), ...
随机推荐
- 第二章:javascript: 数组
数组是编程世界里最常见的数据结构.任何一种编程语言都包含数组,只是形式稍微有差异.数组是编程语言中的内建类型,通常效率都很高.可以满足不同需求的数据存储,本章将探索javascript中的数组工作原理 ...
- iOS---cell-自适应高度
RootViewController: // // RootViewController.m // UI__cell自适应高度 // // Created by dllo on 16/3/15. // ...
- 每天一个linux命令(33):ps命令
Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信 ...
- 在Windows和UNIX下利用PHP和LDAP进行身份验证
我现在的老板曾要求我为企业内部的Web服务提供一种标准的身份验证方法.我遇到的一个主要问题就是我们公司主要使用了两种平台:UNIX和.所以,我的第一个想法并不很成功:它要求每个员工都使用UNIX或者L ...
- linux 通过哪个命令可以查看某个服务及其端口、进程号
netstat/lsof netstat命令用于显示与IP.TCP.UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况 -a 显示一个所有的有效连接信息列表(包括已建立的连接,也 ...
- 【poj3020】 Antenna Placement
http://poj.org/problem?id=3020 (题目链接) 题意 给出一个矩阵,矩阵中只有‘*’和‘o’两种字符,每个‘*’可以向它上下左右四个方位上同为‘*’的点连一条边,求最少需要 ...
- BZOJ1208 宠物收养所
Description 最近,阿Q开了一间宠物收养所.收养所提供两种服务:收养被主人遗弃的宠物和让新的主人领养这些宠物.每个领养者都希望领养到自己满意的宠物,阿Q根据领养者的要求通过他自己发明的一个特 ...
- Openjudge 235 丛林中的路
好久没练最小生成树了 253:丛林中的路 总时间限制: 1000ms 内存限制: 65536kB 描述 热 带岛屿Lagrishan的首领现在面临一个问题:几年前,一批外援资金被用于维护村落之间的道路 ...
- Linux Communication Mechanism Summarize
目录 . Linux通信机制分类简介 . 控制机制 0x1: 竞态条件 0x2: 临界区 . Inter-Process Communication (IPC) mechanisms: 进程间通信机制 ...
- view视图文件中的input等输入框必须含有name属性,不然控制器里的动作formCollection是没有值的
view视图文件中的input等输入框必须含有name属性,不然控制器里的动作formCollection是没有值的,就是没有name属性,后台获取不到值