一行命令搭建内部的管道

在上一篇《边缘计算k8s集群之SuperEdge》文章中,笔者基于ECK搭建了边缘集群并添加了节点。通过边缘集群,我们可以很方便的管理各个地域的节点,本地、各云厂商的机房、客户所在地、海外的都可以。在本篇内容,我们将讲述如何使用ipsec-vpn-server,通过一行命令即可搭建内部的管道,用于锻炼技术,技术学习。

ipsec-vpn-server

ipsec-vpn-server可以让我们快速通过容器镜像搭建 IPsec VPN 服务器,支持 IPsec/L2TP,Cisco IPsec 和 IKEv2 协议。

官方镜像地址:

https://hub.docker.com/r/hwdsl2/ipsec-vpn-server

Github地址:

https://github.com/hwdsl2/docker-ipsec-vpn-server

官方的文档比较齐全,具体可以参考:

https://github.com/hwdsl2/docker-ipsec-vpn-server/blob/master/README-zh.md

接下来,我们来演示下如何一行命令即可搭建自己的VPN服务器。

Docker部署

参考脚本如下所示:

docker run \--name ipsec-vpn-server \--env-file ./vpn.env \--restart=always \-v ikev2-vpn-data:/etc/ipsec.d \-p 500:500/udp \-p 4500:4500/udp \-d --privileged \hwdsl2/ipsec-vpn-server

env文件定义参考如下:

VPN_IPSEC_PSK=your_ipsec_pre_shared_key
VPN_USER=your_vpn_username
VPN_PASSWORD=your_vpn_password

执行成功后,可以查看docker日志(命令参考:docker logs ipsec-vpn-server)获得相关客户端配置信息。

日志中会输出以下内容:

Connect to your new VPN with these details:Server IP: 你的VPN服务器IP
IPsec PSK: 你的IPsec预共享密钥
Username: 你的VPN用户名
Password: 你的VPN密码

K8s部署

参考Yaml如下所示:

apiVersion: apps/v1
kind: Deployment
metadata:annotations:deployment.kubernetes.io/revision: "2"generation: 2labels:k8s-app: ipsec-vpn-server  name: ipsec-vpn-server  namespace: default
spec:progressDeadlineSeconds: 600replicas: 1revisionHistoryLimit: 10selector:matchLabels:k8s-app: ipsec-vpn-server  strategy:rollingUpdate:maxSurge: 1maxUnavailable: 0type: RollingUpdate  template:metadata:annotations:edge.tke.cloud.tencent.com/cpu: "1"edge.tke.cloud.tencent.com/mem: 2Gi      creationTimestamp: nulllabels:k8s-app: ipsec-vpn-server    spec:containers:- env:- name: VPN_IPSEC_PSK #IPsec PSK,预共享密钥value: "your_ipsec_pre_shared_key"- name: VPN_USER   #用户名value: your_user_name        - name: VPN_PASSWORD  #密码value: "you_password"- name: VPN_SETUP_IKEV2 #启用IKEv2协议,推荐value: "yes"image: hwdsl2/ipsec-vpn-server        imagePullPolicy: Always        name: ipsec-vpn-server        resources:limits:cpu: 500m            memory: 1Gi          requests:cpu: 250m            memory: 256Mi        securityContext:privileged: true #开启特级权限dnsPolicy: ClusterFirst      hostNetwork: true  #使用Host网络restartPolicy: Always      terminationGracePeriodSeconds: 30
kubectl create -f ipsec-vpn.yaml

执行成功后,通过可以通过日志得到相关配置信息:

这里有不清楚的,可以参考笔者之前的教程:《使用Kubectl部署应用》

关于host network

在k8s中我们使用了host network模式,在docker中我们也可以采用这种模式。这是因为IKEv2协议的端口是固定的,如果通过k8s的service转发,则端口就发生了改变,因此在k8s中我们使用了host network模式,但是这是不推荐的。在该模式下,容器的网络栈未与 容器主机隔离,从而在使用 IPsec/L2TP 模式连接之后,VPN 客户端可以使用主机的 VPN 内网 IP 访问主机上的端口或服务。

端口说明

需要打开 UDP 端口 500 和 4500。

客户端连接配置

支持Window、OS X、Android、IOS、Chromebook、Linux,官方文档比较齐全,请参考:

无需额外安装客户端:

https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/clients-zh.md

Cisco IPsec(更高效地传输数据(较低的额外开销)):

https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/clients-xauth-zh.md

最后

