systemctl命令确认vsftpd服务运行状态,包括是否激活、近期日志条目。sudo systemctl status vsftpdnetstat(传统工具)或ss(更高效的替代工具)查看vsftpd监听端口(默认21)及当前连接状态,识别活跃会话数。sudo netstat -tuln | grep vsftpd 或 sudo ss -tuln | grep vsftpdLISTEN状态表示端口监听正常,ESTABLISHED表示活跃连接。top(实时动态视图)或htop(增强版,需安装)查看vsftpd进程的CPU、内存使用率,判断是否因资源瓶颈导致性能下降。sudo top(按P键按CPU排序,M键按内存排序);htop(直接显示进程树及资源占用)。vmstat(虚拟内存、CPU、磁盘I/O)、iostat(磁盘读写速率)、dstat(综合系统指标)监控系统资源,关联vsftpd运行时的系统负载。vmstat 1 5(每1秒刷新1次,共5次);iostat -x 1(查看磁盘I/O详细指标)。journalctl(systemd系统)查看vsftpd相关系统日志,获取服务启动、停止及错误信息。sudo journalctl -u vsftpd -f(实时跟踪日志)。/var/log/xferlog),包含上传/下载文件名、大小、时间、客户端IP等信息,用于分析传输效率和异常。sudo tail -f /var/log/xferlog(实时查看最新传输记录)。sudo yum install epel-release rrdtool rrdtool-perl perl-libwww-perl perl-MailTools perl-MIME-Lite perl-CGI perl-DBI perl-XML-Simple perl-Config-General perl-HTTP-Server-Simple wget;wget http://www.monitorix.org/monitorix-3.4.0-1.noarch.rpm;rpm -ivh monitorix-3.4.0-1.noarch.rpm;sudo systemctl start monitorix;sudo systemctl enable monitorix;http://服务器IP:8080/monitorix/,选择“vsftpd”模块查看。sudo yum install epel-release && sudo yum install netdata && sudo systemctl start netdata;访问http://服务器IP:19999即可查看。vsftpd_exporter),Grafana制作可视化 dashboard(如连接数趋势、传输速率热力图),支持邮件/短信告警。/usr/local/bin/vsftpd_monitor.sh):#!/bin/bash
# 检查vsftpd服务状态
STATUS=$(sudo systemctl is-active vsftpd)
echo "$(date): vsftpd status - $STATUS" >> /var/log/vsftpd_monitor.log
# 检查当前连接数
CONN_COUNT=$(sudo ss -tuln | grep vsftpd | grep ESTABLISHED | wc -l)
echo "$(date): Current connections - $CONN_COUNT" >> /var/log/vsftpd_monitor.log
# 检查CPU使用率(vsftpd进程)
CPU_USAGE=$(ps -C vsftpd -o %cpu= | awk '{sum+=$1} END {print sum}')
echo "$(date): CPU usage by vsftpd - $CPU_USAGE%" >> /var/log/vsftpd_monitor.log
添加定时任务(每分钟运行1次):crontab -e;添加行:* * * * * /usr/local/bin/vsftpd_monitor.sh。以上方法覆盖了从基础状态检查到高级可视化监控的需求,可根据实际场景选择组合使用(如日常用systemctl和top,长期监控用Monitorix/Grafana)。