linux系统-FTP服务配置

news2025/1/16 13:59:21

目录

一、FTP简介

1.什么是FTP???                                        

2.FTP的两种模式

二、安装配置FTP服务

1.关闭防火墙和核心防护

2.安装VSFTPD 

3.修改配置文件 

 4.黑白名单设置


一、FTP简介

1.什么是FTP???
                                        

不正经回答:(F 防 TP 传送):那当然是防TP偷家的战略协议(bushi)

正经回答:FTP(File Transfer Protocol,文件传输协议)是一种用于在网络上进行文件传输的标准协议。它允许用户通过网络从一个计算机向另一个计算机传输文件。FTP 是互联网早期的基本协议之一,提供了一种可靠、简单的方式来共享文件。

FTP服务器默认使用TCP协议的20、21端口与客户端进行通信
20端口用于建立数据连接,并传输文件数据
21端口用于建立控制连接,并传输FTP控制命令

2.FTP的两种模式

FTP数据连接分为主动模式和被动模式

1.主动模式

主动模式:客户端给服务端的21控制端口发命令说,我要下载什么什么,并且还会说我已经打开了自己的某个端口,你就从这里把东西给我吧,服务器知道后就会连接客户端已打开的那个数据端口把东西传给客户端,这就是主动模式,可以理解为服务端主动给客户端传输文件

2.被动模式 

客户端给服务器端的21端口发命令说,我要下载什么什么,服务端知道后,就打开一个空闲的端口,然后告诉客户端,我已经打开了某某端口,你自己进去拿吧。于是客户端就从那个端口进去拿文件了,这就是被动模式,可以理解为服务端被客户端拿走了东西

 

二、安装配置FTP服务

1.关闭防火墙和核心防护

2.安装VSFTPD 

列出指定 RPM 包中包含的文件及其对应的安装路径 

备份复制VSFTPD配置

3.修改配置文件 

[root@localhost vsftpd]# vim vsftpd.conf

重启VSFTPD生效 

[root@localhost vsftpd]# systemctl start vsftpd
[root@localhost vsftpd]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
[root@localhost vsftpd]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      787/rpcbind         
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      1738/dnsmasq        
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1225/sshd           
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1216/cupsd          
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1586/master         
tcp        0      0 127.0.0.1:6010          0.0.0.0:*               LISTEN      12706/sshd: root@pt 
tcp        0      0 127.0.0.1:6011          0.0.0.0:*               LISTEN      13668/sshd: root@pt 
tcp6       0      0 :::111                  :::*                    LISTEN      787/rpcbind         
tcp6       0      0 :::21                   :::*                    LISTEN      69417/vsftpd        
tcp6       0      0 :::22                   :::*                    LISTEN      1225/sshd           
tcp6       0      0 ::1:631                 :::*                    LISTEN      1216/cupsd          
tcp6       0      0 ::1:25                  :::*                    LISTEN      1586/master         
tcp6       0      0 ::1:6010                :::*                    LISTEN      12706/sshd: root@pt 
tcp6       0      0 ::1:6011                :::*                    LISTEN      13668/sshd: root@pt 

开始测试

我用的是WIN10虚拟机来做测试

NAT模式

CMD---ping一下服务器地址来测试一下连了没 


 

试验下下载文件并查看 

(linux服务器里设置)

[root@localhost vsftpd]# cd /var/ftp
[root@localhost ftp]# mkdir ran
[root@localhost ftp]# ls
pub  ran
[root@localhost ftp]# mkdir 1234
[root@localhost ftp]# ls
1234  pub  ran
[root@localhost ftp]# echo 'shuijiao' > zaodianshuiba.txt
[root@localhost ftp]# ls
1234  pub  ran  zaodianshuiba.txt

(WIN10👇 )

 

切换下载目录

 

设置匿名用户(关闭匿名用户)

vim  /etc/vsftpd/vsftpd.conf

 4.黑白名单设置

 然后继续vim打开