是不是超级简单呢?赶紧实践实践吧?

如果对Docker和k8s还存在疑问,可以参考笔者之前的教程、博客和书籍《Docker+Kubernetes应用开发与快速上云》。

转载是一种动力 分享是一种美德

如果喜欢作者的文章,请关注【麦扣聊技术】订阅号以便第一时间获得最新内容。本文版权归作者和湖南心莱信息科技有限公司共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

文档官网:docs.xin-lai.com

QQ群:

编程交流群<85318032> 

产品交流群<897857351>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/304350.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ArchiMate - 发布【企业架构语言ArchiMate v0.5.pdf】

在《年度总结和计划&#xff1a;去年4个1&#xff0c;今年5个1》中说过今年我准备在项目组引入1个架构语言&#xff08;ArchiMate&#xff09;&#xff0c;为了便于大家学习&#xff0c;我把一些内容集成一本电子书&#xff0c;目前发布0.5版本&#xff0c;后续还会不断更新&am…

那些有趣/用的 Python 库

图片处理pip install pillowfrom PIL import Imageimport numpy as npa np.array(Image.open(test.jpg))b [255,255,255] - aim Image.fromarray(b.astype(uint8))im.save(new.jpg)youtube-dl下载国外视频pip install youtube-dl #直接安装youtube-dlpip install -U youtube…

linux系统刷分辨率,Linux下设置其分辨率及刷新率

行频&#xff1a;行频又称为“水平扫描频率”&#xff0c;指电子枪每秒在荧光屏上扫过的水平线的数量&#xff0c;其值等于“场频 垂直分辨率1.04”&#xff0c;单位为KHz(千赫兹)。行频是一个综合分辨率和场频的参数&#xff0c;该值越大&#xff0c;显示器可以提供的分辨率越…

.NET 5 部署在docker上运行

1、创建站点创建一个ASP.NET Core Web应用程序&#xff0c;选中启用Docker支持。自动帮我们创建一个Dockerfile文件。2、编写Dockerfile文件dockerfile是一个文件格式的配置文件&#xff0c;用户可以使用dockerfile来快速构建自定义的镜像。由一行行命令语句组成&#xff0c;并…

Nexus:一站式私有仓库管理(NuGet、Maven、npm、Docker)

我们在日常开发中经常需要使用到私有仓库&#xff0c;比如 dotNET 中的 NuGet、Java 中的 Maven、前端的 npm&#xff0c;还有 Docker 镜像&#xff0c;每一个私有仓库各自管理&#xff0c;维护起来比较麻烦&#xff0c;而 Nexus 可以将其统一起来。本文将介绍 Nexus 的安装以及…

众里寻 Bug 千百度,蓦然回首,它却在隔壁老张处……

程序员与 Bug 是一对矛盾的存在&#xff0c;程序员既要在解决 Bug 中获得成就感&#xff0c;同时也讨厌 Bug 本身的存在。“程序不息&#xff0c;Bug 不止”&#xff0c;程序员在与 Bug 的斗争中&#xff0c;也有很多有趣的事情发生&#xff0c;我们整理了一些程序员在调试 Bug…

Blazor WASM 实现人民币大写转换器

点击上方蓝字关注“汪宇杰博客”导语.NET 5 正式发布已经有一段时间了&#xff0c;其中 Blazor 技术是该版本的亮点之一。作为微软技术的被坑者&#xff0c;年少的我曾经以为 SilverLight 能血虐 Flash&#xff0c;Zune 能团灭 iPod&#xff0c;WP 能吊打 iPhone&#xff0c;UW…

金山安全实验室公布中国互联网六大类钓鱼网站

金山安全实验室公布中国互联网六大类钓鱼网站金山安全实验室研究人员对中国大陆钓鱼网站的普遍特征进行分析&#xff0c;发现以下六个领域最容易被钓鱼网站***&#xff1a;1.QQ十年庆典、QQ抽奖、腾讯活动&#xff1b;2.证券、股票分析、黑庄、理财专家等财经领域&#xff1b;3…

程序员过关斩将--领导说我的类的职责不单一

“为什么类的职责要单一化&#xff1f;“类的职责单一化很容易吗&#xff1f;首先&#xff0c;我要提醒一下看到这篇文章的同学&#xff0c;我认为保证类&#xff08;一定是类吗&#xff1f;&#xff09;的单一职责并不容易软件开发过程中&#xff0c;自古就流传着几大规则&…

从概念到案例,机器学习应该掌握的20个知识点

