温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

nginx进行端口转发怎么实现

发布时间:2023-03-07 10:25:16 来源:亿速云 阅读:93 作者:iii 栏目:开发技术

本篇内容介绍了“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模块是同级的

# 编译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进行端口转发怎么实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI