GNU/Linux >> Belajar Linux >  >> Linux

Cara Mengkonfigurasi Server SFTP Chroot di Linux

Ada beberapa skenario di mana admin sistem ingin hanya beberapa pengguna yang diizinkan untuk mentransfer file ke kotak Linux tetapi tidak ada ssh . Kita dapat mencapainya dengan menyiapkan SFTP di lingkungan chroot.

Latar belakang SFTP &chroot :

SFTP singkatan dari protokol Transfer File SSH atau Protokol Transfer File Aman . SFTP menyediakan akses file, transfer file, dan fungsionalitas manajemen file melalui aliran data apa pun yang andal. Saat kami mengonfigurasi SFTP di lingkungan chroot , maka hanya pengguna yang diizinkan yang akan dibatasi ke direktori home mereka , atau kita dapat mengatakan bahwa pengguna yang diizinkan akan berada di penjara seperti lingkungan di mana mereka bahkan tidak dapat mengubah direktori mereka.

Dalam artikel ini kita akan mengkonfigurasi server SFTP Chroot di RHEL &CentOS sistem . Kami memiliki satu pengguna ‘Jack ' , pengguna ini akan diizinkan untuk mentransfer file di kotak Linux tetapi tidak ada akses ssh.

Langkah :1) Buat grup

Buat grup sftp_users menggunakan perintah groupadd,

[[email protected] ~]# groupadd  sftp_users

Langkah:2) Tetapkan grup sekunder (sftp_users) kepada pengguna

Jika pengguna tidak ada di sistem, gunakan perintah perintah di bawah ini untuk membuatnya,

[[email protected] ~]# useradd  -G sftp_users -s /sbin/nologin  jack
[[email protected] ~]# passwd jack

Untuk pengguna yang sudah ada , gunakan perintah usermod di bawah ini :

[[email protected] ~]# usermod –G sftp_users -s /sbin/nologin  jack

Catatan : Jika Anda ingin mengubah direktori beranda default pengguna , lalu gunakan ‘-d’ di perintah useradd dan usermod  dan setel izin yang benar.

Langkah :3) Sekarang edit file konfigurasi “/etc/ssh/sshd_config”

Edit sshd_config menggunakan editor favorit Anda,

# vi /etc/ssh/sshd_config

#comment out the below line and add a line like below
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp

# add Below lines at the end of file
Match Group sftp_users
X11Forwarding no
AllowTcpForwarding no
ChrootDirectory %h
ForceCommand internal-sftp

Di mana :

Cocokkan sftp_users Grup – Ini menunjukkan bahwa baris berikut akan dicocokkan hanya untuk pengguna yang termasuk dalam grup sftp_users
ChrootDirectory %h – Ini adalah jalur (direktori home pengguna default) yang akan digunakan untuk chroot setelah pengguna diautentikasi. Jadi, untuk Jack, ini akan menjadi /home/jack.
ForceCommand internal-sftp – Ini memaksa eksekusi internal-sftp dan mengabaikan perintah apa pun yang disebutkan dalam file ~/.ssh/rc.

Setelah melakukan perubahan di atas, restart layanan ssh menggunakan perintah berikut,

[[email protected] ~] # systemctl restart sshd

Langkah :4) Setel izin yang diperlukan di direktori beranda pengguna

Seperti dalam demonstrasi kami, kami menggunakan pengguna jack sebagai pengguna sftp, jadi jalankan perintah berikut untuk mengatur izin yang diperlukan pada direktori home-nya,

[[email protected] ~]# chmod 755 /home/jack
[[email protected] ~]# chown root /home/jack
[[email protected] ~]# chgrp -R sftp_users /home/jack

Jika Anda ingin pengguna jack tersebut diizinkan untuk mengunggah file , lalu buat folder unggah dengan izin di bawah ini,

[[email protected] jack]# mkdir /home/jack/upload
[[email protected] jack]# chown jack. /home/jack upload/

Jika selinux diaktifkan di sistem Anda, jalankan perintah berikut untuk menyetel aturan selinux, 

[[email protected] ~] setsebool -P ssh_chroot_full_access on

Langkah :5)  Uji server Sftp

Pertama coba akses sistem menggunakan ssh via jack user,

Seperti yang kita lihat pada output di atas, jack pengguna diizinkan untuk ssh.

Sekarang mari kita coba login menggunakan sftp,

Seperti yang Anda lihat di atas,  pengguna jack masuk melalui SFTP, tetapi tidak dapat mengubah direktori karena lingkungan chroot.

Sekarang lakukan upload dan download pengujian seperti yang ditunjukkan di bawah ini:

Seperti yang dapat kita lihat di atas, pengunggahan &pengunduhan berfungsi dengan baik untuk pengguna jack. Itu menyimpulkan artikel, Anda dipersilakan untuk membagikan umpan balik dan komentar Anda di bagian komentar di bawah.

Baca Juga Cara Mengonfigurasi Server SFTP dengan Chroot di Debian 10


Linux
  1. Cara bekerja dengan klien SFTP di Linux – 10 perintah sftp

  2. Cara Menginstal dan Mengonfigurasi Server dan Klien NTP Linux

  3. Cara mengkonfigurasi VNC Server di Oracle Linux 6

  1. Cara Mengkonfigurasi Server SFTP dengan Chroot di Debian 10

  2. Cara mengatur jail chroot Linux

  3. Cara mengatur server SFTP di Arch Linux

  1. Cara Mengonfigurasi NGINX sebagai Penyeimbang Beban TCP/UDP di Linux

  2. Cara Menginstal dan Mengonfigurasi Arch Linux sebagai Server

  3. Bagaimana Cara Mengkonfigurasi server SFTP di CentOS?