From d3b02e92242bf479f8bdf783dcd0f5b153a25163 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E8=B4=BA?= Date: Mon, 13 Jan 2025 23:08:42 +0800 Subject: [PATCH] feat: Add OpenVPN (#2945) --- openvpn/README.md | 10 ++++++++++ openvpn/data.yml | 21 +++++++++++++++++++++ openvpn/latest/data.yml | 26 ++++++++++++++++++++++++++ openvpn/latest/docker-compose.yml | 20 ++++++++++++++++++++ openvpn/logo.png | Bin 0 -> 4460 bytes 5 files changed, 77 insertions(+) create mode 100644 openvpn/README.md create mode 100644 openvpn/data.yml create mode 100644 openvpn/latest/data.yml create mode 100644 openvpn/latest/docker-compose.yml create mode 100644 openvpn/logo.png diff --git a/openvpn/README.md b/openvpn/README.md new file mode 100644 index 000000000..2a66a9c79 --- /dev/null +++ b/openvpn/README.md @@ -0,0 +1,10 @@ +# 使用说明 + +## 管理界面 + +- 管理界面地址:`https://IP:控制台端口/admin` +- 默认用户:`openvpn` +- 密码:`可以在 Docker 容器日志中找到(首次初始化运行时生成)` + +> 可以通过查找 pass 关键字获取初始密码 +类似:`Auto-generated pass = "WHjoYsAd9Ha9m". Setting in db...` diff --git a/openvpn/data.yml b/openvpn/data.yml new file mode 100644 index 000000000..2897ce584 --- /dev/null +++ b/openvpn/data.yml @@ -0,0 +1,21 @@ +name: OpenVPN +tags: + - 实用工具 + - 安全 +title: 开源 VPN 守护进程 +description: 开源 VPN 守护进程 +additionalProperties: + key: openvpn + name: OpenVPN + tags: + - Tool + - Security + shortDescZh: 开源 VPN 守护进程 + shortDescEn: Open source VPN daemon + type: tool + crossVersionUpdate: true + limit: 0 + recommend: 0 + website: https://openvpn.net/ + github: https://github.com/OpenVPN/openvpn + document: https://openvpn.net/access-server-manual/introduction/ diff --git a/openvpn/latest/data.yml b/openvpn/latest/data.yml new file mode 100644 index 000000000..9a818335f --- /dev/null +++ b/openvpn/latest/data.yml @@ -0,0 +1,26 @@ +additionalProperties: + formFields: + - default: 943 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Console Port + labelZh: 控制台端口 + required: true + rule: paramPort + type: number + - default: 443 + edit: true + envKey: PANEL_APP_PORT_HTTPS + labelEn: HTTPS Port + labelZh: HTTPS 端口 + required: true + rule: paramPort + type: number + - default: 1194 + edit: true + envKey: PANEL_APP_PORT_UDP + labelEn: UDP Port + labelZh: UDP 端口 + required: true + rule: paramPort + type: number diff --git a/openvpn/latest/docker-compose.yml b/openvpn/latest/docker-compose.yml new file mode 100644 index 000000000..81186f666 --- /dev/null +++ b/openvpn/latest/docker-compose.yml @@ -0,0 +1,20 @@ +services: + openvpn: + image: openvpn/openvpn-as:latest + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - "${PANEL_APP_PORT_HTTP}:943" + - "${PANEL_APP_PORT_HTTPS}:443" + - "${PANEL_APP_PORT_UDP}:1194/udp" + cap_add: + - NET_ADMIN + volumes: + - "./data:/openvpn" + labels: + createdBy: "Apps" +networks: + 1panel-network: + external: true \ No newline at end of file diff --git a/openvpn/logo.png b/openvpn/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..385bfd2d23eb6c046eeb026bc4b4bf89b95c864a GIT binary patch literal 4460 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