ftpserver环境搭建

一、docker方式安装

安装docker

  • 安装:,参考

  • curl -sSL https://get.daocloud.io/docker | sh

  • 更换docker源:

    echo "\
    {
    \"registry-mirrors\": [
    \"https://kfwkfulq.mirror.aliyuncs.com\",
    \"https://2lqq34jg.mirror.aliyuncs.com\",
    \"https://pee6w651.mirror.aliyuncs.com\",
    \"https://registry.docker-cn.com\",
    \"http://hub-mirror.c.163.com\"
    ],
    \"dns\": [
    \"8.8.8.8\",
    \"8.8.4.4\"
    ]
    }" > /etc/docker/daemon.json && /etc/init.d/docker restart
    

创建

创建容器,自行更换FTP_USERFTP_PASSPASV_ADDRESS参数

文件存放在宿主机:/Ftpfile目录下

docker run -itd -p 20:20 -p 21:21 -p 21100-21110:21100-21110 \
-v /Ftpfile:/home/vsftpd \
-e FTP_USER=test -e FTP_PASS=123456 \
-e PASV_ADDRESS=10.1.40.180 \
-e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 \
--name vsftpd --restart=always fauria/vsftpd

创建用户

docker exec 容器名称 addusr 用户名 密码
docker exec ftp addusr lstcml 123456

二、Apache FtpServer

Linux平台下直接用vsftpd感觉还是比较麻烦,使用这个比较方便

  • 官网下载

  • 解压并进入根目录:tar -zxvf apache-ftpserver-1.1.4-bin.tar.gz;cd apache-ftpserver-1.1.4

  • 备份配置:

    cp -r res/conf/users.properties res/conf/users.properties.origin
    cp -r res/conf/ftpd-typical.xml res/conf/ftpd-typical.xml.origin
    
  • users.properties文件,在该配置文件中可以增加用户,形如【ftpserver.user.用户名.xxxx】

    不允许匿名登录的话,将对应的anonymous删除或注释掉

    # Password is "admin"
    ftpserver.user.admin.userpassword=admin
    ftpserver.user.admin.homedirectory=./res/home
    ftpserver.user.admin.enableflag=true
    ftpserver.user.admin.writepermission=true
    ftpserver.user.admin.maxloginnumber=0
    ftpserver.user.admin.maxloginperip=0
    ftpserver.user.admin.idletime=0
    ftpserver.user.admin.uploadrate=0
    ftpserver.user.admin.downloadrate=0
    
    ftpserver.user.anonymous.userpassword=
    ftpserver.user.anonymous.homedirectory=./res/home
    ftpserver.user.anonymous.enableflag=true
    ftpserver.user.anonymous.writepermission=false
    ftpserver.user.anonymous.maxloginnumber=20
    ftpserver.user.anonymous.maxloginperip=2
    ftpserver.user.anonymous.idletime=300
    ftpserver.user.anonymous.uploadrate=4800
    ftpserver.user.anonymous.downloadrate=4800
    
    #密码 配置新的用户
    ftpserver.user.lxw.userpassword=123456
    #主目录
    ftpserver.user.lxw.homedirectory=./res/home
    #当前用户可用
    ftpserver.user.lxw.enableflag=true
    #具有上传权限
    ftpserver.user.lxw.writepermission=true
    #最大登陆用户数为20
    ftpserver.user.lxw.maxloginnumber=20
    #同IP登陆用户数为2
    ftpserver.user.lxw.maxloginperip=2
    #空闲时间为300秒
    ftpserver.user.lxw.idletime=300
    #上传速率限制为480000字节每秒
    ftpserver.user.lxw.uploadrate=48000000
    #下载速率限制为480000字节每秒
    ftpserver.user.lxw.downloadrate=48000000
    
  • ftpd-typical.xml,需要动的只有port和encrypt-passwords
    <server xmlns="http://mina.apache.org/ftpserver/spring/v1"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="
           http://mina.apache.org/ftpserver/spring/v1 http://mina.apache.org/ftpserver/ftpserver-1.0.xsd  
           "
        id="myServer">
        <listeners>
            <!-- 默认端口是2121,可以修改为自己的端口 -->
            <nio-listener name="default" port="21">  
                <ssl>
                    <keystore file="./res/ftpserver.jks" password="password" />
                </ssl>
            </nio-listener>
        </listeners>
        <file-user-manager file="./res/conf/users.properties" encrypt-passwords="clear"/>
        <!-- 添加encrypt-passwords="clear",将密码加密方式修改给clear -->
    </server>
    
  • 启动:sh ./bin/ftpd.sh res/conf/ftpd-typical.xml

  • 开机自启可以用crontabsupervisor,不再赘述

posted @ 2022-07-20 13:40  秒年度  阅读(453)  评论(0编辑  收藏  举报