解析FTP服务器:从基础知识到vsftpd实战操作


✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭~✨✨

🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。

我是Srlua小谢,在这里我会分享我的知识和经验。🎥

希望在这里,我们能一起探索IT世界的奥妙,提升我们的技能。🔮

记得先点赞👍后阅读哦~ 👏👏

📘📚 所属专栏:Linux

欢迎访问我的主页:Srlua小谢 获取更多信息和资源。✨✨🌙🌙

​​

​​

目录

了解 FTP 服务器

FTP传输文件有两种方式

ASCII传输模式

二进制数据传输模式

 FTP的两种连接模式

主动模式(PORT方式)

被动模式(PASV方式)

 FTP服务的应用

本地用户:

虚拟用户:

匿名用户:

FTP服务器软件vsftpd

实战:vsftpd服务器安装与启动

第一步:安装vsftpd服务器

第二步:配置vsftpd

第三步:设置ftp相关目录

第四步:启动vsftpd

第五步:测试成功


了解 FTP 服务器

FTP简介 FTP以它所使用的协议:文件传输协议(File Transfer Protocol)来命名的。FTP运行在OSI模型(Open System Interconnection model,开放系统互连模型)的应用层,并利用传输控制协议TCP在不同的主机之间提供可靠的数据传输。FTP是传输的所有文件都是通过“三次握手”来实现的,当数据包有丢失时,会重新传输,以保证数据可靠。

FTP传输文件有两种方式

  • ASCII传输模式

  • 二进制数据传输模式

 FTP的两种连接模式

  • 主动模式(PORT方式)

  • 被动模式(PASV方式)

FTP服务的两种连接模式它们的不同在于,FTP服务器端在接到FTP的客户端发送过来的连接请求时,根据其命令类型来做出不同的反应。如果是POST时,服务器端则会主动建立数据传输通道,如果是PASV时,则会通过POST命令通知客户端有数据传送的请求,等待FTP客户机连接后再来传送数据,就是说数据传输是客户发起的,相对服务器就是被动的。默认一般采用的是pasv。

 FTP服务的应用

FTP服务器将服务的对象分为3类用户:本地用户、虚拟用户(Guest用户)和匿名用户(anonymous)。

  • 本地用户:

    • 如果FTP的使用者在远程FTP服务器上拥有账号,该使用者称为本地用户。
  • 虚拟用户:

    • 如果FTP的使用者在远程FTP服务器上拥有账号,且此账号只能用于文件传输服务,则该使用者称为虚拟用户或Guest用户。
  • 匿名用户:

    • 如果FTP的使用者在远程FTP服务器上没有账号,则称此该使用者为匿名用户。

FTP服务器软件vsftpd

vsftpd的名字代表“very secure FTP daemon”, 由Chris Evans开发,是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开发源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征

实战:vsftpd服务器安装与启动

第一步:安装vsftpd服务器

在Ubuntu Linux系统中,利用新立得安装各类软件比较简单,通过[系统]|[系统管理],可打开[新立得软件包管理器],再利用[搜索],查找相应的的软件包后,系统会自动选中有依赖关系的包,一起选中,并确认安装即可完成。

第二步:配置vsftpd

修改vsftpd的配置文件,此类配置文件通常位于 /etc 目录下。

初始:

配置好了

listen=YES # 服务器监听
anonymous_enable=YES # 匿名访问允许
local_enable=YES # 本地主机访问允许
write_enable=YES # 写允许
anon_upload_enable=YES
# 匿名上传允许,默认是NO,嫌麻烦的可以开起来。出了问题我不负责~
anon_mkdir_write_enable=YES # 匿名创建文件夹允许
dirmessage_enable=YES # 进入文件夹允许
xferlog_enable=YES # ftp 日志记录允许
connect_from_port_20=YES # 允许使用20号端口作为数据传送的端口
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem

第三步:设置ftp相关目录

安装完毕后,/srv下会增加一个ftp目录。

