溫馨提示×

Ubuntu vsftp傳輸速度

小樊
37
2025-10-20 14:41:29
欄目: 智能運維

Optimizing VSFTPD Transfer Speed on Ubuntu

1. System-Level TCP Parameter Tuning

Adjusting kernel network parameters can significantly improve VSFTPD’s throughput by optimizing buffer sizes and congestion control. Modify /etc/sysctl.conf with these key settings:

net.core.rmem_max = 16777216  # Max receive buffer size  
net.core.wmem_max = 16777216  # Max send buffer size  
net.ipv4.tcp_rmem = 4096 87380 16777216  # TCP receive buffer sizes (min/default/max)  
net.ipv4.tcp_wmem = 4096 65536 16777216  # TCP send buffer sizes (min/default/max)  
net.ipv4.tcp_congestion_control = cubic  # Efficient congestion algorithm for high-speed networks  
net.ipv4.tcp_no_metrics_save = 1  # Disable saving metrics to reduce overhead  
net.ipv4.tcp_low_latency = 1  # Prioritize low-latency over throughput for interactive tasks  

Apply changes with sudo sysctl -p to make them effective immediately.

2. VSFTPD Configuration Adjustments

Fine-tune the VSFTPD configuration file (/etc/vsftpd.conf) to balance security and performance:

  • Enable Passive Mode: Crucial for avoiding firewall/NAT issues (common in home/office networks). Set:
    pasv_enable=YES  
    pasv_min_port=1024  # Lower bound of passive mode port range  
    pasv_max_port=1048  # Upper bound (adjust to avoid conflicts with other services)  
    
  • Use Binary Transfer Mode: Ensures files are transferred without modification (critical for non-text files like images/videos). Add:
    binary_transfer_mode=YES  
    
  • Limit Concurrent Connections: Prevent server overload by restricting simultaneous users and connections per IP:
    max_clients=100  # Total concurrent connections (adjust based on CPU/RAM)  
    max_per_ip=5     # Max connections from a single IP (throttle abuse)  
    
  • Adjust Transfer Speed Limits: Control bandwidth usage for local/anonymous users (set in bytes/second; 0 = unlimited):
    local_max_rate=0  # Unlimited speed for local users (adjust if needed)  
    anon_max_rate=50000  # Limit anonymous users to 50KB/s (prevent bandwidth hogging)  
    
  • Disable Unnecessary Features: Reduce resource consumption by turning off anonymous access (if not needed) and chroot restrictions (if users don’t need root access):
    anonymous_enable=NO  
    chroot_local_user=NO  # Only enable if users need to be restricted to their home directories  
    

After saving changes, restart VSFTPD with sudo systemctl restart vsftpd.

3. Hardware Optimization

Upgrade hardware components to eliminate physical bottlenecks:

  • Use an SSD: Replace traditional HDDs with SSDs (NVMe preferred) for faster disk read/write speeds. Place the FTP data directory on the SSD (e.g., /mnt/ftp).
  • Increase RAM: More memory allows the system to cache more data, reducing disk I/O for frequently accessed files.
  • Use a Gigabit Network Card: Ensure the server has a 1Gbps (or higher) Ethernet card to support fast data transfer.

4. Network Optimization

Ensure the network infrastructure supports high-speed transfers:

  • Check Network Stability: Use ping (to test latency) and traceroute (to identify routing issues) between the client and server. High latency (>50ms) or packet loss (>1%) can significantly reduce transfer speeds.
  • Configure Firewall Correctly: Allow FTP ports (21 for control, passive mode range for data) in your firewall (e.g., UFW):
    sudo ufw allow 21/tcp  
    sudo ufw allow 1024:1048/tcp  # Passive mode port range (adjust to match VSFTPD config)  
    sudo ufw enable  
    
  • Use a Wired Connection: Wired Ethernet (Cat5e/Cat6) is more stable and faster than Wi-Fi, which is prone to interference and packet loss.

5. Additional Tips

  • Monitor Performance: Use vsftpd’s built-in logging (xferlog_enable=YES) to track transfer speeds and identify bottlenecks. View logs with tail -f /var/log/vsftpd.log.
  • Use FTP Accelerators: Tools like lftp (client) or ncftp offer features like parallel transfers and compression to boost speed.
  • Upgrade VSFTPD: Keep the software up-to-date to benefit from performance improvements and bug fixes (run sudo apt update && sudo apt upgrade vsftpd).

By implementing these optimizations, you can significantly improve VSFTPD’s transfer speed on Ubuntu while maintaining a secure and stable FTP server.

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女