centos

VSFTP在CentOS上的权限设置

小樊
40
2025-02-18 15:58:02
栏目: 智能运维

在CentOS上配置VSFTP(Very Secure FTP Daemon)涉及多个步骤,包括安装、基本配置、用户管理和权限设置。以下是一个详细的指南:

安装VSFTP

首先,确保你的系统是最新的,然后安装VSFTP:

sudo yum update -y
sudo yum install vsftpd -y

启动和启用VSFTP服务

安装完成后,启动VSFTP服务并设置为开机自启:

sudo systemctl start vsftpd
sudo systemctl enable vsftpd

基本配置

编辑VSFTP的配置文件 /etc/vsftpd/vsftpd.conf

sudo vim /etc/vsftpd/vsftpd.conf

进行以下配置:

用户管理

创建用户

创建一个新用户并设置其主目录:

sudo useradd -d /home/ftpuser -s /sbin/nologin ftpuser
sudo passwd ftpuser

按照提示设置密码。

配置用户目录权限

设置用户主目录的权限:

sudo chown ftpuser:ftpuser /home/ftpuser
sudo chmod 755 /home/ftpuser

虚拟用户配置(可选)

创建虚拟用户

对于更高级的安全性,可以使用虚拟用户。首先,创建一个用户数据库文件:

sudo vim /etc/vsftpd/vu.txt

添加用户名和密码,例如:

admin admin
upload upload
download download

将明文文件转换为数据库文件:

db_load -T -t hash -f /etc/vsftpd/vu.txt /etc/vsftpd/vu.db
sudo rm /etc/vsftpd/vu.txt

修改数据库文件权限:

sudo chmod 600 /etc/vsftpd/vu.db

配置PAM文件

创建PAM文件以支持虚拟用户:

sudo vim /etc/pam.d/vsftpd

添加以下内容:

auth required pam_userdb.so db=/etc/vsftpd/vu.db
account required pam_userdb.so db=/etc/vsftpd/vu.db

创建虚拟用户目录和权限

为每个虚拟用户创建目录并设置权限:

sudo mkdir /var/ftp/upload
sudo mkdir /var/ftp/download
sudo chown ftpuser:ftpuser /var/ftp/upload
sudo chown ftpuser:ftpuser /var/ftp/download
sudo chmod 755 /var/ftp/upload
sudo chmod 755 /var/ftp/download

为每个虚拟用户创建权限文件:

sudo vim /etc/vsftpd/vu_perm/upload
sudo vim /etc/vsftpd/vu_perm/download

设置相应的权限,例如:

anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/var/ftp/upload

对于下载用户:

anon_world_readable_only=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
local_root=/var/ftp/download

重启VSFTP服务

完成配置后,重启VSFTP服务以应用更改:

sudo systemctl restart vsftpd

防火墙配置(可选)

如果使用防火墙,确保开放FTP所需的端口:

sudo firewall-cmd --permanent --add-port=20/tcp
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --permanent --add-port=990/tcp
sudo firewall-cmd --permanent --add-port=40000:50000/tcp
sudo firewall-cmd --reload

以上步骤涵盖了在CentOS上安装、配置VSFTP的基本流程,包括用户管理和权限设置。根据具体需求,可以进一步调整配置以满足安全性和功能性的要求。

0
看了该问题的人还看了