使用OpenVPN异地组网-上篇:安装与基本配置
重要
注意这是正规的VPN,全称是虚拟专用网 (Virtual private network),用于异地组网。本教程也是教的怎么异地组网。
1. 前言
本教程分为上下两篇,目录:
首先说一下应用场景:我在公司有一台公司电脑,在家里有一台笔记本和一个Linux服务器,它们都连接上了VPN。所有其它连接到VPN的客户端,能访问笔记本、公司电脑、Linux服务器,以及家中内网的其它下挂设备。
网络结构如下:
2. 安装
采用 Docker 部署,简单方便,开箱即用。👉 官方教程
启动之前,如有需要,可以按照 OpenVPN Access Server 2.13.x 破解在线人数限制 这篇教程解除连接人数限制。
官方使用的是 docker run
,我这里使用 docker compose
,创建文件compose.yml
:
services:
openvpn-as:
image: openvpn/openvpn-as
container_name: openvpn-as
devices:
- "/dev/net/tun"
cap_add:
- NET_ADMIN
- MKNOD
ports:
- 943:943 # web ui
- 443:443 # tcp
- 1194:1194/udp # udp
volumes:
- ./data:/openvpn # 数据
# - ./pyovpn-2.0-py3.12.egg:/usr/local/openvpn_as/lib/python/pyovpn-2.0-py3.12.egg # 破解文件
environment:
- TZ=Asia/Shanghai # 时区
restart: unless-stopped
启动容器:
docker compose up -d
然后查看运行日志:
docker compose logs -f
找到日志中的: Auto-generated pass = "password". Setting in db...
这里有第一次启动后的初始密码,用户名默认为openvpn
3. 配置服务器
官方文档中对管理后台的每个选项也都有详细的解释。
访问 https://ip:943/admin
,进入管理员后台,开始对服务端进行配置。修改红框的内容,其它设置保持默认或者按需自己修改。每个菜单项中修改完后,记得下拉到页面底部点击 Save Settings 按钮。





4. 配置用户
先看一下每次创建用户,我们大概要修改的几个选项:

接下来,我们来给开头网络结构图中的客户端创建账号,我会框出关键设置。
4.1 公司电脑


4.2 笔记本


4.3 Linux 服务器


4.4 其它设备


5. 下载配置文件

点击创建后会自动下载配置文件,将配置文件发送给对应的客户端导入到软件中即可。
6. 未完待续
完成上述所有操作,且所有设备已经连接到了VPN,此时,我们在任意一个客户端上都能访问到前面配置用户时,我们勾选了 all other VPN clients
的客户端,比如公司电脑、笔记本、Linux服务器。
但是,现在还有一步没有实现,就是所有客户端还无法访问家中内网的其它设备,我们访问 192.168.0.0/24 时的所有数据包到了 VPN网关
(也就是Linux服务器:192.168.240.120) 后,就不知道往哪儿发了,所以还需要在Linux服务器上做一些配置。
篇幅有限我们在下篇中讲怎么配置:使用OpenVPN异地组网-下篇:访问客户端内网