FTP协议占用两个端口号:

21端口:命令控制,用于接收客户端执行的FTP命令。

20端口:数据传输,用于上传,下载文件数据。

过程:

首先安装vsftpd服务程序使用命令 yum install vsftpd 

Vsftpd 的程序与配置文件:

主程序: /usr/sbin/vsftpd

用户禁止登陆列表:/etc/vsftpd/ftpusers    /etc/vsftpd/user_list

主配置文件: /etc/vsftpd/vsftpd.conf

接下来我们分别配置Vsftpd的验证方式 分别为:匿名访问 ,本地用户

1.匿名访问模式

FTP匿名访问模式是比较不安全的服务模式,尤其在真实的工作环境中千万不要存放敏感的数据,以免泄露。

vsftpd程序默认已经允许匿名访问模式,我们要做的就是开启匿名用户的上传和写入权限,写入下面的参数:

使用命令 vi /etc/vsftpd/vsftpd.conf

anonymous_enable=YES

anon_umask=022

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

由于各参数不在同一区域 只截取了部分参数 在配置文件中我们可以在命令模式下输入/anon 查找关键字用n N上下查询。

接下来我们用systemctl restart vsftp重启一下服务 然后使用客户端验证

现在我们尝试登入FTP服务:

由图可见我们已经成功登入ftp服务,但是在创建目录的时候失败了,这是因为我们匿名登录是使用root登录的,ftp根目录的所有者/组都是root ,所以匿名用户没有写入权限,我们新建一个用户ftpd 然后将属主改为ftpd 然后再尝试创建目录就成功了。

至此我们匿名访问的配置就ok了。

2.本地用户模式

这次我们直接配置主配置文件

anonymous_enable=NO    禁止匿名访问模式。

local_enable=YES             允许本地用户模式。

write_enable=YES             设置可写入权限。

local_umask=022              本地用户模式创建文件的umask值。

userlist_deny=YES            参数值为YES即禁止名单中的用户,参数值为NO则代表仅允许名单中的用户。

userlist_enable=YES允许“ 禁止登陆名单”,名单文件为ftpusers与user_list。

配置完成之后我们重启一下vsftp服务 systemctl restart vsftpd

然后我们新建一个普通用户并设置登录密码

然后我们就可以在客户端尝试登录了

由图可见我们已经ok了。至此我们的ftp 匿名用户与普通本地用户登录大功告成了。

末尾:

疑惑与问题:1.在配置匿名用户登录的时候,我把客户端pub文件夹设置成属主为sdy后,在客户端就无法创建目录了,而再将属主改为其他新创建的用户后就可以创建目录了。是因为sdy用户和其他普通用户权限不一样吗?

                    2.本地用户登录时,为什么没有权限切换目录,cd pub时提示操作失败。

