1.FTP的主动模式和被动模式的区别:

最大的区别是数据端口并不总是20,

主动模式和被动模式的优缺点:

主动FTP对FTP服务器的管理和安全很有利,但对客户端的管理不利。因为FTP服务器企图与客户端的高位随机端口建立连接,而这个端口很有可能被客户端 的防火墙阻塞掉。被动FTP对FTP客户端的管理有利,但对服务器端的管理不利。因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端口,而 这个端口很有可能被服务器端的防火墙阻塞掉。

2.主要FTP的服务器:

Vsftpd,pureftpd,serv-u,

3.常用命令:

ftpwho:查看连接到服务器端用户。

ftpcount;查看连接到服务器的用户数量。

4.ftp配置文件/etc/vsftp/vsftp.cpnfig详解:

匿名用户设置:

write_enable=YES               //是否对登录用户开启写权限。属全局性设置。默认NO

local_enable=YES               //是否允许本地用户登录FTP服务器。默认为NO

anonymous_enable=YES          //设置是否允许匿名用户登录FTP服务器。默认为YES

ftp_username=ftp                //定义匿名用户的账户名称,默认值为ftp。

no_anon_password=YES             //匿名用户登录时是否询问口令。设置为YES,则不询问。默

认NO

anon_world_readable_only=YES   //匿名用户是否允许下载可阅读的文档,默认为YES。

anon_upload_enable=YES      //是否允许匿名用户上传文件。只有在write_enable设置为

YES时,该配置项才有效。而且匿名用户对相应的目录必须有写权限。默认为NO。

anon_mkdir_write_enable=YES //是否允许匿名用户创建目录。只有在write_enable设置为    YES时有效。且匿名用户对上层目录有写入的权限。默认为NO。

anon_other_write_enable=NO    //若设置为YES,则匿名用户会被允许拥有多于

上传和建立目录的权限,还会拥有删除和更名权限。默认值为NO。

用户登录所在目录:

local_root=/var/ftp

// 设置本地用户登录后所在的目录。默认配置文件中没有设置该项,此时用户登录FTP服务器后,所在的目录为该用户的主目录,对于root用户,则为/root目录。

anon_root=/var/ftp

//设置匿名用户登录后所在的目录。若未指定,则默认为/var/ftp目录。

控制用户是否切换到上级目录;

在默认配置下,用户可以使用“cd..”命名切换到上级目录。比如,若用户登录后所在的目录为/var/ftp,则在“ftp>”命令行 下,执行“cd..”命令后,用户将切换到其上级目录/var,若继续执行该命令,则可进入Linux系统的根目录,从而可以对整个Linux的文件系统 进行操作。

若设置了write_enable=YES,则用户还可对根目录下的文件进行改写操作,会给系统带来极大的安全隐患,因此,必须防止用户切换到Linux的根目录,相关的配置项如下:

chroot_list_enable=YES

// 设置是否启用chroot_list_file配置项指定的用户列表文件。设置为YES则除了列在j/etc/vsftpd/chroot_list文件中的的帐号外,所有登录的用户都可以进入ftp根目录之外的目录。默认NO

chroot_list_file=/etc/vsftpd/chroot_list

// 用于指定用户列表文件,该文件用于控制哪些用户可以切换到FTP站点根目录的上级目录。

chroot_local_user=YES

// 用于指定用户列表文件中的用户,是否允许切换到上级目录。默认NO

注意:要对本地用户查看效果,需先设置local_root=/var/ftp

具体情况有以下几种:

1)当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd/chroot_list文件中列出的用户,可以切换到上级目录;未在文件中列出的用户,不能切换到站点根目录的上级目录。

2)当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd/chroot_list文件中列出的用户,不能切换到站点根目录的上级目录;未在文件中列出的用户,可以切换到上级目录。

3)当chroot_list_enable=NO,chroot_local_user=YES时,所有用户均不能切换到上级目录。

4)当chroot_list_enable=NO,chroot_local_user=NO时,所有用户均可以切换到上级目录。

5)当用户不允许切换到上级目录时,登录后FTP站点的根目录“/”是该FTP账户的主目录,即文件的系统的/var/ftp目录。

设置访问控制

设置允许或不允许访问的主机(见TBP14)

tcp_wrappers=YES用来设置vsftpd服务器是否与tcp wrapper相结合,进行主机的访问控制。默认设置为YES,vsftpd服务器会检查/etc/hosts.allow和/etc /hosts.deny中的设置,以决定请求连接的主机是否允许访问该FTP服务器。这两个文件可以起到简易的防火墙功能。

比如,若要仅允许192.168.168.1~192.168.168.254的用户,可以访问连接vsftpd服务器,则可在/etc/hosts.allow文件中添加以下内容:

vsftpd:192.168.168.0/255.255.255.0 :allow

all:all:deny

设置允许或不允许访问的用户

对用户的访问控制由/etc/vsftpd/user_list和/etc/vsftpd/ftpusers文件来控制实现。相关配置命令如下:

userlist_enable=YES

// 决定/etc/vsftpd/user_list文件是否启用生效。YES则生效,NO不生效。

userlist_deny=YES

// 决定/etc/vsftpd/user_list文件中的用户是允许访问还是不允许访问。若设置为YES,则/etc/vsftpd/user_list 文件中的用户将不允许访问FTP服务器;若设置为NO,则只有vsftpd.user_list文件中的用户,才能访问FTP服务器

