在Linux系统上部署FTP(文件传输协议)文件共享服务器通常涉及安装和配置FTP服务器软件。最常用的FTP服务器软件之一是vsftpd(Very Secure FTP Daemon)。以下是如何在Linux上部署FTP文件共享服务器的步骤:
一、安装vsftpd
(1)在基于Debian的发行版(如Ubuntu)上:
$sudo apt update
$sudo apt install vsftpd
(2)在基于Red Hat的发行版(如CentOS、Fedora)上:
$sudo yum install vsftpd # CentOS 7 或更早版本
$sudo dnf install vsftpd # CentOS 8 或 Fedora
二、启动并启用vsftpd服务
启动vsftpd服务:
$sudo systemctl start vsftpd
设置vsftpd服务开机自启:
$sudo systemctl enable vsftpd
三、检查防火墙设置
确保防火墙允许FTP流量。FTP通常使用20端口(数据传输)和21端口(命令控制)。
(1)在基于UFW的防火墙(如Ubuntu)上:
$sudo ufw allow 20/tcp
$sudo ufw allow 21/tcp
$sudo ufw reload
(2)在基于firewalld的防火墙(如CentOS 7/8)上:
$sudo firewall-cmd --zone=public --add-port=20/tcp --permanent
$sudo firewall-cmd --zone=public --add-port=21/tcp --permanent
$sudo firewall-cmd --reload
(3)连通性测试
你可以使用FTP客户端(如FileZilla)或命令行工具连接到FTP服务器:
ftp <your_server_ip>
输入系统用户名和密码进行登录,
ftp服务连通性测试成功。
四、配置用户访问目录
在配置文件/etc/vsftpd.conf中,你可以通过以下选项来指定用户访问的目录:
local_root=/var/ftp/specific_dir
这样该用户登录FTP时,将只能看到和访问/var/ftp/specific_dir目录及其子目录。
五、开启用户写权限
在配置文件/etc/vsftpd.conf中,你可以通过以下选项来开启用户写权限:
write_enable=YES
重启服务:
sudo systemctl restart vsftpd
六、创建并设置目录权限
确保你创建的指定目录具有适当的权限,以便FTP用户能够访问和写入。你可以使用mkdir命令创建目录,使用chown命令更改目录所有者,使用chmod命令设置目录权限。
sudo mkdir -p /var/ftp/specific_dir
sudo chown ftpuser:ftpuser /var/ftp/specific_dir # 假设ftpuser是FTP用户的用户名
sudo chmod 755 /var/ftp/specific_dir
七、测试访问及写入功能
客户端打开文件管理器,输入ftp://IP , 弹窗中输入系统用户名和密码,新建文件夹:
可成功访问,可新建目录。