【问题标题】:EC2 FTP User Directory changeEC2 FTP 用户目录更改
【发布时间】:2017-03-03 16:23:26
【问题描述】:

我们的 EC2 实例设置有一个 ftp 用户,该用户通过vsftpd 程序成功设置了原始主目录\home\user\,我按照此stack overflow 上的说明进行操作,并将用户的shell 设置为@987654324 @

我要做的是让 ftp 用户登录只能访问特定目录,即 html 目录中的文件夹 - \var\www\html\website.com\userfolder

我做了什么:

  • 已将user 添加到群组ftpgroup
  • 授权用户访问和拥有新目录:ftponly
  • 更改了/etc/passwd 中的用户主目录
  • 在新目录中添加了.ssh/authorized_keys 和用户密钥
  • /etc/ssh/sshd_config 中的 ChrootDirectory 更改为新目录
  • 将目录的权限更改为chmod -R 775 user:ftpgroup
  • 安装\var\www\html\website.com\userfolder

在进行这些更改之前,我能够访问 FTP,现在在尝试访问时,我从 Filezilla 客户端收到以下错误:

错误:已断开连接:没有可用的受支持的身份验证方法 (服务器发送:publickey)...状态:连接尝试失败 "ETIMEDOUT - 连接尝试超时"

因为它以前工作,我认为它可能与权限有关,我只是不确定还有什么地方可以改变。 感谢您提供任何见解。

【问题讨论】:

    标签: amazon-web-services amazon-ec2 chroot


    【解决方案1】:

    这对我有用。

    使用 vsftpd 创建用户后,用户现在可以通过 FileZilla 访问该目录。 然后我添加了一个从home/{user} 目录到/var/www/html/{user} 目录的链接。 用户可以上传文件到主目录,可以从html目录查看。

    这是一个简单的技巧。如果这能解决您的问题,请告诉我。

    【讨论】:

    • 我尝试使用符号链接,但由于它是 chroot 用户,我无法访问这些文件。
    • 服务器上的管理员/根所有者必须进行链接。如果您是管理员,您可以使用 sudo 来完成此操作。
    • 此时我认为问题可能在于某些配置,因为符号链接通常不适用于 chroot 用户。我已经将所需的目录挂载到用户的目录中,只是在配置 chrooted 目录后通过新用户上的 sftp 访问文件时出现问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-30
    • 2021-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多