openswan专栏序言
openswan专栏序言
“一杯茶,一包烟,一个bug解一天!!!”。

2020年春季,正值新冠病毒在全球肆虐之际,美国的疫情已经相当的严峻,每天仍以3万速度狂奔。而国内的疫情在全国人民的共同努力下已经逐渐减弱,并趋于正常,人们的工作、生活逐步步入正轨。在这里由衷的希望全球人们早日度过难关,开始新的征程。
首先需要说明openswan的起源。 现在网络已经基本实现了互联互通,但是通讯面临着很大的挑战:不安全,容易被攻击、窃听。比如几年前的棱镜门事件。而为了实现安全网络通讯,出现了各种各样的加密手段:网络层加密、传输层加密、套接字层加密等等。而IPsec便是网络层加密的一个杰出的代表,IPsec的开源实现包括最初的freeswan, 以及之后的再次基础上开发的openswan和strongswan工程。我们这里主要通过openswan来学习IPsec功能。
今天特别的在CSDN开通一个openswan源码专栏,主要用来分享个人在学习openswan源码的过程中的心得和体会,将用到的知识和技术分享出来,同时也提供一个平台供大家交流学习。开通这个专栏的目的主要是由于:在学习的过程中,找到的可用资料很少,基本只能去查询RFC文档、分析源码,这样固然让我们印象更加深刻,但是会浪费很多的时间。尽管如此,也可能找不到合适的资料或者结论,因此为了节省宝贵的时间,特将个人的学习历程、获得的资料、用到的知识和技术信息、等等各种信息全部以博客的方式分享。同时也会将笔记、流程图、思维导图等信息整理为文档,后期如果需要则可提交至网盘,并在博客里附上相应的链接。
由于openswan的源码代码量比较多,且涉及到的知识也很广,比如加解密算法、IKE协商、PKI公钥设施等,因为它的最终目的是安全,而不是创建隧道访问内网,因此涉及到很多的算法,这部分导致了IPsec学习起来很费力、枯燥。个人没有这部分算法的任何基础,因此对算法的介绍会放到其他工作之后。在接下来的多半年时间里(2020年5月~2021年初),我会尽自己最大的努力来学习openswan源码。计划是每周做一篇博客用来记录这一周时间内的学习心得和技术,同时也会将注释后的代码进行分享。希望通过自己的努力和付出,为其他人节省更多的时间来学习其他的知识和技术。同时其他人也可以将自己的疑问、见解、相关技术分享出来供大家学习和讨论,增进理解。
结语:决定一个人成就的,不是天分,也不是运气,而是坚持和付出,是不停的做,重复的做,用心的做。如果没有阳光,我们要学会享受风雨的清凉;如果没有鲜花,我们要学会享受泥土的芬芳;记住每天鼓励自己,越努力,越勤奋,越幸运,越感恩,越幸福。
openswan专栏序言的更多相关文章
- openswan IPSec专栏目录锦集
为了方便查阅现有的文章,特准备一个目录页供后续查询使用 专栏序言 1. 基础知识 openswan任务调度基础知识之信号 2. openswan环境搭建 openswan框架和编译时说明 opensw ...
- 原来你是这样的http2......
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由mariolu发表于云+社区专栏 序言 目前HTTP/2.0(简称h2)已经在广泛使用(截止2018年8月根据Alexa流行度排名的头 ...
- 我是怎么一步步用go找出压测性能瓶颈
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由mariolu 发表于云+社区专栏 序言: 笔者要在线上服务器load日志并且重放来测一些机器性能指标.模拟机器资源比较少,相对的 ...
- openswan协商流程之(七):main_inR3
主模式第六包(收包):main_inR3 1. 序言 main_inR3()函数是ISAKMP协商过程中第一阶段的最后一个报文的接收处理函数,它的作用同main_inI3_outR3()部分功能相同: ...
- openswan协商流程之(一):main_outI1()
主模式第一包:main_outI1() 1. 序言 main_outI1()作为主模式主动发起连接请求的核心处理函数,我们可以通过学习该函数的处理流程来探究openswan中报文封装的基本思想.如果之 ...
- [OpenGL超级宝典]专栏前言
我小时候的梦想呢,是做宇航员或者科学家或者是做一款属于自己的游戏,后来前面两个梦想都没有实现,于是我就来实现我的第三个梦想了,,,我呢,也算是零基础,因为我的专业是物联网工程,这个专业覆盖面之广,简直 ...
- [3D数学基础:图形与游戏开发]专栏前言
期待的书终于到了,接下来我会把自己的学习笔记以及心得整理出来,形成专栏,每一章都进行记录和学习总结,今天是2016年12月30日,再过一天就是元旦了,就要迎来美好的2017年了!!!加油~ 上面的书就 ...
- 通过openswan基于Azure平台搭建VPN server
用过Azure的读者都知道,Vnet一直是Azure比较自豪的地方,尤其是VPN,Azure提供了两种VPN以及专线来保证客户数据的安全性,S2S vpn(站点到站点的,基于IPsec的),P2S v ...
- 跟vczh看实例学编译原理——零:序言
在<如何设计一门语言>里面,我讲了一些语言方面的东西,还有痛快的喷了一些XX粉什么的.不过单纯讲这个也是很无聊的,所以我开了这个<跟vczh看实例学编译原理>系列,意在科普一些 ...
随机推荐
- rot位移密码详解(rot5、rot13、rot18、rot47)
最近训练CTF的时候,发现密码学这块的知识不太系统,所以自己接下来会陆陆续续整理出来 rot密码 rot密码其实可以看作是凯撒密码的一种变式 本质都是移位运算 rot密码按种类大致分为以下几类 rot ...
- MySQL 执行优化查询
查询执行的基础 当希望MySQL能够以更高的性能运行查询时,最好的办法就是弄清楚MySQL是如何优化和执行查询的.当向MySQL发送一个请求的时候,MySQL执行过程如图1-1所示: 图1-1 查询执 ...
- C++ //关系运算符重载 < = > !=
1 //关系运算符重载 < = > != 2 #include <iostream> 3 #include <string> 4 using namespace s ...
- Lateral Movement
简介 这次去宁夏护网,发现我有的朋友连最基本的横向渗透有些都不晓得,他们问我 我也表达不清楚...,就想着写篇文章总结下吧 (慢慢更..) 可以发我邮箱讨论:muxue@protonmail.com ...
- fiddler 之 返回数据乱码解决方法
1.有时用fiddler抓包, 发现抓到的包, 发送数据和返回数据都是乱码, 怎么办? 直接上图 (这办法不是100%成功的) 方法一: 方法二:
- VIM的命令历史
例如有一段文本,将所有CTRL替换为ctrl,将所有A替换为a,也就是执行了:%s/CTRL/ctrl/g和:%s/A/a/g两条命令,然后进行了很多其他编辑,最后关闭VIM. 后来又有一段文本,也需 ...
- Python语言系列-02-基础数据类型
格式化输出 #!/usr/bin/env python3 # author:Alnk(李成果) # 百分号% 格式化输出 name = input('姓名:') age = input('年龄:') ...
- docker安装完权限问题
在用户权限下docker 命令需要 sudo 否则出现以下问题 通过将用户添加到docker用户组可以将sudo去掉,命令如下 sudo groupadd docker #添加docker用户组 su ...
- NOIP 模拟 $36\; \rm Cicada 与排序$
题解 \(by\;zj\varphi\) 设 \(rk_{i,j}\) 表示第 \(i\) 个数最后在相同的数里排第 \(j\) 位的概率. 转移时用一个 \(dp\),\(dp_{i,j,0/1}\ ...
- 【硬件模块】RFIDSetting
The Octane SDK includes the core library by acting as a wrapper for extraction, modifying, and the a ...