亚洲乱色熟女一区二区三区丝袜,天堂√中文最新版在线,亚洲精品乱码久久久久久蜜桃图片,香蕉久久久久久av成人,欧美丰满熟妇bbb久久久

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

nginx 代理tcp端口

admin
2025年6月30日 18:9 本文熱度 356

應(yīng)用場(chǎng)景,我們由于網(wǎng)絡(luò)限制,只有前置機(jī)或者固定服務(wù)器可以與外部鏈接, 要使用 Nginx 代理 TCP 端口(如數(shù)據(jù)庫(kù)、SSH、游戲服務(wù)器等非 HTTP 服務(wù)),需使用 Nginx Stream 模塊。該模塊專(zhuān)門(mén)處理 TCP/UDP 流量,配置與 HTTP 代理有所不同。以下是詳細(xì)配置步驟:

一、確認(rèn) Nginx 是否支持 Stream 模塊

  1. 檢查編譯參數(shù)
    nginx -V 2>&1 | grep stream
    • 若輸出包含 --with-stream,說(shuō)明已啟用 Stream 模塊。
    • 若未啟用,需重新編譯 Nginx 并添加 --with-stream 參數(shù)(或使用包含該模塊的發(fā)行版,如 Ubuntu 的 nginx-extras)。

二、配置 TCP 代理(示例:代理 MySQL 端口 3306)

1. 創(chuàng)建 Stream 配置文件

在 Nginx 配置目錄(通常為 /etc/nginx)下創(chuàng)建 stream.conf

# /etc/nginx/stream.conf
stream {
    # 定義日志格式(可選)
    log_format tcp '$remote_addr [$time_local] '
                   '$protocol $status $bytes_sent $bytes_received '
                   '$session_time "$upstream_addr" '
                   '"$upstream_bytes_sent" "$upstream_bytes_received"';

    access_log /var/log/nginx/tcp_access.log tcp;
    error_log /var/log/nginx/tcp_error.log;

    # TCP 代理配置(監(jiān)聽(tīng) 63306 端口,轉(zhuǎn)發(fā)到后端 MySQL 3306)
    server {
        listen 63306;  # 代理服務(wù)器監(jiān)聽(tīng)端口
        proxy_pass 192.168.1.100:3306;  # 后端真實(shí)服務(wù)器地址:端口

        # 可選參數(shù)
        proxy_connect_timeout 10s;       # 連接超時(shí)時(shí)間
        proxy_timeout 300s;             # 會(huì)話超時(shí)時(shí)間
        proxy_buffer_size 16k;          # 緩沖區(qū)大小
    }
}

2. 在主配置文件中引入 Stream 配置

編輯 /etc/nginx/nginx.conf,在文件末尾添加:

# /etc/nginx/nginx.conf
include /etc/nginx/stream.conf;

三、多端口代理配置示例

若需同時(shí)代理多個(gè) TCP 服務(wù)(如 MySQL 和 Redis),可在 stream.conf 中添加多個(gè) server 塊:

stream {
    # MySQL 代理
    server {
        listen 63306;
        proxy_pass 192.168.1.100:3306;
    }

    # Redis 代理
    server {
        listen 6379;
        proxy_pass 192.168.1.101:6379;
    }

    # SSH 代理
    server {
        listen 2222;
        proxy_pass 192.168.1.102:22;
    }
}

四、常用 Stream 模塊參數(shù)說(shuō)明

參數(shù)
作用
示例值
listen
代理服務(wù)器監(jiān)聽(tīng)的端口
63306
、0.0.0.0:6379
proxy_pass
后端真實(shí)服務(wù)器地址和端口
192.168.1.100:3306
proxy_connect_timeout
連接后端服務(wù)器的超時(shí)時(shí)間
10s
proxy_timeout
會(huì)話超時(shí)時(shí)間(無(wú)數(shù)據(jù)傳輸時(shí)關(guān)閉)
300s
proxy_buffer_size
緩沖區(qū)大小
8k
16k
ssl_preread
啟用 SSL/TLS 預(yù)讀?。ㄓ糜?SNI 路由)
on

五、驗(yàn)證配置并重啟 Nginx

  1. 檢查配置語(yǔ)法

    nginx -t
  2. 重啟 Nginx

    systemctl restart nginx
  3. 驗(yàn)證代理是否生效

    # 檢查端口監(jiān)聽(tīng)
    netstat -tulpn | grep nginx

    # 使用 telnet 測(cè)試連接(以 MySQL 為例)
    telnet localhost 63306

六、注意事項(xiàng)

  1. 防火墻設(shè)置

    • 確保服務(wù)器防火墻開(kāi)放代理端口(如 63306)。
    • 示例(以 firewalld 為例):
      firewall-cmd --add-port=63306/tcp --permanent
      firewall-cmd --reload
  2. 性能考慮

    • 高并發(fā)場(chǎng)景下,建議調(diào)整 worker_processes 和 worker_connections 參數(shù)。
    • 開(kāi)啟 sendfile 提升傳輸效率:
      stream {
          sendfile on;
          # 其他配置...
      }
  3. 監(jiān)控與日志

    • 通過(guò) tcp_access.log 和 tcp_error.log 監(jiān)控代理流量。
    • 使用 nginx -s reload 熱加載配置,避免中斷服務(wù)。

通過(guò)以上配置,Nginx 可高效代理各類(lèi) TCP 服務(wù),實(shí)現(xiàn)負(fù)載均衡、端口映射、安全隔離等功能。


閱讀原文:原文鏈接


該文章在 2025/7/1 10:58:40 編輯過(guò)
關(guān)鍵字查詢(xún)
相關(guān)文章
正在查詢(xún)...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專(zhuān)業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車(chē)隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類(lèi)企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷(xiāo)售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶(hù)的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved