FTP用户权限

  这篇是关于ftp的文档,其作用是在ftp中创建用户时,对其权限进行限定。使创建的用户只能在指定文件夹下上传文件和下载文件,这样可以加强ftp的安全性。
 
  具体操作步骤如下:

<1> 创建用于ftp的帐户:

#mkdir /home/ftp                                          #创建ftp根目录
#useradd  -d   /home/ftp -s /sbin/nologin ftpuser         #创建用户(注意家目录和非登陆)
#passwd  ftpuser                                          #设置用户密码
#chown -R ftpuser  /home/ftp                                         
#chmod 755 -R /home/ftp                                   #改变ftp根目录属主和权限
#echo "ftpuser" >> /etc/vsftpd/user_list                  #把ftpuser加入到允许访问的队伍
#chgrp ftpuser /home/ftp


---------------------------------------------------------------------------------------
<2> 在/etc/vsftpd/vsftpd.conf文件夹下,对FTP的权限进行修改和限制。 


具体操作如下:
#vi  /etc/vsftpd/vsftpd.conf

anonymous_enable=NO                     #禁止匿名访问
local_enable=YES                       #允许本地帐户访问
write_enable=YES                        #允许写入(上传)
local_umask=022                           
dirmessage_enable=YES                   #允许弹出目录信息
xferlog_enable=YES
connect_from_port_20=YES

userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list     #只有写入vsftpd.user_list内的帐户允许访问
use_localtime=YES                       #使用本地时间

pam_service_name=vsftpd                 #认证文件名(默认为此值)
listen=YES                              #开启侦听
tcp_wrappers=YES                        #开启tcp访问控制项

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list        #只有写入vsftpd.chroot_list的帐户不被chroot
                                                # vsftpd.chroot_list需要手动建立
ascii_download_enable=YES               #允许文本模式下载
ascii_upload_enable=YES                 #允许文本模式上传


---------------------------------------------------------------------------------------
1、以上配置修改好后,那么用户ftpuser将只能访问/home/ftp下面的东西,可以下载和上传,并能进入子文件夹下,却不能向上访问。
2、若新用户登陆后,拥有root的权限,则查看chroot-list文件夹中,是否包含新用户名。若去掉新用户名,则新用户这能在该目录下进行上传和下载,其不能向上访问。

小结:通过对user-list及chroot-list的设置可以大大增强vsftp的安全性,
     注意默认新加的用户都不在user_list及chroot_list之列,用户不能访问时请检查这两个文.
     若想创建的用户拥有管理员的权限,可将此用户添加到chroot_list文件夹下。

 

<think>好的,我现在需要回答用户关于如何在Linux中查看FTP用户权限的问题。首先,我得回忆一下FTP服务器在Linux上的常见配置方式,尤其是vsftpd,因为这是最常用的FTP服务器软件之一。用户提到的引用中提到了vsftpd.conf配置文件,所以应该从那里入手。 首先,用户可能需要检查vsftpd的配置文件,也就是/etc/vsftpd/vsftpd.conf。这里面有几个关键参数,比如userlist_enable、userlist_deny和userlist_file。根据引用[2]中的说明,userlist_deny设置为NO时,只有userlist_file中的用户能访问;如果是YES,则这些用户被拒绝。所以用户需要查看这些参数来确定访问控制。 接下来,用户可能需要查看userlist_file的内容,通常是/etc/vsftpd/user_list或者/etc/vsftpd/ftpusers。这些文件里列出的用户会被允许或拒绝访问,具体取决于前面的配置参数。因此,检查这些文件中的用户名是否存在是必要的步骤。 另外,用户FTP目录权限也很重要。即使配置文件允许用户访问,如果他们的主目录权限设置不正确,比如没有读取或写入权限,也会导致问题。这时候需要用到ls -ld命令查看目录权限,以及确认目录的所有者和所属组是否正确。引用[3]提到了chmod修改权限,所以可能需要调整目录权限,但用户的问题是关于查看,所以这部分可能作为补充说明。 还有,如果用户是通过系统用户登录FTP的,他们的shell设置也会影响访问权限。例如,如果用户的shell被设置为/sbin/nologin,可能无法登录FTP。检查/etc/passwd文件中的用户shell设置也是关键的一步。 此外,可能需要确认vsftpd服务是否正在运行,使用systemctl status vsftpd或者service vsftpd status命令。如果服务没启动,用户自然无法访问,不过这可能属于故障排查的范围,用户的问题更侧重于权限查看。 总结下来,步骤应该是: 1. 检查vsftpd.conf中的userlist相关参数。 2. 查看user_listftpusers文件中的用户列表。 3. 确认FTP用户的主目录权限和所有权。 4. 检查用户的shell设置是否允许FTP登录。 5. 可能需要测试登录或查看日志来验证配置。 用户可能还会遇到问题,比如配置更改后未重启服务,导致设置未生效,这也是需要注意的地方。在回答时,需要将这些步骤清晰地列出,并引用提供的参考资料来支持每个步骤的正确性。</think>在Linux中查看FTP用户权限需要结合配置文件、用户限制列表和目录权限综合分析,以下是具体步骤: --- ### 一、检查FTP服务配置文件 1. **定位主配置文件** vsftpd的配置文件通常位于`/etc/vsftpd/vsftpd.conf`。使用命令查看关键参数: ```bash cat /etc/vsftpd/vsftpd.conf | grep -E "userlist_enable|userlist_deny|userlist_file" ``` - 若`userlist_enable=YES`,表示启用了用户列表限制[^2] - `userlist_deny=YES`时,`userlist_file`中的用户**禁止访问**;`userlist_deny=NO`时,**仅允许**列表中的用户访问 2. **查看用户限制列表** 检查`/etc/vsftpd/user_list`和`/etc/vsftpd/ftpusers`文件内容: ```bash cat /etc/vsftpd/user_list # 白名单/黑名单用户列表 cat /etc/vsftpd/ftpusers # 默认禁止访问的用户列表 ``` --- ### 二、验证目录权限 1. **检查用户主目录权限** 通过`ls -ld`查看FTP用户主目录权限: ```bash ls -ld /home/usertest # 替换为实际用户目录 ``` - 目录需至少具有`755`权限(所有者可读写执行,其他用户只读) - 权限异常时可通过`chmod`修改[^3] 2. **确认目录所有权** 确保目录所有者是FTP用户: ```bash chown usertest:usertest /home/usertest ``` --- ### 三、验证用户登录权限 1. **检查用户shell设置** 查看`/etc/passwd`中用户的登录shell: ```bash grep usertest /etc/passwd ``` - 如果shell为`/sbin/nologin`或`/bin/false`,需改为`/bin/bash`才能登录 2. **测试FTP登录** 通过`ftp localhost`命令尝试登录,观察是否提示`530 Permission denied` --- ### 四、日志排查(可选) 查看vsftpd日志定位问题: ```bash tail -f /var/log/vsftpd.log # 日志路径可能因配置不同而变化 ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值