第四步:启动vsftpd

或者 /etc/init.d/vsftpd restart

最后就可以通过Firefox浏览器或Windows进行访问了。当然,这只是最简单的ftp的配置,如果要实现更多的功能话,还需要查看ftp的配置。

第五步:测试成功

ubuntu vsftpd 530 Login incorrect

解决方案

1、查看/etc/ftpusers ,确保账号没有在这个文件内。
2、修改/etc/pam.d/vsftpd
将auth required pam_shells.so修改为->auth required pam_nologin.so 即可

 

​​

希望对你有帮助!加油!

若您认为本文内容有益,请不吝赐予赞同并订阅,以便持续接收有价值的信息。衷心感谢您的关注和支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/27154.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

组合和外观模式

文章目录 组合模式1.引出组合模式1.院系展示需求2.组合模式基本介绍3.组合模式原理类图4.解决的问题 2.组合模式解决院系展示1.类图2.代码实现1.AbsOrganizationComponent.java 总体抽象类用于存储信息和定义方法2.University.java 第一层,University 可以管理 Coll…

商城系统如何选型?

近日,拼多多发布618百亿补贴活动首周战报。5月19日活动启动一周内,百亿补贴商家参与数量相比去年618首周增长逾90%。其中,农产品商家同比增长83%,数码家电商家同比增长86%,美妆商家同比增长105%。 作为一家成立还不到1…

uaGate SI自动化状态监测和工业4.0解决方案

克劳斯玛菲集团(于2016年被中国化工集团公司收购)为其注塑和反应/挤出系统采用了uaGate SI网关技术并实行了开放且独立于平台的OPC UA标准,以用于设备状态自动化监控,这大大提高了产量并避免了机器停机问题。 自动化状态监测提高了…

文件操作学不懂,小代老师带你深入理解文件操作(下卷)

文件操作学不懂,小代老师带你深入理解文件操作下卷 6. ⽂件的随机读写6.1 fseek6.2 ftell6.3 rewind 7. ⽂件读取结束的判定7.1 被错误使⽤的 feof 8. ⽂件缓冲区 6. ⽂件的随机读写 6.1 fseek 根据⽂件指针的位置和偏移量来定位⽂件指针(⽂件内容的光…

Golang使用讯飞星火AI接口

一、API申请 https://www.bilibili.com/video/BV1Yw411m7Rs/?spm_id_from333.337.search-card.all.click&vd_source707ec8983cc32e6e065d5496a7f79ee6 注册申请,需要在此页面获取appid、apisecret、apikey https://www.xfyun.cn/ https://console.xfyun.cn/ser…

VMware Workerstation开启虚拟机后,产生乱码名称日志文件

问题情况 如下图所示,我的虚拟机版本是16.1.2版本,每次在启动虚拟机之后,D盘目录下都会产生一个如图下所示的乱码名称文件。同时,虚拟机文件目录也是杂乱不堪,没有按照一台虚拟机对应一个文件夹的形式存在。 问题处理…

机器,学习没有捷径

1 捷径学习 1.1 你捷径学习了么 深度学习因为其优异的学习能力,已经成为推动人工智能发展当之无愧的主力军。深度学习在NLP和CV等不同的场景下都展现了优异的能力。但深度学习也存在一个与生俱来的问题:捷径学习。 捷径学习中的捷径表示的是一种有缺陷…

Solr 日志系统7.4.0部署和迁移到本地,Core Admin 添加新的core报错

文章目录 Solr部署Docker部署二进制部署 Tips:Solr设置账号密码方法1:(不使用)方法2: Core Admin 添加新的core报错Solr数据迁移 Solr部署 Docker部署 docker run -d -p 8983:8983 --name solr solr:latest docker run -d -p 8983:8983 -v /opt/solr:/…

学会python——密码加密(python实例四)

目录 1、认识Python 2、环境与工具 2.1 python环境 2.2 Visual Studio Code编译 3、对输入的字符加密 3.1 代码构思 3.2 代码示例 3.3 运行结果 4、总结 1、认识Python Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具有很强…

Hexapod C-887使用手册 -- 4,5,6

4 - 拆包 小心拆包C-887 根据合同和发货注意比较发货范围的内容: 检查危险符号的内容。如果任何零件损坏或缺失,立即联系客服部门。 保存所有包装材料,以防产品需要返厂。 5 - 安装 本章中 安装一般注意 安装PC软件 确保通风 接地C-…

LeetCode --- 132双周赛

题目列表 3174. 清除数字 3175. 找到连续赢 K 场比赛的第一位玩家 3176. 求出最长好子序列 I 3177. 求出最长好子序列 II 一、清理数字 这题直接根据题目,进行模拟即可,大体的思路是遍历字符串,遇到字母就加入答案,遇到数字就…

网络协议四

一、云中网络 物理机的劣势: 1)一旦需要扩容 CPU、内存、硬盘,都需要去机房手动弄,非常麻烦 2)采购的机器往往动不动几百 G 的内存,而每个应用往往可能只需要 4 核 8G 3)一台机器,…

