• vsftpd 安装及使用虚拟用户配置


    1. 安装vsftpd ,启动,自启动

    yum install -y vsftpd
    systemctl start vsftpd
    systemctl enable vsftpd

    2. 配置vsftpd

    2.1 创建虚拟用户

    useradd vsftp -M -s /sbin/nologin
    useradd vfuser -d /var/ftproot -s /bin/nologin # 创建ftp服务用户,创建系统用户关联虚拟用户

    2.2 修改vsftpd配置文件

    cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
    # 备份原配置文件
    
    vim /etc/vsftpd/vsftpd.conf
    anonymous_enable=NO
    # 匿名用户不可访问
    local_enable=YES
    # 本地用户可以访问
    local_umask=022
    # 文件上传后默认权限掩码
    dirmessage_enable=YES
    # 开启目录标语功能
    xferlog_enable=YES
    # 开启日志
    connect_from_port_20=NO
    # 关闭默认数据上传端口,之后会设置为被动模式启用随机端口
    pasv_enable=YES
    # 开启被动模式,会开启随机端口用于数据传输
    pasv_min_port=30000
    pasv_max_port=35000
    # 被动模式随机端口范围
    xferlog_file=/var/log/xferlog
    # #设定Vsftpd的服务日志保存路径。注意,该文件默认不存在。必须要手动touch出来,并且由于这里更改了Vsftpd的服务宿主用户为手动建立的Vsftpd。必须注意给与该用户对日志的写入权限,否则服务将启动失败
    xferlog_std_format=YES
    #设定日志使用标准的记录格式。
    idle_session_timeout=600
    
    chroot_local_user=YES
    # 限制只能用使用主目录
    chroot_list_enable=NO
    # 是否启动限制用户的名单 YES为启用
    chroot_list_file=/var/ftproot
    # 指定主目录位置
    listen=NO
    listen_ipv6=YES
    pam_service_name=vsftpd.vu
    设定PAM服务下Vsftpd的验证配置文件名。因此,PAM验证将参考/etc/pam.d/下的vsftpd.vu文件配置
    userlist_enable=YES
    # userlist_file中的用户将不得使用FTP
    tcp_wrappers=YES
    write_enable=YES
    # 开启写权限
    download_enable=YES
    # 开启下载权限
    guest_enable=YES
    # 开启虚拟用户模式
    guest_username=vfuser
    # 指定虚拟用户
    user_config_dir=/etc/vsftpd/vfusers_dir
    # 虚拟用户配置目录,该目录下的文件为单个用户的配置    

    2.3 创建日志文件并赋予ftp用户权限

    touch /var/log/vsftpd.log
    chown vsftpd.vsftpd /var/log/vsftpd.log

    2.4 虚拟用户配置

    mkdir /etc/vsftpd/vfusers_dir -p
    # 创建虚拟用户配置目录
    touch /etc/vsftpd/vfuser_list
    # 创建虚拟用户账户密码文件,其中包含所有虚拟用户的账户密码,奇数行为账户,偶数为密码
    
    yum -y install db4-utils
    #安装pam,用户生成虚拟用户数据文件
    db_load -T -t hash -f vfuser_list vfuser_list.db
    # 生成数据文件
    # -T表示生成数据库文件
    # -t表示使用hash算法(防止其他人看到数据库文件内容)
    # -f指定文件
    
    cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.vu
    # 备份pam文件
    
    vim /etc/pam.d/vsftpd.vu
    #%PAM-1.0
    auth       required     pam_userdb.so   db=/etc/vsftpd/vfuser_list
    account    required     pam_userdb.so   db=/etc/vsftpd/vfuser_list
    # 文件内容如上即可
    
    vim /etc/vsftpd/vfusers_dir/ll
    local_root=/var/ftproot/
    write_enable=YES
    anon_upload_enable=YES
    anon_mkdir_write_enable=YES
    allow_writeable_chroot=YES
    
    # 指定虚拟用户目录
    # 拥有写权限
    # 允许上传文件
    # 允许具有创建目录的虚入权限
    # 意味着本地用户将进入 chroot 环境,当登录以后默认进入家目录home目录

    3. 重启vsftpd服务

    systemctl restart vsftpd.service
  • 相关阅读:
    连续型随机变量
    离散型随机变量
    vue1.0生命周期
    vue2.0生命周期函数
    vue2.0 vue.set()
    vue2.0 vue.extend()的拓展
    vue2.0 自定义指令详解
    vue2.0 v-model指令
    vue2.0排序应该注意的问题
    vue2.0版本指令v-if与v-show的区别
  • 原文地址:https://www.cnblogs.com/yunweixiaoxuesheng/p/8676368.html
Copyright © 2020-2023  润新知