simpread-OpenVPN小白篇

admin 2024年11月20日21:47:45评论6 views字数 2021阅读6分44秒阅读模式

¶ Docker部署OpenVPN实现访问内网

官方制作的Docker镜像支持X86和arm64带有UI操作但是只有英文界面
本教程不提供Docker安装过程

¶ 1. Docker加速

建docker文件夹如果有则跳过。

sudo mkdir -p /etc/docker

创建daemon.json文件并写入配置(使用nano或者vim都可以)。

sudo nano /etc/docker/daemon.json

输入以下内容,里面的加速地址可以按照格式修改,网上有很多,修改完成后按Ctrl+O,选择Y保存。

{
    "registry-mirrors": [
        "https://dockerpull.com",
        "https://docker.udayun.com",
        "https://dockerproxy.cn",
        "https://docker.rainbond.cc",
        "https://docker.211678.top"
    ]
}

执行命令让配置生效。

sudo systemctl daemon-reload
sudo systemctl restart docker

¶ 2. 创建容器并启动

#拉取镜像
docker pull openvpn/openvpn-as
#完整端口映射
docker run -d --name=openvpn-as --restart always --cap-add=NET_ADMIN -p 943:943 -p 443:443 -p 1194:1194/udp -v path:/openvpn openvpn/openvpn-as
#其实只需要映射一个就可以443走tcp或者1194走UDP,考虑稳定选择443,自行选择。
docker run -d --name=openvpn-as --restart always --cap-add=NET_ADMIN -p 443:443 -v path:/openvpn openvpn/openvpn-as

参数解释。

-d 后台运行
--name=openvpn-as  将容器命名为“openvpn-as”可自行修改
--restart always 让容器跟随docker进程自启动
--cap-add=NET_ADMIN  让容器拥有网络管理权限
-p 将容器的端口映射到宿主机的端口,冒号左边为宿主机端口可根据情况修改,冒号右边为容器内部端口不能更改
-v 映射容器中的目录到宿主机目录,冒号左边为宿主机目录可根据情况修改,冒号右边为容器目录不能更改openvpn/openvpn-as 结束的内容为你要指定哪一个镜像来启动容器

¶ 3. 配置服务端

等待两分钟在日志中找初始密码。

docker logs openvpn-as | grep "pass"

simpread-OpenVPN小白篇
访问https://宿主机IP+你将容器内部的443端口映射到宿主机的端口,因为我这里映射的是“443:443”所有访问https://宿主机IP即可,如果你映射的不是宿主机的443请在ip后加上“:你的端口”访问。一定要用https访问。输入用户名为openvpn密码则为我们从日志中获取到的初始密码。
simpread-OpenVPN小白篇

登录后修改密码。

simpread-OpenVPN小白篇
simpread-OpenVPN小白篇
在地址后面加admin路径并访问,输入用户名openvpn密码为我们修改之后的密码。
由于是在docker里面运行我们需要他能访问宿主机网段的设备就需要配置一个路由,登录后找到vpn设置,如下图1标处,按照个人网段书写,不要删除原来的配置还要记得换行。
通常我们不需要客户端的互联网流量走vpn因为我们只需要能访问局域网设备即可,所以关闭下图中2标的选项(默认是开启的)能有效增加流畅度,根据个人所需修改。
simpread-OpenVPN小白篇
往下翻点击“Save Settings”按钮保存设置,然后顶部会出现“Update Running Server”按钮,点击更新重启服务生效。
到这里服务端就已经配置完成了现在我们理一下思路,我们将容器中的443端口映射到了宿主机的443端口,那么需要把宿主机的443端口走tcp协议映射到公网就行。至于用什么方案穿透大家各自发挥我用的是cpolar,因为我只是在外面写写文档没有大量数据传输需求。

¶ 4. 客户端配置

这个服务端已经提供了各个平台的安装包不需要再去找,访问https://宿主机IP,有端口加端口,登录后就能看到下载。
simpread-OpenVPN小白篇
但是这里下载的软件安装后默认配置还是连接的docker容器的地址,所以我们需要新创建一个配置,以windows为例。
首先下载一个配置文件,notpad++打开配置文件使用替换功能将原有的IP地址全部替换为公网IP或者域名,同样的方式将所有443端口替换为公网的端口并保存。
simpread-OpenVPN小白篇
simpread-OpenVPN小白篇
打开客户端新增配置选择文件导入。
simpread-OpenVPN小白篇simpread-OpenVPN小白篇
输入用户名,勾选保存密码输入服务端的密码。
simpread-OpenVPN小白篇
点击CONNECT保存,会有一个弹窗点OK就可以了,然后就能看到我们的新配置,点击按钮启用连接就可以了。
simpread-OpenVPN小白篇
现在你可以尝试ping你的内网设备能ping通就没有问题啦。

原文始发于微信公众号(SecNL安全团队):simpread-OpenVPN小白篇 | 私人知识库

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月20日21:47:45
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   simpread-OpenVPN小白篇http://cn-sec.com/archives/3415745.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息