码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • OpenWrt部署配置openVPN服务器


    1aec6b8241bd828c64f20bf24d0a2f65.gif

    正文共:888 字 16 图,预估阅读时间:1 分钟

    我们之前在云主机上部署openVPN的时候(巧用openVPN实现访问云资源池业务),云主机是单网卡的。现在我们又有了一台单网卡的OpenWrt(OpenWrt配置单臂路由模式),而且是Linux内核的,能不能在OpenWrt部署一下openVPN呢?

    然后我去官网搜了一下,果然有相关的软件包。和在Linux系统中部署openVPN一样,也是分为OpenSSL和openVPN两个包。在x86_64软件包的下载页面,我突然看到一句介绍,称x86_64是最“现代”的Linux架构,也被称为“64位”系统,当设备内存超过4 GB时,推荐使用此架构。吓了我一跳,我还以为要使用4 GB以上的内存的。

    然后我们可以直接在“System”下的“Software”下进行软件安装,首先点击“Update Lists”来更新软件列表。

    e9e9969fe9f9a444763fee3ffecc844f.png

    更新之后,我们就在Filter这里输入openVPN进行筛选,找到“openvpn-openssl”和“luci-app-openvpn”。

    67bbc0229571a7f9866a1fdbe865a023.png

    然后点击后面Install来安装软件包。

    3611f5e76cf8f9df64ac6bbb0218cd77.png

    系统跟Linux一样,会检查依赖关系,然后自动进行安装。确认信息无误后,点击“Install”进行安装。

    250e682d16d062b445b857fdc2489d7b.png

    显示的安装过程之后,直接点击“Dismiss”忽略。

    a8edf3884734feeccfa311f187167791.png

    安装luci-app-openvpn时,可以看到仅仅差一个文件,直接安装即可。

    1d7e43bc35cd4f968b82888fe66a97f0.png

    安装完成之后,会新增一个OpenVPN的LuCI管理页面,需要重新登录才能看到。先点击“Logout”退出登录,重新登录之后,能看到“VPN”下面的“OpenVPN”选项卡。

    11bae761babace04c0c664b78fbaf1e6.png

    这里的sample_server相当于Linux下面的server.conf文件,我们点击后面的“Edit”来修改服务器配置。

    55156406074d64bffc1a0aa307c17547.png

    这里的配置文件跟Linux下的配置文件结构是基本一致的,具体可以参考(openVPN服务器配置的31个关键点)。需要注意,图中的证书和密钥文件(ca、dh、cert、key)可以在其他地方生成,然后导入进来;也可以在本地直接生成,但是需要在本地安装openvpn-easy-rsa软件包。

    a3bb731c4f6b5769ad0772d98b64b69f.png

    不过软件也是要在命令行下使用,界面不能使用。使用方式和Linux下的使用方式相同,可以参考(使用Easy-RSA配置生成SSL证书)。

    2fdcfcb18638e7511c0dfefc4dbcd808.png

    这里为了简单,我就把之前的配置文件先上传一下。先点击前面的“Browse”选择到证书文件,然后点击“Upload file”上传即可。

    8cc511bd8d5a2a00224c50ea527a3c21.png

    照此方法,我们将4个文件都上传上来。同时,配置端口为TCP端口10086,指定网段信息,增加了一个nobind选项,最后点击“Save & Apply”来应用配置。

    df4ad1c04c2c5d542cee4db34981a8aa.png

    检查openVPN的服务状态,勾选“Enabled”,如果服务未启动,点击“Start”来启动服务。

    85dff9556d3cd964ba75aca8a0255c7e.png

    然后我们在本地测试openVPN客户端的连接,连接方式参考(openVPN客户端连接指南)。

    5a873fb6a1e90e153fad050b4650e958.png

    在设备上查看一下openVPN隧道接口tun0的网络情况。

    fa04d2c1d91ef64db24f3af8d71a52c3.png

    OK,一切正常,只能说是平台不一样,但是openVPN的配置几乎是完全一致。最后看一下安装的openVPN的版本信息。

    b48e8895632fcd94dd70dbb686d2b2e7.png

    2.5.7,这个版本比CentOS的2.4.12要高不少呢,看版权信息,OpenWrt下的openVPN是2022年的,而CentOS下的openVPN是2018年的。

    4092c6362115655247a2d2300cd14d22.gif

    长按二维码
    关注我们吧

    013c3f3b851e3899d722205da1e02963.jpeg

    6d53619a050a791add7630e5fda55a00.png

    将OpenWrt部署在x86服务器上

    OpenWrt配置单臂路由模式

    openVPN+SmartDNS=openDNS or smartVPN?

    配置openVPN使用用户名密码认证

    带认证的openVPN连接/断开操作指南

    解决openVPN的递归路问题还是要从服务器端下手

    openVPN客户端连接指南

    配置优化:将openVPN的配置文件合4为1

    基于CentOS部署SmartDNS

    配置Kali通过MSTSC连接远程桌面

    使用Python批量处理Excel的内容

    如何使用Python提取Excel中固定单元格的内容

    AIRCRACK-NG通用命令手册

    AIRODUMP-NG通用命令手册

  • 相关阅读:
    【JavaScript】浅拷贝与深拷贝
    JSP EL表达式的基本语法及运算符(超详细)
    云原生优缺点分析
    【k8s】:Pod的生命周期详解
    SpringMVC学习篇(三)
    表结构的操作【MySQL】
    SSO 方案演进
    MySQL数据库day7.11
    研发笔记——localstorage实现tabel表格表头自定义
    【Spring】事务和事务传播机制
  • 原文地址:https://blog.csdn.net/gtj0617/article/details/139252052
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号