Pada Debian, yang menjadi dasar Ubuntu, pengguna www-data memiliki / bin / sh sebagai shell default. Untuk mengaktifkan SFTP, Anda dapat membuat /var/www/.ssh/authorized_keys
dengan kunci publik Anda di dalamnya. Izin pada /var/www/.ssh
harus 700, dan izin pada file Authorized_key harus 600. Anda ingin menambahkan berikut ini ke konfigurasi http Anda untuk melarang akses ke direktori ini.
<Directory /var/www/.ssh>
Order Deny,Allow
Deny from all
</Directory>
Anda dapat memverifikasi pengaturan pengguna data-www (dir home, shell, dll) menggunakan getent passwd www-data
.
Pastikan sshd_config Anda telah Subsystem sftp /usr/lib/openssh/sftp-server
, dan Anda mungkin ingin mengaturnya PasswordAuthentication no
juga.
Masuk sebagai www-data untuk scp adalah buang-buang waktu.
Untuk perintah scp mengapa Anda tidak menggunakannya
ssh2_scp_send
untuk mentransfer file, itu sederhana dan Anda tidak perlu menambahkan-ssh atau membuat kunci publik untuk data-pengguna www.sebagai contoh
ssh2_scp_send($connection, '/directory/filename', '/remotedirectory/filename', 0644);
harus bekerja
sumber