Ubuntu15.04安装IPSec/L2TP
一、IPSec
注意:以下教程中sudo在有些版本系统中会提示“未知sudo命令”,在输入时去掉sudo即可。
1.安装IPSec/L2TP软件
1
|
# sudo apt-get install xl2tpd openswan ppp lsof
|
如果出现Do you want to create a RSA public/private keypair for this host?。我们选择No,这种模式的IPSec通过证书进行验证,而非PSK。
1
|
#ipsec --version //查看ipsec版本
|
报错:
E: Package 'openswan' has no installation candidate
意思是在当前的apt-get“源”中没有找到"openswan"这个软件。很正常,除了Ubuntu官方以外,其他第三方提供的源不可能那么完整,所以找别的源增加就行了。
解决方法:创建lzu.list文件
1
|
# sudo vi /etc/apt/sources.list.d/lzu.list
|
写入以下内容:
1
2
3
4
5
6
7
8
9
10
|
deb http: //mirror .lzu.edu.cn /ubuntu/ precise main restricted universe multiverse
deb http: //mirror .lzu.edu.cn /ubuntu/ precise-security main restricted universe multiverse
deb http: //mirror .lzu.edu.cn /ubuntu/ precise-updates main restricted universe multiverse
deb http: //mirror .lzu.edu.cn /ubuntu/ precise-proposed main restricted universe multiverse
deb http: //mirror .lzu.edu.cn /ubuntu/ precise-backports main restricted universe multiverse
deb-src http: //mirror .lzu.edu.cn /ubuntu/ precise main restricted universe multiverse
deb-src http: //mirror .lzu.edu.cn /ubuntu/ precise-security main restricted universe multiverse
deb-src http: //mirror .lzu.edu.cn /ubuntu/ precise-updates main restricted universe multiverse
deb-src http: //mirror .lzu.edu.cn /ubuntu/ precise-proposed main restricted universe multiverse
deb-src http: //mirror .lzu.edu.cn /ubuntu/ precise-backports main restricted universe multiverse
|
生效lzu.list文件
1
|
sudo apt-get update
|
重新运行命令继续安装,输入Y后下面命令装完。
1
|
# sudo apt-get install xl2tpd openswan ppp
|
2.修改/etc/ipsec.conf配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
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 ,%v4:!10.152.2.0 /24
# 这里包含的网络地址允许配置为远程客户端所在的子网。换句话说,
# 这些地址范围应该是你的NAT路由器后面的客户端的地址。
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
# Apple 的 iOS 不会发送 delete 提醒,
# 所以我们需要通过死亡对端(dead peer)检测来识别断掉的客户端
dpddelay=30
dpdtimeout=120
dpdaction= clear
# 设置 ikelifetime 和 keylife 和 Windows 的默认设置一致
ikelifetime=8h
keylife=1h
type =transport
# 替换 IP 地址为你的公网IP
left=x.x.x.x
# 用于升级过的 Windows 2000/XP 客户端
leftprotoport=17 /1701
# 要支持老的客户端,需要设置 leftprotoport=17/%any
right=%any
rightprotoport=17/%any
# 强制所有连接都NAT,因为 iOS
forceencaps= yes
|
注意你的ipsec.conf文件,"config setup" 和 "L2TP-PSK-NAT"、 "L2TP-PSK-NAT"应该顶着行头写,而其它行应该以8个空格缩进。
3.修改文件/etc/ipsec.secrets
1
|
# vi /etc/ipsec.secrets
|
这里x.x.x.x 替换为你的服务器的IP地址,并设置一个复杂的密码。
1
|
x.x.x.x %any: PSK "somegoodpassword"
|
例:
1
|
106.186.178.35 %any: PSK "password"
|
4.启动 IPSEC 服务:
1
|
# /etc/init.d/ipsec start
|
使用如下命令确认 ipsec 是否工作正常。注:只要没有Faild就可以了
1
|
# sudo ipsec verify
|
错误1:Checking /bin/sh is not /bin/dash [WARNING]
解决方法:原文链接
1
|
sudo dpkg-reconfigure dash
|
按英文提示、选择no、就可以把dash切换成bash、再执行ipsec verify就不会出现WARNING的提示了
5.在 /etc/init.d 下创建一个名为 ipsec的文件,内容如下:
1
|
#vi /etc/init.d/ipsec.vpn
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
case "$1" in
start)
echo "Starting my Ipsec VPN"
iptables -t nat -A POSTROUTING -o eth0 -s 10.152.2.0 /24 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
for each in /proc/sys/net/ipv4/conf/ *
do
echo 0 > $each /accept_redirects
echo 0 > $each /send_redirects
done
/etc/init .d /ipsec start
/etc/init .d /xl2tpd start
;;
stop)
echo "Stopping my Ipsec VPN"
iptables --table nat --flush
echo 0 > /proc/sys/net/ipv4/ip_forward
/etc/init .d /ipsec stop
/etc/init .d /xl2tpd stop
;;
restart)
echo "Restarting my Ipsec VPN"
iptables -t nat -A POSTROUTING -o eth0 -s 10.152.2.0 /24 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
for each in /proc/sys/net/ipv4/conf/ *
do
echo 0 > $each /accept_redirects
echo 0 > $each /send_redirects
done
/etc/init .d /ipsec restart
/etc/init .d /xl2tpd restart
;;
*)
echo "Usage: /etc/init.d/ipsec.vpn {start|stop|restart}"
exit 1
;;
esac
|
这会配置防火墙转发。记得修改上面文件的本地IP地址池10.152.2.0/24为你自己的。
然后给这个文件设置可执行权限:
1
|
#sudo chmod 755 ipsec.vpn
|
禁止默认的 ipsec 服务脚本运行:
1
|
#sudo update-rc.d -f ipsec remove
|
然后,启用我们刚才定制的这个:
1
|
#sudo update-rc.d ipsec.vpn defaults
|
二、L2TP
1
|
#vi /etc/xl2tpd/xl2tpd.conf
|
1
2
3
4
5
6
7
8
9
10
11
12
|
[global]
ipsec saref = no
[lns default]
ip range = 10.152.2.2-10.152.2.254
local ip = 10.152.2.1
require chap = yes
refuse pap = yes
require authentication = yes
ppp debug = yes
pppoptfile = /etc/ppp/options .xl2tpd
length bit = yes
|
配置说明如下:
1
2
3
4
5
|
ip range = 可以连接VPN服务的客户端IP地址范围
local ip = VPN 服务器的IP,必须在客户端IP范围之外
refuse pap = 拒绝 pap 认证
ppp debug = 测试时打开
选择一个复杂的挑战-响应式验证字符串。虽然没有最短长度限制,不过它应该至少有16个字符,也应该足够复杂才能保证安全。
|
打开文件 /etc/xl2tpd/l2tp-secrets ,填入你的密码:
1
|
#vi /etc/xl2tpd/l2tp-secrets
|
1
|
* * exampleforchallengestring
|
打开文件 /etc/ppp/options,做如下配置:
1
|
#vi /etc/ppp/options
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
refuse-mschap-v2
refuse-mschap
ms-dns 8.8.8.8
ms-dns 8.8.4.4
asyncmap 0
auth
crtscts
idle 1800
mtu 1200
mru 1200
lock
hide-password
local
debug
name l2tpd
proxyarp
lcp- echo -interval 30
lcp- echo -failure 4
|
ms-dns 选项设置要给客户端分配的 DNS 服务器,当客户端连接时,就会被分配这些 DNS。如果要加入多个 DNS,就每行一个,分别写几行。
如果你要给客户端推送wins设置,可以分别设置如下选项。
mtu 和 mru 按照openswan.org的说法,减小 mru/mtu 的大小非常重要。因为 l2tp/ipsec 会封装几次,可能导致性能下降,减小这个配置的大小可以一次性传输全部的包。
proxyarp 可以将连接的客户端的IP地址和以太网地址加入的系统的ARP表中。这会影响到本地局域网内其它客户端。
name l2tpd 用在 PPP验证文件里面。
测试:
1
|
xl2tpd -D
|
添加用户
打开文件 /etc/ppp/chap-secrets ,做如下配置:
1
2
|
user1 l2tpd chooseagoodpassword *
user2 * chooseagoodpassword *
|
每行包括如下字段:
客户端 = 用户名称
服务器 = 在上面的 /etc/ppp/options.xl2tpd 定义的名字
密码 = 用户密码,你应该设置一个足够复杂的密码
IP 地址 = * 表示用户可以从任何地址连接,否则设置用户只能从特定的地址连接
注意:你可以添加多个用户。
IP转发
打开文件 /etc/sysctl.conf,修改配置:
1
|
net.ipv4.ip_forward=1
|
生效新的配置:
1
|
sysctl -p
|
启动VPN
1
2
|
sudo /etc/init .d /ipsec .vpn restart
sudo /etc/init .d /xl2tpd restart
|
参考链接:
https://linux.cn/article-3409-1.html
http://ryotamono.com/2015/03/Install%20L2TP%20Server%20on%20Ubuntu/
http://blog.csdn.net/seamanjiang/article/details/9337487
http://blog.csdn.net/hadooppythondjango/article/details/45248503
http://b.gkp.cc/2010/06/19/setup-ipsec-l2tp-on-centos-55/
本文转自 piazini 51CTO博客,原文链接:http://blog.51cto.com/wutou/1899340
Ubuntu15.04安装IPSec/L2TP相关推荐
- linux安装2870无线网卡,ubuntu15.04安装usb无线网卡
一般这种无线网卡都是联fake芯片,我使用的ralin(你懂的k)的usb无线1150 M. 你去找lei凌官网找不到,只能去找芯片类型的制造者,所以只能去联Fake官网查询下载对应型号. 1.我是这 ...
- ubuntu15.04安装wps-office的64位版
下载wps-office的x64版 http://wps-community.org/download.html 2.安装: sudo dpkg -i wps-office_9.1.0.4961~a1 ...
- debian java pick up_ubuntu15.04安装java的时出现Picked up JAVA_TOOL_OPTIONS: -jav
为了帮助网友解决"ubuntu15.04安装java的时出"相关的问题,中国学网通过互联网对"ubuntu15.04安装java的时出"相关的解决方案进行了整理 ...
- Ubuntu15.04 64位安装Theano(已经测试可执行)
备注:之前服务器上已经安装caffe,后安装Theano,所有有些步骤简略. 安装caffe详情见 Caffe + Ubuntu 15.04 + CUDA 7.5 在服务器上安装配置及卸载重新安装(已 ...
- ubuntu15.04在安装完vmware11后打开提示 VMware Kernel Module Updater
ubuntu15.04在安装完vmware11后打开提示 VMware Kernel Module Updater 说什么内核需要重编译,但点击确定后又失败了 查看了网上,说linux内核版本升级,导 ...
- ubuntu 21.04安装OBS Studio录屏软件
Linux支持的版本是由ubuntu14.04或者更新版本的官方提供的. 需要FFmpeg支持.对于ubuntu14.04 LTS,FFmepg并没有被正式包括在内,因此你需要一个特定的PPA: su ...
- 支持IPsec / L2TP / EtherIP测试版下载
支持IPsec / L2TP / EtherIP测试版下载 PacketiX ×××已经增加了支持IPsec / L2TP / EtherIP服务器的功能. 由此,iPhone.iPod Touch. ...
- efi linux win10,WIN10+UBUNTU15.04 kylin(EFI+GPT)
首先,恭喜自己经过两天的辛苦努力终于完成双系统的安装,一般新购买的电脑预装win8,都是采用EFI+GPT方式,而网上的很多教程都是bios+mrt下安装双系统,什么easybcd... balaba ...
- Ubuntu 15.04 安装 Nvidia Quadro系列显卡驱动
在这之前,我用的Ubuntu都是系统自带的驱动, 由于分辨率没有任何问题, 所以一直没有安装Nvidia官方的驱动; 近期更新到 15.04 之后, 在播放avi 格式的常规视频时却出现闪烁的现象, ...
最新文章
- 北汽蓝谷极狐阿尔法S与T
- 数据集合 oracle,oracle集合
- 记录 之 cat 和 awk gsub 的使用
- currency in SalesPipeline
- qq数据泄露_如何保护企业移动端的数据安全?
- 全球计算机用户人数,NIC2019年11月:全球IPv6 用户数占比中国居43位
- python工具书推荐_希望更加深入了解python 有什么书可以推荐?
- No package 'libxml-2.0' found
- PHP人民币金额数字转中文大写的函数
- Python 中 jieba 库
- 基于MATLAB的运动模糊图像处理
- 基于协同过滤算法的商品推荐购物电商系统
- 【MySQL数据库】 - 复杂查询(二)
- python学习笔记之pyinstaller failed to execute script问题
- 大snbsp;汪小菲nbsp;闪婚
- matlab分形曼德勃罗,曼德勃罗集合分形图案
- 低代码开发Paas平台时代来了
- oracle数据库or exists,Oracle Not Exists运算符
- 关于人工智能行业寒冬的思考
- 计算机基础课程的金课,我校8门课程获批省级线上“金课”