怎么改变图片分辨率dpi数值?图片改分辨率的在线技巧

在上传图片的时候除了图片大小、尺寸等要求之外,修改图片分辨率也是比较常见的一个问题,需要将图片按照平台的要求修改完成后才可以正常使用。当遇到图片dpi的数值不满足使用需求的时候,有什么方法能够更加快捷的修改图片dpi呢?今…

从零开始利用MATLAB进行FPGA设计(七)固化程序

FPGA开发板:AX7020;Xilinx 公司的 Zynq7000 系列的芯片XC7Z020-2CLG400I,400引脚 FBGA 封装。 HARDWARE PLATFORM在2019以后的vivado中已经没有了。本期实际上已经与MATLAB无关,主要介绍通过VITIS等方法进行程序固化。 目录 ZY…

Github 2024-06-13 Go开源项目日报Top10

根据Github Trendings的统计,今日(2024-06-13统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Go项目10TypeScript项目1Shell项目1多存储文件列表/WebDAV程序 创建周期:1265 天开发语言:Go协议类型:GNU Affero General Public License v…

linux安装dgl

1.DGL官网、选择与自己cuda、python版本匹配的dgl的whl文件CUDA11.8、python10并下载 2.用pip install运行 pip install /home/u2023170749/download/dgl-2.2.0cu118-cp310-cp310-manylinux1_x86_64.whl

git提交错了?别慌,直接删除提交记录

git revert 和git reset !这两个命令都有撤销操作的功能!哪一个可以删除提提交记录??? 使用git revert撤销提交 revert的英文释义是回复、恢复(到原来的状态) 作用 git revert 是 Git 中用于撤…

如何通过SOLIDWORKS教育版提高学生技能培养未来人才?

在当今这个科技日新月异的时代,掌握先进的数字化工具已经成为了一项需备的技能。作为一款功能强大的3D CAD软件,SOLIDWORKS教育版正是一个帮助学生提升技能、培养未来人才的重要工具。那么,如何通过SOLIDWORKS教育版提高学生技能呢&#xff1…

全方位·多层次·智能化,漫途水库大坝安全监测方案

党的十九届五中全会提出,到2025年前,完成新出现病险水库的除险加固,配套完善重点小型水库雨水情和安全监测设施,实现水库安全鉴定和除险加固常态化。 加快推进小型水库除险加固。加快构建气象卫星和测雨雷达、雨量站、水文站组成…

12306 火车票价格解析 (PHP 解析)

1. 从接口拿数据 日期 出发站 终点站 都填上 xxx/otn/leftTicketPrice/queryAllPublicPrice?leftTicketDTO.train_date2024-06-15&leftTicketDTO.from_stationBJP&leftTicketDTO.to_stationSJP&purpose_codesADULT 返回的数据是这样的 {"validateMess…