vsftpd(常见于Linux系统)和 FileZilla Server(常见于Windows系统)为例:
# Ubuntu/Debian sudo apt update sudo apt install vsftpd # CentOS/RHEL sudo yum install vsftpd
编辑配置文件 /etc/vsftpd.conf:
/etc/vsftpd.conf
sudo nano /etc/vsftpd.conf
修改或添加以下关键参数:
# 禁止匿名登录 anonymous_enable=NO # 允许本地用户登录 local_enable=YES # 允许上传文件 write_enable=YES # 设置本地用户根目录(限制用户访问其主目录) chroot_local_user=YES allow_writeable_chroot=YES # 日志设置 xferlog_enable=YES xferlog_file=/var/log/vsftpd.log # 端口设置(默认21,可自定义) listen_port=21
sudo useradd -m ftpuser sudo passwd ftpuser
sudo chown ftpuser:ftpuser /home/ftpuser sudo chmod 755 /home/ftpuser
# 开放FTP端口(默认21) sudo ufw allow 21/tcp # Ubuntu sudo firewall-cmd --permanent --add-port=21/tcp # CentOS sudo firewall-cmd --reload # 如果使用被动模式,开放端口范围(如30000-31000) sudo ufw allow 30000:31000/tcp # SELinux设置(CentOS) sudo setsebool -P ftp_home_dir on
sudo systemctl start vsftpd sudo systemctl enable vsftpd
ftpuser
# 安装FTP客户端 sudo apt install ftp # Ubuntu yum install ftp # CentOS # 连接测试 ftp localhost # 输入用户名和密码后,尝试上传/下载文件
/var/log/vsftpd.log
chroot
vsftpd
ssl_enable=YES
根据实际需求调整配置(如匿名访问、带宽限制等)。