一、简介 vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开发源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征。比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。[2] vsftpd是一款在Linux发行版中最受推崇的ftp服务器程序。特点是小巧轻快,安全易用。 LINUX下实现FTP服务的软件很多,最常见的有vsftpd,Wu-ftpd和Proftp等。Red Hat Enterprise Linux中默认安装的是vsftpd。 二、vsftpd工作方式 2.1、vsftp工作模式 vsftp分为主动模式和被动模式: 主动模式: Server 20端口>Client 被动模式:Server **端口----- Cilent w2.2、vsftp用户类型 匿名用户: ftp 或anonymous 本地用户: 以真实的用户名和密码进行登录,但前提条件是用户在FTP服务器上拥有自己的帐号.用真实帐号登录后,其登录的目录为用户自己的目录,该目录在系统建立帐号时系统就自动创建。 虚拟用户: 账户信息存放在独立的数据库文件或者数据库内; 2.3、vsftp服务 Very secure FTP Daemon 官方网站;http://vsftpd.beasts.org/ 服务的程序和脚本: 服务程序:/usr/sbin/vsftpd 启动脚本:/etc.init.d/vsftpd 主配置文件:/etc/vsftpd/vsftpd.conf 2.4、vsftp主配置文件参数说明 [root@woon ~]# vim /etc/vsftpd/vsftpd.conf # attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd # predicted this attack and has always been safe, reporting the size of the # raw file. # ASCII mangling is a horrible feature of the protocol. #ascii_upload_enable=YES #ascii_download_enable=YES ; 是否启用ASCII方式传送文件,一般我们不需要这个格式。 # # You may fully customise the login banner string: #ftpd_banner=Welcome to blah FTP service. ; 登陆FTP服务器,所提示的欢迎信息 # # You may specify a file of disallowed anonymous e-mail addresses. Apparently # useful for combatting certain DoS attacks. #deny_email_enable=YES # (default follows) #banned_email_file=/etc/vsftpd/banned_emails ; 若是启用以上两个选项,则可以在/etc/vsftpd/banned_emails中建立黑名单。 # # You may specify an explicit list of local users to chroot() to their home # directory. If chroot_local_user is YES, then this list becomes a list of # users to NOT chroot(). #chroot_local_user=YES ;设置为yes时,用户不能登录到根目录意外的目录 #chroot_list_enable=YES # (default follows) #chroot_list_file=/etc/vsftpd/chroot_list ; 当登陆FTP服务器时,被列在chroot_list文件中的用户,不可以访问FTP根目录以外的目录。 # # You may activate the "-R" option to the builtin ls. This is disabled by # default to avoid remote users being able to cause excessive I/O on large # sites. However, some broken FTP clients such as "ncftp" and "mirror" assume # the presence of the "-R" option, so there is a strong case for enabling it. #ls_recurse_enable=YES ; 是否可以使用ls R命令 # # When "listen" directive is enabled, vsftpd runs in standalone mode and # listens on IPv4 sockets. This directive cannot be used in conjunction # with the listen_ipv6 directive. listen=YES ; 此项为YES时,vsftpd运行于stand-alone模式下 # # This directive enables listening on IPv6 sockets. To listen on IPv4 and IPv6 # sockets, you must run two copies of vsftpd with two configuration files. # Make sure, that one of the listen options is commented !! #listen_ipv6=YES ; ipv6 监听 pam_service_name=vsftpd ; 设置PAM认证服务的配置文件名称,该文件存放在/etc/pam.d/目录下 userlist_enable=YES ; 用户列表中的用户是否允许登录ftp服务器 tcp_wrappers=YES ; tcp_wrqppers作为主机访问控制 此外还有许多参数未出现,列举常用参数 Idle_session_timeout=300 客户端若在300秒之内没有任何操作,则服务器自动断开。 max_clinet=0 最大连接数量(stand-alone模式下) max_per_ip=0 每个客户端最大连接ftp服务器的连接数 local_max_rate=0 (责任编辑:IT) |