
Linux下使用docker搭建Openvpn代理的方法

说明
openvpn方式与pptpd方式对比(个人感觉):
复杂度:openvpn>pptpd
安全性:openvpn>pptpd
稳定性:openvpn>pptpd
1、安装
1.下载
docker pull kylemanna/openvpn
2.全局变量(方便设置)
OVPN_DATA="/root/ovpn-data" // 下面的全局变量换成你的服务器的外网ip IP="xxx.xxx.xxx.xxx"
3.创建文件目录
mkdir ${OVPN_DATA}
4.配置
docker run -v ${OVPN_DATA}:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u tcp://${IP}
5.初始化
docker run -v ${OVPN_DATA}:/etc/openvpn --rm -it kylemanna/openvpn ovpn_initpki
Enter PEM pass phrase: 输入123456(你是看不见的) Verifying - Enter PEM pass phrase: 输入123456(你是看不见的) Common Name (eg: your user, host, or server name) [Easy-RSA CA]:回车一下 Enter pass phrase for /etc/openvpn/pki/private/ca.key:输入123456
5.创建用户
docker run -v ${OVPN_DATA}:/etc/openvpn --rm -it kylemanna/openvpn easyrsa build-client-full CLIENTNAME nopass
Enter pass phrase for /etc/openvpn/pki/private/ca.key:输入123456
6.生成密钥
docker run -v ${OVPN_DATA}:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient CLIENTNAME > ${OVPN_DATA}/CLIENTNAME.ovpn
7.生成docker容器
docker run --name openvpn -v ${OVPN_DATA}:/etc/openvpn -d -p 1194:1194 --privileged kylemanna/openvpn
撤销签署的证书(删除用户)
进入docker
easyrsa revoke client1 easyrsa gen-crl cp /etc/openvpn/pki/crl.pem /etc/openvpn/crl.pem
编辑${OVPN_DATA}/openvpn.conf
crl-verify /etc/openvpn/crl.pe
重启Docker
作者测试环境说明:
系统: ubuntu 16.04 LTS
openvpn版本:
以上所述是小编给大家介绍的Linux下使用docker搭建Openvpn代理,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
详解为 Docker 设置代理
因为众所周知的原因,Docker在国内的使用举步维艰.于是,很多组织在国内提供了mirror或者叫加速器. 甚至在1.13的release note中提到微软提供了官方的中国镜像,然后我并没有找到怎么启用,找到了再写. 使用这些镜像或者加速器,拉取各种官方镜像是ok了,自有的镜像也可以放在国内的registry. 但是官方镜像只是沧海一粟,大量的组织或个人的镜像都在docker hub,这一部分并没有被镜像同步. 于是,你还是需要一个代理. 本文假设: 你已经有一个http代理了 Linux发行
-
Docker设置代理的方法教程
在一些实验环境,服务器没有直接连接万网的权限,需要通过网络代理:通常情况下将网络代理直接配置在/etc/envrionment./etc/profile之类的配置文件中,这对于大部分操作都是可行的.然而,docker命令却不能使用这些代理.最典型场景就是docker需要从外网pull镜像: 下面推荐一种方法,修改后会一直生效,该方法覆盖了默认的docker.service文件: 1.为docker服务创建一个内嵌的systemd目录 mkdir -p /etc/systemd/system/do
-
Docker网络代理设置详解
背景 在一些实验室环境,服务器没有直接连接外网的权限,需要通过网络代理.我们通常会将网络代理直接配置在/etc/environment./etc/profile之类的配置文件中,这对于大部分操作都是可行的.然而,docker命令却使用不了这些代理. 比如docker pull时需要从外网下载镜像,就会出现如下错误: $ docker pull hello-world Unable to find image 'hello-world:latest' locally Pulling reposit
-
Linux下使用docker搭建Openvpn代理的方法
说明 openvpn方式与pptpd方式对比(个人感觉): 复杂度:openvpn>pptpd 安全性:openvpn>pptpd 稳定性:openvpn>pptpd 1.安装 1.下载 docker pull kylemanna/openvpn 2.全局变量(方便设置) OVPN_DATA="/root/ovpn-data" // 下面的全局变量换成你的服务器的外网ip IP="xxx.xxx.xxx.xxx" 3.创建文件目录 mkdir ${
-
Linux环境下使用Docker搭建Jenkins容器的方法步骤
目录 需要提前准备的条件 Step1:安装Jenkins镜像 Step2:docker启动Jenkins容器 Step3:访问Jenkins Step4:安装Jenkins插件 需要提前准备的条件 Maven环境 Docker环境 JDK环境(Centos8 自带JDK环境去除,重装的JDK) Step1:安装Jenkins镜像 用docker查询jenkins镜像 docker search jenkins 我们选择下载第二个,jenkins/jenkins,下载命令 docker pull
-
linux 下jenkins项目搭建过程(centos7为例 )
以部署https://gitee.com/tengge1/ShadowEditor 这个项目为例 一.安装jdk 1.下载jdk 以jdk-8u261-linux-x64.tar.gz 安装为例 2.创建 java文件夹 cd /usr/local mkdir java 3.然后解压jdk包 tar -zcvf jdk-8u261-linux-x64.tar.gz 4.配置环境变量 vi /etc/profile 5.加入 6.保存退出 :wq 7.生效配置文件 source /etc/prof
-
linux下利用Docker安装mysql的步骤
作为一个测试人员,在学习的过程中,可能经常需要去在linux下安装一些软件,有的软件通过搜索别人的博客教程进行安装的话,随着一些软件的升级,以及虚拟机/服务器镜像版本不一致等外部因素,都有可能导致安装软件出现各种不可预知的问题,到时候还得去搜索资料逐一解决问题,挺耽误时间的. 而且,像linux下这些软件的安装,一般都是运维的事情,测试作为学习使用的话,安装好一个mysql数据库用于学习使用就行,新手不建议在linux下下载源码去安装软件,容易出问题. 接下来为大家演示一下,如何通过docker
-
Linux 下VSFTP服务搭建过程
Vsftp服务 服务功能:文件传输 1.环境部署 ip=192.168.1.50 [root@localhost /]# rpm -ivh /mnt/Packages/vsftpd-2.2.2-11.el6_4.1.x86_64.rpm 2.匿名访问 1)设置配置文件 [root@localhost /]# vi /etc/vsftpd/vsftpd.conf chown ftp /var/ftp/pub --设置准备目录 anonymous_enable=YES --开启匿名访问 local_
-
详解mac下通过docker搭建LEMP环境
在mac下通过docker搭建LEMP环境境 1.安装virtualbox.由于docker是在lxc环境的容器 2.安装boot2docker,用于与docker客户端通讯 > brew update > brew install docker > brew install boot2docker 3.初始化boot2docker,也就是在virtualbox上安装一个docker的host环境 boot2docker init 此时会下载一个镜像 4.启动虚拟机host :~$ bo
-
Linux下Redis服务器搭建过程
系统环境 操作系统:CentOS 6.9 redis版本:redis-4.0.2安装步骤 1,安装预环境 运行以下命令安装预环境. [root@redis02 redis-4.0.2]# yum -y install gcc make 2,下载redis源代码文件并解压缩 下载完redis源代码后,运行以下命令进行解压缩. [root@redis02 softwares]# tar -xzf redis-4.0.2.tar.gz 3,redis编译 运行make命令进行编译. make命令执行完
-
linux下使用Apache搭建文件服务器的步骤
一.关于文件服务器 在一个项目中,如果想把公共软件或者资料共享给项目组成员,可以搭建一个简易的文件服务器来实现,只要是在局域网内的成员都可以通过浏览器或者wget命令来下载和访问资料.可以达到信息共享,软件版本一致的效果.本文讲述在linux环境下使用Apache服务搭建文件服务器. 二.使用Apache搭建文件服务器 1.Apache服务在linux环境下的程序叫做httpd,所以首先安装httpd服务,如果配置好了yum源的话,直接使用yum命令安 装,如果没有配置好yum源的话,可以参考博
-
CentOS7环境下使用Docker搭建PHP运行环境的过程详解
相关文章: CentOS7下使用yum安装Docker Win10环境下使用Docker搭建PHP运行环境 1.创建私有网络 docker network create lnmp 私有网络创建成功: 2.安装Nginx 镜像地址:https://hub.docker.com/_/nginx?tab=tags 可以安装最新版Nginx,这里通过搜索标签,拉取 Nginx1.18.0 镜像: docker pull nginx:1.18.0 使用 docker images 命令查看 安装Nginx
-
Linux下完全删除用户的两种方法
Linux操作 实验环境:Centos7虚拟机 首先创建一个普通用户 gubeiqing . [root@localhost ~]# useradd gubeiqing [root@localhost ~]# passwd gubeiqing Changing password for user gubeiqing. New password: BAD PASSWORD: The password is a palindrome Retype new password: passwd: all
随机推荐
- Swift网络请求库Alamofire使用详解
- jQuery EasyUI 右键菜单--关闭标签/选项卡的简单实例
- 深入理解JavaScript系列(1) 编写高质量JavaScript代码的基本要点
- 详解SpringMVC @RequestBody接收Json对象字符串
- 浅析script标签中的defer与async属性
- JQuery 在表单提交之前修改 提交的值 原创
- Flax3.0汉化版下载[好用的flash文字特效工具]下载
- JQuery遍历DOM节点的方法
- IIS 状态代码的含义
- 小心提防:密码保护必备知识问答
- 最新收集的卡巴更新服务器列表(含IP地址)
- 基于Python __dict__与dir()的区别详解
- C++/java 继承类的多态详解及实例代码
- 解决ie img标签内存泄漏的问题
- 使用php计算排列组合的方法
- PHP实现删除非站内外部链接实例代码
- oledb连接access数据库示例
- Python快速转换numpy数组中Nan和Inf的方法实例说明
- python获取点击的坐标画图形的方法
- Java Redis分布式锁的正确实现方式详解
其他
- python递归读取xmind的最后一个节点并写入excel
- Python字典中key.decode
- vue style里使用data变量
- python绘制概率密度直方图
- Vue页面端开发手机画面在web端预览
- python qt 主窗口获取子窗口关闭消息
- pyqt5和matplotlib交互
- vue2 mounted应用
- linux系统如何开放远程端口
- pytorch 无参数层
- python里的for i in range的i从哪个数开始
- @SpringBootTest启动到Appliaction
- flask路由的方式
- java 集群 动态创建定时任务
- 微信小程序原生 弹出层效果
- ios uitextView @ 一件删除
- android activity点击监听
- bootstrap 修改 输入框 宽度
- spring aop记录方法执行时间
- java里把部分sql传到xml