Cara Membuat Pengguna SFTP Tanpa Akses Shell di CentOS/RHEL 8

Cara Membuat Pengguna SFTP Tanpa Akses Shell di CentOS/RHEL 8

SFTP (SSH File Transfer Protocol) adalah protokol transfer file yang aman antara dua sistem. Ini menjalankan protokol SSH dan berbagi port yang sama 22. Tutorial ini akan membantu Anda membuat SFTP hanya mengakses pengguna (tanpa akses SSH) di Sistem Centos 8 dan RedHat 8. Pengguna dapat menghubungkan server dengan SFTP saja dan diizinkan untuk mengakses direktori yang ditentukan. Pengguna tidak dapat ssh ke server. Ikuti tutorial di bawah ini untuk membuat akun SFTP Only di Centos 8 dan RHEL 8.

Langkah 1 - Buat Akun

Pertama -tama, buat akun pengguna untuk akses SFTP. Untuk tutorial ini, kami membuat pengguna bernama sftpuser tanpa akses shell. Juga, atur kata sandi yang kuat untuk pengguna.

sudo adduser -shell /bin /false sftpuser sudo passwd sftpuser 
Mengubah Kata Sandi untuk Pengguna SFTPUSER. Kata Sandi Baru: Retype Kata Sandi Baru: Passwd: Semua token otentikasi berhasil diperbarui. 

Langkah 2 - Buat direktori

Sekarang, buat struktur direktori agar dapat diakses oleh pengguna SFTP. Kami hanya akan membatasi pengguna baru ke direktori ini. Jadi pengguna tidak dapat mengakses file ke direktori lain.

sudo mkdir -p/var/sftp/file 

Ubah kepemilikan direktori menjadi pengguna SFTP yang baru dibuat. Sehingga sftpuser dapat membaca dan menulis di direktori ini.

Sudo chown sftpuser: sftpuser/var/sftp/file 

Anda harus mengatur pemilik dan pemilik grup /var /sftp untuk root. Pengguna root memiliki akses baca/tulis di akses ini. Anggota grup dan akun lain hanya membaca dan menjalankan izin.

Root chown sudo: root /var /sftp sudo chmod 755 /var /sftp 

Langkah 3 - Konfigurasikan SSH untuk SFTP

Seperti yang kita ketahui, SFTP berjalan di atas protokol SSH, jadi kita perlu mengonfigurasi ini di file konfigurasi. Edit file konfigurasi ssh di editor teks.

sudo vim/etc/ssh/sshd_config 

Dan tambahkan pengaturan berikut di akhir file.

Cocok dengan pengguna sftpuser forcecomand internal-sftp kata sandi othentication ya chrootdirectory /var /sftp permitunnel no allowagentinging no no allowtcpforwarding no x11forwarding no 

Simpan konfigurasi dan restart layanan SSH untuk menerapkan perubahan.

Sudo Systemctl Restart SSHD.melayani 

Semua selesai, sistem Anda siap menerima koneksi SFTP Only untuk akun yang dibuat. Mari uji koneksi SFTP dan juga pastikan bahwa pengguna tidak diizinkan untuk SSH.

Langkah 4 - Uji Koneksi SFTP

Saya menggunakan filezilla untuk koneksi ke instance sftp dari sistem windows saya. Pengguna Linux Desktop juga dapat menggunakan FileZilla untuk koneksi.

Untuk server Linux, pengguna dapat menggunakan utilitas baris perintah SFTP untuk terhubung ke instance SFTP jarak jauh.

sftp [email dilindungi] 
Menghubungkan ke SFTP.tecadmin.NET… Kata Sandi [Email Dilindungi]: SFTP> 

Terhubung dengan FileZilla:

Akun ini dikonfigurasi untuk koneksi SFTP Only. Jadi jika ada pengguna yang mencoba terhubung melalui SSH akan segera terputus setelah otentikasi yang berhasil. Pengguna akan mendapatkan pesan di bawah ini:

ssh [email dilindungi] 
Kata Sandi [Email Dilindungi]: Layanan ini hanya memungkinkan koneksi SFTP. Koneksi ke SFTP.tecadmin.net ditutup. 

Pesan di atas (layanan ini hanya memungkinkan koneksi SFTP.) menunjukkan bahwa pengguna hanya memiliki akses SFTP. Pengguna tidak dapat menghubungkan server melalui SSH.