当前位置:   article > 正文

杂记 | CentOS7使用docker部署OpenVPN

杂记 | CentOS7使用docker部署OpenVPN


01 前置说明

本文的案例基于CentOS7,实测CentOS8是无法成功的,可能需要做一些额外的设置才可以实现,所以建议使用CentOS7作为服务器的操作系统。

02 服务器配置与优化

2.1 设置服务器时区

# 设置服务器时区为上海
timedatectl set-timezone Asia/Shanghai

# 查看系统当前时间
date
  • 1
  • 2
  • 3
  • 4
  • 5

2.2 设置BBR加速

以下部分是安装BBR加速

# 1.下载加速脚本
wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh" && chmod +x tcp.sh

# 2.进入脚本界面
./tcp.sh  # 输入数字2升级内核

# 3.查看内核版本
uname -srm  # Linux 4.14.129-bbrplus x86_64

# 4.进入脚本界面
./tcp.sh  # 输入数字7开启加速

# 5.进入脚本界面
./tcp.sh  # 输入数字10优化系统设置
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

03 安装docker

3.1 安装docker(方式一)

本方式要求服务器能访问外网

# 安装
wget -qO- get.docker.com | bash

# 查看docker版本 验证是否安装成功
docker -v
  • 1
  • 2
  • 3
  • 4
  • 5

3.2 安装docker(方式二)

推荐使用方式一

# 1.指定阿里云镜像安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

# 2.查看docker版本 验证是否安装成功
docker -v

# 3.新建配置文件
vim /etc/docker/daemon.json

# 4.在配置文件中设置镜像
{
  "registry-mirrors": [
    "https://dockerhub.azk8s.cn",
    "https://hub-mirror.c.163.com"
  ]
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

3.3 启动docker

# 启动docker服务
systemctl start docker

# 设置为开机自启
systemctl enable docker
  • 1
  • 2
  • 3
  • 4
  • 5

04 安装OpenVPN

服务器安装OpenVPN,使用镜像方式,以下操作在~目录进行

# 1.创建配置文件目录
mkdir -p ~/ovpn-data

# 2.拉取docker镜像 默认为latest
docker pull kylemanna/openvpn

# 3.生成配置文件 xxx.xxx.xxx.xxx那里填写服务器的公网ip
docker run -v ~/ovpn-data:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u udp://xxx.xxx.xxx.xxx

# 4.生成EasyRSA证书 按提示设置CA密码 服务名
docker run -v ~/ovpn-data:/etc/openvpn --rm -it kylemanna/openvpn ovpn_initpki

# 5.生成客户端证书 CLIENTNAME那里填写证书名称
docker run -v ~/ovpn-data:/etc/openvpn --rm -it kylemanna/openvpn easyrsa build-client-full CLIENTNAME nopass

# 6.导出客户端证书 CLIENTNAME填写证书名 导出后得到一个.opvn证书文件 下载到本地
docker run -v ~/ovpn-data:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient CLIENTNAME > CLIENTNAME.ovpn

# 7.启动OpenVPN服务 NET_ADMIN是固定写法
docker run -v ~/ovpn-data:/etc/openvpn -d -p 1194:1194/udp --cap-add=NET_ADMIN kylemanna/openvpn

# 8.查看服务是否启动成功
docker ps -a

# 9.查看容器日志
docker logs [ID]
  • 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

05 防火墙配置

防火墙设置,腾讯云的防火墙默认是关闭的,不需要打开,端口在控制台设置。

# 查看防火墙状态
systemctl status firewalld

# 开启防火墙
systemctl start firewalld

# 放开防火墙1194(udp)端口
firewall-cmd --add-port=1194/udp --zone=public --permanent
firewall-cmd --reload
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

06 客户端

安卓请前往Googl Play下载OpenVPN客户端
Windows前往官网下载
https://community.openvpn.net/openvpn/wiki/Downloads
导入证书文件(.ovpn)即可使用,如果提示compress相关的报错,需要在配置文件中加入一行内容:
allow-compression yes
如果能成功使用但一段时间后连接失败(仅提示超时),考虑更改默认的1194端口(证书文件也要改)。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/205605?site
推荐阅读
相关标签
  

闽ICP备14008679号