在Debian系统上配置vsftpd(Very Secure FTP Daemon)服务器的步骤如下:
首先,确保你的系统是最新的,然后使用以下命令安装vsftpd:
sudo apt update
sudo apt install vsftpd
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
使用文本编辑器(如nano
或vim
)打开配置文件:
sudo nano /etc/vsftpd.conf
根据你的需求修改以下参数:
listen=YES
:启用FTP服务器的监听功能。local_enable=YES
:允许本地用户登录。anonymous_enable=NO
:禁止匿名用户登录。chroot_local_user=YES
:限制本地用户只能访问自己的主目录。write_enable=YES
:允许FTP写入权限(如果需要允许用户上传文件)。chroot_list_enable=YES
:启用chroot功能,限制用户访问范围。chroot_list_file=/etc/vsftpd.chroot_list
:指定chroot列表文件的路径。示例配置:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
创建一个用于FTP访问的用户,并设置密码:
sudo useradd -m ftpuser
sudo passwd ftpuser
按照提示设置用户密码。
创建FTP共享目录并设置权限:
sudo mkdir /srv/ftp
sudo chown ftpuser:ftpuser /srv/ftp
sudo chmod 755 /srv/ftp
你可以使用PAM来进一步控制用户访问权限。编辑/etc/pam.d/vsftpd
文件,确保配置文件中没有禁用必要的认证方式。
启动vsftpd服务并设置为开机自启:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
如果你使用的是ufw
防火墙,确保允许FTP流量:
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw reload
使用FTP客户端软件(如FileZilla)连接到你的服务器,输入以下信息进行测试:
ftpuser