nginx代理ftp端口,实现文件传输

1.需求背景 

nginx代理ftp端口,实现文件传输_第1张图片

 2.安装nginx

查看nginx离线安装

这里补充下:因为代理ftp端口需要用到nginx的stream模块,所以在配置nginx的时候需带上参数:

--with-stream

核心配置:



stream {

        upstream ftpServer {  
			server 172.16.2.30:40000 max_fails=3 fail_timeout=5s weight=1;
        }

        #转发控制连接请求
        server {    
                listen 34000;   #监听端口
                #失败重试
                proxy_next_upstream on;
                proxy_next_upstream_timeout 0;
                proxy_next_upstream_tries 0;
                #超时配置
                proxy_connect_timeout 1s;
                proxy_timeout 10m;
                #限速配置
                proxy_upload_rate 1024k;
                proxy_download_rate 2048k;
                #上游服务器
                proxy_pass ftpServer;
       }

        upstream ftp_pasv1 {    
                server 172.16.2.30:40001 max_fails=3 fail_timeout=5s weight=1;
        }

        upstream ftp_pasv2 {    
                server 172.16.2.30:40002 max_fails=3 fail_timeout=5s weight=1;
        }

        upstream ftp_pasv3 {    
                server 172.16.2.30:40003 max_fails=3 fail_timeout=5s weight=1;
        }

        #转发数据连接请求
        server {               
                listen 34001;
                proxy_pass ftp_pasv1;
        }

        server {                
                listen 34002;
                proxy_pass ftp_pasv2;
        }

        server {                
                listen 34003;
                proxy_pass ftp_pasv3;
        }
}

3.安装vsftp

查看vsftp安装

 核心配置:


#关闭DNS反向解析,提高登录验证速度
reverse_lookup_enable=NO
 
#监听端口
listen_port=40000

#被动模式,开启
pasv_enable=YES
#数据传输端口最小值
pasv_min_port=40001
#数据传输端口最大值
pasv_max_port=40003
#允许连接用户在根目录写操作,开启
allow_writeable_chroot=YES

你可能感兴趣的:(linux相关,nginx,ftp,代理转发ftp端口)