vsftpd服务程序的三种认证模式的配置方法——匿名开放模式、本地用户模式以及虚拟用户模式。了解PAM可插拔认证模块的原理、作用以及实战配置方法,通过实战课程进一步继续学习SELinux服务的配置方法,扩展学习TFTP简单文件传输协议理论及实操课程

文件传输协议

一般来讲,人们将电脑联网的首要需求就是获取资料,而文件传输是其中非常重要的方式之一,21世纪的互联网是由几千万台个人电脑、工作站、小型机、大型机等等不同型号、架构的物理设备共同组成的,即便是个人电脑上也可能会装有诸如Linux、Windows、UNIX、DOS等等不同的操作系统,所以为了能够在如此复杂多样的操作设备之间解决文件传输问题,于是便有了统一的FTP文件传输协议(File Transfer Protocol),这是一种能够让使用者在互联网中上传、下载文件的传输协议。很多同学在大学期间只知道FTP协议使用了21端口号,但实际上FTP文件传输协议默认占用了20、21两个端口号,20端口号用于进行数据传输,21端口号用于接受客户端执行的相关FTP命令与参数,FTP服务端普遍更多的应用于内网中,具有易于搭建、方便管理的特点,并且可以借助FTP客户端工具还可以轻松实现文件的多点下载和断点续传技术,FTP协议的传输拓扑如图11-1所示。

FTP服务器就是支持FTP传输协议的主机,与大多数服务程序一样,要想完成文件传输则需要FTP服务端和客户端的配合才行,用户可以通过客户端向FTP服务端发送指令参数,FTP服务端从而会依据接受到的命令作出相应动作,比如显示执行结果或把文件传输到客户端主机上,FTP协议的传输有两种不同的模式,主动模式是让FTP服务端主动向客户端发起链接请求,而被动模式则是让FTP服务端等待客户端的链接请求,默认情况下被动模式,咱们在第8章的防火墙课程中学习过,防火墙一般更多的是过滤从外网到内网的流量数据,因此有些时候必须改成主动模式才可以传输。

Vsftpd是一款运行在Linux操作系统上面的FTP服务端程序,Very Secure FTP Daemon顾名思义就是非常安全的FTP传输程序,vsftpd服务程序不仅完全开源且免费,而且具有很高的安全性、传输速率、支持虚拟用户验证功能等等其他FTP服务端程序所不具备的特点。配置妥当yum软件仓库后就可以来安装vsftpd服务程序了:

 

[root@fyc ~]# yum install vsftpd -y

1.匿名开放模式

[root@linuxprobe ~]# mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf_bak   (对原始配置文件备份)
[root@linuxprobe ~]# grep -v "#" /etc/vsftpd/vsftpd.conf_bak > /etc/vsftpd/vsftpd.conf (去掉#注释,并生成精简配置文件)
[root@linuxprobe ~]# cat /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

注释: anonymous_enable=YES (用户登陆名为anonymous,密码为空) ;

local_enable=YES  允许本地用户访问(/etc/passwd中的用户) 15行;

write_enable=YES  /允许写入权限,包括修改,删除  ;

local_umask=022  /本地用户文件上传后的权限是-rw-r--r--   本地用户上传最高权限为666,默认权限为666-022=644,即local_umask=022 ;

dirmessage_enable=YES  /是否显示目录说明文件, 默认是YES 但需要手工创建.message文件,这个.message,只有用命令登陆或者用工具,才可以看见,他不是一个弹出对话框,而是一段字符,如在pub下建立一个.message,那么在客户端进入pub目录时就会显示.message文档中的内容

xferlog_enable=YES /如果启用该选项,系统将会维护记录服务器上传和下载情况的日志文件。默认情况下,该日志文件为 /var/log/vsftpd.log。但也可以通过配置文件中的 vsftpd_log_file 选项来指定其他文件。默认值为NO

connect_from_port_20=YES /传输端口为20端口

xferlog_std_format=YES /如果启用该选项,传输日志文件将以标准 xferlog 的格式书写,该格式的日志文件默认为 /var/log/xferlog,也可以通过 xferlog_file 选项对其进行设定。默认值为NO。

listen=NO /不监听

listen_ipv6=YES /监听ipv6登陆

pam_service_name=vsftpd /设置PAM认证服务的配置文件名称,该文件存放在/etc/pam.d/

userlist_enable=YES /用户列取目录能力为是

tcp_wrappers=YES /在VSFTPD中使用TCP_Wrappers远程访问控制机制,默认值为YES ,Tcpwrappers: Transmission Control Protocol (TCP) Wrappers 为由 inetd 生成的服务提供了增强的安全性。TCP Wrappers 是一种对使用 /etc/inetd.sec 的替换方法。TCP Wrappers 提供防止主机名主机地址欺骗的保护。欺骗是一种伪装成有效用户或主机以获得对系统进行未经授权的访问的方法。

TCPWrappers使用访问控制列表 (ACL) 来防止欺骗。ACL 是 /etc/hosts.allow 和 /etc/hosts.deny 文件中的系统列表。在配置为验证主机名到 IP 地址映射,以及拒绝使用 IP 源路由的软件包时,TCP Wrappers 提供某些防止 IP 欺骗的保护。
Tcpwrappers工作原理 :在服务器向外提供的tcp服务商包装一层安全检测机制。外来连接请求首先通过这个安全检测,获得安全认证后才可被系统服务接受。
TCP wrapper作为客户服务器模型的一部分,依赖/etc/hosts.allow和/etc/hosts.deny文件作为简单访问控制语言的基础,可用于任何包含了libwrap.so的daemon程序使用。访问控制语言限定的规则是:基于客户端地址和客户端试图访问的daemon程序,选择性地允许客户端访问服务器在本地系统上的daemon程序。
hosts.allow和hosts.deny文件中的每行代码都遵循以下格式:
  daemon_list client_list [ command]


												