随着科技的发展&#xff0c;计算机对人类的生产活动和社会活动产生了极为重要的影响&#xff0c;同时以强大的生命力飞速发展着。目前计算机正广泛用于社会各个领域&#xff0c;并朝着微型化、网络化、智能化和巨型化的方向前进。说到智能化&#xff0c;大家最先想到的应该就是…

闲来没事写个记事本玩玩!!!

这两天工作压力大&#xff0c;还好今天见着太阳了&#xff0c;这会儿没事写了个记事本&#xff0c;功能单一&#xff0c;适合练手&#xff0c;可能对新手会有所帮助&#xff0c;贴上来看看吧&#xff0c; 说到实现 记事本&#xff0c;我们应该选择什么样的控件呢&#xff0c;Te…

LG将授权webOS给其他电视厂商使用

喜欢就关注我们吧&#xff01;LG 将向其他公司提供 webOS。根据 LG 发布的公告&#xff0c;其自家电视机搭载的专有系统 webOS 将会授权给其他的外部电视厂商使用。被授权使用 webOS 的电视厂商还会获得来自 LG 的 Magic Motion 遥控器&#xff0c;此外&#xff0c;系统的语音控…

数据之美,堪比好莱坞大片!

看完下面的几张图&#xff0c;你就知道自己有多无知了。堪称是好莱坞大片啊&#xff01;1城市3D空间通过2D瓦片图层的3D化&#xff0c;能够在经度维度、量级、时间多个维度上真实还原城市3D空间。例子中为模拟的轨迹数据和旧金山食物供应商分布。2GPS轨迹分布以三种不同的方式描…

HSRP的配置问题

HSRP的配置问题<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />实验目的&#xff1a;理解和掌握路由热备份的配置步骤和原理实现网关的冗余功能实验环境&#xff1a;如下图所示<?xml:namespace prefix v ns "urn:sch…

数学从小学开始“梯次掉队”?别让课本的枯燥“浇灭”孩子对数学的兴趣

1、2、3、4、5……从孩子用手指数数开始&#xff0c;就与数学结下了不解之缘。进入幼儿园&#xff0c;在老师的指导下画出三角形&#xff0c;圆形等&#xff0c;这是数学中的几何。稍大一点&#xff0c;到商店里买东西&#xff0c;开始懂得买的东西是多还是少&#xff0c;是大还…

用算法撩妹都不会,别跟我说你是程序员

程序员浪漫的表白方式可以说是花样百出&#xff0c;为什么用在自己身上就没效果呢&#xff1f;作为一个程序员“身边的女生”&#xff0c;小编觉得&#xff0c;大部分程序员没有女朋友&#xff0c;很可能是恋爱技能bug太多&#xff0c;当你还不确定那个女生对你的喜欢程度&…

从工作经历和实践理论看工业互联网的发展

一.前言本篇文章是对以前点点滴滴的记录整理而成&#xff0c;也是我们做iNeuOS工业互联网操作系统进行的深入思考。本篇文章有宣传产品之嫌&#xff0c;但是确实是我们理念与实践相结合的产物。下面的图是我2017年参加完工博会后&#xff0c;在QQ群里做的调查&#xff0c;仅供大…

关于c语言的符号常量以下叙述中正确的是,关于C语言的符号常量,以下叙述中正确的是...

摘要&#xff1a;项指需要哪一以下标不上报&#xff0c;关于女病工作普查普治评价进行对妇时。下列正确的是说法&#xff0c;符号治愈率达&#xff0c;告说治疗者某广某药斑狼了2例红疮患&#xff0c;其中痊愈0例。行为个体这种矫正称为方法&#xff0c;常量吸烟济处烟者予经当…

2017年终奖发放,程序员人均11776元排名第一!

又到了一年一度的“晒年终奖”时刻了&#xff01;你敢晒一波吗&#xff1f;快过年了&#xff0c;又到了一年一度的年终奖盘点时间&#xff01;此可谓扎心扎心再扎心&#xff01;那么&#xff0c;你2017年的年终奖有多少&#xff1f;满意不&#xff1f;2017年全国白领人均年终奖…

因MemoryCache闹了个笑话

前言是这么一回事&#xff1a;我正在苦思一个业务逻辑&#xff0c;捋着我还剩不多的秀发&#xff0c;一时陷入冥想中……突然聊天图标一顿猛闪&#xff0c;打开一看&#xff0c;有同事语音&#xff1b;大概意思是&#xff1a;同事把项目中Redis部分缓存换成MemoryCache/Memcach…