虎泰克博客

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

虎rsx泰z克a新koq_f闻n网arbt版权所有,请勿未授权转载!!!


虎z泰q_w克uilw新_闻ag网kj版权所有,请勿未授权转载!!!

你需要的东西:

虎upaes泰i_a克cu_n新th闻gy网x版权所有,请勿未授权转载!!!

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

虎weomp泰p克b新be_o闻xuf网gb版权所有,请勿未授权转载!!!


虎py泰r克pu新hyic闻iy网suymp版权所有,请勿未授权转载!!!

一、

虎qbhb泰riu克umno新s闻fs网dha版权所有,请勿未授权转载!!!

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

虎zfs泰jfso克tb新cs闻diij网ke版权所有,请勿未授权转载!!!


虎p泰k克_r新nh_au闻fev网yyy版权所有,请勿未授权转载!!!

二、

虎ugl泰vqayj克bq新uw_a闻g网p_ouz版权所有,请勿未授权转载!!!

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

虎gurzl泰q克wx新hvp闻h网naq版权所有,请勿未授权转载!!!

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

yum install -y openvpn

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

openvpn --config **.ovpn

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

虎wdqf泰_克w新n闻xq_h网iqdqj版权所有,请勿未授权转载!!!

由于我是NAS

虎imy泰svof克pqsr新krch闻_w网ek版权所有,请勿未授权转载!!!

三、

虎xa泰_zxty克esa新kh闻r网fqmd版权所有,请勿未授权转载!!!

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


虎khfzp泰e_sb克ryd新lhk闻wvi_v网u版权所有,请勿未授权转载!!!

四、

虎jaene泰w_ut克g新_ffwl闻j网wm_i版权所有,请勿未授权转载!!!

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

虎wphbi泰nomfp克pokk新w闻axi网ill_版权所有,请勿未授权转载!!!

五、

虎qht_泰o克p新ukwa闻gqcw网ig版权所有,请勿未授权转载!!!

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

六、

虎omt泰u克cvycp新kpepb闻cs网r_q版权所有,请勿未授权转载!!!

最后效果如下:

虎i泰_p克qv新z闻cmzl网p版权所有,请勿未授权转载!!!

image.png

虎hrhzn泰v克hvth_新ei闻oa网m版权所有,请勿未授权转载!!!

微信图片_20221022150511.png

虎ys泰o克q新ttw闻jx网ufy版权所有,请勿未授权转载!!!


虎ohltt泰_克u新ksogu闻x网xpj版权所有,请勿未授权转载!!!

--update:

虎xmo泰w克gesn新g闻stde网rscc版权所有,请勿未授权转载!!!

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