文件传输协议ftp服务

1.ftp基本信息

  • ftp协议提供的软件(在rhel7中):vsftp 非常安全的文件传输协议
  • 软件安装包:vaftpd
  • 匿名用户默认发布目录: /var/ftp
  • 本地用户默认发布目录:/home/user 本地用户的家目录
  • 协议接口:21/tcp接口
  • 服务配置文件:/etc/vsftpd/vsftpd.conf
  • lftp与vsftp不同;lftp是连接ftp的一个软件,类似于浏览器
  • 服务操作报错id解析:
错误解析
500文件权限过大
530用户登录认证失败
550服务本身功能未开启
553本地文件权限过小

2.部署ftp服务

1)yum install vsftpd -y 在yum源配置好的环境下 ,下载vsftpd
systemctl start vsftpd 开启vsftpd服务
systemctl enable vsftpd 设置vsftpd服务开机自动启动

2)firewall-cmd --permanent --add-service=ftp 在防火墙中添加防ftp服务
firewall-cmd --reload    防火墙重新加载
firewall-cmd --list-all    查看防火墙信息

3)vim /etc/sysconfig/selinux 修改加强型防火墙状态
SELINUX=disabled      修改为无效disabled模式
reboot       修改selinux后需要重启系统才能生效
getenforce     查看selinux状态
在这里插入图片描述

3.ftp服务权限

(1)匿名用户权限

  • 匿名用户的登录:anonymous_enable=YES|NO (YES:是 NO:否)
    在这里插入图片描述
    在这里插入图片描述

  • 匿名用户登录身份的修改 :(效果: 上传文件后改变了文件所有者
    chown_uploads=YES
    chown_username=xxx
    在这里插入图片描述

  • 匿名用户的上传:write_enable=YES|NO
    anon_upload_enable=YES|NO

    chgrp ftp /var/ftp/pub
    chmod 775 /var/ftp/pub
    在这里插入图片描述

  • 匿名用户上传文件权限的修改:anon_umask=xxx
    在这里插入图片描述
    在这里插入图片描述

  • 匿名用户删除与重命名文件:anon_other_write_enable=YES | NO
    在这里插入图片描述
    在这里插入图片描述

  • 匿名用户建立目录:anon_mkdir_write_enable=YES|NO
    在这里插入图片描述

  • 匿名用户下载:anon_world_readable_only=NO|YES(NO:是 YES:否 )

    下载命令含义
    mirror目录的下载
    get文件的单个下载
    get group下载多个文件
    get *下载所有文件
    mget *下载所有目录

    在这里插入图片描述

  • 匿名用户家目录的修改:anon_root=/dir
    在这里插入图片描述
    在这里插入图片描述

(2)本地用户权限

  • 本地用户的登录:local_enable=YES|NO
    在这里插入图片描述
    在这里插入图片描述

  • 本地用户是否可写(在ftp服务下是否能建立删除文件或目录):write_enable=YES|NO
    在这里插入图片描述
    在这里插入图片描述

  • 本地用户家目录的修改:local_root=/dir
    在这里插入图片描述
    在这里插入图片描述

  • 本地用户上传文件权限:local_umask=xxx
    在这里插入图片描述
    在这里插入图片描述

  • 本地用户浏览根目录的权限:chroot_local_user=YES|NO (YES:否 NO:是)

     chmod u-w  /home/*
    

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

(3)通用权限

  • 最大上传速率: anon_max_rate=xxx 单位:字节
    上传测试: dd if=/dev/zero of=mnt/bigfile bs=1M count=1500
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 服务最大连接用户个数:max_clients=x
    在这里插入图片描述
    在这里插入图片描述

(4)黑白名单

1)浏览根目录黑白名单

  • 黑名单:
    chroot_local_user=NO
    chroot_list_enable=YES
    chroot_list_file=/etc/vsftpd/chroot_list

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 白名单:
    chroot_local_user=YES
    chroot_list_enable=YES
    chroot_list_file=/etc/vsftpd/chroot_list

    在这里插入图片描述
    在这里插入图片描述
    2)用户登录黑白名单
  • 黑名单
    永久黑名单 /etc/vsftpd/ftpusers
    在这里插入图片描述
    在这里插入图片描述
    临时黑名单 /etc/vsftpd/user_list
    在这里插入图片描述
    在这里插入图片描述
  • 白名单
    userlist_deny=NO
    /etc/vsftpd/user_list

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

(5)虚拟用户的设定及其权限

  • 虚拟用户的设定
    1)vim /etc/vaftpd/westfile 编辑虚拟用户帐号与密码 文件名任意

    user1
    12345
    user2
    12345
    user3
    12345
    在这里插入图片描述
    2)db_load -T -t hash -f /etc/vsftpd/virtuser /etc/vsftpd/virtuser.db 因为该文件内容为明文,故需对对用户文件加密
    3)vim /etc/pam.d/virtuser 编辑用户密码验证信息,文件名称任意

    account required pam_userdb.so db=/etc/vsftpd/virtuser 这里的文件需要和先前编辑用户帐号与密码的文件对应
    auth required pam_uaerdb.so db=/etc/vsftpd/virtuser
    在这里插入图片描述
    4)vim /etc/vsftpd/vsftpd.conf
    pam_service_name=virtuser 编辑vsftpd服务配置文件 此处文件需要与用户帐号密码验证信息对应
    guest_enable=YES 开启虚拟用户登录权限

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

  • 虚拟帐号身份指定
    guest-username=XXX 虚拟用户默认登录到/var/ftp 目录下 若修改此参数 ,修改后登录到指定用户的家目录
    chmod u-w /home/XXX (如果不去掉user的w权限 将会报错500 )
    在这里插入图片描述
    在这里插入图片描述

  • 虚拟帐号家目录的独立设定
    (1)vim/etc/vsftpd/vsftpd.conf
    local_root=/ftphome/$USER
    $USER表示当前用户 该权限表示虚拟用户登录的身份 指定虚拟用户家目录在/ftphome下

    user_sub_token=$USER 让配置文件识别shell中的语法
    (2)mkdir /ftphome/user1/user1dir -p 建立user1dir 的目的是稍后登录验证方便
    chgrp ftp /ftphome -R .
    chmod 775 /ftphome/*.
    在这里插入图片描述
    在这里插入图片描述

  • 虚拟帐号配置独立

    (1) vim /etc/vsftpd/vsftpd.conf
    user_config_dir=/etc/vsftpd/userconf 可以将虚拟用户的权限全部写入userconf文件中(该文件任意命名),虚拟用户在登录时,系统首先会访问该文件,再访问vsftpd.confpei配置文件
    (2)mkdir /etc/vsftp/userconf 建立独立配置目录
    vim /etc/vsftpd/userconf/user1 在虚拟用户user1的配置文件中编辑权限

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值