上一篇                     
               
			  Linux怎么查看FTP账号?
- Linux
- 2025-07-06
- 4915
 查看Linux中的FTP用户主要有两种方式: ,1. 若使用系统用户登录FTP,直接查看/etc/passwd中拥有合法shell的用户(如vsftpd默认配置)。 ,2. 若为虚拟用户(如vsftpd的pam认证),查看认证文件(通常是/etc/vsftpd/login_users或/etc/pam.d/vsftpd指定的数据库文件)。 ,其他FTP服务(如ProFTPD)需检查其独立配置文件中的用户定义部分。
 
在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)及系统管理最佳实践整理。
 
  
			