vim  /etc/vsftpd/vsftpd.conf

 在最底下添加这条命令👆(如果是YES)那就是黑名单

最后再回到vim user_list里面添加白名单用户就行 👆

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

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

相关文章

【Node.js工程师养成计划】之打造自己的脚手架工具

一、创建全局的自定义命令 1、打开一个空文件夹,新建一个bin文件夹,在bin文件夹下新建cli.js文件,js文件可以命名为cli.js(您随意) 2、在cli.js文件中的开头(!!)写下面这…

Prometheus Metrics指标类型 Gauge(仪表盘)

指标是用来衡量性能、消耗、效率和许多其他软件属性随时间的变化趋势。它们允许工程师通过警报和仪表盘来监控一系列测量值的演变(如CPU或内存或磁盘使用量、请求持续时间、延迟等)。指标在IT监控领域有着悠久的历史,并被工程师广泛使用&…

Linux下的UDEV机制/守护进程

一. Udev机制 二. 守护进程 1. 概念: 2. 基本特点: a. 生存周期长,一般操作系统启动的时候就启动,关闭的时候关闭(这是由开发人员自行将守护进程添加到开机启动项的)。 b. 守护进程和终端无关联&#…

云备份项目->配置环境

升级gcc到7.3版本 sudo yum install centos-release-scl-rh centos-release-scl sudo yum install devtoolset-7-gcc devtoolset-7-gcc-c source /opt/rh/devtoolset-7/enable echo "source /opt/rh/devtoolset-7/enable" >> ~/.bashrc 安装Jsoncpp库 sud…

知识分享之cookie

http协议中的cookie,什么是cookie如何获取cookie 一、什么是Cookie Cookie(曲奇,小甜饼的译名)在互联网技术领域中,是指一种小型文本文件,它由网站服务器发送给用户的浏览器,并被浏览器存储在用…

【春 联---turtle海龟画图】

春联 又称"春贴"、"门对"、"对联",是过年时所贴的红色喜庆元素"年红"中一个种类。它以对仗工整、简洁箱巧的文字描绘美好形象,抒发美好愿 望,是中国特有的文学形式,是华人们过年 的重要习…

windows/linux 安装php的 sql server 扩展

Windowsphpstudyphp7.1 下载:ODBC、下载php 的sql server 扩展 路径:下载地址 版本:我的是7.1 对应的ODBC 是13,php 的sql server 扩展为4.3 安装:msodbcsql 直接安装、sqlsrv43 安装完把 扩展复制到php71 的扩展文…

c#学习入门2

十、运算符 1)算术运算符是用于数值类型变量计算的运算符,它返回的结果是数值 1.赋值符号 2.算数运算符 加 减- 乘* 除/ 取余% 3.算数运算符的优先级 4.算术运算符的复合运算 5.算术运算符的自增减 2)字符串拼接 1.字符串拼接方式1 注意&…

antd 日期控件RangePicker如何增加快捷键(日/周/月/年)

注意&#xff1a;快捷键是从当前日期往前推算的 效果 代码 <script><RangePickerranges{{日: [moment(new Date().setDate(new Date().getDate() - 1)), moment(new Date())],周: [moment(new Date().setDate(new Date().getDate() - 7)), moment(new Date())],月: […

淘宝API接口教程:淘宝商品详情API接口(标题|主图|SKU|价格|商品销量..)

淘宝商品详情数据接口是用于获取商品详细信息的API&#xff0c;它允许开发者检索商品的各类数据。 要使用淘宝商品详情数据接口&#xff0c;你需要遵循以下步骤&#xff1a; 注册账号和权限申请&#xff1a;在淘宝开放平台注册开发者账号&#xff0c;并申请所需API的权限。完…

【总结】CycleGAN+YOLOv8+DeepSORT

