VSFTPD的安装配置

VSFTPD
    FTP:文件传输协议
    端口:20、21
        
    vsftpd:ftp服务端程序
    安装vsftpd程序
        yum -y install vsftpd
        
        主配置文件:/etc/vsftpd/vsftpd.conf
        用户禁止登录列表:    /etc/vsftpd/ftpusers
                            /etc/vsftpd/user_list
                            
    vsftpd验证方式:匿名访问,本地用户,虚拟用户
        
        匿名访问
            1、编辑主配置文件
                anonymous_enable=YES             允许匿名用户访问
                anon_umask=022                    匿名用户上传文件的umask值
                anon_upload_enable=YES             允许匿名用户上传文件
                anon_mkdir_write_enable=YES     允许匿名用户创建目录
                anon_other_write_enable=YES     允许匿名用户修改目录名或删除目录
            
            2、重启服务
                systemctl restart vsftpd
                systemctl enable vsftpd
            
            3、修改权限
                    匿名访问模式下的FTP根目录 /var/ftp
                        chown ftp /var/ftp/pub
            
                    SELinux的布尔值
                        getsebool -a | grep ftp
                        setsebool -P ftpd_full_access=on
                        
        本地模式
            1、编辑文件
                anonymous_enable=NO
                local_enable=YES
                write_enable=YES
                local_umask=022
                userlist_deny=YES         YES表示禁止名单中的用户,NO表示仅允许名单中的用户
                userlist_enable=YES     允许“禁止登录名单”,名单文件:ftpusers、user_list
                
            2、重启服务    
                systemctl enable vsftpd
                systemctl restart vsftpd
                
            3、创建用户
                useradd  ftptest
                echo 'ftptest' | passwd --stdin ftptest
                
            4、修改权限
                getsebool -a | grep ftp
                setsebool -P ftp_full_access=on
                
        虚拟用户模式
            1、建立虚拟FTP用户数据库文件
                cd /etc/vsftpd
                  vim vuser.list
                    #单行为账号,双行为密码
                      ftpuser
                      ftpuserpassword
                      
                使用db_load命令用HASH生成数据库文件vuser.db;
                    db_load -T -t hash -f vuser.list vuser.db
                    
                修改数据库权限
                    chmod 600 vuser.db
                
                删除原有帐密文件
                    rm -f vuser.list
                    
            2、创建FTP根目录及虚拟用户映射的系统用户
                创建用户virtual并设置不允许登录系统并定义用户的家目录
                    useradd -d /var/ftproot -s /sbin/nologin virtual
                    
                修改目录权限
                    chmod -Rf 755 /var/ftproot/
                    
            3、建立支持虚拟用户的PAM认证文件
                vim /etc/pam.d/vsftpd.vu
                    
                    auth required pam_userdb.so db=/etc/vsftpd/vuser
                    account required pam_userdb.so db/etc/vsftpd/vuser
                    
            4、编辑主配置文件
                vim /etc/vsftpd/vsftpd.conf
                    
                    anonymous_enable=NO
                    local_enable=YES
                    guest_enable=YES             开启虚拟用户模式
                    guest_username=virtual         指定虚拟用户账号
                    pam_service_name=vsftpd.vu     指定pam文件
                    allow_writeable_chroot=YES  允许禁锢的FTP根目录可写而不拒绝用户登录
                    
            5、为虚拟用户设置不同权限
                    vim /etc/vsftpd/vsftpd.conf
                        user_config_dir=/etc/vsftpd/vuser_dir
                        
                  创建用户独立的权限配置文件目录
                    mkdir /etc/vsftpd/vuser_dir
                        
                  创建用户配置文件
                    touch ftpuser     空白文件表示无权限
                    
                    vim ftpuser
                        anon_upload_enable=YES
                        anon_mkdir_write_enable=YES
                        anon_other_write_enable=YES
                        
            6、重启服务
                systemctl enable vsftpd
                systemctl restart vsftpd
                
            7、修改selinux    
                setsebool -P ftpd_full_access=on 

posted @ 2017-03-05 20:43  zyxywy  阅读(131)  评论(0编辑  收藏  举报