说明

上一篇已经移植完strongswan的全套工具,以及内核模块也做了支持。接下来就是移植的工具在开发板的部署了。

资源部署

1、文件放置

有了内核的支持,现在要做的就是把L2TP/IPsec的工具都部署到开发板。

只有正确部署,这些工具才能顺利跑起来。

前面交叉编译xl2tpd和strongswan的时候,都是以开发板的环境进行配置的,我这边的开发板是在/mnt/platform下运行的(bin/sbin/lib/libexec都是存放在这里目录下),所以前面的配置传参都是用/mnt/platform,不要交叉编译的时候随便配置一个路径,不然在部署到开发板的时候,让你头疼的问题会层出不穷。

接下来,我们需要把以下图片中的资源,都拷贝到开发板上的/mnt/platform目录下:

其中,xl2tpd和xl2tpd-control也放到上图的sbin目录中。

另外,在etc目录下,创建一个xl2tpd的目录,在xl2tpd这个目录下创建一个xl2tpd.conf文件;

在etc目录下,创建一个ipsec.secrets文件;

在etc目录下,创建一个ppp的目录,把拨号相关的chap-secrets文件,拷贝到该目录下。

在ppp目录下,创建一个options.l2tp.conf文件(该文件名字随意,不过要与xl2tpd.conf里的参数对应上)。

所有配置文件如下图:

2、配置修改

所有要修改的配置文件,都位于开发板的/mnt/platform/etc下,主要修改的配置文件有:ipsec.conf、ipsec.secrets、xl2tpd.conf、options.l2tp.conf。

  • ipsec.conf
conn %defaultikelifetime = 60mkeylife = 20mkeyexchange = ikev2                                    //密钥交互协议版本rekeymargin = 3mkeyingtries = 1authby = secretike = aes256-sha256-modp2048!                           //密钥交互算法esp = aes256-sha256-modp2048!                          //数据传输算法# Encryption of traffic to the L2TP serverconn eft-ipsecleft = %defaultrouteleftprotoport = 17/1701# set ip of l2tp server, default is "192.168.10.100"right = 192.168.10.100                              //远程L2TP服务器iprightprotoport = 17/%any# Auto start of encrytion if negotiation failsauto = start# Restarting encryption if negotiation failsdpdaction = restart# Restart encryption on unexpected closecloseaction = restart# Reconnect unlimited number of timeskeyingtries = %foreverauthby = secrettype = transport                                        //透传模式

这里的ike以及esp算法,要根据L2TP服务器的配置进行设置,算法不一致,加密认证是无法通过的。

  • ipsec.secrets
# <GATEWAY IP ADDRESS> <SERVER ADDRESS> : PSK "<PRE-SHARED KEY>"
%any 192.168.10.100 : PSK "123456"

192.168.10.100是L2TP远程服务器的IP,123456是预共享密钥的密码。

  • xl2tpd.conf
[lac eft-ipsec]
lns = 192.168.10.100
ppp debug = yes
pppoptfile = /mnt/platform/etc/ppp/options.l2tp.conf
length bit = yes
autodial = yes
redial = yes
redial timeout = 30

/mnt/platform/etc/ppp/options.l2tp.conf是options.l2tp.conf文件的绝对路径,根据自己开发板的实际环境进行设置。

  • options.l2tp.conf
ipcp-accept-local
ipcp-accept-remote
refuse-eap
require-mschap-v2
noccp
noauth
mtu 1280
mtu 1280
noipdefault
nodefaultroute
usepeerdns
connect-delay 5000
name test
password test-vpn

这里的test和test-vpn,是用于L2TP客户端登录的用户名和密码,不涉及IPsec。
而前面ipsec.secrets文件里的密码123456,是和IPsec相关的,用于预共享密钥。两者不冲突。

至此,环境部署完毕,全套配置文件存放到以下路径,有需要的下载自取:
https://download.csdn.net/download/weixin_44362642/86666005

七、启动L2TP

1、先确认板端已开启4G拨号模块,最好试下能否ping通百度,确保网络畅通(或者用有线网络也一样,只要能访问到百度就行)。

2、在板端敲下以下命令:

xl2tpd -C /mnt/platform/etc/xl2tpd/xl2tpd.conf -D

l2tp服务器会分配一个IP给客户端,这里客户端得到的IP为10.199.12.203,通过ifconfig可以查看得到(此时是没有开启ipesc安全加密的):

此时,服务器就可以访问到的你的开发板了。如果没有安全性的要求,那开发到这里就可以结束了。

而如果对安全性有要求,则继续往后看。

八、启动IPsec

1、在板端敲下以下命令:

ipsec start --nofork --debug-all

图片中出现的ah4、esp4等not found可以不用理睬,我们已经把这些模块集成到了内核。因为不是动态装载,所以才会报错,但是不影响工具的运行。

最后结果我们可以从L2TP服务器端看到:

此时,l2tp/ipsec已成功和服务器建立安全连接,服务器可以访问到的你的开发板了。

(注意:本博客只在CSDN发布,原创不易,禁止抄袭,转载请标明出处和附上原文链接)

