目录

FTP

Vsftp服务的搭建

ftp、sftp、vsftp、vsftpd的区别


FTP

FTP的工作原理:

FTP会话时包含了两个通道,一个叫控制通道,一个叫数据通道。控制通道是和FTP服务器进行沟通的通道,连接FTP、发送FTP指定都是通过控制通道来完成的。数据通道是和FTP服务器进行文件传输或者列表的通道。FTP协议中,控制连接都是由客户端发起的,而数据连接有两种工作方式:PORT(主动)方式和PASV(被动)方式 (主动和被动是对于客户端来说的)

  • 主动模式:服务器开放 20 和 21 号端口
  • 被动模式:服务器开放 21 号端口以及一个随机端口,其中21号端口固定用来做控制链接

简单概述为:主动模式是传送数据时是 服务器 连接到客户端的端口;而被动模式则是客户端连接到服务器的端口。主动模式需要客户端必须开放端口给服务器,很多客户端都是在防火墙内部,开放端口给FTP服务器比较困难;而被动模式则只需要服务器开放端口给客户端就行了。一般被动模式是用的比较多

FTP用户类型:

  • 匿名用户:anonymous 或者 ftp
  • 本地用户:服务器本身的用户家目录为共享目录
  • 虚拟用户:使用独立账户密码数据文件的用户

常见的FTP服务程序:
Vsftpd、IIS 、Server-U、wu-ftp、proftp

Vsftp (Very Security ftp) :非常安全的FTP应用,基于FTP服务开发的应用

主要配置文件:

  • /etc/vsftpd/vsftpd.conf :主配置文件
  • /etc/vsftpd/ftpusers :黑名单
  • /etc/vsftpd/user_list:黑白名单

Vsftp服务的搭建

服务器端 (Rhel7      ip: 192.168.10.17)

客户端    (Centos 6.5 ip: 192.168.110.24)

  1. 服务器端关闭Selinux :setenforce  0  ; 配置防火墙: firewall-cmd   --add-service=ftp
  2. 服务器端安装 vsftpd 程序:yum  -y  install  vsftpd
  3. 修改共享目录属主属组:  chown  ftp:ftp   /var/ftp/pub  -R
  4. 创建本地登录用户并且设置密码:useradd  -s  /sbin/nologin   test  ;  passswd    test
  5. 修改配置文件  /etc/vsftpd/vsftpd.conf ,启动 vsftp 服务 systemctl  start  vsftpd
  6. 客户端关闭Selinux和防火墙:setenforce  0  ; service  iptables  stop
  7. 客户端安装 lftp 或者 ftp: yum -y  install lftp  或  yum  -y  install  ftp
  8. 客户端使用 lftp 或 ftp 登录,共享的是 /var/ftp/pub ,客户端使用本地用户 test 登录,共享的是 test用户的家目录
  9. 无论是lftp还是ftp,上传都是 put 文件名  ,下载都是 get 文件名

注:使用lftp登录默认是匿名用户登录不用输密码。使用ftp登录的话,可以使用服务器的本地用户登录,也可以使用账户名为ftp的匿名用户登录

注:vsftpd安装好后,会自动创建文件夹  /var/ftp/pub ,这个是默认共享目录,我们把要共享的东西放到目录中。

配置文件 /etc/vsftpd/vsftpd.conf   的修改

anonymous_enable=YES              //默认是允许匿名用户登录,如果改成NO的话,则只允许以ftp服务器本地的用户名的身份登录了

//将这两行的注释去掉,允许匿名用户上传文件
anon_upload_enable=YES //允许匿名用户上传
anon_mkdir_write_enable=YES //允许匿名用户写入

使用 lftp 用户登录,默认是匿名用户,共享的是 /var/ftp/pub 目录

使用 ftp登录,用的是 ftp 用户,共享的是 /var/ftp/pub 目录

当使用服务器端的用户 test 登录时,共享的是 test 用户的家目录

ftp、sftp、ftps、vsftp、vsftpd的区别

  • ftp 是File Transfer Protocol的缩写,文件传输协议,用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。它属于网络传输协议的应用层。
  • sftp 是SSH File Transfer Protocol的缩写,安全文件传输协议。使用SFTP登录会在last和lastb中留下记录
  • FTPS是在安全套接层使用标准的FTP协议和指令的一种增强型FTP协议,为FTP协议和数据通道增加了SSL安全功能。FTPS也称作“FTP-SSL”和“FTP-over-SSL”。SSL是一个在客户机和具有SSL功能的服务器之间的安全连接中对数据进行加密和解密的协议。
  • vsftp 是一个基于GPL发布的类Unix系统上使用的ftp服务器软件,它的全称是Very Secure FTP从此名称可以看出来,编制者的初衷是代码的安全;
  • vsftpd 是very secure FTP daemon的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件;

相关文章:Linux文件共享服务之Samba

Linux文件共享服务之NFS

