怎么组建一个团队的文件共享服务器?

在这里插入图片描述
使用云服务器搭建私有文件共享系统,可以实现异地、高速、便捷的共享文件。

可以如同使用,可以实时传输的,U盘一样操作文件。并且部署成本低(几十块钱/月),难度小。以下是具体指南。

公网FTP文件共享系统搭建指南

本文为个人为开发团队搭建FPS系统过程的记录。力争做到如果你和我使用同样的环境,则可完全按照本指南完成部署。

结合自身情况,综合成本(主要是成本考虑)与后期拓展性考虑,我选择的是 阿里云 ESC 服务器。这个服务器 免费试用3个月,后期继续租用费用也低。

服务器信息

服务商:阿里云
型号:1核(vCPU) 2 GiB
系统:Ubuntu 22.04 64位 UEFI版
云盘:高效云盘 40GiB (2120 IOPS)(系统盘)

在服务器上部署FPS服务

主要参看 阿里云-轻量应用-搭建FTP服务器 指南,在ESC服务器上部署vsftpd(very secure FTP daemon)服务。
由于使用的是不通操作系统,少部分命令不适用,特做出修改和补充。

PS. vsftpd 是Linux操作系统下的一款小巧轻快、安全易用的FTP服务器软件。

前提条件

已创建 阿里云 ESC 服务器 使用Ubuntu 22.04 64位 UEFI版系统。

步骤一 安装与启动vsftpd

  1. 远程连接Linux服务器。

    登录ESC服务器控制台,选择远程连接,

  2. 执行以下命令,查看轻量服务器是否已安装vsftpd。

    部分使用应用镜像部署的轻量应用服务器已经预安装了vsftpd,如果再次安装可能会出现冲突。

    vsftpd -v
    

    如果回显信息类似如下所示,表示当前轻量应用服务器已经安装了vsftpd,您无需再次安装,您可以跳过本步骤

    [admin@************ ~]$ vsftpd -v
    vsftpd: version 3.0.2
    
  3. 运行以下命令,安装vsftpd。

    运行以下命令安装vsftpd

    apt-get install vsftpd
    

    看到vsftpd版本号,表示vsftpd安装成功。
    轻量-安装ftp

    很可能会出现如下报错:

    Unable to locate package vsftpd
    
    Unable to locate package XXX报错解决:
    1. 更新sources.list源

      使用命令 vim /etc/apt/sources.list 打开sources.list,并添加如下国内下载源

      贴两个国内下载源,更多请见:CSDN Ubuntu更换源

      • 清华源ubuntu清华源选择对应系统版本查看源地址

      • 网易源

      • deb http://mirrors.163.com/ubuntu/ wily main restricted universe multiverse
        deb http://mirrors.163.com/ubuntu/ wily-security main restricted universe multiverse
        deb http://mirrors.163.com/ubuntu/ wily-updates main restricted universe multiverse
        deb http://mirrors.163.com/ubuntu/ wily-proposed main restricted universe multiverse
        deb http://mirrors.163.com/ubuntu/ wily-backports main restricted universe multiverse
        deb-src http://mirrors.163.com/ubuntu/ wily main restricted universe multiverse
        deb-src http://mirrors.163.com/ubuntu/ wily-security main restricted universe multiverse
        deb-src http://mirrors.163.com/ubuntu/ wily-updates main restricted universe multiverse
        deb-src http://mirrors.163.com/ubuntu/ wily-proposed main restricted universe multiverse
        deb-src http://mirrors.163.com/ubuntu/ wily-backports main restricted universe multiverse
        

      编辑完后更新缓存

      sudo apt-get update
      
    2. 更新apt

      1. 依次执行如下命令
      sudo apt-get update
      sudo apt-get upgrade
      
    3. 彻底解决 原文连接

      1. 检查包名是不是写错了

      2. 更新存储库缓存 sudo apt-get update

      3. 检查该软件包是否适用于您的 Ubuntu 版本

        查看本系统版本lsb_release -a例如输出

        abhishek@itsfoss:~$ lsb_release -a
        No LSB modules are available.
        Distributor ID:	Ubuntu
        Description:	Ubuntu 18.04.3 LTS ##看这里,看这里!
        Release:	18.04
        Codename:	bionic
        

        请带着这个消息前往 https://packages.ubuntu.com/?ref=itsfoss.com 查找你需要的软件包(Keyword)是否在 系统版本(Distribution)的Universe 存储库中可用

  4. 运行以下命令,设置FTP服务开机自启动。

    sudo systemctl enable vsftpd.service
    
  5. 运行以下命令,启动FTP服务。

    sudo systemctl start vsftpd.service
    

    说明

    如果出现无法启动FTP,且提示错误信息Job for vsftpd.service failed because the control process exited with error code,请排查是否存在21端口被占用问题。

    1. 使用lsof -i:21命令,查看是否存在进程。
    2. 如果存在进程,使用kill -9 <进程号>命令,杀掉进程。
  6. 运行以下命令,查看FTP服务的端口号。

    sudo netstat -antup | grep ftp
    

    可查看到FTP服务的端口号,表示服务已正常启动。

步骤二 设置FTP服务器的访问模式

您可以选择以下任一方式设置FTP服务器,建议您使用更加安全的本地用户模式。

本地用户模式

您可以选择以下任一方式设置FTP服务器,建议您使用更加安全的本地用户模式。

