Batasi akses pengguna SFTP ke direktori yang ditentukan

10

Saya memiliki server Ubuntu 14.04 diinstal dengan ssh terbuka. Saya ingin mengonfigurasi sftp agar pelanggan hanya dapat mengunduh file. Dengan kata lain, saya meletakkan file di direktori tempat mereka dipenjara. Saya perlu memastikan mereka hanya dapat mengakses direktori dengan file mereka dan tidak ada yang lain.

Awalnya saya akan menggunakan vsftpd, tetapi seseorang mengatakan kepada saya bahwa sftp adalah pilihan yang lebih baik. Jika ada beberapa dokumentasi tentang apa yang saya butuhkan itu akan bagus.

Saya perlu bantuan dengan yang berikut:

  1. Cara mengkonfigurasi sftp
  2. Cara mengatur akun pengguna dan menggunakannya untuk sftp
  3. Cara mengatur akun ke penjara
scottsmail
sumber

Jawaban:

12

Pengaturan untuk /etc/ssh/sshd_config

Subsystem sftp internal-sftp -f AUTH -l VERBOSE
UsePAM yes
Match group sftp
  ChrootDirectory %h
  ForceCommand internal-sftp
  AllowTcpForwarding no

buat grup sftp:

groupadd sftp

Buat direktori

sudo mkdir /ftpusers
sudo mkdir /ftpusers/HomeFolder

Buat pengguna langsung dengan grup sftp baru terlampir:

sudo useradd -d /ftpusers/HomeFolder -m UserName -g sftp -s /bin/false
sudo passwd UserName

setel izin untuk digunakan dengan ssh untuk sftp:

chown root:root /ftpusers/HomeFolder
chmod 755 /ftpusers/HomeFolder

restart layanan:

service ssh restart

Catatan, folder rumah untuk pengguna sftp baru harus diberikan pemilik root.

2707974
sumber
Terima kasih balasannya!! Tidak yakin mengapa, tetapi ketika saya mencoba membuat pengguna langsung ke grup. Saya mendapatkan kesalahan berikut ... useradd: tidak dapat membuat direktori / ftpusers / HomeFolder
scottsmail
Jalankan dulu sudo mkdir /ftpusers, lalusudo mkdir /ftpusers/HomeFolder
2707974
Terima kasih. Ok, masalah selanjutnya ... Ketika saya mencoba untuk mengatur izin untuk digunakan dengan ssh untuk sftp dengan chown root: root HomeFolder saya mendapatkan chown: tidak dapat mengakses 'HomeFolder': Tidak ada file atau direktori seperti itu
scottsmail
chown root:root /ftpusers/HomeFolderdanchmod 755 /ftpusers/HomeFolder
2707974
UsePAM yesmenghancurkan segalanya untuk saya dan menyebabkan "koneksi ditolak". Tidak yakin mengapa, tetapi mengomentari garis itu membuat semuanya berjalan dengan sempurna.
pzkpfw