• ubuntu server vsftpd 虚拟用户及目录


    ubuntu server vsftpd 虚拟用户及目录

    一:需求场景;

         在ubuntu server上开设一个虚拟网站,在网站目录建立一个ftp目录,允许用户通过ftp上传网站文件到网站目录;

         同时,该ftp用户,只能用于ftp操作,不能用于登陆ubuntu server

    二:配置

    1:先建立虚拟网站;

       同样先创建apache2 网站配置文件,然后启用站点;

       比如这里我的测试 网站 :www.cocoa.com 内网访问 站点;

       网站目录在:/var/www/cocoa/web

        在该目录下,建立 一个 index.html ;

      修改:hosts文件,添加记录:指定ip 对应域名 www.cocoa.com

      重新启动apache2服务;

     浏览器 输入 www.cocoa.com 测试虚拟网站是否成功;

    2: 配置ftp用户;

       因为由于vsftpd的安全策略,指定ftp用户的根目录,就是该ftp用户的home目录,但是此home目录,作为根目录,不允许修改,上传成功操作;

       所以基于上面的网站 cocoa/web 我的思路是:建立ftp用户指定home目录为 /var/www/cocoa 并,把其子目录,web作为web网页文件目录;这样子目录ftp用户就有了读写操作;当然,前提该文件的权限可写;

      配置流程;

    sudo useradd cocoa #添加名为cocoa的用户
    sudo usermod -d /var/www/cocoa cocoa #指定cocoa用户的home目录cocoa
    sudo vim /etc/shells  #打开登陆shells文件
    
    #添加一条记录 
    /usr/sbin/nologin
    
    sudo usermod -s /usr/sbin/nologin cocoa #指定cocoa用户的登陆shells为nologin 就是只能用于ftp连接,不能用于登陆服务器;
    
    sudo chown -R cocoa:cocoa /var/www/cocoa #修改cocoa目录的所有者和组为cocoa 
    
    sudo chmod 555 /var/www/cocoa #个性cocoa目录的权限为可读可执行,不能设置可写,因为cocoa目录,作为ftp根目录,不允许有写的权限;
    
    sudo chmod 755 /var/www/cocoa/web 修改其ftp子目录,并设置其为对自己可写可读可执行,这样用户就可以通过ftp上传网站文件到web目录里面了;
     

     上面少了一步:就是设置用户的密码 passwd cocoa 设置密码; 

    然后;打开终端;

    ftp 连接服务器,输入用户名和密码;即可;自行测试上传,下载,创建目录,删除目录,删除文件操作;

    三:通过ftp上传一个写的网页文件,打开浏览器测试即可;

     如果,想让用户ftp登陆之后,home作为根目录,就是别的目录访问不了;只需打开vsftpd配置文件里面的

    chroot_local_user=YES

    最后重新启动,vsftpd服务,测试即可

    在ftp登陆成功之后

    pwd 会出现;

     

  • 相关阅读:
    Windwos堆管理体系以及溢出利用
    Python利用ctypes实现C库函数调用
    Windows异常分发
    初探Windows用户态调试机制
    HTTP协议
    《格蠹汇编》调试笔记
    IDT系统中断描述表以及绕过Xurtr检测的HOOK姿势
    C++ 各种构造函数
    PsSetCreateProcessNotifyRoutineEx 创建回调函数
    导出函数与未导出函数
  • 原文地址:https://www.cnblogs.com/cocoajin/p/3768634.html
Copyright © 2020-2023  润新知