温馨提示×

Ubuntu FTPServer如何设置访问权限

小樊
42
2025-12-19 06:08:37
栏目: 智能运维

在Ubuntu上设置FTP服务器的访问权限,可以通过以下步骤进行:

1. 安装FTP服务器软件

首先,你需要安装一个FTP服务器软件。常用的FTP服务器软件有vsftpd和ProFTPD。这里以vsftpd为例:

sudo apt update
sudo apt install vsftpd

2. 配置vsftpd

安装完成后,你需要配置vsftpd。编辑vsftpd的配置文件:

sudo nano /etc/vsftpd.conf

在配置文件中进行以下修改:

  • 允许本地用户登录

    local_enable=YES
    
  • 允许写操作

    write_enable=YES
    
  • 允许匿名用户登录(可选):

    anonymous_enable=YES
    
  • 设置匿名用户的主目录

    anon_root=/var/www/html
    
  • 限制用户访问自己的主目录

    chroot_local_user=YES
    allow_writeable_chroot=YES
    
  • 设置FTP服务器监听的端口(可选):

    listen_port=21
    
  • 启用SSL/TLS加密(可选):

    ssl_enable=YES
    force_local_data_ssl=YES
    force_local_logins_ssl=YES
    ssl_tlsv1=YES
    ssl_sslv2=NO
    ssl_sslv3=NO
    rsa_cert_file=/etc/ssl/private/vsftpd.pem
    rsa_private_key_file=/etc/ssl/private/vsftpd.pem
    

3. 重启vsftpd服务

保存并退出配置文件后,重启vsftpd服务以应用更改:

sudo systemctl restart vsftpd

4. 设置用户访问权限

你可以通过以下方式设置用户的访问权限:

方法一:使用chown和chmod命令

假设你有一个用户ftpuser,你可以这样设置其主目录的权限:

sudo chown ftpuser:ftpuser /home/ftpuser
sudo chmod 755 /home/ftpuser

方法二:使用FTP服务器软件的配置文件

某些FTP服务器软件允许你在配置文件中设置用户的访问权限。例如,在vsftpd中,你可以创建一个user_list文件来指定允许访问的用户:

sudo nano /etc/vsftpd/user_list

在文件中添加允许访问的用户名,每行一个:

ftpuser

然后编辑vsftpd.conf文件,启用userlist_enableuserlist_deny选项:

userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
userlist_deny=NO

5. 防火墙设置

确保你的防火墙允许FTP流量。如果你使用的是UFW(Uncomplicated Firewall),可以这样设置:

sudo ufw allow 21/tcp
sudo ufw allow 990/tcp  # FTPS
sudo ufw allow 40000:50000/tcp  # Passive mode ports
sudo ufw reload

6. 测试FTP连接

最后,你可以使用FTP客户端(如FileZilla)测试FTP连接,确保一切设置正确。

通过以上步骤,你应该能够在Ubuntu上成功设置FTP服务器的访问权限。

0