本文章仅对本人前期工作进行总结&#xff0c;文章内容供读者参考&#xff0c;代码不对外公开 文章目录 1、CycleGAN1.1 数据集配置1.2 环境配置1.3 参数配置1.4 可视化训练过程1.5 训练结果1.5 结果测试 2、YOLOv82.1 数据集配置2.2 网络结构配置2.3 训练细节2.4 测试 3、Deep…

IDEA生成JavaDoc注释

1、新建java文件时默认在主类头上生成描述、作者、时间 /*** 总体描述** author CountryStrong* date ${DATE} ${TIME}</p>*/2、对java方法进行doc注释&#xff0c;并动态生成作用描述、请求参数、返回类型、抛出异常 直接去插件商店下载JavaDoc即可&#xff0c;有时间…

Python 中方法调用的求值顺序

问题背景 在 Python 中&#xff0c;方法调用的求值顺序可能会令人困惑&#xff0c;尤其是当涉及到嵌套方法调用时。例如&#xff0c;在下面的代码中&#xff0c;我们有一个 Card 类&#xff0c;它表示一张扑克牌&#xff0c;一个 Hand 类&#xff0c;它表示一组扑克牌&#xff…

【科学研究】读博:一场精神赌博❓

::: block-1 “时问桫椤”是一个致力于为本科生到研究生教育阶段提供帮助的不太正式的公众号。我们旨在在大家感到困惑、痛苦或面临困难时伸出援手。通过总结广大研究生的经验&#xff0c;帮助大家尽早适应研究生生活&#xff0c;尽快了解科研的本质。祝一切顺利&#xff01;—…

Java | Leetcode Java题解之第52题N皇后II

题目&#xff1a; 题解&#xff1a; class Solution {public int totalNQueens(int n) {Set<Integer> columns new HashSet<Integer>();Set<Integer> diagonals1 new HashSet<Integer>();Set<Integer> diagonals2 new HashSet<Integer>…

炒股自动化:券商官方,散户可用,查询订单状态API如何用?

券商官方的接口&#xff0c;个人账户可申请&#xff0c;入金门槛低&#xff0c;接入文档完善&#xff0c;技术支持好的&#xff0c;经过我们筛选后&#xff0c;只有一家符合 会编程&#xff0c;有基础&#xff0c;只是需要API接口的朋友不用看这些&#xff0c;不会写程序的朋友…

数据结构五:线性表之带头结点的双向链表的设计

我们在单链表中&#xff0c;有了next指针,这就使得我们要查找下一结点的时间复杂度为O(1)。可是如果我们要查找的是上一结点的话&#xff0c;那最坏的时间复杂度就是0[n)了&#xff0c;因为我们每次都要从头开始遍历查找。为了克服单向性这一缺点&#xff0c; 我们的老科学家们…

springcloud按版本发布微服务达到不停机更新的效果

本文基于以下环境完成 spring-boot 2.3.2.RELEASEspring-cloud Hoxton.SR9spring-cloud-alibaba 2.2.6.RELEASEspring-cloud-starter-gateway 2.2.6.RELEASEspring-cloud-starter-loadbalancer 2.2.6.RELEASEnacos 2.0.3 一、思路 实现思路&#xff1a; 前端项目在请求后端接…

【优质书籍推荐】AIGC时代的PyTorch 深度学习与企业级项目实战

大家好&#xff0c;我是herosunly。985院校硕士毕业&#xff0c;现担任算法研究员一职&#xff0c;热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名&#xff0c;CCF比赛第二名&#xff0c;科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的…

Facebook的未知力量:数字世界的新引擎

在数字化的时代&#xff0c;社交媒体已经成为了我们日常生活中不可或缺的一部分&#xff0c;而Facebook作为其中的巨头&#xff0c;其影响力远远超出了我们的想象。但是&#xff0c;Facebook背后隐藏的力量和影响远不止于此&#xff0c;它正逐渐成为数字世界的新引擎&#xff0…