虎泰克博客

使用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,明显不够用,于是思考解决方案,正好有一台公网服务器闲着,就拿来用咯。

虎wuk泰olu克egwuy新wfyj闻wt网qhipj版权所有,请勿未授权转载!!!


虎j_xtv泰mkz克ahh新r闻vht网kri版权所有,请勿未授权转载!!!

你需要的东西:

虎m泰d克dcrmo新_h_闻avvqe网ij版权所有,请勿未授权转载!!!

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

虎ynb泰di克xut新pz闻j网jl版权所有,请勿未授权转载!!!


虎trp泰ax_r克uh新sp闻e网wx版权所有,请勿未授权转载!!!

一、

虎unzwg泰jn克g_znc新epdic闻wo网frty版权所有,请勿未授权转载!!!

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

虎oue泰jx克nbh新bhp闻_rh网yibtk版权所有,请勿未授权转载!!!


虎pqs泰sivcj克hvan新gcoe闻aqma_网u版权所有,请勿未授权转载!!!

二、

虎htc泰w克pr新u闻ao网dc版权所有,请勿未授权转载!!!

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

虎wkxu泰d克iuf新bsi闻pdhli网urqts版权所有,请勿未授权转载!!!

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

yum install -y openvpn

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

openvpn --config **.ovpn

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

虎j泰ebr克qr新r闻omune网xam版权所有,请勿未授权转载!!!

由于我是NAS

虎fu泰hme克n新ew闻s网i版权所有,请勿未授权转载!!!

三、

虎tj泰mahcs克rrw新p闻pb网f版权所有,请勿未授权转载!!!

在公网服务器宝塔添加静态网站(用于访问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;
}


虎fd泰gx克wvq新g闻hq网fnu版权所有,请勿未授权转载!!!

四、

虎j泰rms克j新ejj闻dou网nxqd_版权所有,请勿未授权转载!!!

在宝塔安装完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

虎ji泰gjwo克og新_psd闻su网rkw版权所有,请勿未授权转载!!!

五、

虎hisc泰geau克pf新s闻pu网vm版权所有,请勿未授权转载!!!

由于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

六、

虎gvlgy泰ue克r新zflk闻dpnw网xe版权所有,请勿未授权转载!!!

最后效果如下:

虎zc泰w克hf新fs闻f网lpibj版权所有,请勿未授权转载!!!

image.png

虎d泰nj克ow新w闻cgh网y版权所有,请勿未授权转载!!!

微信图片_20221022150511.png

虎ireqy泰cdza克cresp新l闻r网pe版权所有,请勿未授权转载!!!


虎b泰dbotl克ymn_新y闻ajikh网xfx版权所有,请勿未授权转载!!!

--update:

虎nea泰_ol_a克rs新z闻fn网_h版权所有,请勿未授权转载!!!

我真的会谢,原来群晖可以通过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