linux FTP文本传输
目录
一、文本传输协议
二、连接方式
三、程序安装
四、黑名单和白名单
五、实验
1.实验一:匿名用户下载与上传
2.实验二:关闭匿名用户登录,允许普通用户登录在家目录上传和下载
3.实验三:禁止用户切换目录,只能在家目录操作
4.实验四:黑名单限制test1登录
5.实验五:白名单限制
6.实验六:root登录
一、文本传输协议
ftp特点:1.网络控制文件的双向传输
2.是一个应用程序
3.有不同操作系统ftp
4.都遵守同一种协议
5.传输协议tcp
6.通信端口20 和21(20是建立数据连接,传输文件数据,21是控制连接,传输ftp控制命令)
二、连接方式
1.主动模式:服务器主动对客户端发起连接,客户端与服务器的21端口连接,需要传输数据时,客户端会选择一个未使用的端口,告知服务器通过此端口传输数据,服务器通过连接将连接请求发给客户端,确定建立连接。
2.被动模式:客户端主动对服务器发起连接,客户端与服务器的21端口连接,需要传输数据时,服务器现在在一个未使用的端口,告诉服务器通过此端口传输数据,客户端通过连接将连接请求发给客户端,确定建立连接。
主动模式和被动模式区别:
生产中一般采用被动模式,这样可以更好的跨过防火墙的限制。
红色时主动模式,蓝色时被动模式

三、程序安装
vsftpd安装

四、黑名单和白名单
黑名单:凡是在名单上都不可以登录
白名单:只有在名单上才可以登录(安全性较高)
最后权限文件:ftpusers,里面用户不可登录(系统用户)

五、实验
1.实验一:匿名用户下载与上传
默认备份文件
进入配置文件夹,备份一份vsftpd.conf


进入配置文件进行修改
允许匿名用户上传文件。默认已注释,需取消注释
允许匿名用户创建(上传)目录。默认已注释,需取消注释
允许删除、重命名、覆盖等操作。需添加

重启服务
关闭防火墙,关闭安全机制

增加匿名文件pub权限

增加一个文件便于上传和下载

下载txt

查看test.txt文件

上传text1.txt
先创建一个text1.txt文件


接收成功,查看文件

2.实验二:关闭匿名用户登录,允许普通用户登录在家目录上传和下载
设置用户密码

将文件权限设置为只能在宿主目录操作

可以看到
在其他目录是不能上传和下载,只有在/home/test1家目录里才可以操作

3.实验三:禁止用户切换目录,只能在家目录操作
将用户禁锢在家目录
允许写权限

重启服务

可以看到test1用户想切换到/opt目录无法切换
但是可以在家目录查看

4.实验四:黑名单限制test1登录
打开黑名单
vim /etc/vsftpd/vsftpd.conf

查看黑名单用户名

确定没有test1,说明test1可以登录

test1确实可以登录

5.实验五:白名单限制
vim /etc/vsftpd/vsftpd.conf

确定有test1,说明test1可以登录,没有test2不可登录

切换黑白名单要重启服务vsftp
可以看到test1可以登录,test2不可登录

6.root可以登录(默认不能登录)
进入ftbusers删除root,user_list里也加入root(现在是白名单)


可以看到可以登录