Linux文件共享服务之Vsftp的更多相关文章

  1. Linux文件共享服务之NFS

    NFS(Network File System) 网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS的客户端应用可 ...

  2. Linux文件共享服务之Samba

    目录 Samba Samba的配置 Samba Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ...

  3. linux文件共享服务

    linux文件共享配置 Windows访问linux 以下操作都在关闭防火墙和关闭selinux的环境下. 关闭防火墙的命令:service iptables stop关闭SELINUX命令:sete ...

  4. Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(上)

    Samba简介:在UNIX系统中,Samba是通过服务器消息块协议(SMB)在网络上的计算机之间,共享文件和打印服务的软件包. SMB简介:Server Message Block,SMB协议是一种服 ...

  5. Linux文件共享服务 FTP,NFS 和 Samba

    Linux 系统中,存储设主要有下面几种: DAS DAS 指 Direct Attached Storage,即直连附加存储,这种设备直接连接到计算机主板总线上,计算机将其识别为一个块设备,例如常见 ...

  6. Linux 学习笔记_12_Windows与Linux文件共享服务_1.1_--Samba(下)Samba经典应用案例

    五.[Samba应用案例二] 设置Samba共享目录/software,允许用户jack和mary可以通过Windows客户端访问,并具有读写权限. 1.创建目录/software,添加用户jack, ...

  7. Linux 学习笔记_12_文件共享服务_4_SSH

    SSH文件共享服务 一.ssh远程登录[一般的Linux系统都会默认安装并启用] 1.Linux上远程命令行登录:ssh 用户名@远程主机IP地址 常用选项: -2:表示SSH2,强制使用第二代SSH ...

  8. Linux实战教学笔记22:企业级NFS网络文件共享服务

    目录 第二十二节 企业级NFS网络文件共享服务 第一章 NFS网络文件共享服务 1.1 NFS介绍 1.2 NFS系统原理介绍 1.3 NFS服务端部署环境准备 1.4 NFS server端的设置 ...

  9. Linux基础学习-Samba文件共享服务

    使用Samba文件共享服务 Samba起源: 早期网络想要在不同主机之间共享文件大多要用FTP协议来传输,但FTP协议仅能做到传输文件却不能直接修改对方主机的资料数据,这样确实不太方便,于是便出现了N ...

随机推荐

  1. Codeforces1493D GCD of an Array

    题目链接 点我跳转 题目大意 给定一个长度为 \(N\) 的序列 \(A\) 有 \(Q\) 次操作,每次操作给定两个数 \(i\) , \(X\),使得 \(A[i] = A[i] \times X ...

  2. C++高精度计算(大整数类)

    Java和Pathon可以不用往下看了 C++的基本数据类型中,范围最大的数据类型不同编译器不同,但是最大的整数范围只有[-2^63-2^63-1](对应8个字节所对应的二进制数大小).但是对于某些需 ...

  3. 为什么要从 Linux 迁移到 BSD1

    为什么要从 Linux 迁移到 BSD1 作为一个操作系统,GNU/Linux 已经变得一团糟了,因为项目的分散性,内核的臃肿,以及商业利益的玩弄.从 GNU/Linux 迁移到 BSD 有几个技术上 ...

  4. WPF 基础 - 图形的效果与滤镜

    UIElement 有 BitmapEffect 和 Effect 属性,BitmapEffect 是由 CPU 的运算能力实现的,比较耗性能,推荐使用 Effect: Effect 包括但不限于 D ...

  5. python学习之web中的html基础

     HTML简介及相关标签介绍 首先,我们要了解什么是HTML? HTML被称作超文本标记语言,是一门标记语言,即该语言由各类标记标签组成. 为什么学python要学HTML? 不管学习哪个语言,我们最 ...

  6. 2019 GDUT Rating Contest I : Problem B. Teamwork

    题面: 传送门 B. Teamwork Input file: standard input Output file: standard output Time limit: 1 second Memor ...

  7. 一个通用驱动Makefile-V2-支持编译多目录

    目录 前言 1. 特点 2. 分析 2.1 简要原理 2.2 具体分析 3. 源码 前言 该 Makefile 已经通过基于内核 Linux5.4 版本验证通过. 因为编写这通用驱动 Makefile ...

  8. Hznu_oj 2340 你敢一个人过桥吗?

    Description 在漆黑的夜里,N位旅行者来到了一座狭窄而且没有护栏的桥边.如果不借助手电筒的话,大家是无论如何也不敢过桥去的.不幸的是,N个人一共只带了一只手电筒,而桥窄得只够让两个人同时过. ...

  9. 攻防世界 reverse babymips

    babymips   XCTF 4th-QCTF-2018 mips,ida中想要反编译的化需要安装插件,这题并不复杂直接看mips汇编也没什么难度,这里我用了ghidra,直接可以查看反编译. 1 ...

  10. 1、MyBatis教程之环境准备和简介

    1.环境准备 jdk 8 + MySQL 5.7.19 maven-3.6.1 IDEA 学习前需要掌握: JDBC MySQL Java 基础 Maven Junit Idea快捷键 一键格式化代碼 ...