本地用户模式(推荐) 匿名访问模式 参见

  1. 运行以下命令为FTP服务创建一个Linux用户。

    本示例中,该用户名为ftptest

    sudo adduser ftptest
    
  2. 运行以下命令修改ftptest用户的密码。

    sudo passwd ftptest
    

    运行命令后,根据命令行提示完成FTP用户的密码修改。

  3. 运行以下命令创建一个供FTP服务使用的文件目录。

    sudo mkdir /var/ftp/test
    
  4. 运行以下命令更改/var/ftp/test目录的拥有者为ftptest

    sudo chown -R ftptest:ftptest /var/ftp/test
    
  5. 修改vsftpd.conf配置文件。

    1. 运行以下命令,修改配置文件/etc/vsftpd.conf。

      如果您在安装vsftpd时,使用的是其他安装命令,则配置文件路径为/etc/vsftpd/vsftpd.conf。

      sudo vim /etc/vsftpd.conf
      
    2. 按i进入编辑模式。

    3. 配置FTP服务器为被动模式。

      具体的配置参数说明如下,除下面提及的参数,其他参数保持默认值即可。

      重要

      复制以下参数,然后粘贴至Linux服务器的配置文件时,请注意参数不要被#号注释掉。同时,请注意格式问题。例如,添加多余的空格会造成无法重启服务的结果。

      修改下列参数的值:

      #禁止匿名登录FTP服务器。
      anonymous_enable=NO
      #允许本地用户登录FTP服务器。
      local_enable=YES
      #监听IPv4 sockets。
      listen=YES
      

      在行首添加#注释掉以下参数,关闭监听IPv6 sockets:

      #listen_ipv6=YES
      

      在配置文件的末尾添加下列参数,其中pasv_address 参数需要替换为轻量应用服务器的公网IP地址

      #设置本地用户登录后所在目录。
      local_root=/var/ftp/test
      #全部用户被限制在主目录。
      chroot_local_user=YES
      #启用例外用户名单。
      chroot_list_enable=YES
      #指定例外用户列表文件,列表中用户不被锁定在主目录。
      chroot_list_file=/etc/vsftpd/chroot_list
      #开启被动模式。
      pasv_enable=YES
      allow_writeable_chroot=YES
      #本示例中为轻量应用服务器的公网IP地址。
      pasv_address=39.105.xx.xx
      #设置被动模式下,建立数据传输可使用的端口范围的最小值。
      #建议您把端口范围设置在一段比较高的范围内,例如50000~50010,有助于提高访问FTP服务器的安全性。
      pasv_min_port=50000
      #设置被动模式下,建立数据传输可使用的端口范围的最大值。
      pasv_max_port=50010
      

    以上为阿里云源文档,我照搬了并进行了以下其他设置

    #不允许下载
    download_enable=NO
    
    #开启下载上传日志
    dual_log_enable=YES
    vsftpd_log_file=/var/log/vsftpd.log
    
    #注意这下面这部分需要更改上文而非添加
    #新建文件权限,一般设置为022,那么新建后的文件的权限就是777-002=775
    local_umask=002
    #允许写操作
    write_enable=YES
    

    更多参数的详细信息,请参见vsftp配置文件及参数说明

    1. 按Esc退出编辑模式,然后输入:wq并回车,保存退出文件。
  6. 创建chroot_list文件,并在文件中写入例外用户名单。

    1. 运行以下命令,创建chroot_list文件。

      sudo vim /etc/vsftpd/chroot_list
      
    2. 按i进入编辑模式。

    3. 输入例外用户名单。此名单中的用户不会被锁定在主目录,可以访问其他目录。

      没有外用户也需要完成创建

    4. 按Esc退出编辑模式,然后输入:wq并回车,保存退出文件。

  7. 修改配置文件

    ​ 将/etc/ssh/sshd_config文件尾行参数PasswordAuthentication的值改为yes

  8. 运行以下命令,重启FTP服务。

    sudo systemctl restart vsftpd.service
    

步骤三:配置安全策略/防火墙

搭建好FTP站点后,在Linux服务器的防火墙中,需要放行下列FTP端口。ECS服务为修改安全组

被动模式需开放21端口,以及配置文件/etc/vsftpd.conf中参数pasv_min_portpasv_max_port之间的所有端口。配置详情如下表所示。

应用类型协议端口范围
FTPTCP21
自定义TCPpasv_min_port/pasv_max_port。例如:50000/50010

步骤五:通过FTP客户端测试连接FTP服务器

  1. 下载并 打开FileZilla客户端。

  2. 在顶部菜单栏,选择****文件** > *站点管理器***。

  3. 站点管理器对话框的左下角,单击新站点

  4. 输入新站点的名称,并完成站点配置。

    协议:FTP
    主机:服务器公网IP地址
    登录类型:正常
    用户密码即为 创建的Linux用户的信息

    单击连接

连接成功后,您可以对文件进行上传、下载和删除等操作。

windows11 系统 FPS共享文件夹创建

演示环境:Windows 11

step 1 “添加一个网络位置”

打开资源管理器,选中 “此电脑” 右键惠后选择 “显示更多选项”

在这里插入图片描述

在弹出选项卡中选择 “添加一个网络位置”[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在这里插入图片描述

step 2 网络位置

在“添加网络位置向导”中添入对应信息

!注意:取消勾选 “匿名登陆”

在这里插入图片描述

我是Paddy。接下来将持续为大家带来高质量的知识分享。期待得到批评指正与交流讨论。

我的文章会首先发布于知乎,期待您的关注

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值