如何将用户添加到Amazon EC2上的“/ var / www / html / adir”文件夹的SFTP访问?

这个问题与这个问题非常相关。 那里的答案是有用的,但不幸的是不完整。 如何将用户通过SFTP / FTP访问添加到Amazon EC2 Centos上的“/ var / www / html / website_abc”文件夹?

我想授权第三方访问我的Amazon EC2实例上的部分目录结构。 我按照这个教程添加了一个组和一个用户,并按照这个教程来chroot这个用户。 我不清楚如何在这两步之后继续。 以下是更详细的步骤,以及我卡住的地方。

添加组和用户

在docker:

sudo groupadd sftp sudo useradd -g sftp thirdparty sudo usermod -G sftp thirdparty sudo usermod -s /bin/false thirdparty sudo chown root:root /var/www/html/exports/thirdparty sudo chmod 0755 /var/www/html/exports/thirdparty sudo passwd thirdparty (set password eg to abcd) 

Chroot这个用户

将这些行添加到etc/ssh/sshd_config

 Subsystem sftp /usr/lib/openssh/sftp-server Match Group sftp ChrootDirectory %h AllowTcpForwarding no X11Forwarding no ForceCommand /usr/lib/openssh/sftp-server 

重新启动OpenSSH:

 /etc/init.d/ssh restart 

远程访问

从这一点来说,目前还不清楚下一步该做什么。 教程提到使用FileZilla,但不完全如此。 我尝试以下。

尝试1

 Host: 12.34.56.789 (public IP from EC2 Management Console) Username: thirdparty Password: abcd Port: --> Quickconnect Status: Connecting to 12.34.56.789:21... Error: Connection timed out after 20 seconds of inactivity Error: Could not connect to server 

尝试2

 Host: 12.34.56.789 (public IP from EC2 Management Console) Username: thirdparty Password: abcd Port: 22 --> Quickconnect 

FileZilla会警告未知的主机密钥。 我点击确定信任主机进行连接。 我没有(还)将密钥添加到caching。

 Status: Connecting to 12.34.56.789... Response: fzSftp started, protocol_version=2 Command: open "[email protected]" 22 Command: Trust new Hostkey: Once Error: Disconnected: No supported authentication methods available (server sent: publickey) Error: Could not connect to server 

任何人都可以指出我下一步该怎么做? 这是SSH相关,还是AWS特定(VPC相关)?

Amazon EC2默认情况下禁用了SSH密码身份validation,这正是您的Attempt 2案例中所说的消息。 您需要为您的用户设置使用ssh密钥的login(好),或者更新/etc/sshd_config以启用密码validation(错误)。