1. 硬件性能升级
硬件是服务器性能的基础,需优先排查硬件资源是否成为瓶颈:
top或htop命令监控CPU使用率,若长期超过70%,需升级至更高核心数/频率的CPU(如Intel Xeon或AMD EPYC系列)。free -h命令检查内存剩余量,若剩余内存不足(如小于总内存的20%),需增加物理内存(DDR4/DDR5)或调整vm.swappiness参数(降低至10-30,减少交换分区使用)。iostat -x 1命令监控磁盘I/O(关注%util指标,若接近100%说明磁盘繁忙),将系统盘/数据盘更换为SSD(NVMe SSD性能更优),并优化文件系统(如使用ext4或XFS,其中XFS对大文件传输支持更好)。ethtool命令检查网卡队列丢包情况(如ethtool -S ens33 | grep drop),若存在丢包,可通过ethtool -G ens33 rx 2048 tx 2048增大网卡环形缓冲区(需网卡支持);同时调整MTU至1500(默认)或9000(巨帧,需网络设备支持),提升网络传输效率。2. 软件配置优化
内核参数调优:编辑/etc/sysctl.conf文件,添加以下关键参数以提升网络性能:
net.core.somaxconn = 4096 # 增加TCP监听队列长度,避免连接被拒绝 net.ipv4.tcp_tw_reuse = 1 # 允许复用TIME-WAIT状态的连接,减少连接建立开销 net.ipv4.tcp_window_scaling = 1 # 启用TCP窗口缩放,提升大数据量传输效率 fs.file-max = 100000 # 增加系统最大文件描述符数量,支持更多并发连接 执行sudo sysctl -p使配置生效。
vsftpd配置优化:编辑/etc/vsftpd.conf文件,调整以下参数:
max_clients = 100(最大并发连接数,根据服务器性能调整)、max_per_ip = 5(每个IP的最大连接数,防止单个IP占用过多资源)。pasv_enable = YES(启用被动模式,适应互联网环境,避免主动模式的端口冲突)、pasv_min_port = 30000、pasv_max_port = 31000(指定被动模式端口范围,需在防火墙中放行)。local_max_rate = 102400(本地用户最大传输速率,单位:字节/秒,如100KB/s)、anon_max_rate = 51200(匿名用户最大传输速率,限制非授权用户的带宽占用)。chroot_local_user = YES(将用户限制在其主目录,防止越权访问)、allow_writeable_chroot = YES(允许chroot目录可写,避免权限问题)、anonymous_enable = NO(禁用匿名访问,提升安全性)。3. 网络与传输模式优化
pasv_enable = YES,并配置合理的端口范围(如30000-31000),同时在防火墙中放行该端口段(sudo ufw allow 30000:31000/tcp)。local_max_rate和max_clients参数限制用户的传输速率和并发连接数,避免单个用户或过多连接占用全部带宽,影响其他用户的使用体验。4. 安全策略优化
anonymous_enable设置为NO,防止未经授权的用户访问FTP服务器,减少不必要的资源消耗。passwd命令为用户设置复杂密码(包含大小写字母、数字和特殊字符),并定期更换密码(如每90天更换一次)。/etc/vsftpd.conf文件,添加以下参数配置SSL加密:ssl_enable = YES rsa_cert_file = /etc/ssl/certs/vsftpd.pem rsa_private_key_file = /etc/ssl/private/vsftpd.key force_local_data_ssl = YES force_local_logins_ssl = YES 生成SSL证书(sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.key -out /etc/ssl/certs/vsftpd.pem),重启vsftpd服务使配置生效。sudo apt install openssh-server),通过sftp命令访问服务器,无需额外配置FTP服务。5. 监控与维护
htop(实时查看CPU、内存、进程状态)、vmstat 1(监控系统整体性能,如CPU、内存、I/O)、iostat -x 1(监控磁盘I/O详细信息)、netstat -tulnp(监控网络连接状态)等工具,定期检查服务器资源使用情况,及时发现性能瓶颈。xferlog_enable = YES、xferlog_std_format = YES),日志文件默认位于/var/log/vsftpd.log,通过分析日志可了解用户访问行为、传输速率等信息,针对性优化配置(如限制高频访问用户的速率)。apt-get autoremove清理不再需要的软件包,apt-get clean清理APT缓存,rm -rf /tmp/*清理临时文件,减少系统资源的占用。