温馨提示×

centos vsftp如何设置并发连接数

小樊
43
2025-11-19 19:22:46
栏目: 智能运维

vsftpd 并发连接数设置指南(CentOS)

一 关键参数与含义

  • max_clients:服务器允许的最大并发客户端连接数,默认值为0(不限制)
  • max_per_ip:每个客户端 IP 允许的最大并发连接数,默认值为0(不限制)
  • 相关带宽限制(可选):anon_max_rate(匿名用户最大传输速率,单位字节/秒)、local_max_rate(本地用户最大传输速率,单位字节/秒),默认均为0(不限制)
  • 并发连接与“多线程下载”的关系:FTP 客户端的多线程/多连接会被 max_per_ip 限制;提高并发需适度放宽该值并配合带宽限速,避免单个 IP 占用过多资源。

二 配置步骤

  1. 安装与备份
    • 安装:sudo yum install vsftpd -y
    • 备份:sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
  2. 编辑配置文件
    • 打开:sudo vi /etc/vsftpd/vsftpd.conf
    • 按需添加或修改以下参数(示例为最多 100 个并发连接、每个 IP 最多 2 个并发;匿名限速 50KB/s、本地用户限速 500KB/s):
      # 并发与限速
      max_clients=100
      max_per_ip=2
      anon_max_rate=51200     # 50KB/s
      local_max_rate=512000    # 500KB/s
      
      # 基本功能按需开启
      local_enable=YES
      write_enable=YES
      chroot_local_user=YES
      
  3. 重启服务生效
    • sudo systemctl restart vsftpd
  4. 防火墙放行
    • 放行 FTP 服务:sudo firewall-cmd --permanent --add-service=ftp && sudo firewall-cmd --reload
    • 若启用被动模式并自定义端口范围(见下一节),需同步放行对应端口区间。

三 被动模式与端口范围

  • 启用被动模式并设定端口范围(便于并发数据连接):
    pasv_enable=YES
    pasv_min_port=50000
    pasv_max_port=50100
    
  • 放行端口(示例范围 50000–50100/tcp):
    • sudo firewall-cmd --permanent --zone=public --add-port=50000-50100/tcp && sudo firewall-cmd --reload
  • 说明:控制连接使用 21/tcp,数据连接在被动模式下使用上述端口区间;端口范围越宽,可支撑的并发数据连接越多。

四 验证与常见问题

  • 验证并发限制
    • 从同一台客户端打开多个终端/连接,当前 2 个连接成功,第 3 个通常会被拒绝并提示:421 There are too many connections from your internet address.
  • 常见排错
    • 修改配置后未生效:确认已执行 systemctl restart vsftpd
    • 被动模式连接失败:检查 pasv_min_port/pasv_max_port 与防火墙/云安全组是否放行。
    • SELinux 干扰:必要时检查或调整 SELinux 策略,或临时设置为宽松模式进行排查。

0