首頁  >  文章  >  運維  >  nginx進行連接埠轉送怎麼實現

nginx進行連接埠轉送怎麼實現

WBOY
WBOY轉載
2023-05-12 19:37:122669瀏覽

使用場景

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進行連接埠轉送怎麼實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除