• linux 搭建ftp服务并设置限制访问目录


    服务器有好几个项目,新项目前端外包,因为要微信授权登陆,所以前端没有办法本地调试,必须上次ftp在我们服务器上调试代码,当然要限制ftp访问的目录,否则整个服务器项目都能看到了.

    安装vsftpd

    sudo apt install vsftpd

     RedHat系

    yum install vsftpd

    添加ftp用户

    添加ftp账户 myusername  设置限定访问目录 /home/wwwroot/webfooter/views

    useradd -d  /home/wwwroot/webfooter/views  myusername

    设置账户密码

    passwd myusername

    禁止用户telnet

    usermod -s /sbin/nologin myusername

    修改配置文件

    Debian系的配置文件在: /etc/vsftpd.conf

    RedHat系的配置文件在: /etc/vsftpd/vsftpd.conf

    修改vsftpd.conf 文件,去掉下面两行注释

    chroot_list_enable=YES         //限制访问自身目录
    chroot_list_file=/etc/vsftpd.chroot_list

    RedHat系为chroot_list_file=/etc/vsftpd/chroot_list

    如果没有vsftpd.chroot_list 自行新建, 将受限制的用户添加进去,每个用户名一行.

    然后在新增以下代码

    allow_writeable_chroot=YES

    表示给受限制的用户写入的权限,如果不添加上面代码可能会出现: 

    vsftpd:500 OOPS: vsftpd: refusing to run with writable root inside chroot ()

    重启ftp服务

    service vsftpd restart

    问题

    Filezilla提示不安全的服务器,不支持 FTP over TLS。

    解决办法: 文件-站点-加密协议改为使用普通FTP(不安全)

    目录权限

    指定的目录应该给予755或777 的权限

    连接错误 331 Please specify the password 

    出现错误的原因,是因为ubuntu启用了PAM,用vsftp时需要用到 /etc/pam.d/vsftpd 这个文件(默认源码安装的不会有这个文件),因此除了匿名用户外本地用户无法登录。所以解决的办法就是删除这个文件.

    sudo rm /etc/pam.d/vsftpd
  • 相关阅读:
    202011051 每周例行报告
    202011261 每周例行报告
    202010153 每周例行报告
    keil代码定位
    VC2008创建MFC工程遇到的问题及解决方法
    面朝大海, 春暖花
    Oracle10G数据库教程
    郁闷来了
    MPEG4与.mp4
    vs2003 使用ffmpeg,sdl时的编译问题
  • 原文地址:https://www.cnblogs.com/dcb3688/p/4610656.html
Copyright © 2020-2023  润新知