十三、FTP服务配置

FTP解决文件传输问题,FTP服务器中的文件按目录结构进行组织,用户通过网络服务器建立连接。FTP仅基于TCP的服务,不支持UDP。

vsftp安装

我们有两个虚拟机环境desktop和server,使用server做ftp服务端,desktop做客户端用于登陆

  • 实验环境部署
    1 .关闭server端firewall,selinux为disabled状态,然后重启虚拟机

    [root@server ~] # systemctl stop firewalld
    [root@server ~] # vim /etc/sysconfig/selinux             ## 修改selinux文件改为disabled
    [root@server ~] # reboot
    [root@server ~] # getenforce
    Disabled
    

    在这里插入图片描述
    2 .若不想关闭防火墙,可以为其添加ftp服务,selinux还必须是disabled状态

    [root@server ~] # systemctl start firewalld
    [root@server ~] # firewall-cmd --permanent --add-service=ftp  ## 永久加入ftp服务
    success
    [root@server ~] # firewall-cmd --reload
    success
    [root@server ~] # firewall-cmd --list-all
    

    在这里插入图片描述
    server服务端IP为192.168.1.130;desktop客户端IP为192.168.1.131

  • 服务端vsftp安装,客户端lftp安装
    软件安装包:    vsftpd
    默认发布目录:   /var/ftp
    协议接口:      21/tcp
    服务配置文件:   /etc/vsftpd/vsftpd.conf
    server服务端:

    [root@server ~] # yum install vsftpd -y                  ## 使用yum安装vsftp
    [root@server ~] # systemctl start vsftpd
    [root@server ~] # systemctl enable vsftpd                ## 使vsftp服务开机自启动
    

    desktop客户端:

    [root@desktop ~] # yum install lftp                       ## 客户端使用lftp软件连接ftp服务器
    

    在这里插入图片描述

匿名用户ftp设置

配置文件路径在服务端/etc/vsftpd/vsftpd.conf,先看看匿名用户的一些设定

   anonymous_enable=YES|NO                           ## 匿名用户登录限制
   
   write_enable=YES                                  ## 允许写入
   anon_upload_enable=YES                            ## 允许上传
   chgrp ftp /var/ftp/pub                            ## 修改家目录pub的用户组
   chmod 775 /var/ftp/pub                            ## 修改pub的权限
   
   anon_root=/direcotry                              ## 修改匿名用户家目录位置
   anon_umask=xxx                                    ## 匿名用户上传文件的默认权限
   anon_mkdir_write_enable=YES|NO                    ## 是否允许建立目录
   anon_world_readable_only=YES|NO                   ## 是否允许下载  NO表示允许下载
   anon_other_write_enable=YES|NO                    ## 是否允许删除

   chown_uploads=YES                                 ## 用户使用身份修改
   chown_username=student
   chown_uploads_mode=0644
   
   anon_max_rate=102400                              ## 最大上传速率
   max_clients=2                                     ## 最大链接数
   
   #######光看配置当然不懂,往下看看实例中到底怎么运用#######
  • 匿名用户登陆限制

    anonymous_enable=YES|NO                           ## 匿名用户登录限制
    

    在这里插入图片描述 在这里插入图片描述

  • 匿名用户上传文件

    刚安装好vsftp服务后,是不允许匿名用户上传文件或目录
    在这里插入图片描述

    #####配置文件中加入#####
    write_enable=YES                                  ## 允许写入
    anon_upload_enable=YES                            ## 允许上传
    

    在这里插入图片描述
    在这里插入图片描述

  • 匿名用户家目录修改、下载、删除

    #####配置文件中加入#####
    anon_root=/home/anon                              ## 修改匿名用户家目录位置
    anon_umask=022                                    ## 匿名用户上传文件的默认权限
    anon_mkdir_write_enable=YES                       ## 允许创建目录
    anon_world_readable_only=NO                       ## 允许下载
    anon_other_write_enable=YES                       ## 允许删除
    ####下载目录使用mirror dirname####
    

    在这里插入图片描述

  • 用户使用身份修改

    chown_uploads=YES                                 ## 用户使用身份修改
    chown_username=ben
    chown_uploads_mode=0644
    

    在这里插入图片描述
    在这里插入图片描述

  • 最大上传速度

    dd if=/dev/zero of=/tmp/file bs=1M count=1000      ## 生成试验文件/tmp/file
    #####配置文件中加入#####
    anon_max_rate=102400                               ## 最大上传速率限制100kb左右
    

    在这里插入图片描述

本地用户ftp设置

同在/etc/vsftpd/vsftpd.conf配置文件中设定

local_enable=YES|NO		                             ##本地用户登陆限制
write_enable=YES|NO		                             ##本地用户写权限限制

local_root=/directory                                ## 修改本地用户家目录位置
local_umask=xxx                                      ## 本地用户上传文件权限

chroot_local_user=YES                                ## 限制本地用户浏览,锁定在自己家目录中
chmod u-w /home/*
#####设定基本等同于上面匿名用户使用设定,就不做过多介绍#####

用户黑白名单设定

  • ftpusers

    /etc/vsftpd/ftpusers            注意             ## ftpusers不受任何配置影响,始终有效的黑名单
    

    在这里插入图片描述

  • user_list 临时黑名单

    #####/etc/vsftpd/vsftpd.conf配置文件中#####
    #当且仅当userlist_enable=YES时 , userlist_deny项才生效
    
    userlist_enable=YES , userlist_deny=YES时 , user_list是黑名单,所有出现的用户拒绝登入
    userlist_enable=YES , userlist_deny=NO时 , user_list是白名单,仅出现的用户允许登入,其他都拒绝登入
    

猜你喜欢

转载自blog.csdn.net/qq_35197351/article/details/83505686