vsftpd服务程序的三种认证模式的更多相关文章

  1. Linux环境下安装配置vsftpd服务(三种认证模式)

    一.FTP简介 文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议.它工作于网络传输协议的应用层,使用客户/服务器模式,主要是用来 ...

  2. CentOS6.5下搭建ftp服务器(三种认证模式:匿名用户、本地用户、虚拟用户)

    CentOS 6.5下搭建ftp服务器 vsftpd(very secure ftp daemon,非常安全的FTP守护进程)是一款运行在Linux操作系统上的FTP服务程序,不仅完全开源而且免费,此 ...

  3. Hadoop三种安装模式:单机模式,伪分布式,真正分布式

    Hadoop三种安装模式:单机模式,伪分布式,真正分布式 一 单机模式standalone单 机模式是Hadoop的默认模式.当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守 ...

  4. VMware 三种网络模式的区别

    VMware 三种网络模式的区别 VMware 三种网络模式的区别 我们首先说一下VMware的几个虚拟设备 VMnet0:用于虚拟桥接网络下的虚拟交换机 VMnet1:用于虚拟Host-Only网络 ...

  5. telent三种认证及vlan简单划分

    实验一 telent三种认证方式登录 实验拓扑图如下: 操作过程: 1.认证模式为none R1操作:       1.system-view进入系统试图2.telnet server enable开 ...

  6. ubuntu上Hadoop三种运行模式的部署

    Hadoop集群支持三种运行模式:单机模式.伪分布式模式,全分布式模式,下面介绍下在Ubuntu下的部署 (1)单机模式 默认情况下,Hadoop被配置成一个以非分布式模式运行的独立JAVA进程,适合 ...

  7. (转)VMware虚拟机三种网络模式的区别及配置方法;

    我的一点实际经验理解桥接和NAT 桥接是虚拟机完全作为一个独立的地址接在局域网中,NAT是虚拟机依赖宿主主机地址转换的一种方式 例子我的虚拟机如果用桥接模式,连接外部网站如百度时会提示此pc没有装公司 ...

  8. IOS开发之自定义Button(集成三种回调模式)

    前面在做东西的时候都用到了storyboard,在今天的代码中就纯手写代码自己用封装个Button.这个Button继承于UIView类,在封装的时候用上啦OC中的三种回调模式:目标动作回调,委托回调 ...

  9. 云计算的三种服务模式:SaaS/PaaS/IaaS

    转载http://blog.chinaunix.net/uid-22414998-id-3141499.html 定义 云计算主要分为三种服务模式,而且这个三层的分法重要是从用户体验的角度出发的: S ...

随机推荐

  1. 使用CablleStatement调用存储过程

    /** * 使用CablleStatement调用存储过程 * @author APPle * */ public class Demo1 { /** * 调用带有输入参数的存储过程 * CALL p ...

  2. 【XSY2892】【GDSOI2018】谁是冠军

    题目来源:noi2018模拟测试赛(二十三)T3 san 为什么noi模拟赛里会做到省选原题啊…… 题意: Description 有n个人,简单起见把他们编号为1到n,每个人有三项指标分别是攻击力, ...

  3. BZOJ 1856 [SCOI2010]生成字符串 (组合数)

    题目大意:给你n个1和m个0,你要用这些数字组成一个长度为n+m的串,对于任意一个位置k,要保证前k个数字中1的数量大于等于0的数量,求所有合法的串的数量 答案转化为所有方案数-不合法方案数 所有方案 ...

  4. js追加元素

    直接运行 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <titl ...

  5. MyBatis学习总结(19)——Mybatis传多个参数(三种解决方案)

    据我目前接触到的传多个参数的方案有三种. 第一种方案  DAO层的函数方法  Public User selectUser(String name,String area); 对应的Mapper.xm ...

  6. ASP.NET-dropdownlist默认值

    可以在第三个选项中定义一个默认值,但是返回数据的时候就不需要这种类似"请选择名称"之类的提示了,所以在构造seleclt option的时候,要在option中的属性中加上sele ...

  7. libLAS1.8.0 编译和配置(VS2013+Win7 64)(一)

    libLAS 是一个用来读写三维激光雷达数据(LiDAR) 的 C++ 库.在学习.科研和研发中都会广泛运用.怎样编译和配置自己所须要版本号的libLAS库确是一件麻烦耗时的事情. 笔者在Win7 6 ...

  8. 用了一天的时间,linux下expect实现ssh自己主动登录server记,歧视下网上各种抄来抄去残段子

    由于要对客户方的快30个项目进行特别有顺序的重新启动,所以不得不想办法写个脚本,网上看了不少段子.真是残缺的能够. 没有一段是能够正常运行的.我来按顺序记录一下 脚本的本身 使用expect实现自己主 ...

  9. linux 磁盘分区,主分区,扩展分区,逻辑分区以sata接口为例

     以sata接口(依据linux内核检測其顺序 sda,sdb...)为例, 1, 硬盘的限制,最多仅仅能设置4个分区(主分区+扩展分区),路径例如以下, /dev/sda1  /dev/sda2 ...

  10. HDU 1040.As Easy As A+B【排序】【如题(水!水!水!)】【8月24】

    As Easy As A+B Problem Description These days, I am thinking about a question, how can I get a probl ...