Amazon web services EC2 FTP用户目录更改

Amazon web services EC2 FTP用户目录更改,amazon-web-services,amazon-ec2,chroot,Amazon Web Services,Amazon Ec2,Chroot,我们的EC2实例设置有一个ftp用户,该用户通过vsftpd程序成功地设置了原始主目录\home\user\,我按照此说明操作,并将用户的shell设置为/bin/false 我想做的是使ftp用户登录仅可访问特定目录,即html目录中的文件夹-\var\www\html\website.com\userfolder 我所做的: 将user添加到组ftpgroup 用户对新目录的授权访问和所有权:ftponly 在/etc/passwd 在新目录中添加了带有用户密钥的.ssh/authoriz

我们的EC2实例设置有一个ftp用户,该用户通过
vsftpd
程序成功地设置了原始主目录
\home\user\
,我按照此说明操作,并将用户的shell设置为
/bin/false

我想做的是使ftp用户登录仅可访问特定目录,即html目录中的文件夹-
\var\www\html\website.com\userfolder

我所做的:

  • user
    添加到组
    ftpgroup
  • 用户对新目录的授权访问和所有权:ftponly
  • /etc/passwd
  • 在新目录中添加了带有用户密钥的
    .ssh/authorized_keys
  • /etc/ssh/sshd\u config
    中的ChrootDirectory更改为新目录
  • 将目录上的权限更改为
    chmod-R 775用户:ftpgroup
  • 装载
    \var\www\html\website.com\userfolder
在这些更改之前,我能够访问FTP,现在尝试访问时,我从Filezilla客户端收到以下错误:

错误:已断开连接:没有支持的身份验证方法可用 (已发送服务器:公钥)。。。状态:连接尝试失败,错误为 “ETIMEDOUT-连接尝试超时”

由于它以前是工作的,我认为它可能与权限有关,我只是不确定还有什么地方需要更改。 谢谢你的帮助。

这对我很有用

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


这是一个简单的黑客。请告诉我这是否解决了您的问题。

我尝试使用符号链接,但由于它是chrooted用户,因此无法访问文件。服务器上的管理员/root所有者必须进行链接。如果你是管理员,你可以使用
sudo
来完成这项工作。此时,我认为问题可能在于某些配置,因为符号链接通常不能很好地与chrooted用户配合使用。我已经将所需的目录挂载到用户的目录中,只是在配置chrooted目录后,通过新用户上的sftp访问文件时出现问题。