linux下使用Vsftpd服务传输文件的更多相关文章

  1. 《Linux就该这么学》培训笔记_ch11_使用Vsftpd服务传输文件

    <Linux就该这么学>培训笔记_ch11_使用Vsftpd服务传输文件 文章最后会post上书本的笔记照片. 文章主要内容: 文件传输协议 Vsftpd服务程序 匿名访问模式 本地用户模 ...

  2. Linux基础学习-使用vsftpd服务传输文件

    使用vsftpd服务传输文件 1 安装vsftpd [root@qdlinux ~]# yum install vsftpd Loaded plugins: product-id, search-di ...

  3. 第11章 使用Vsftpd服务传输文件

    章节简述: 本章节先通过介绍文件传输协议来帮助读者理解FTP协议的用处,安装vsftpd服务程序并逐条分析服务文件的配置参数. 完整演示vsftpd服务匿名访问模式.本地用户模式及虚拟用户模式的配置方 ...

  4. Vsftpd服务传输文件(转)

    本章节先通过介绍文件传输协议来帮助读者理解FTP协议的用处,安装vsftpd服务程序并逐条分析服务文件的配置参数. 完整演示vsftpd服务匿名访问模式.本地用户模式及虚拟用户模式的配置方法,介绍PA ...

  5. FTP服务:使用 vsftpd 服务传输文件

    1.文件传输协议 今天的互联网是由几千万台个人计算机.工作站.服务器.小型机.大型 机.巨型机等具有不同型号.不同架构的物理设备共同组成的,而且即便是个人计算机,也 可能会装有 Windows.Lin ...

  6. linux命令(28):Linux下SCP无需输入密码传输文件,python 中scp文件

    python 中scp文件:(如果下面的发送免密码已经完成的话,就直接能用下面这个) os.system('scp "%s" "%s:%s"' % (" ...

  7. linux 下使用scp命令传输文件

    scp -P 1234 /home/wakasann/test.txt wakasann@192.168.1.30:/var/www/html/ 使用 1234端口,将 test.txt文件传输到服务 ...

  8. Linux笔记16 使用Vsftpd服务传输文件;使用Samba或NFS实现文件共享。

    FTP协议有下面两种工作模式. 1.主动模式:FTP服务器主动向客户端发起连接请求. 2.被动模式:FTP服务器等待客户端发起连接请求(FTP的默认工作模式).Vsftpd服务程序vsftpd作为更加 ...

  9. 用Vsftpd服务传输文件(铺垫篇)

    文件传输协议 文件传输协议(FTP,File Transfer Protocol),即能够让用户在互联网中上传.下载文件的文件协议,而FTP服务器就是支持FTP传输协议的主机,要想完成文件传输则需要F ...

随机推荐

  1. The database principal owns a schema in the database, and cannot be dropped. (.Net SqlClient Data Pr

    解决microsoft sql server error:15138的方法 http://blog.csdn.net/gray13/article/details/4458523 用sp_change ...

  2. learning scala type alise

    How to use type alias to name a Tuple2 pair into a domain type called CartItem type CartItem[Donut, ...

  3. 2017.11.7 Noip2017 考前模拟赛

    ----------------------------------T1---------------------------------- ——>数学老师的报复 题目描述 11 班数学大佬 Y ...

  4. NetworkX系列教程(4)-设置graph的信息

    小书匠Graph图论 要画出美观的graph,需要对graph里面的节点,边,节点的布局都要进行设置,具体可以看官方文档:Adding attributes to graphs, nodes, and ...

  5. linux 下搭建ELK(rpm包版)

    一.安装环境查看 注意:新的安装包要在centos 7.x的版本上安装 二.软件版本选用 注意:这边根据实际情况 jdk 1.8.0_171 #jdk安装这边就不说了 elasticsearch-7. ...

  6. mysql5.7版本以上下载安装

    1.mysql官网下载地址:https://downloads.mysql.com/archives/community/ 2.下载完成后解压,解压后如图: 3.放置位置,把解压好的文件夹放在自己喜欢 ...

  7. lucene IndexOptions可以设置DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS DOCS,ES里也可以设置

    org.apache.lucene.index Enum Constants  Enum Constant and Description DOCS_AND_FREQS Only documents ...

  8. LeetCode 第 149 场周赛

    成绩 一.一年中的第几天(LeetCode-1154) 1.1 题目描述 1.2 解题思路 比较容易的一题,搞清楚平年.闰年的判定规则,就很容易做出来. 1.3 解题代码 class Solution ...

  9. BeanFactory 简介以及它 和FactoryBean的区别

    BeanFacotry是spring中比较原始的Factory.如XMLBeanFactory就是一种典型的BeanFactory.原始的BeanFactory无法支持spring的许多插件,如AOP ...

  10. OpenResty之ngx.var.VARIABLE

    1. ngx.var.VARIABLE syntax: ngx.var.VAR_NAME context: set_by_lua*, rewrite_by_lua*, access_by_lua*, ...