虎泰克博客

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

虎b泰xoc克cbxa新pfe闻ox_网gtfn版权所有,请勿未授权转载!!!


虎cbueq泰raij克ce新jhq闻sto网lkcrm版权所有,请勿未授权转载!!!

你需要的东西:

虎w泰opn克vds新vihz闻znap网nybcm版权所有,请勿未授权转载!!!

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

虎t_g泰xxocz克bkprx新ytf闻ullkh网is版权所有,请勿未授权转载!!!


虎evv泰x克nvtq新ov闻lnc网di版权所有,请勿未授权转载!!!

一、

虎_obu泰hkc克nox新mtslr闻xei网d版权所有,请勿未授权转载!!!

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

虎qg泰xhw克i新s闻pg网ij版权所有,请勿未授权转载!!!


虎d_tw泰p克xyyd新adcks闻j网o版权所有,请勿未授权转载!!!

二、

虎hjyen泰bsb克lgxrc新rcpfs闻t网hkz版权所有,请勿未授权转载!!!

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

虎x泰dd克mouoz新yotn闻bz网jdiyo版权所有,请勿未授权转载!!!

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

yum install -y openvpn

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

openvpn --config **.ovpn

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

虎znq泰vyif克vy_新g闻_orf网ddt版权所有,请勿未授权转载!!!

由于我是NAS

虎jyz_泰ffszz克jzpg新lqo闻zlsre网v_ftq版权所有,请勿未授权转载!!!

三、

虎hw_dy泰jsfkc克gfxzp新gsgs闻a网oc版权所有,请勿未授权转载!!!

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


虎ecwa泰ip克tgcob新tq_闻d网n版权所有,请勿未授权转载!!!

四、

虎yorn泰ch克y新c闻cw网oayu版权所有,请勿未授权转载!!!

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

虎yp泰ve克knon新z闻berv网pbn版权所有,请勿未授权转载!!!

五、

虎bpk泰mv克njcfk新fwn闻nz网xgda版权所有,请勿未授权转载!!!

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

六、

虎_a泰m克xon新oar闻nqkx网kigrc版权所有,请勿未授权转载!!!

最后效果如下:

虎hhq泰at克gdv新mxu闻va网m_xm版权所有,请勿未授权转载!!!

image.png

虎f泰odpp克yx新u闻omrt网j版权所有,请勿未授权转载!!!

微信图片_20221022150511.png

虎ditfj泰syb克jd新ennlx闻v网p版权所有,请勿未授权转载!!!


虎aa泰zo克vijk新rj闻sqn网eu_f版权所有,请勿未授权转载!!!

--update:

虎ov泰dbugj克ae_g新l闻m网c版权所有,请勿未授权转载!!!

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