在Linux系统中查看FTP用户的方法取决于使用的FTP服务器软件(如vsftpd、ProFTPD、Pure-FTPd)和用户管理方式(系统用户或虚拟用户),以下是详细操作指南:
确认FTP服务器类型
首先确定系统运行的FTP服务:
sudo systemctl status vsftpd # 检查vsftpd sudo systemctl status proftpd # 检查ProFTPD sudo systemctl status pure-ftpd # 检查Pure-FTPd # 或使用通用命令 sudo netstat -tuln | grep ':21' # 查看21端口占用
根据FTP服务类型查看用户
使用系统用户作为FTP用户
如果FTP直接使用Linux系统用户(常见于vsftpd默认配置):
# 查看所有系统用户 cat /etc/passwd | cut -d: -f1 # 查看有登录权限的用户 grep -E "/bin/(bash|sh)" /etc/passwd | cut -d: -f1
注意:需确保FTP配置允许系统用户登录(如vsftpd的
local_enable=YES
)。
vsftpd虚拟用户
若使用虚拟用户(推荐更安全):
-
步骤1 查看用户配置文件
虚拟用户通常存储在/etc/vsftpd/
或/etc/vsftpd_user_conf/
目录,ls /etc/vsftpd_user_conf/ # 列出所有虚拟用户配置
每个用户对应一个文件(如
user1
),文件名即用户名。 -
步骤2 查看用户数据库文件
若使用db_load
管理用户,查看数据库路径(如/etc/vsftpd/loginusers.db
):sudo db_dump -p /etc/vsftpd/loginusers.db | grep -E '^[a-zA-Z]' # 提取用户名
ProFTPD用户
- 系统用户:同上述
/etc/passwd
查看方式。 - 虚拟用户:
用户存储在/etc/proftpd/
下的配置文件(如proftpd.conf
或/etc/proftpd/conf.d/
):sudo grep "User" /etc/proftpd/proftpd.conf # 查找用户配置 sudo grep "AuthUserFile" /etc/proftpd/*.conf # 查找用户文件路径
若使用
AuthUserFile
(如/etc/proftpd/ftpd.passwd
):sudo cat /etc/proftpd/ftpd.passwd | cut -d: -f1 # 提取用户名
Pure-FTPd用户
- 系统用户:同
/etc/passwd
查看方式。 - 虚拟用户:
使用pure-pw
命令管理用户数据库:sudo pure-pw list # 直接列出所有虚拟用户
若命令不可用,检查数据库路径(默认
/etc/pure-ftpd/pureftpd.passwd
):sudo pure-pw mkdb /etc/pure-ftpd/pureftpd.pdb -f /etc/pure-ftpd/pureftpd.passwd sudo pure-pw list # 重建数据库后再次尝试
其他辅助方法
-
查看FTP日志:
实时监控登录用户:sudo tail -f /var/log/vsftpd.log # vsftpd sudo tail -f /var/log/proftpd/* # ProFTPD sudo tail -f /var/log/syslog | grep pure-ftpd # Pure-FTPd
-
连接测试:
使用ftp localhost
登录后执行who
命令(需服务支持)。
安全建议
- 权限最小化:禁止普通用户SSH登录,仅允许FTP访问。
- 使用虚拟用户:避免直接暴露系统用户。
- 定期审计:检查
/etc/passwd
和FTP配置文件,删除无效用户。 - 防火墙限制:通过
ufw
或iptables
限制FTP端口的访问IP。
- 系统用户 → 查看
/etc/passwd
- vsftpd虚拟用户 → 检查
/etc/vsftpd_user_conf/
或数据库文件 - ProFTPD → 查看
proftpd.conf
或AuthUserFile
指向的文件 - Pure-FTPd → 使用
pure-pw list
命令
重要提示:操作前备份配置文件!修改配置后重启服务生效:
sudo systemctl restart vsftpd # 根据实际服务名调整
引用说明基于Linux主流FTP服务官方文档(vsftpd、ProFTPD、Pure-FTPd)及系统管理最佳实践整理。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/47824.html