L2TP客户端之Strongswan移植(三)相关推荐

  1. L2TP客户端之Strongswan移植(二)

    说明 上一篇博客L2TP客户端之Strongswan移植(一)有提到,移植前需要一些准备,需要交叉编译gmp.openssl.crypto.curl,这里我们将会对strongswan全套工具和依赖库 ...

  2. L2TP客户端之Strongswan移植(一)

    说明 本篇是序言篇,会对L2TP客户端的移植做一个简单的介绍.后续篇章才是移植的真正开始. 一.L2TP简介 L2TP是一种工业标准的Internet隧道协议,全称是第二层隧道协议(英语:Layer ...

  3. s5pv210 uboot-2012-10移植(三) 之支持SPL

    s5pv210 uboot-2012-10移植(三) 之支持SPL 上次的uboot的BL1是自己实现的,今天就来让uboot-2012-10支持SPL功能,但不是完全用的uboot本身的代码,也不知 ...

  4. mysql 客户端 交叉编译_移植mysql到嵌入式ARM平台

    移植MySQL到嵌入式ARM平台 MySQL没有专门针对ARM的版本,移植到ARM没有官方文档可参考,因此,暂时参考这样一篇文档: http://blog.chinaunix.net/space.ph ...

  5. Linux 终端环境安装 L2TP 客户端

    安装: yum -y install xl2tpd ppp 安装成功后,直接进入配置流程 配置: 配置过程也并不复杂,主要有两个文件.首先就是配置 /etc/xl2tpd/xl2tpd.conf 文件 ...

  6. Restful API 生成复杂Json数据结构及使用客户端解析该数据结构(三)

    前提说明:首先约定接口之前,需要约定接口的参数,接口参数包括输入参数和输出参数 输入参数:指接口调用时输入的参数 输出参数:即接口调用时返回的参数. 那么如果说,约定输入输出参数均需要采用Json结构 ...

  7. ZooKeeper客户端源码(三)——Watcher注册与通知

    首发CSDN:徐同学呀,原创不易,转载请注明源链接.我是徐同学,用心输出高质量文章,希望对你有所帮助. 本篇源码基于ZooKeeper3.7.0版本. ZooKeeper 提供了分布式数据的发布/订阅 ...

  8. 安卓版炉石修改服务器,越南玩家自制炉石传说安卓版客户端 可能公开移植方法...

    炉石传说安卓版何时才能上线?相信这个一定是广大安卓炉友 关心的话题了.对此,暴雪早在今年年初就已提到:除了已经上架的iPad版外,对应安卓系统的炉石客户端也在紧密制作中,预计将会在年底上线. 凭什么苹 ...

  9. 优酷客户端埋点质量保障三步曲

    一.背景 优酷客户端在埋点的质量保障过程中,遇到了一些困难和挑战,我们从项目流程.测试方案.业务深入度 3 个方面进行改造,经历多个版本的迭代,形成了一套客户端埋点质量保障方案,这里和大家分享一下. ...

最新文章

  1. zh-cn 与 zh-hans 是什么关系、有什么区别
  2. MySQL Workbench 5.2.45 GA 发布
  3. 2019年安徽省模块七满分多少_艺考资讯 | 2021年美术统考考多少分才能通过?过了合格线有什么意义?美术生一定要重视!...
  4. 一文带你深入理解JVM内存模型
  5. 附笔记pdf下载,MIT中文线性代数课程精细笔记[第四课]
  6. 直击中关村创业大街,新街头霸王来了
  7. ListView控件 1130
  8. python中对文件的操作_Python对文件操作知识
  9. ALM产品六爻:TeleLogic, Rational, DevTrack, Jira, RTC, URTrack...
  10. 小米新生态总监董红光:致力打造智能服务开放平台
  11. android简繁体切换快捷键,我的Android进阶之旅------Android中如何高效率的进行简繁体转换...
  12. map转字符串数组中 php_php array_map()数组函数使用说明_PHP - ucfirst
  13. 失败程序员的十年总结
  14. pandas的自带数据集_Pandas教程:初学者入门必备,很全面,很详细!
  15. 全国省市拼音数据json
  16. 25篇最新CV领域综述性论文速递!涵盖15个方向:目标检测/图像处理/姿态估计/医学影像/人脸识别等方向...
  17. Android软件开发面试题,安卓面试题库
  18. WebRtc的下载(未完,当前只下载了部分)
  19. 房价整体下降已成定局
  20. 解决【v-show 有时失效】问题

热门文章

  1. nas安装emby_[Troy]瞎折腾 篇二:黑群晖安装Emby教程—Emby Server无法启动怎么办
  2. WebLogicServer BEA-000386 Weblogic启动报错
  3. PS 修改图片上的文字内容但保留文字格式
  4. Scrum板与Kanban如何抉择?敏捷工具:curcwz板与按照esvpvaoq
  5. java ftp 被动模式_ftp 主动模式与被动模式
  6. 微信小游戏|创建3D篮球小游戏项目
  7. 超级产品:喜茶,凭什么能估值90亿
  8. 说说亲身经历的草根seo的辛酸
  9. 2012年10大科技产品
  10. 高薪程序员面试题精讲系列39之说说HashMap的特点及其底层数据结构