linux

Linux FTPServer如何限制用户访问目录

小樊
37
2025-07-26 08:28:13
栏目: 智能运维

在Linux上,有多种FTP服务器软件可供选择,如vsftpd、ProFTPD、Pure-FTPd等。这里以vsftpd为例,介绍如何限制用户访问特定目录。

  1. 安装vsftpd(如果尚未安装):

对于基于Debian的系统(如Ubuntu),使用以下命令安装:

sudo apt-get update
sudo apt-get install vsftpd

对于基于RPM的系统(如CentOS、Fedora),使用以下命令安装:

sudo yum install epel-release
sudo yum install vsftpd
  1. 配置vsftpd:

使用文本编辑器打开vsftpd的配置文件。通常位于/etc/vsftpd/vsftpd.conf。例如,使用nano编辑器:

sudo nano /etc/vsftpd/vsftpd.conf

找到以下配置项并进行修改:

user_list_enable=YES
user_list_file=/etc/vsftpd/user_list
user_list_deny=NO

这将允许user_list中的用户访问FTP服务器,其他用户将被拒绝。

  1. 限制用户访问特定目录:

在用户的主目录下创建一个名为.ftpaccess的文件,用于定义访问权限。例如,使用nano编辑器:

sudo nano /home/username/.ftpaccess

.ftpaccess文件中,添加以下内容以限制用户访问特定目录:

# 拒绝访问上级目录
chroot_local_user=YES
allow_writeable_chroot=YES

# 允许访问的目录
local_root=/home/username/allowed_directory

/home/username/allowed_directory替换为允许访问的目录路径。

  1. 重启vsftpd服务以应用更改:

对于基于Debian的系统:

sudo systemctl restart vsftpd

对于基于RPM的系统:

sudo systemctl restart vsftpd.service

现在,用户应该只能访问其在.ftpaccess文件中指定的目录。请注意,这些步骤可能因FTP服务器软件和Linux发行版的不同而略有不同。如有需要,请查阅相应软件的文档以获取更详细的说明。

0
看了该问题的人还看了