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

    临时需要搭建一个ftp,突然忘记怎么搞了,重新整一下,以后备用

    vsftd及虚拟用户

    1.安装vsftpd

    yum install vsftpd

    2.添加用户(用于虚拟用户映射)

    adduser seedftp -s /sbin/nologin

    3.修改配置文件

    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    xferlog_std_format=YES
    chroot_list_enable=YES
    chroot_list_file=/etc/vsftpd/chroot_list
    listen=YES

    userlist_enable=YES
    tcp_wrappers=YES

    pasv_enable=YES
    pasv_min_port=30000
    pasv_max_port=30090

    guest_enable=YES #启用虚拟用户
    guest_username=seedftp #虚拟用户映射的真实用户
    pam_service_name=vsftpd.vu #指定PAM文件路径
    user_config_dir=/etc/vsftpd/user_conf #配置虚拟用户配置文件路径

    4.关于主动及被动

    开启被动模式:

    connect_from_port_20=NO(默认为YES) #设置是否允许主动模式
    pasv_enable=YES(默认为YES) #设置是否允许被动模式
    pasv_min_port=30000(default:0(use any port))
    pasv_max_port=40000(default:0(use any port))

    开启主动模式的配置:

    connect_from_port_20=YES
    pasv_enable=NO

    5.修改PAM

    vim /etc/pam.d/vsftpd.vu
    auth required pam_userdb.so db=/etc/vsftpd/vsftpd_login
    account required pam_userdb.so db=/etc/vsftpd/vsftpd_login

    6.配置虚拟用户

    vim /tmp/caiuser
    caiuser
    xmks89232

    7.建立数据文件

    db_load -T -t hash -f /tmp/login.txt /etc/vsftpd/vsftpd_login.db

    8.创建用户宿主目录

    chmod 700 /home/seedftp/
    mkdir ftp

    创建初始目录:

    cd ftp/
    mkdir cklpub
    chown -R seedftp.seedftp cklpub
    chmod 700 cklpub #安全设置必须,这个目录用户组和其它没有写权限

    9.配置用户配置文件

    vim user_conf/nili
    local_root=/data/release_pub/NILI
    anon_world_readable_only=NO
    write_enable=YES
    anon_mkdir_write_enable=YES
    anon_upload_enable=YES
    anon_other_write_enable=YES
    cmds_denied=DELE,RMD #禁止删除和修改

    10.重启服务器

    systemctl restart vsftpd.service

    10.备注

    227 Entering Passive Mode (11,7,14,177,207,77).

    ftp: connect: Connection timed out

    如果报错,一定要查看pasv模式端口是否打开

    iptables -I INPUT -m state –state NEW -p tcp -m tcp –dport 30000:31000 –syn -j ACCEPT

    端口范围不能写错

    pasv_min_port=30000
    pasv_max_port=30090
    vsftpd:500 OOPS: vsftpd: refusing to run with writable root inside chroot ()错误的解决方法
    从2.3.5之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报该错误。
    要修复这个错误,可以用命令chmod a-w /home/user去除用户主目录的写权限,注意把目录替换成你自己的。或者你可以在vsftpd的配置文件中增加下列两项中的一项:

    allow_writeable_chroot=YES

  • 相关阅读:
    [转]Delphi中进行延时的4种方法
    [转]delphi 删除动态数组的指定元素
    vue-transition-fade
    移动端list布局,左边固定,右边自适应
    移动端弹窗
    多行文字超出省略显示
    jsonp
    barba 页面渲染
    barba.js 优化页面跳转用户体验
    页面返回无刷新
  • 原文地址:https://www.cnblogs.com/wuhg/p/10004023.html
Copyright © 2011-2022 走看看