虎泰克博客

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

虎hus泰hwsdc克u新hm闻lz网yh_ru版权所有,请勿未授权转载!!!


虎iha泰it_克nhqh新nzrp闻wf网uah版权所有,请勿未授权转载!!!

你需要的东西:

虎uy泰fgsrp克pappk新wz闻dadd网tvhfc版权所有,请勿未授权转载!!!

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

虎kdw_e泰prxz克yrmtx新i闻zwm网tk版权所有,请勿未授权转载!!!


虎ls泰oj克nphx新qj闻y网s版权所有,请勿未授权转载!!!

一、

虎szh泰fvyyb克jyba新a_闻il网kbu版权所有,请勿未授权转载!!!

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

虎hpanv泰cou克mrt新jt闻uovd网p版权所有,请勿未授权转载!!!


虎xb泰_q克vas新utb闻hptyh网rpb版权所有,请勿未授权转载!!!

二、

虎hl泰fi_hv克slph新n闻p网hshyr版权所有,请勿未授权转载!!!

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

虎ux泰odp克h新crit闻f网qjf版权所有,请勿未授权转载!!!

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

yum install -y openvpn

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

openvpn --config **.ovpn

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

虎gb泰k克uyelv新e闻gbzrf网abx版权所有,请勿未授权转载!!!

由于我是NAS

虎bkcy泰jd克kw新s_闻cksz网u版权所有,请勿未授权转载!!!

三、

虎ems泰kbrbt克oa新rbg闻s网hgn版权所有,请勿未授权转载!!!

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


虎xr泰afh克ar新ja闻aw网yezgx版权所有,请勿未授权转载!!!

四、

虎ypcqi泰bdve克i新f闻fles网izr版权所有,请勿未授权转载!!!

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

虎xm泰ewixp克jux新xx__闻ytzv网tsda_版权所有,请勿未授权转载!!!

五、

虎xiqmw泰ssdj克_jnyy新c闻byiw网nnklz版权所有,请勿未授权转载!!!

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

六、

虎frir泰ml克zxdj新qn闻ma网nd版权所有,请勿未授权转载!!!

最后效果如下:

虎zrgi泰pcffs克gykbg新csd闻gzduq网pxqb版权所有,请勿未授权转载!!!

image.png

虎y泰t克euzda新ck闻wnn网gv版权所有,请勿未授权转载!!!

微信图片_20221022150511.png

虎aiuo_泰u克lgy新ass闻acek网grg版权所有,请勿未授权转载!!!


虎himlx泰iz克ei新wfooq闻gccqg网x版权所有,请勿未授权转载!!!

--update:

虎vzb_i泰w克cqwwb新ohuwn闻gcuyx网n版权所有,请勿未授权转载!!!

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



声明:凡本网转载的文/图等稿件,均出于传递更多信息及方便探讨之目的,并不意味着本站及主办、承办单位赞同其观点或证实其内容的真实性,文章内容仅供参考,如果侵犯了原作者的权利请与网站管理员联系。

登录以发表评论

评论列表

    暂无数据