回答:
UbuntuのベースとなっているDebianでは、www-dataユーザーはデフォルトのシェルとして/ bin / shを持っています。SFTPを有効にするには、その中に/var/www/.ssh/authorized_keys
公開鍵を作成します。のアクセス許可は/var/www/.ssh
700であり、authorized_keysファイルのアクセス許可は600である必要があります。このディレクトリへのアクセスを禁止するには、http構成に以下を追加します。
<Directory /var/www/.ssh>
Order Deny,Allow
Deny from all
</Directory>
を使用して、www-dataのユーザー設定(ホームディレクトリ、シェルなど)を確認できますgetent passwd www-data
。
sshd_configにがSubsystem sftp /usr/lib/openssh/sftp-server
設定されていることを確認してください。おそらく設定PasswordAuthentication no
も必要でしょう。
これは一種の安全ではありません。別のユーザーを使用して中間領域にアップロードし、cron
時々ジョブを実行して、物を移動する場所に移動し、それに応じて権限を変更することをお勧めします。
本当にとしてログオンすることを主張する場合www-data
は、ssh秘密鍵を使用してそれを行う必要があります(AFAIK EC2インスタンスでは、鍵認証のみが許可されます)。またwww-data
、有効なシェル/etc/passwd
と有効なホームディレクトリがあることを確認する必要があります。
最後に、この質問のいくつかの解決策を試すこともできます。