首页 > 代码库 > Cent OS 6.5 vsftp 安装和配置

Cent OS 6.5 vsftp 安装和配置

Vsftpd 简称:Very secure ftp 是一个比较安全的ftp server,具有许多功能和特点。

       功能和特点:

                   1.它是一个安全、高速且稳定的服务器。

                   2.可以设置多个基于IP地址的虚拟FTP主机。

                   3.设定匿名FTP服务非常简单。

                   4.不用执行任何外部程序,从而减少安全隐患。

                   5.支持虚拟用户。

                   6.支持带宽限制。

Vsftpd 安装和配置

       安装环境:Cent OS 6.5 server 禁用 SElinux。

       安装:

           

#yum install -y vsftpd

      Vsftpd服务器文件
      /usr/sbin/vsftpd        vsftpd 的执行文件
      /etc/rc.d/init.d/vsftpd        启动脚本
      /etc/vsftpd/vsftp.conf         主配置文件
      /etc/vsftpd.ftpusers           禁用使用FTP的用户列表
      /etc/vsftpd.user_list          禁用和允许使用Ftp的用户列表
      /var/ftp                       匿名用户的主目录
      /var/ftp/pub                   匿名用户的下载目录
      还有一些其他文件,请大家自己查阅。
      
Vsftpd 主配置文件

anonymous_enable=YES                        允许匿名用户访问
local_enable=YES                            允许本地用户访问
write_enable=YES                            允许本地用户读写
local_umask=022                             默认掩码
#anon_upload_enable=YES                     允许匿名用户上传文件,默认不允许
#anon_mkdir_write_enable=YES                允许匿名用户上创建文件夹,默认不允许
dirmessage_enable=YES                       如果目录不存在.message文件,则显示该文件内容 
xferlog_enable=YES                          启用上传下载记录日志
connect_from_port_20=YES                    启用数据连接端口
#chown_uploads=YES                          两行一起使用
#chown_username=whoever                     允许新上传的文件的拥有者是whoever
xferlog_file=/var/log/xferlog               上传下载记录日志文件/var/log/xferlog
xferlog_std_format=YES                      使用标准格式记录上传下载记录
#idle_session_timeout=600                   建立连接超时时间
#data_connection_timeout=120                数据传输延迟时间
#nopriv_user=ftpsecure                      使用特殊用户ftpsecure
#async_abor_enable=YES                      取消下载后客户端不挂起
#ascii_upload_enable=YES                   
#ascii_download_enable=YES                  启用ASCII方式传送文件
ftpd_banner=Welcome to blah FTP service.    登陆提示
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd/banned_emails 启用设置可以设置黑名单
#chroot_local_user=YES
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd/chroot_list   限制chroot_list用户访问他们FTP根目录的上一级目录
#ls_recurse_enable=YES                      是否使用ls -R命令
listen=YES

pam_service_name=vsftpd                     列出与Vsftpd相关的PAM文件             
userlist_enable=YES                         启动/etc/vsftpd/user_list配置文件
userlist_deny=NO                            /etc/vsftpd/user_list文件的用户可以访问Vsftp服务器
#userlist_deny=NO                           /etc/vsftpd/user_list文件的用户不可以访问Vsftp服务器
tcp_wrappers=YES                            启用TCP Warppers 支持

上面我们介绍了Vsftpd主配置文件,接下来我们来配置仅允许系统用户访问服务器。
#useradd ftpuser -s /sbin/nologin    为了安全,新建一个不能登录系统的用户ftpuser
#cat /etc/vsftpd/vsftpd.conf | grep -v "^#"
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=120
ftpd_banner=Welcome to blah FTP service.Please don‘t cut or remove the FTP server files and folders.
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=NO                        仅允许/etc/vsftpd/user.list文件中的用户登陆
tcp_wrappers=YES
local_root=/var/ftp                     设置本地用户的FTP根目录                         
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log     启用详细日志记录客户端连接服务器详细信息
use_localtime=YES                       启动本机时间
pasv_enable=YES
pasv_min_port=30001
pasv_max_port=31000                     启用被动模式服务器响应的端口
accept_timeout=60                       被动模式服务器等待客户端回应的时间
max_client=100                          最大客户端连接数
max_per_ip=10                           每个客户端最大连接数
local_max_rate=50000                    限制所有本地用户的传输速率,单位是字节

开通防火墙允许的端口
#vim /etc/sysconfig/iptables

-A INPUT -p tcp -m tcp --dport 30001:31000 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 20 -j ACCEPT
-A OUTPUT -p tcp -m state --state NEW -m tcp --dport 20 -j ACCEPT
-A OUTPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT

重启Vsftpd服务器
#service vsftpd restart


本文出自 “linux” 博客,转载请与作者联系!