Nginx 代理tcp端口

/ nginx / 没有评论 / 1599浏览

Nginx 代理tcp端口

nginx1.9对TCP协议的代理并不是默认开启的,需要在编译的时候配置 --with-stream 参数:nginx1.90对TCP协议的代理并不是默认开启的,需要在编译的时候配置 --with-stream 相当于之前版本的 nginx_tcp_proxy_module参数。注意的是stream和http平级.

安装Nginx

yum -y isntall openssl gcc gcc-c++  pcre*  zlib wget
wget http://nginx.org/download/nginx-1.10.1.tar.gz
tar zxf  nginx-1.10.1.tar.gz
cd nginx-1.10.1
./configure  --prefix=/usr/local/nginx --user=nginx --group=nginx --with-stream  --with-http_ssl_module --with-stream_ssl_module
make && make install

配置文件

events {
    worker_connections  1024;
}

stream {
    upstream ssh {
        #hash $remote_addr consistent;
        server 192.168.190.132:22 weight=5 max_fails=3 fail_timeout=30s;
    }
    server {
        listen 222;
        #proxy_connect_timeout 1s;
        #proxy_timeout 3s;
        proxy_pass ssh;
    }
}

http {
    # ...
}

效果

192.168.190.134使用nginx代理192.168.190.132的22端口。 1 ssh 192.168.190.134的222端口,经nginx跳转到192.168.190.132的22端口. 2