关于nginx进行端口转发的实现浅谈

本文主要介绍了nginx进行端口转发的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着微点阅读小编来一起学习学习吧

使用场景

1、内网有一台服务器的端口需要映射到外网(举例外网的服务器申请了一个域名,然后给该域名做了一个nignx的配置,然后配置中需要访问一个内网的http的服务)

2、内网服务器没有外网访问权限,全部内网中只有一台服务器有外网权限,可用于曲线救国版内网穿透

3、虚拟机只有NAT网,且虚拟机只配备了内网localhost转发到宿主机localhost,此时想外网或者其他内网(非宿主机)想访问虚拟机端口

4、将代理机作为堡垒机(跳板机),用于防止内部系统被人随意访问,此时堡垒机配置端口转发,通过堡垒机访问内部系统。

解决方案

nginx配置文件位置参考

  • Linux:在/etc/nginx/conf.d/中,修改default.conf文件
  • Windows:在 nginx安装目录\Nginx\conf中,修改nginx.conf

注意原本的nginx.conf中没有stream模块(据说v1.8.x以后的版本才有,我的是v1.5.11就没有),需要自行添加。且它的层级和http模块是同级的

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

# 编译nginx的时候要添加stream模块  ./configure –with-stream

# 这个模块实现了网络层和传输层的的转发、代理、负载均衡等

  

# stream与http配置同级

stream {

   server {

       listen 3306;

       proxy_pass 192.168.8.168:3306;

       # 有了这个server配置,你就可以通过代理机ip+3306端口访问内网的mysql库了

   }

  

   server {

      listen 8080;

      proxy_pass 192.168.8.168:8080;

      # 有了这个配置,你就可以直接访问代理机ip+8080端口,访问你的内网web服务了

  }

  # 还可以设置指定的客户端IP访问(白名单设置)

  # 自己百度更多功能吧

}

  

#直接复制可能有问题,几行代码就自己打吧

到此这篇关于nginx进行端口转发的实现的文章就介绍到这了,希望可以对你有所帮助。

转载自:微点阅读  https://www.weidianyuedu.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值