zoukankan      html  css  js  c++  java
  • FTP虚拟用户

    虚拟用户
    虚拟用户认证所使用的账号和密码都不是服务器中真实存在的,其安全性比本地用户更好,即使被抓包获取到账号密码都无法直接登录到服务器。配置虚拟用户的流程如下:
    (1)建立虚拟用户数据库文件
    (2)创建根目录及虚拟用户映射的系统用户
    (3)建立支持虚拟用户的PAM认证文件
    (4)在vsftpd.conf中添加支持配置
    (5)为虚拟用户设置不同的权限

    (1)建立虚拟用户数据库文件

    [root@ftp ~]# vim /etc/vsftpd/vuser //格式:一行账号名,一行密码
    test1 
    123456
    test2
    12345678
    [root@ftp ~]# db_load -T -t hash -f /etc/vsftpd/vuser /etc/vsftpd/vuser.db //使用db_load命令生成数据库文件
    
    [root@ftp ~]# chmod 600 /etc/vsftpd/vuser.db
    [root@ftp ~]# rm /etc/vsftpd/vuser


    (2)创建根目录及虚拟用户映射的系统用户

    [root@server ~]# useradd -d /var/vftp -s /sbin/nologin vftp
    [root@server ~]# chmod -R 755 /var/vftp


    (3)建立支持虚拟用户的PAM认证文件

    [root@server ~]#vim /etc/pam.d/vsftpd.virtual
    auth required pam_userdb.so db=/etc/vsftpd/vuser //检查账号及密码,数据库不需要写后缀.db
    account required pam_userdb.so db=/etc/vsftpd/vuser //检查用户是否在有效期内


    (4)在vsftpd.conf中添加支持配置

    [root@server ~]# vim /etc/vsftpd/vsftpd.conf
    anonymous_enable=NO //禁止匿名登录
    local_enable=YES //允许本地用户模式,由于映射的系统用户为本地用户,因此此项必须开启
    
    guest_enable=YES //开启虚拟用户模式
    guest_username=vftp //指定虚拟用户账号映射到本地账号vftp
    
    
    chroot_local_user=YES //禁锢用户在其家目录
    allow_writeable_chroot=YES //允许禁锢的FTP根目录可写
    
    pam_service_name=vsftpd.virtual //指定pam文件
    userlist_enable=YES
    userlist_deny=YES
    
    user_config_dir=/etc/vsftpd/vuser_profile //指定虚拟用户的权限配置目录
    

      

    (5)为虚拟用户设置不同的权限

    [root@server ~]# mkdir /etc/vsftpd/vuser_profile
    [root@server ~]# vim /etc/vsftpd/vuser_profile/test1
    anon_upload_enable=YES
    anon_mkdir_write_enable=YES
    anon_other_write_enable=YES
    anon_umask=022
    
    [root@server ~]# vim /etc/vsftpd/vuser_profile/test2
    local_root=/vftp/test2
    anon_umask=022 
    anon_mkdir_write_enable=YES
    anon_upload_enable=YES
    anon_other_write_enable=YES
    [root@ftp ~]# mkdir -pv /vftp/test2
    [root@ftp ~]# chown vftp:vftp /vftp/test2
    [root@ftp ~]# systemctl restart vsftpd
    

      


    (6)测试
    [root@ftp ~]# ftp 静态IP

    配置若有遗漏或错误,请评论留言。
  • 相关阅读:
    IP分片与TCP分片的考虑
    snort-2.9.16在ubuntu16.04环境下的安装,配置与运行
    snort 程序流程图
    宿主机、容器、真实时间不一致问题
    ffi动态链接库的使用
    docker容器中nginx日志的分割
    dockerFile指令详解
    关于如何查看多网卡物理机中网卡序号与物理网卡的对应该关系
    Curl相关参数意义及使用方式
    docker 基础入门
  • 原文地址:https://www.cnblogs.com/BrokenEaves/p/14468927.html
Copyright © 2011-2022 走看看