5.配置文件:

超时选项:idle-session-timeout=600

负载控制:控制最大连接数:max_clients=..

6.匿名用户:

一般可以用匿名来登录服务器anonymous,但是不能上传文件。no_anon_password=YES/NO,匿名用户是否需要密码。

7.新建一个用户:

先用“useradd -d 目录名 用户名”建立一个到FTP目录的用户帐号,然后在用passwd设置密码

在修改配置文件/etc/vsftpd/vsftpd.config

guest_enable=YES

guest_username=用户名

setsebool ftpd_disable_trans 1

vsftp服务器搭建的更多相关文章

  1. 快速搭建vsftp 服务器并配置指定目录

    1  搭建vsftp 服务器 前期准备: 1.用root 进入系统 2.使用命令 rpm  -qa|grep vsftpd 查看系统是否安装了ftp,若安装了vsftp,使用这个命令会在屏幕上显示vs ...

  2. 在Ubuntu14.04下安装vsftp服务器

    猜想在Ubuntu下搭建ftp服务器来实现windows和ubuntu下文件互传是一件很简单的事儿,但是在网上找了好几篇文章都不行,故自己在这里总结一下方法. 首先安装vsftp服务器 sudo ap ...

  3. 记一次ftp服务器搭建走过的坑

    记一次ftp服务器搭建走过的坑 1.安装 ①下载 wget https://security.appspot.com/downloads/vsftpd-3.0.3.tar.gz #要FQ ②解压 ta ...

  4. Vsftpd3.0--FTP服务器搭建之本地用户篇

    Vsftpd3.0--FTP服务器搭建之本地用户篇 年4月10日 19:23 FTP服务在工作中是经用到的一种工具,可以实现上传下载等功能.那么今天我们来聊一聊FTP服务器使用本地用户登录的实现模式. ...

  5. Linux extmail的邮件服务器搭建

    注:本文来源于<extmail搭建> 一.背景介绍 ExtMail Solution 是一个基于优秀开源软件的电子邮件系统解决方案,核心部件包括了Postfix.Amavisd-new.C ...

  6. vsftp服务器部署

    环境:CentOS 6.6 目标:个人虚机部署vsftp服务器,供测试使用. 说明:步骤已改写为脚本,直接添加用户与对应的密码列表,调用函数名即可 ########################## ...

  7. FTP-Linux中ftp服务器搭建

    一.FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp ...

  8. 基于SSL加密的vsftpd 服务器搭建和配置

    基于SSL加密的VSFTPD 服务器搭建和配置 1.安装 ubuntu系统:apt-get install vsftp lftp centos系统:yum install -y vsftpd ftp ...

  9. Vsftp服务器配置文件详解

    vsftp软件是我们常见的FTP服务器搭建软件,所有的配置都是基于vsftpd.conf这个配置文件的.vsftpd.conf里面主要包括安全配置,传输,用户还有权限等相关的选项.现在我们讲解下关于V ...

随机推荐

  1. dubbo服务telnet命令的使用

    转自:https://www.cnblogs.com/feiqihang/p/4387330.html dubbo服务发布之后,我们可以利用telnet命令进行调试.管理.Dubbo2.0.5以上版本 ...

  2. java 常见问题

    1.Cannot convert value '0000-00-00 00:00:00' from column 1 to TIMESTAMP 2.怎么解决BigDecimal里面无限循环小数的问题啊 ...

  3. 00105_UDP和TCP协议

    1.UDP协议 (1)UDP是User Datagram Protocol的简称,称为用户数据报协议: (2)UDP是无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接: (3)当一台 ...

  4. ZOJ 5579 Stean

    Stean Time Limit: 1 Second      Memory Limit: 65536 KB      Special Judge Tom is good at making stea ...

  5. 关于单CPU,多CPU上的原子操作

    所谓原子操作,就是"不可中断的一个或一系列操作" . 硬件级的原子操作:在单处理器系统(UniProcessor)中,能够在单条指令中完成的操作都可以认为是" 原子操作& ...

  6. [Poj2112][USACO2003 US OPEN] Optimal Milking [网络流,最大流][Dinic+当前弧优化]

    题意:有K个挤奶机编号1~K,有C只奶牛编号(K+1)~(C+K),每个挤奶机之多能挤M头牛,现在让奶牛走到挤奶机处,求奶牛所走的最长的一条边至少是多少. 题解:从起点向挤奶机连边,容量为M,从挤奶机 ...

  7. [转]WCF的几种寄宿方式

    转自:WCF开发框架形成之旅---WCF的几种寄宿方式 WCF寄宿方式是一种非常灵活的操作,可以在IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为 ...

  8. dataguard switchover to physical stnadby

    首先做一系列的check check 当前primary 的 standby redo log是否存在 SQL> select * from v$logfile; GROUP# STATUS T ...

  9. PHP array_count_values()

    定义和用法 array_count_values() 函数用于统计数组中所有值出现的次数. 本函数返回一个数组,其元素的键(索引)是原数组的值,元素的值是该值在原数组中出现的次数. 语法 array_ ...

  10. 怎样在BIOS中设置RAID?

    随着价格的下降和相应主板的支持.眼下SATA硬盘已经逐渐成为主流. 但因为受芯片组和操作系统的影响.不少用户对SATA硬盘的使用及安装系统掌握不足,今天小编就给大家介绍一下SATA硬盘的日常应用技巧. ...