apache-ftpserver+自定义用户

1 安装apache-ftpserver

1.1安装jdk1.8

apache-ftpserver是一个java程序,需要jdk1.8的环境

1.2下载最新稳定版

官网下载地址:http://mina.apache.org/ftpserver-project/download_1.1.1.html
稳定版

重命名为apache-ftpserver
在这里插入图片描述

1.3 配置用户密码明文

切换到apache-ftpserver配置文件目录apache-ftpserver/res/conf

在ftpd-typical.xml文件中将

<file-user-manager file="./res/conf/users.properties"/>
改为

<file-user-manager file="./res/conf/users.properties" encrypt-passwords="clear"/>

#明文密码

在这里插入图片描述

1.4 修改默认监听端口

在ftpd-typical.xml文件中将

 <nio-listener name="default" port="2121">
改为
 <nio-listener name="default" port="21">

防火墙打开21端口

1.5 添加用户

切换到conf目录

cd apache-ftpserver/res/conf

编辑users.properties

在最后添加如下配置
用户名为:lizhiwei

ftpserver.user.lizhiwei.userpassword=123456
#主目录
ftpserver.user.lizhiwei.homedirectory=./res/home
#当前用户可用
ftpserver.user.lizhiwei.enableflag=true
#具有上传权限
ftpserver.user.lizhiwei.writepermission=true
#最大登陆用户数为20
ftpserver.user.lizhiwei.maxloginnumber=20
#同IP登陆用户数为2
ftpserver.user.lizhiwei.maxloginperip=2
#空闲时间为300秒
ftpserver.user.lizhiwei.idletime=300
#上传速率限制为480000字节每秒
ftpserver.user.lizhiwei.uploadrate=48000000
#下载速率限制为480000字节每秒
ftpserver.user.lizhiwei.downloadrate=48000000

默认有两个用户,一个admin,一个anonymous

如果需要使用amdin用户登录,需要重新设置密码,(由于前面设置了明文的密码)

1.6启动验证

切换到安装目录apache-ftpserver

使用命令

nohup bin/ftpd.sh res/conf/ftpd-typical.xml &

进行后台启动。

1.6.1验证启动

在这里插入图片描述

1.6.2登录验证

在服务器安装ftp的客户端工具

yum install ftp

使用新创建的用户登录验证

在这里插入图片描述

默认的数据目录在

apache-ftpserver/res/home

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
接口FtpHandler中定义的方法具有以下功能: 1. `init(FtpServerContext, Listener)`:初始化FTP处理器,此方法在FTP服务器启动时调用。它接收FtpServerContext对象和Listener对象作为参数,可以用于设置服务器的上下文和监听器。 2. `messageReceived(FtpIoSession, FtpRequest)`:处理接收到的FTP请求消息。当FTP客户端发送请求消息到服务器时,该方法将被调用。它接收FtpIoSession对象和FtpRequest对象作为参数,可以用于处理请求并生成响应。 3. `messageSent(FtpIoSession, FtpReply)`:处理已发送的FTP响应消息。当服务器发送响应消息给FTP客户端时,该方法将被调用。它接收FtpIoSession对象和FtpReply对象作为参数,可以用于处理已发送的响应。 4. `sessionClosed(FtpIoSession)`:处理FTP会话关闭事件。当FTP会话关闭时,该方法将被调用。它接收FtpIoSession对象作为参数,可以用于在会话关闭时进行清理或处理。 5. `sessionCreated(FtpIoSession)`:处理FTP会话创建事件。当FTP会话被创建时,该方法将被调用。它接收FtpIoSession对象作为参数,可以用于在会话创建时进行初始化或处理。 6. `sessionIdle(FtpIoSession, IdleStatus)`:处理FTP会话空闲事件。当FTP会话处于空闲状态时,该方法将被调用。它接收FtpIoSession对象和IdleStatus对象作为参数,可以用于处理空闲状态下的操作。 7. `sessionOpened(FtpIoSession)`:处理FTP会话打开事件。当FTP会话被打开时,该方法将被调用。它接收FtpIoSession对象作为参数,可以用于在会话打开时进行初始化或处理。 这些方法提供了处理FTP服务器与客户端交互过程中各个事件的机制,可以根据需要进行自定义实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值