• ubuntu 16 阿里云 vsftpd


    1.安装 

    apt-get install vsftpd

    2.配置 conf

      vim /etc/vsftpd.conf

      

    --禁止匿名用户
    sed -i "s/anonymous_enable=YES/anonymous_enable=NO/g" '/etc/vsftpd/vsftpd.conf'

    是否允许匿名上传文件
    sed -i "s/#anon_upload_enable=YES/anon_upload_enable=NO/g" '/etc/vsftpd/vsftpd.conf'

    是否允许匿名用户有创建目录的权利
    sed -i "s/#anon_mkdir_write_enable=YES/anon_mkdir_write_enable=YES/g" '/etc/vsftpd/vsftpd.conf'

    是否修改匿名用户所上传文件的所有权
    sed -i "s/#chown_uploads=YES/chown_uploads=NO/g" '/etc/vsftpd/vsftpd.conf'
    是否允许运行特殊的ftp命令
    sed -i "s/#async_abor_enable=YES/async_abor_enable=YES/g" '/etc/vsftpd/vsftpd.conf'
    sed -i "s/#ascii_upload_enable=YES/ascii_upload_enable=YES/g" '/etc/vsftpd/vsftpd.conf'
    sed -i "s/#ascii_download_enable=YES/ascii_download_enable=YES/g" '/etc/vsftpd/vsftpd.conf'

    空白行新加
    listen_port=2103
    chroot_local_user=YES
    allow_writeable_chroot=YES
    idle_session_timeout=300
    data_connection_timeout=1
    guest_enable=YES

    guest_username=vsftpd
    user_config_dir=/etc/vsftpd/vconf
    virtual_use_local_privs=YES
    pasv_enable=YES
    pasv_min_port=10060
    pasv_max_port=10090
    accept_timeout=5
    connect_timeout=1

    3.虚拟用户名单

    apt install db-util  如果已有可省略

    touch /etc/vsftpd/virtusers
    编辑虚拟用户名单文件:(第一行账号,第二行密码,注意:不能使用root做用户名,系统保留)
    vi /etc/vsftpd/virtusers

    db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
    chmod 600 /etc/vsftpd/virtusers.db #设定PAM验证文件,并指定对虚拟用户数据库文件进行读取

    ================PAM=================

    在/etc/pam.d/vsftpd的文件头部加入以下信息(在后面加入无效)
    修改前先备份 cp /etc/pam.d/vsftpd /etc/pam.d/vsftpdbak
    vi /etc/pam.d/vsftpd
    auth sufficient /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd/virtusers
    account sufficient /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd/virtusers
    注意 pam_userdb.so 不同的系统位置可能不同

    4.建立用户

    建系统用户vsftpd,用户目录为/home/wwwroot, 用户登录终端设为/bin/false(即使之不能登录系统)
    useradd vsftpd -d /home/wwwroot -s /bin/false
    chown vsftpd:vsftpd /home/wwwroot -R

    5.建立虚拟用户个人Vsftp的配置文件

    mkdir /etc/vsftpd/vconf
    cd /etc/vsftpd/vconf

    touch user1
    vi user1#编辑用户web1配置文件,其他的跟这个配置文件类似
    local_root=/home/wwwroot/web1/http/
    write_enable=YES
    anon_world_readable_only=NO
    anon_upload_enable=YES
    anon_mkdir_write_enable=YES
    anon_other_write_enable=YES

    更改目录所属

    chown vsftpd:vsftpd /home/wwwroot/web1/http -R

    6.新增用户的情况

      6.1增加虚拟用户及密码

        vi /etc/vsftpd/virtusers

        db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db

      6.2用户的配置文件

        cp /etc/vsftpd/vconf/web1 /etc/vsftpd/vconf/web2

        vim  /etc/vsftpd/vconf/web2  修改主目录及权限

      6.3 建立 对应目录并改变所有者为vsftpd

        mkdir /data1/wwwroot/2007/aaa

        chown vsftpd:vsftpd /data1/wwwroot/2007/aaa -R

      6.4 service vsftpd restart 重启

  • 相关阅读:
    C#2008与.NET 3.5 高级程序设计读书笔记(31) 构建ASP.NET网页
    从零开始学习jQuery (二) 万能的选择器
    C#2008与.NET 3.5 高级程序设计读书笔记(32) ASP.NET Web控件、主题和母版页
    从零开始学习jQuery (六) jQuery中的Ajax
    从零开始学习jQuery (五) 事件与事件对象
    从零开始学习jQuery(剧场版) 你必须知道的javascript
    从零开始学习jQuery (一) 开天辟地入门篇
    从零开始学习jQuery (三) 管理jQuery包装集
    DateTime 中的 ToString 格式化输出
    IHttpHandler中的IsReusable属性
  • 原文地址:https://www.cnblogs.com/tttlan/p/6425052.html
Copyright © 2020-2023  润新知