linux下使用vsftpd搭建ftp服务并配置虚拟用户
时间: 2024-02-06 22:03:50 浏览: 28
好的,以下是基本步骤:
1. 安装 vsftpd:在终端输入 `sudo apt-get install vsftpd`。
2. 创建虚拟用户账户文件:在终端输入 `sudo touch /etc/vsftpd/virtual_users.txt`,并添加虚拟用户的用户名和密码,格式为 `username1=password1`,每行一个用户。
3. 创建虚拟用户目录:在终端输入 `sudo mkdir /home/vsftpd`,并为每个虚拟用户创建一个目录,例如 `sudo mkdir /home/vsftpd/username1`。
4. 安装db-util:在终端输入 `sudo apt-get install db-util`,并运行命令创建 db-util 的用户账户数据库文件:`sudo db5.3-util -create -d /etc/vsftpd/virtual_users.db -T -t`。
5. 将虚拟用户账户文件转换为虚拟用户数据库文件:在终端输入 `sudo /usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db`。
6. 配置 vsftpd.conf 文件:在终端输入 `sudo nano /etc/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
xferlog_std_format=YES
chroot_local_user=YES
allow_writeable_chroot=YES
listen=YES
# 虚拟用户设置
guest_enable=YES
guest_username=vsftpd
user_sub_token=$USER
local_root=/home/vsftpd/$USER
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
```
7. 创建用户配置文件:在终端输入 `sudo mkdir /etc/vsftpd/vsftpd_user_conf`,并为每个虚拟用户创建一个以其用户名为文件名的配置文件,例如 `sudo nano /etc/vsftpd/vsftpd_user_conf/username1`,并添加以下内容:`write_enable=YES`,表示允许虚拟用户上传文件。
8. 重启 vsftpd 服务:在终端输入 `sudo service vsftpd restart`,并测试是否能够通过虚拟用户登录并上传文件。