如何在Linux上配置FTP服务器

紫色茉莉 2023-11-08 ⋅ 20 阅读

在Linux环境下,配置FTP服务器可以让你方便地共享文件和访问远程主机上的文件。本文将向你展示如何在Linux上配置FTP服务器。

步骤一:安装FTP服务器软件

首先,你需要安装FTP服务器软件。在大部分Linux发行版上,可以使用以下命令安装vsftpd(一个稳定且流行的FTP服务器软件):

sudo apt-get update
sudo apt-get install vsftpd

步骤二:配置FTP服务器

安装完成后,你需要对FTP服务器进行一些基本配置。

  1. 在终端中,使用文本编辑器打开vsftpd的主配置文件/etc/vsftpd.conf:

    sudo nano /etc/vsftpd.conf
    
  2. 解除以下行的注释,即去掉行首的“#”:

    • To allow anonymous FTP connections:
      anonymous_enable=YES
      
    • To let local users log in via FTP:
      local_enable=YES
      
    • To prevent local users from writing files:
      write_enable=NO
      
    • To allow FTP connections in passive mode:
      pasv_enable=YES
      pasv_min_port=40000
      pasv_max_port=40100
      
    • 如果你想限制FTP用户访问指定的目录,可以添加以下行(其中"/home/ftpusers"为你想设置的目录路径):
      chroot_local_user=YES
      chroot_list_enable=YES
      chroot_list_file=/etc/vsftpd.chroot_list
      
  3. 保存并关闭文件。

  4. 如果你在步骤2添加了限制用户访问的目录,创建并编辑/etc/vsftpd.chroot_list文件,并在其中添加你想限制访问的用户名,每行一个用户名。

  5. 当你对配置文件进行更改后,重新启动FTP服务器以使更改生效:

    sudo systemctl restart vsftpd
    

步骤三:允许FTP服务通过防火墙

默认情况下,Linux系统上的防火墙可能会阻止FTP连接。你需要允许FTP服务通过防火墙,才能够与FTP服务器建立连接。

  1. 在终端中,打开防火墙的配置文件(例如,Ubuntu上使用的是ufw):

    sudo nano /etc/ufw/before.rules
    
  2. 在文件的filter部分添加以下行(添加到# allow FTP connections之前):

    # Allow FTP connections
    -A ufw-before-input -p tcp --dport 20 -j ACCEPT
    -A ufw-before-input -p tcp --dport 21 -j ACCEPT
    -A ufw-before-input -p tcp --dport 40000:40100 -j ACCEPT
    
  3. 保存并关闭文件。

  4. 重新启动防火墙使更改生效:

    sudo ufw disable
    sudo ufw enable
    

步骤四:连接到FTP服务器

现在,你已经成功配置了FTP服务器,可以使用FTP客户端来连接到服务器。

  1. 在你的本地计算机上安装一个支持FTP的客户端,例如FileZilla。

  2. 启动FTP客户端,并使用您的服务器IP地址、FTP用户名和密码进行连接。

  3. 成功连接后,你就可以通过FTP客户端在本地计算机和服务器之间传输文件了。

希望本文能够帮助你在Linux上配置FTP服务器。祝你使用愉快!


参考资料:


全部评论: 0

    我有话说: