FTP服务器安装测试
FTP服务器基本搭建 -- vsftpd
作用:文件的基本上传和下载
1、服务器端
软件的安装:
1 | $ sudo apt- get install vsftpd |
(1)修改配置文件
1 | $ sudo vim /etc/vsftpd.conf |
配置文件修改:
1 2 3 4 5 6 7 8 9 10 11 12 | #允许匿名用户登录 anonymous_enable=YES #实名用户登录拥有写权限(数据的上传) write_enable=YES #设置本地掩码为022 local_umask=022 #允许匿名用户向服务器上传数据 anon_upload_enable=YES #允许匿名用户再服务器创建目录 anon_mkdir_write_enable=YES #配置匿名用户操作的根目录 anon_root=/home/xxx/文件名(xxx为用户名) |
(2)重启服务
1 | $ sudo service vsftpd restart |
2、客户端
(1)实名用户登录
1 | $ ftp IP(FTP服务器的IP地址) |
回车之后,输入服务器的用户名和密码进行登录。
文件的上传:
1 | $ put file |
文件的下载:
1 | $ get file |
注意:不允许直接操作目录,需要对目录进行操作之前需要先打包。
(2)匿名用户登录
1 | $ ftp IP(服务器IP地址) |
回车之后,用户名输入anonymous,密码输入时直接回车
注意:不允许匿名用户在服务器任意目录切换,需要为匿名用户创建一个操作根目录。
(3)lftp客户端
作用:一个ftp客户端工具,可以用于目录的上传和下载
软件安装:
1 | $ sudo apt- get install lftp |
服务器登录:
1)匿名登录
1 2 | $ lftp IP(服务器IP地址) $ login |
2)实名登录
1 | $ lftp xxx@127.0.0.1 |
然后输入服务器的密码登录
基本操作命令:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | 远程相关: 显示工作目录:$ pwd 切换目录:$ cd 文件列表:$ ls 统计文件大小:$ du 文件重命名:$ mv 删除文件:$ rm 创建文件夹:$ mkdir 上传单文件:$ put file 上传多文件:$ mput files 下载单文件:$ get file 下载多文件:$ mget files 下载整个目录及子目录:$ mirror file 上传整个目录及子目录:$ mirror -R file 本地相关: 显示工作目录:$ lpwd 切换目录:$ lcd 文件列表:$ !ls lftp退出:$ exit |
3、常见问题
问题:为匿名用户创建操作根目录后,使用匿名用户登录出现以下问题
vsftpd:500 OOPS: vsftpd: refusing to run with writable root inside chroot ()
原因:从2.3.5之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报该错误。
解决方法:
去除用户限定主目录的写权限
1 | $ chmod o-w /home/xxx/xxx |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App