虎泰克博客

使用OpenVPN + Nginx进行内网穿透访问家里的NAS和路由器等内网网站


本来最开始是用花生壳内网穿透,但是内网映射只能有两条而且月限流1GB,明显不够用,于是思考解决方案,正好有一台公网服务器闲着,就拿来用咯。你需要的东西: 一台公网IP服务器、群晖NAS服务器(网段10.10.10.0/24,NAS ip为10.10.10.10) 一、 首先参考https://blog.whutech.com/article/72.html 在公网服务器上搭建OpenVPN服务器(网段10.12.10.0/24)。

本来最开始是用花生壳内网穿透,但是内网映射只能有两条而且月限流1GB,明显不够用,于是思考解决方案,正好有一台公网服务器闲着,就拿来用咯。

虎bq泰uh克wg_k新xsil闻lfgi网_o版权所有,请勿未授权转载!!!


虎wkjx泰spcua克ppkkb新gzlvo闻k网rogc版权所有,请勿未授权转载!!!

你需要的东西:

虎x泰aqaz克pxpq新fnf闻m网w版权所有,请勿未授权转载!!!

一台公网IP服务器、群晖NAS服务器(网段10.10.10.0/24,NAS ip为10.10.10.10)

虎xtvor泰jmsfi克yjeb新sryje闻rdd网thli版权所有,请勿未授权转载!!!


虎t泰vb克u新d闻gvj网otkt版权所有,请勿未授权转载!!!

一、

虎bhpp泰mu克rj新d闻_lu网gp版权所有,请勿未授权转载!!!

首先参考https://blog.whutech.com/article/72.html 在公网服务器上搭建OpenVPN服务器(网段10.12.10.0/24)。

虎ns泰mtk克_ha新vr闻x网rn版权所有,请勿未授权转载!!!


虎jlq泰kk克avmmv新e闻da网wdlxu版权所有,请勿未授权转载!!!

二、

虎z泰ef克zu新yyus闻dr网wt版权所有,请勿未授权转载!!!

在群晖内安装Virtual Mechine Manager,安装一台centos 7服务器,为了节省资源可以minimal安装。

虎q_l泰ur_lm克rg新fizu闻quc网in版权所有,请勿未授权转载!!!

安装完毕后给centos安装openvpn客户端,

yum install -y openvpn

将openvpn配置上传到centos服务器内使用如下指令启动客户端

openvpn --config **.ovpn

启动完毕后使用ifconfig 可以查看连接openvpn后的ip,例如:10.12.10.6

虎znd泰lufuf克e新c闻qiwo网rux版权所有,请勿未授权转载!!!

由于我是NAS

虎m泰nbkz克jyqr新gtip闻h网b版权所有,请勿未授权转载!!!

三、

虎vjfs泰lqr克ot新vm闻tmx网j版权所有,请勿未授权转载!!!

在公网服务器宝塔添加静态网站(用于访问centos7)然后在反向代理处配置代理访问10.12.10.6,这样centos7

location ^~ /
{
    proxy_pass http://10.12.10.6:81;
    proxy_set_header Host 10.12.10.6;
    proxy_read_timeout 600;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
}


虎wom泰i克osfxw新oqnka闻ap网x版权所有,请勿未授权转载!!!

四、

虎swqb泰tmp克zefm新o闻_ob网zn版权所有,请勿未授权转载!!!

在宝塔安装完nginx后添加静态网站(用于访问内网),然后在反向代理处配置代理访问10.10.10.10

location ^~ /
{
    proxy_http_version 1.1;
    proxy_pass http://10.10.10.10:5000;
    proxy_read_timeout 600;
    proxy_set_header Host 10.10.10.10;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    # proxy_hide_header Upgrade;
}

这样NAS

虎tvb泰vghuu克k新xqcyk闻bc_网ecygp版权所有,请勿未授权转载!!!

五、

虎h泰_pvg克kn新jxl闻k网z版权所有,请勿未授权转载!!!

由于openvpn设置,导致centos除了10.10.10.0/24网段走内网外,其他请求都走openvpn,会占用服务器大量带宽,因此可以在ovpn内设置如下:

route-nopull  #所有流量都不走VPN
route 10.12.10.0 255.255.255.0 vpn_gateway #10.12.10.0/24网段才走openvpn

六、

虎xf泰l克x新azxcj闻imh网fhkn版权所有,请勿未授权转载!!!

最后效果如下:

虎rgvjn泰rfb克h新fjtud闻t_i网ob版权所有,请勿未授权转载!!!

image.png

虎kto泰oc克fvp新nzm闻qyape网ysrt版权所有,请勿未授权转载!!!

微信图片_20221022150511.png

虎popbj泰_jp克d新clb闻sv网a版权所有,请勿未授权转载!!!


虎euot泰wk克i新kckd闻z网snnd版权所有,请勿未授权转载!!!

--update:

虎mkcfq泰u克cey新unl闻wdmlo网mrr版权所有,请勿未授权转载!!!

我真的会谢,原来群晖可以通过ssh使用ipkg指令直接安装openvpn客户端,我还需要虚拟机的centos作甚。。。ref:群晖入门到进阶系列(八):为群晖配置ipkg软件包管理 - 知乎 (zhihu.com)



Statement: all articles / drawings reproduced on this website are for the purpose of transmitting more information and facilitating discussion, which does not mean that the website, the host and the organizer agree with their opinions or confirm the authenticity of their contents. The contents of the articles are for reference only. If the rights of the original author are violated, please contact the website administrator.

Sign in to comment

Comment list

    No data