linux FTP文本传输的更多相关文章
- FTP文本传输协议
一.存储类型 存储类型分为三种: 直连式存储:Direct-Attached Storage,简称DAS 网络附加存储:Network-Attached Storage,简称NAS(存储和管理空间都在 ...
- linux之FTP服务搭建 ( ftp文件传输协议 VSFTPd虚拟用户)
FTP服务搭建 配置实验之前关闭防火墙 iptables -F iptables -X iptables -Z systemctl stop firewalld setenforce 0 1.ftp简 ...
- 详述Linux ftp命令的使用方法
转自:http://os.51cto.com/art/201003/186325.htm ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件,这里 ...
- Linux的文本处理工具浅谈-awk sed grep
Linux的文本处理工具浅谈 awk 老大 [功能说明] 用于文本处理的语言(取行,过滤),支持正则 NR代表行数,$n取某一列,$NF最后一列 NR==20,NR==30 从20行到30行 FS ...
- 【RL-TCPnet网络教程】第35章 FTP文件传输协议基础知识
第35章 FTP文件传输协议基础知识 本章节为大家讲解FTP(File Transfer Protocol,文件传输协议)的基础知识,方便后面章节的实战操作. (本章的知识点主要整理自网络) ...
- FTP文件传输服务
FTP文件传输服务 一 .FTP 连接及传输的模式 l 控制连接:TCP21,用于发送FTP命令信息. l 数据连接:TCP 20, 用于上传下载数据. · 数据连接建立的类型: ·主动模式: 服 ...
- Linux ftp 命令
一.ftp的get命令和mget命令有何不同? get一次只下载一个文件:mget一次可以下载多个文件,而且支持通配符,需要注意的是在mget的时侯,需要对每一个文件都选择y/n,如果想不交互的下载全 ...
- Linux ftp命令的使用方法 -- 转
http://jingyan.baidu.com/article/066074d68b6a7ac3c21cb038.html FTP(File Transfer Protocol, FTP)是TCP/ ...
- FTP(文件传输协议)工作原理
目前在网络上,如果你想把文件和其他人共享.最方便的办法莫过于将文件放FTP服务器上,然后其他人通过FTP客户端程序来下载所需要的文件. 1.FTP架构 如同其他的很多通讯协议,FTP通讯协议也采用客户 ...
- Linux ftp Command
一.ftp的get命令和mget命令有何不同? get一次只下载一个文件:mget一次可以下载多个文件,而且支持通配符,需要注意的是在mget的时侯,需要对每一个文件都选择y/n,如果想不交互的下载全 ...
随机推荐
- maui BlazorWebView+本地html (vue、uniapp等都可以) 接入微信sdk 开发 Android app
首先添加微信sdk的绑定库 nuget 包:Chi.MauiBinding.Android.WeChat 项目地址:https://github.com/realZhangChi/MauiBindin ...
- SpringBoot 整合 Kafka 与 Avro 【No group.id】 问题解决方法
[问题描述]:ApplicationContextException: Failed to start bean 'org.springframework.kafka.config.internalK ...
- JVM 问题排查工具
更多内容,前往 IT-BLOG Java 开发人员肯定都知道 JDK的 bin 目录中有 "java.exe"."javac.exe" 这两个命令行工具.下面主 ...
- 第三章3.3 selenium基础
seleniumIDE:是一款可以实现录制回放的操作:存在可视化窗口进行录制回放操作:它属于firefox(chrome)浏览器的插件;安装方式:两种 : 1.下载安装包离线安装2.在线安装 注意:不 ...
- 【深入浅出 Yarn 架构与实现】6-2 NodeManager 状态机管理
一.简介 NodeManager(NM)中的状态机分为三类:Application.Container 和 LocalizedResource,它们均直接或者间接参与维护一个应用程序的生命周期. 当 ...
- Mybatis中批量插入和一些问题的解决
批量插入有三个问题,第一是执行效率,第二数据冲突,第三数据重跑更新操作. 一般对于这样的问题有以下操作方法. 第一是执行效率:mybatis支持两种高效插入. 1.mybtis的foreach标签,f ...
- [PKM] 个人知识管理
1 个人知识管理的需求 1.1 背景 随着信息大爆炸,碎片化的知识越来越多,原来中小学阶段在学校中习得的.传统的.基于纸质笔记的知识管理方式已不能满足当前的诉求. 传统的基于纸质笔记的知识管理方式 工 ...
- 补五月五号java基础知识点
1.容器类:容器类是java以类库的形式供有用户开发程序时可直接使用的各种数据结构.2.java容器框架中有两个名称分别为Collection和Set的接口,为防止名称的冲突,本书将Collectio ...
- Web界面元素的测试
文本框 测试点 输入正常的字母或数字 输入超长字符.例如在"名称"框中输入超过允许边界个数的字符,假设最多255个字符,尝试输入256个字符,检查程序能否正确处理 输入默认值,空白 ...
- 数组描述线性表(C++实现)
线性表也称有序表,其每一个实例都是元素的一个有序集合 抽象类linearList 一个抽象类包含没有实现代码的成员函数,这样的成员函数称为纯虚函数,用数字0作为初始值来说明 template<c ...