Akses non-chroot
Jika Anda tidak memiliki pengaturan server FTP, dan Anda memercayai pengguna yang akan masuk, untuk tidak terlalu banyak melihat-lihat server Anda, saya akan cenderung memberi mereka akun ke SFTP ke dalam sistem sebagai gantinya.
CentOS wiki memelihara howto sederhana berjudul: SFTP setup sederhana yang membuat ini sangat bebas rasa sakit.
Saya mengatakan itu bebas rasa sakit karena Anda benar-benar hanya perlu membuat akun dan memastikan bahwa firewall memungkinkan lalu lintas SSH, pastikan SSH layanan sedang berjalan, dan Anda sudah cukup banyak selesai.
Jika sshd
belum berjalan:
$ /etc/init.d/sshd start
Untuk menambahkan pengguna:
$ sudo useradd userX
$ sudo passwd userX
... set the password ...
Setelah selesai dengan akun:
$ sudo userdel -r userX
Akses chroot
Jika di sisi lain Anda ingin membatasi pengguna ini ke direktori yang ditentukan, server SFTP yang disertakan dengan SSH (openssh) menyediakan konfigurasi yang membuatnya mudah untuk diaktifkan juga. Ini sedikit lebih banyak pekerjaan tetapi tidak terlalu banyak. Langkah-langkahnya dibahas di sini dalam tutorial berjudul: Cara Mengatur Chroot SFTP di Linux (Izinkan Hanya SFTP, bukan SSH) .
Buat perubahan ini pada /etc/ssh/sshd_config
file Anda .
Subsystem sftp internal-sftp
## You want to put only certain users (i.e users who belongs to sftpusers group) in the chroot jail environment. Add the following lines at the end of /etc/ssh/sshd_config
Match Group sftpusers
ChrootDirectory /sftp/%u
ForceCommand internal-sftp
Sekarang Anda harus membuat pohon direktori chroot di mana pengguna ini akan terkunci.
$ sudo mkdir -p /sftp/userX/{incoming,outgoing}
$ sudo chown guestuser:sftpusers /sftp/guestuser/{incoming,outgoing}
Izin harus terlihat seperti berikut:
$ ls -ld /sftp/guestuser/{incoming,outgoing}
drwxr-xr-x 2 guestuser sftpusers 4096 Dec 28 23:49 /sftp/guestuser/incoming
drwxr-xr-x 2 guestuser sftpusers 4096 Dec 28 23:49 /sftp/guestuser/outgoing
Direktori tingkat atas seperti ini:
$ ls -ld /sftp /sftp/guestuser
drwxr-xr-x 3 root root 4096 Dec 28 23:49 /sftp
drwxr-xr-x 3 root root 4096 Dec 28 23:49 /sftp/guestuser
Jangan lupa me-restart sshd
server:
$ sudo service sshd restart
Sekarang buat akun userX:
$ sudo useradd -g sftpusers -d /incoming -s /sbin/nologin userX
$ sudo passwd userX
... set password ...
Anda dapat memeriksa apakah akun itu dibuat dengan benar:
$ grep userX /etc/passwd
userX:x:500:500::/incoming:/sbin/nologin
Setelah selesai dengan akun, hapus dengan cara yang sama di atas:
$ sudo userdel -r userX
... dan jangan lupa untuk menghapus perubahan file konfigurasi yang kami buat di atas, lalu mulai kembali sshd
untuk membuatnya aktif sekali lagi.