NATAPP内网穿透通过nginx实现一个端口访问多个不同端口服务

背景

因为服务部署的是公司内网,所以需要通过内网穿透,让外部网络访问到内网的东西,NATAPP就是提供内网穿透服务的,但是由于一个natapp只能绑定访问一个端口,所以没办法同时让他访问我的两个项目,因为每申请一个端口都需要一部分的支出,所以为了减少支出,可以通过nginx去实现服务的转发。nginx真的是相当的牛逼,为它呐喊。

这个是NATAPP内网穿透的教程,需要学习的可以去学习,简单:https://natapp.cn/article/natapp_newbie

1、环境:

(1)、一个linux服务器(centos或者ubuntu)

(2、)Nginx

2、nginx安装:

ubuntu系统:

apt-get安装nginx

# 切换至root用户

sudo su root

apt-get install nginx

查看nginx是否安装成功

nginx -v

 

启动nginx

service nginx start

 

 

启动后,在网页重输入ip地址,即可看到nginx的欢迎页面。至此nginx安装成功

 

Centos系统:

 参照文档:https://blog.csdn.net/qq_37345604/article/details/90034424

 

3、相关配置

1、购买相关的内网穿透的域名:如果www.shudu.cc, 穿透端口设置为80, ip设置为你部署了nginx服务的服务器地址。

2、配置nginx:

(一)、进入到:配置文件下面

cd  /etc/nginx/conf.d
  • 、查看是否存在default.conf文件,如果没有的还创建这个文件,编辑文件。
vim default.conf

(三)、编写配置文件
 

server {

    #监听的端口,配置的是内网穿透监听的端口

    listen  80; 

   # 监听的内网穿透的域名

    server_name  shiduai.natapp1.cc;

    charset utf-8;

    # Load configuration files for the default server block.

    include /etc/nginx/default.d/*.conf;

   # 这里就是配置通过不同的路径,跳入到不同的服务,

   # 如访问地址配置的是http://shiduai.natapp1.cc/api/  跳转的是http://192.168.9.41:30000/服务。

   # 配置的是http://shiduai.natapp1.cc/apo/  跳转的是http://192.168.9.41:30001/

    location /api/ {

        proxy_set_header Host $host;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_pass http://192.168.9.41:30000/;

    }

    location /apo/ {

        proxy_set_header Host $host;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_pass http://192.168.9.41:30001/;

    }

    location /apn/ {

         proxy_set_header Host $host;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_pass http://192.168.9.7:8081/api/;

    }

    location /apf/ {

        proxy_set_header Host $host;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_pass http://192.168.9.41:8082/;

    }

    error_page 404 /404.html;

        location = /40x.html {

    }

    error_page 500 502 503 504 /50x.html;

        location = /50x.html {

    }

注意,修改了nginx配置文件要执行下面的命令,重新加载配置:

 nginx -s reload

 

内网FRP工具可以实现Nginx服务器传递给多个Tomcat服务器。FRP是一种内网穿透工具,可以通过将内网服务器映射到公网IP地址来实现远程访问。以下是实现此过程的步骤: 1. 首先,在内网服务器上安装和配置FRP。确保在内网服务器上正确设置并运行FRP服务,并将port_range设置为一组用于映射的端口。 2. 在Nginx服务器上安装和配置Nginx。确保Nginx服务器正确安装,并将其配置为监听公网IP地址和端口。 3. 在Nginx服务器上配置反向代理。编辑Nginx配置文件(通常位于/etc/nginx/nginx.conf),在http模块中添加以下配置: ```nginx location / { proxy_pass http://内网Tomcat服务器IP:内网Tomcat服务端口; } ``` 将“内网Tomcat服务器IP”和“内网Tomcat服务端口”替换为具体的Tomcat服务器IP和端口。 4. 在FRP配置文件中添加端口映射规则。打开FRP配置文件(通常位于frp目录下的frps.ini或frpc.ini),添加以下端口映射规则: ```ini [tcp-多个Tomcat服务端口] type = tcp local_ip = 内网Tomcat服务器IP local_port = 内网Tomcat服务端口 remote_port = 随意指定一个公网端口 ``` 将“多个Tomcat服务端口”替换为实际的Tomcat服务端口。 5. 保存FRP和Nginx配置文件,并重新启动服务。 现在,当公网用户访问Nginx服务器的公网IP地址和端口时,Nginx服务器将通过FRP转发请求到内网的Tomcat服务器上。这样,多个Tomcat服务器可以通过Nginx服务器进行访问和管理。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值