杂记 | CentOS7使用docker部署OpenVPN

该文提供了基于CentOS7的服务器配置教程,包括设置时区、BBR加速以提升网络性能,详细介绍了Docker的两种安装方法以及OpenVPN的安装和客户端证书生成。同时,文章涵盖了防火墙配置,确保1194端口开放以供OpenVPN使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


01 前置说明

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

02 服务器配置与优化

2.1 设置服务器时区

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

# 查看系统当前时间
date

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优化系统设置

03 安装docker

3.1 安装docker(方式一)

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

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

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

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"
  ]
}

3.3 启动docker

# 启动docker服务
systemctl start docker

# 设置为开机自启
systemctl enable docker

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]

05 防火墙配置

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

# 查看防火墙状态
systemctl status firewalld

# 开启防火墙
systemctl start firewalld

# 放开防火墙1194(udp)端口
firewall-cmd --add-port=1194/udp --zone=public --permanent
firewall-cmd --reload

06 客户端

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

### 使用Docker安装Open WebUI的逐步指南 #### 准备工作 为了顺利通过Docker部署Open WebUI,需先确认已正确安装并配置好Docker环境。这通常涉及下载并安装适用于操作系统的最新版本Docker软件包[^1]。 #### 获取镜像 利用`docker pull`命令来拉取官方提供的Open WebUI Docker镜像。此过程会自动从远程仓库获取所需资源文件至本地机器上。 ```bash docker pull openwebui/image_name:tag ``` #### 创建容器 创建一个新的Docker容器实例用于运行Open WebUI应用服务。这里可以指定端口映射关系以及其他必要的启动参数。 ```bash docker run -d \ --name=openwebui-container \ -p host_port:container_port \ openwebui/image_name:tag ``` 上述命令中的`host_port`代表主机开放给外部访问的实际网络接口端口号;而`container_port`则是指代容器内部监听的服务端口编号。两者之间建立了一种一对一映射关联机制以便于外界能够正常访问到目标Web应用程序界面[^2]。 #### 配置OAuth认证(可选) 如果计划集成第三方登录方式如Google OAuth,则可以在启动容器时附加相应的环境变量设置项以完成授权凭证传递动作。 例如当客户端ID为`xxx.apps.googleusercontent.com`以及密钥为`yyy`的情况下,可以通过如下形式向Docker下达指令: ```bash docker run ... \ --env 'OAUTH_GOOGLE_API_KEY=xxx.apps.googleusercontent.com' \ --env 'OAUTH_GOOGLE_APP_SECRET=yyy' ``` #### 访问Web UI 一旦前述准备工作全部就绪之后,在浏览器地址栏输入形似`http://localhost:host_port/`这样的URL路径即可打开对应的图形化管理控制台页面进行后续交互操作了[^3]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿林仔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值