在Ubuntu上设置和管理FTP服务器以支持多用户,通常可以使用vsftpd
(Very Secure FTP Daemon)这个流行的FTP服务器软件。以下是设置和多用户管理的步骤:
安装vsftpd: 打开终端,运行以下命令来安装vsftpd:
sudo apt update
sudo apt install vsftpd
配置vsftpd: 安装完成后,你需要编辑vsftpd的配置文件来进行多用户设置。使用以下命令打开配置文件:
sudo nano /etc/vsftpd.conf
在配置文件中,确保以下设置被启用(取消注释或添加):
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
guest_enable=YES
guest_username=ftpuser
user_sub_token=$USER
local_root=/home/$USER/ftp
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
这些设置允许本地用户登录,并且每个用户都有自己的FTP目录。
创建FTP用户:
你可以为每个FTP用户创建一个系统用户。使用以下命令创建一个新用户(将username
替换为你想要的用户名):
sudo adduser username
在创建用户的过程中,你可以设置用户的密码,以及其他相关信息。为了FTP的安全性,你可能想要禁止这些用户通过SSH登录。这可以通过在/etc/passwd
文件中将用户的shell更改为/sbin/nologin
来实现:
sudo usermod -s /sbin/nologin username
设置用户目录权限: 确保FTP用户的家目录权限设置正确,以便vsftpd可以访问:
sudo chown -R username:username /home/username/ftp
sudo chmod -R 755 /home/username/ftp
重启vsftpd服务: 保存配置文件的更改后,重启vsftpd服务以应用更改:
sudo systemctl restart vsftpd
管理用户列表:
如果你想允许某些用户访问FTP而其他人不行,你可以编辑/etc/vsftpd.chroot_list
文件,添加或删除用户名。
防火墙设置: 如果你的服务器运行着防火墙,确保开放了FTP服务的端口(默认是21):
sudo ufw allow 21/tcp
测试FTP连接: 使用FTP客户端(如FileZilla或命令行ftp)连接到你的服务器,使用新创建的用户名和密码进行登录,以确保一切设置正确。
请注意,FTP不是最安全的文件传输协议,因为它在传输数据时不加密。对于更安全的传输,考虑使用SFTP(SSH File Transfer Protocol),它是SSH的一部分,提供了加密的文件传输。如果你需要设置SFTP,通常只需要在SSH服务器上进行配置即可,因为SFTP是SSH的默认功能。
亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>
推荐阅读:Ubuntu上AnyDesk多用户管理