linux下FTP服务搭建与管理

本文详细介绍了在Red Hat Enterprise Linux 7(RHEL7)环境下部署FTP服务的过程,包括安装与配置vsftpd,调整SELinux设置,开启防火墙服务,以及如何设置匿名和本地用户访问权限,实现FTP服务的全面管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. ftp的定义
    ftp:// ##文件传输协议
  2. ftp协议提供的软件
    在rhel7中:
    vsftpd
  3. 安装并开启vsftpd:
    yum install vsftpd -y
    ###安装vsftpd###
    systemctl start vsftpd
    ###启动vsftpd###
  4. 部署FTP服务:
    vim /etc/sysconfig/selinux
    将原来的enforcing改为disabled
    在这里插入图片描述
    getenforce ###查看seLinux状态###

firewall-cmd --permanent --add-service=ftp ##防火墙开启ftp服务
firewall-cmd --reload
或者
firewall-config
firewall-cmd --list-all
在这里插入图片描述
在另一台主机上安装lftp
在这里插入图片描述
与另一台成功连接

  1. ftp服务的基本信息:
    软件安装包: vsftpd
    默认发布目录: /var/ftp
    协议接口: 21/tcp
    服务配置文件:/etc/vsftpd/vsftpd.conf
    报错id的解析:
    500 ##文件系统权限过大
    530 ##用户认证失败
    550 ##服务本身功能未开放
    553 ##本地文件系统权限过小

  2. 匿名用户的设定:
    vim /etc/vsftpd/vsftpd.conf
    ###服务的配置文件###
    anonymous_enable=YES|NO
    ###匿名用户是否可以登陆###
    在这里插入图片描述
    在这里插入图片描述

  3. 匿名用户上传:
    vim /etc/vsftpd/vsftpd.conf
    write_enable=YES|NO
    ###ftp是否对登陆用户可写###
    anon_upload_enable=YES
    ###开启匿名用户上传的服务###
    在这里插入图片描述

  4. 匿名用户的管理:
    anon_root=/direcotry
    ###目录必须存在###
    anon_umask=xxx
    ###修改用户文件权限###
    anon_mkdir_write_enable=YES
    在这里插入图片描述
    在这里插入图片描述
    anon_world_readable_only=NO
    ###匿名用户下载###
    anon_other_write_enable=YES
    ###匿名用户删除###

  5. ** 匿名用户身份的修改:**
    hown_uploads=YES
    ###开启对应服务###
    chown_username=bai
    ###指定用户,前提用户必须存在###
    在这里插入图片描述
    在这里插入图片描述

  6. 匿名用户最大上传速率:
    anon_max_rate=102400
    在这里插入图片描述

  7. 最大链接数:
    max_clients=2
    在这里插入图片描述

  8. 本地用户家目录的修改:
    local_root=/directory

  9. 本地用户上传文件权限:
    local_umask=xxx

  10. 限制本地用户浏览/目录:
    限制用户被锁定到自己的家目录中
    chroot_local_user=YES
    chmod u-w /home/*
    在这里插入图片描述

  11. 用户黑名单建立:
    chroot_local_user=NO
    chroot_list_enable=YES
    chroot_list_file=/etc/vsftpd/chroot_list
    ###在名单中的不可以访问其他目录###
    vim /etc/vsftpd/chroot_list 编辑这个文件,这里把student设为黑名单
    在这里插入图片描述

  12. 用户白名单建立:
    chroot_local_user=YES
    chroot_list_enable=YES
    chroot_list_file=/etc/vsftpd/chroot_list
    ###在名单中的可以访问其他目录###

  13. 限制本地用户登陆:
    vim /etc/vsftpd/ftpusers
    ###此文件是限制本地用户登陆的永久黑名单,凡是在此名单中的用户都无法登陆###
    vim /etc/vsftpd/user_list
    ###此文件用来设置临时黑名单###
    vim /etc/vsftpd/vsftpd.conf
    ###更改以下设置临时黑名单可以改变为白名单###
    userlist_deny=NO
    ###将此行参数改为NO,前面设置为临时黑名单的用户有会变成白名单###
    vim /etc/vsftpd/user_list
    在这里插入图片描述

  14. ftp虚拟用户的登陆:
    在这里插入图片描述
    vim /etc/pam.d/bai
    ###文件名称任意,设定用户的认证###
    account required pam_userdb.so db=/etc/vsftpd/baibai
    ###与前面文件名称设定保持一致###
    auth required pam_userdb.so db=/etc/vsftpd/baibai
    ###编写配置文件###
    vim /etc/vsftpd/vsftpd.conf
    pam_service_name=bai
    ###更改认证方式###
    guest_enable=YES
    ###打开虚拟用户功能###
    guest_username=ftp
    ###指定用户登陆身份###
    在这里插入图片描述

  15. 指定虚拟用户登陆家目录:
    mkdir -p /var/ftpuser/bobo{1…3}
    touch /var/ftpuser/bobo1/file1
    touch /var/ftpuser/bobo2/file2
    touch /var/ftpuser/bobo3/file3
    ##家目录名须和虚拟账户名相同
    vim /etc/vsftpd/vsftpd.conf
    ##更改配置文件
    local_root=/var/ftpuserdir/$ USER
    ###设置用户进入时的家目录为/var/ftpuserdir/$ USER, $ USER表示当前用户的名字###
    user_sub_token=$ USER
    ###设置该配置文件识别$ USER符号时使用shell里的 $ USER###
    在这里插入图片描述
    在这里插入图片描述

  16. 虚拟帐号的配置独立:
    mkdir -p /etc/vsftpd/userconf
    vim /etc/vsftpd/vsftpd.conf
    写入user_config_dir=/etc/vsftpd/user_conf
    ###设置虚拟用户独立配置路径###

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值