Linux安装vsftpd及配置详解(2)

(三)主动与被动FTP优缺点:

主动FTP对FTP服务器的管理有利,但对客户端的管理不利。因为FTP服务器企图与客户端的高位随机端口建立连接,而这个端口很有可能被客户端的 防火墙阻塞掉。被动FTP对FTP客户端的管理有利,但对服务器端的管理不利。因为客户端要与服务器端建立两个连接,其中一个连到一个高位随机端 口,而这 个端口很有可能被服务器端的防火墙阻塞掉。 幸运的是,有折衷的办法。既然FTP服务器的管理员需要他们的服务器有最多的客户连接,那么必须得支持被动FTP。我们可以通过为FTP服务器指定 一个有 限的端口范围来减小服务器高位端口的暴露。这样,不在这个范围的任何端口会被服务器的防火墙阻塞。虽然这没有消除所有针对服务器的 危险,但它大大减少了危险。 简而言之: 主动模式(PORT)和被动模式(PASV)。主动模式是从服务器端向客户端发起连接;被动模式是客户端向服务器端发起连接。两者的共同点是都使 用21端口进行用户验证及管理,差别在于传送数据的方式不同,PORT模式的FTP服务器数据端口固定在20,而PASV模式则在1025-65535之间随机。 常见的FTP客户端软件的PASV方式的关闭方法 大部分FTP客户端默认使用PASV方式。IE默认使用PORT方式。 在大部分FTP客户端的设置里,常见到的字眼都是“PASV”或“被动模式”, 极少见到“PORT”或“主动模式”等字眼。因为FTP的登录方式只有两种:PORT和PASV,取消PASV方式,就意味着使用PORT方式。 (1)IE:工具 -> Internet选项 -> 高级 -> “使用被动FTP”(需要IE6.0以上才支持)。 (2)CuteFTP:Edit -> Setting -> Connection -> Firewall -> “PASV Mode” 或File -> Site Manager,在左边选中站 点 -> Edit -> “Use PASV mode” 。 (3)FlashGet:工具 -> 选项 -> 代理服务器 -> 直接连接 -> 编辑 -> “PASV模式”。 (4)FlashFXP:选项 -> 参数选择 -> 代理/防火墙/标识 -> “使用被动模式” 或 站点管理 -> 对应站点 -> 选项 -> “使用被动模式”或快速连接 -> 切换 -> “使用被动模式”。 3、 登录方式(三种登录方式) 3.1 防火墙开启21端口

因为ftp默认的端口为21,而CentOS默认是没有开启的,所以要修改iptables文件

[root@linuxidc ~]# vim /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT 在行上面有22 -j ACCEPT 下面另起一行输入跟那行差不多的,只是把22换成21,然后:wq保存。 还要运行下,重启iptables [root@linuxidc ~]# service iptables restart 3.2 FTP匿名登录

FTP的匿名登录一般有三种:

1、 用户名:anonymous 密码:Email或者为空

2、 用户名:FTP 密码:FTP或者为空

3、 用户名:USER 密码:pass

3.2.1 在IE浏览器或文件管理器中匿名访问

ftp默认开启的匿名用户登录和主动模式,用IE访问需要把“使用被动FTP”选项去掉前面的勾,这样ftp都连接上去

Linux安装vsftpd及配置详解

在文件管理器输入框中输入ftp://域名或者ip,如果端口不是21的后面加端口。

Linux安装vsftpd及配置详解

3.3 匿名用户权限 3.3.1 vsftpd配置文件

默认配置

anonymous_enable=YES #允许匿名用户和本地用户登陆。 local_enable=YES #匿名用户使用的登陆名为ftp或anonymous,口令为空;匿名用户不能离开匿名用户家目录/var/ftp,且只能下载不能上传。 write_enable=YES #本地用户的登录名为本地用户名,口令为此本地用户的口令;本地用户可以在自己家目录中进行读写操作;本地用户可以离开自家目录切换至有权限 访问的其他目录,并在权限允许的情况下进行上传/下载。 #写在文件/etc/vsftpd.ftpusers中的本地用户禁止登陆。 3.3.2 匿名用户(anonymous)设置 anonymous_enable=YES/NO(YES) #控制是否允许匿名用户登入,YES 为允许匿名登入,NO 为不允许。默认值为YES。 write_enable=YES/NO(YES) #是否允许登陆用户有写权限。属于全局设置,默认值为YES。 no_anon_password=YES/NO(NO) #若是启动这项功能,则使用匿名登入时,不会询问密码。默认值为NO。 ftp_username=ftp #定义匿名登入的使用者名称。默认值为ftp。 anon_root=/var/ftp #使用匿名登入时,所登入的目录。默认值为/var/ftp。注意ftp目录不能是777的权限属性,即匿名用户的家目录不能有777的权限。 anon_upload_enable=YES/NO(NO) #如果设为YES,则允许匿名登入者有上传文件(非目录)的权限,只有在write_enable=YES时,此项才有效。当然,匿名用户必须要有对上层目录的写入权。默认值为NO。 anon_world_readable_only=YES/NO(YES) #如果设为YES,则允许匿名登入者下载可阅读的档案(可以下载到本机阅读,不能直接在FTP服务器中打开阅读)。默认值为YES。 anon_mkdir_write_enable=YES/NO(NO) #如果设为YES,则允许匿名登入者有新增目录的权限,只有在write_enable=YES时,此项才有效。当然,匿名用户必须要有对上层目录的写入权。 默认值为NO。 anon_other_write_enable=YES/NO(NO) #如果设为YES,则允许匿名登入者更多于上传或者建立目录之外的权限,譬如删除或者重命名。(如果anon_upload_enable=NO,则匿名用户不能 上传文件,但可以删除或者重命名已经存在的文件���如果anon_mkdir_write_enable=NO,则匿名用户不能上传或者新建文件夹,但可以删除或者重 命名已经存在的文件夹。)默认值为NO。 chown_uploads=YES/NO(NO) #设置是否改变匿名用户上传文件(非目录)的属主。默认值为NO。 chown_username=username #设置匿名用户上传文件(非目录)的属主名。建议不要设置为root。 anon_umask=077 #设置匿名登入者新增或上传档案时的umask 值。默认值为077,则新建档案的对应权限为700。 deny_email_enable=YES/NO(NO) #若是启动这项功能,则必须提供一个档案/etc/vsftpd/banner_emails,内容为email address。若是使用匿名登入,则会要求输入email address, 若输入的email address 在此档案内,则不允许进入。默认值为NO。 banned_email_file=/etc/vsftpd/banner_emails #此文件用来输入email address,只有在deny_email_enable=YES时,才会使用到此档案。若是使用匿名登入,则会要求输入email address,若输入的email address 在此档案内,则不允许进入。

local_umask目录:
777-022=755
local_umask文件:
666-022=644

事例:
Linux下允许vsftp匿名用户上传和下载的配置

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/8e8bec3cbf00a6f3482646cbb39c8e6f.html