Linux查看FTP用户命令

查看vsftpd用户:检查/etc/vsftpd.conf中的userlist_file指向文件(如/etc/vsftpd.user_list)及userlist_enable设置;查看pure-ftpd用户:检查/etc/pure-ftpd/pureftpd.passwd文件或使用pure-pw命令。

在Linux系统中,查看FTP用户的方法取决于使用的FTP服务类型(系统用户或虚拟用户)以及具体的FTP服务软件(如vsftpd、proftpd等),以下是详细的操作指南:

Linux查看FTP用户命令


通过系统用户查看FTP用户

如果FTP服务直接使用Linux系统用户(如vsftpd默认配置),可通过以下步骤查看:

查看所有系统用户

执行命令:

   cat /etc/passwd | grep -v "/sbin/nologin" | grep -v "/bin/false" | cut -d: -f1
  • 说明:过滤掉无法登录的系统用户(如服务账户),仅显示可登录的用户。
  • 注意:所有可登录系统的用户默认都能访问FTP(需FTP服务配置允许)。

检查FTP服务配置

编辑vsftpd配置文件,确认是否启用了系统用户:

   sudo nano /etc/vsftpd.conf

检查关键参数:

  • local_enable=YES:允许系统用户登录。
  • userlist_enable=YES:通过/etc/vsftpd.user_list管理允许/禁止的用户列表。

查看允许登录的FTP用户列表

  • 若启用了userlist_enable,查看允许的用户:
    cat /etc/vsftpd.user_list | grep -v "#"
  • 查看禁止登录的用户(如果userlist_deny=NO):
    cat /etc/vsftpd.user_list

通过虚拟用户查看(适用于vsftpd)

如果使用虚拟用户(不与系统账户关联),操作如下:

Linux查看FTP用户命令

定位虚拟用户数据库文件

虚拟用户信息通常存储在数据库文件中:

  • db文件路径/etc/vsftpd/login_users.db(或其他自定义路径)。
  • 文本源文件:如/etc/vsftpd/login_users.txt(存储用户名和密码)。

查看虚拟用户列表

使用db_load工具读取数据库(需安装db-util):

   sudo db_dump -p /etc/vsftpd/login_users.db | grep -E '^[a-zA-Z]' | awk '{print $1}'
  • 说明:直接解析数据库中的用户名。

检查PAM认证配置

编辑PAM配置文件,确认虚拟用户数据库路径:

   sudo nano /etc/pam.d/vsftpd

查找类似行:

   auth required pam_userdb.so db=/etc/vsftpd/login_users
   account required pam_userdb.so db=/etc/vsftpd/login_users
  • db=后的路径即虚拟用户数据库位置(不含.db后缀)。

其他FTP服务软件的查看方法

ProFTPD

  • 虚拟用户通常存储在/etc/proftpd目录下的独立配置文件或SQL数据库中。
  • 查看配置文件:
    grep "AuthUserFile" /etc/proftpd/proftpd.conf  # 查找用户文件路径
    cat /path/to/authfile  # 直接查看用户文件

Pure-FTPd

  • 虚拟用户通过pure-pw管理,查看所有用户:
    sudo pure-pw list
  • 用户数据存储在/etc/pure-ftpd/pureftpd.passwd/etc/pureftpd.pdb

注意事项

  1. 权限要求:查看配置文件需sudo权限。
  2. 服务差异:不同FTP软件配置路径可能不同(如vsftpd在/etc/vsftpd/,ProFTPD在/etc/proftpd/)。
  3. 安全建议
    • 避免直接使用系统用户提供FTP服务,推荐用虚拟用户。
    • 定期审计用户列表,禁用未使用的账户。
    • 配置文件修改后重启服务生效:sudo systemctl restart vsftpd

常见问题

Q:执行命令后无输出?
A:可能是未安装FTP服务,或配置未启用用户登录,使用systemctl status vsftpd检查服务状态。

Linux查看FTP用户命令

Q:如何确认当前FTP服务类型?
A:通过进程判断:

ps aux | grep -E "vsftpd|proftpd|pure-ftpd"

引用说明

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/29439.html

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月18日 10:29
下一篇 2025年5月30日 17:23

相关推荐

  • 怎样安装linux系统详细步骤新手

    下载Linux发行版ISO文件,制作U盘启动盘,重启电脑从U盘启动,进入安装程序,按向导操作:选择语言、分区磁盘(新手可选自动分区)、设置用户名密码,最后完成安装重启即可。

    2025年6月13日
    100
  • Linux忘记命令时如何查看帮助

    Linux系统中查看命令帮助的主要方法有: ,1. 使用 **man 命令名** 查看详细手册页 ,2. 使用 **命令名 –help** 或 **命令名 -h** 获取快速选项说明 ,3. 使用 **info 命令名** 查看GNU工具文档 ,4. 内置命令用 **help 命令名**(如 help cd)

    2025年6月8日
    200
  • Linux硬盘分区如何操作?

    使用 fdisk 或 gdisk 等工具对硬盘进行分区,创建主分区、扩展分区或逻辑分区,规划好分区布局(如 /, /home, swap),创建分区后,使用 mkfs 格式化为 ext4 等文件系统,最后编辑 /etc/fstab 文件实现分区挂载。

    2025年6月7日
    000
  • Linux如何重新分区?磁盘不够用怎么办

    备份数据后使用parted或fdisk工具操作:卸载目标分区→删除旧分区→创建新分区(设置大小/类型)→格式化文件系统→更新/etc/fstab挂载点→重载分区表,注意调整分区需依赖LVM或GParted图形工具扩展空间。

    2025年6月2日
    400
  • Linux下查找MySQL安装目录

    在Linux中查看MySQL安装目录,常用方法包括:执行which mysql或whereis mysql查找二进制路径;运行ps -ef | grep mysql查看进程信息;检查配置文件/etc/my.cnf或/etc/mysql/my.cnf中的路径设置。

    2025年6月11日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN