GNU/Linux >> Belajar Linux >  >> Linux

Cara Membuat Pengguna SFTP untuk Root Dokumen Server Web

SFTP (SSH/Secure File Transfer Protocol) adalah standar transmisi jaringan yang digunakan untuk mentransfer, mengakses, dan mengelola file melalui jaringan jarak jauh. Ini berisi SSH (Secure Shell), membuatnya jauh lebih aman daripada protokol FTP.

File ditransfer melalui saluran kontrol tunggal di SFTP. Ini memerlukan otentikasi dan berjalan pada port 22. Di SFTP, shell SSH menyediakan enkripsi yang membantu melindungi nama pengguna, kata sandi, dan data pribadi lainnya yang ditransfer melalui SFTP.

Dalam panduan cara ini, kita akan belajar membuat pengguna SFTP untuk root dokumen server web.

Langkah 1 – Menginstal SSH (Secure Shell)

SFTP adalah protokol transfer file yang sangat aman karena enkripsi yang disediakan SSH untuk data saat ditransfer melalui jaringan. SSH terutama diinstal pada distribusi Linux secara default, tetapi jika tidak diinstal sebelumnya di sistem Anda, maka Anda dapat menggunakan perintah yang diberikan di bawah ini untuk menginstalnya:

sudo apt install ssh 

Jika sudah terinstal, perintah akan mengupgrade paket OpenSSH.

Langkah 2 – Konfigurasi SSH untuk menggunakan Kode Server SFTP

Sekarang buka file konfigurasi SSH di editor teks untuk memodifikasinya untuk kode server SFTP. Di sini kita akan menggunakan editor nano untuk mengedit file konfigurasi.

sudo nano /etc/ssh/sshd_config 

Cari baris yang dimulai dari “Subsystem sftp”.

Komentari baris dengan menambahkan # di awal baris dan tulis baris berikut setelah baris ini seperti yang ditunjukkan pada tangkapan layar di bawah ini:

Subsystem sftp internal-sftp

SSHD akan menggunakan kode server SFTP alih-alih menjalankan server SFTP dengan mengubah baris di atas.

Setelah Anda mengubah file konfigurasi, simpan file dan keluar darinya menggunakan tombol pintasan keyboard CTRL+S dan CTRL+X.

Setelah perubahan, kita perlu memulai ulang daemon SSHD agar perubahan berfungsi.

sudo systemctl restart sshd 

Langkah 3 – Membuat Pengguna (Pengguna SFTP)

Ini adalah praktik yang sangat baik untuk membuat pengguna baru yang hanya memiliki akses SFTP ke root dokumen. Tidak disarankan untuk menambahkan pengguna dengan hak istimewa Sudo ke root dokumen server web. Buat pengguna baru menggunakan perintah adduser:

sudo adduser sftpuser 

Terminal akan menanyakan beberapa hal seperti menyetel kata sandi, dan informasi pengguna. Itu juga akan menanyakan beberapa detail lainnya, jadi biarkan kosong atau berikan informasi yang tepat.

Pengguna baru dengan nama sftpuser berhasil dibuat.

Langkah 4 – Membuat Match User Directive di file konfigurasi SSH

Sekarang kami akan membatasi pengguna ini ke root dokumen dan kami juga akan menonaktifkan akses pengguna ke SSH sehingga pengguna akan masuk melalui SFTP.

Untuk membatasi akses pengguna, buka file konfigurasi SSH di editor teks apa pun:

sudo nano /etc/ssh/sshd_config 

Sekarang pergi ke akhir file dan tambahkan konten berikut di file konfigurasi “sshd_config”:

Match User sftpuser
        ForceCommand internal-sftp 
        ChrootDirectory /var/www/
        PasswordAuthentication yes
        X11Forwarding no 
        AllowTcpForwarding no 

Pastikan untuk mengganti nama pengguna “sftpuser” dengan nama pengguna yang Anda tetapkan.

Setelah konten di atas ditambahkan ke file konfigurasi SSH, simpan dan keluar menggunakan tombol pintas CTRL+S dan CTRL+X.

Untuk memeriksa sintaks dan memverifikasi apakah semuanya berjalan dengan baik, Anda dapat menjalankan perintah:

sudo sshd -t 

Jika tidak terjadi kesalahan, kami dapat memuat ulang layanan SSH agar perubahan berfungsi.

sudo systemctl restart sshd 

Langkah 5 – Menambahkan Pengguna SFTP ke www-data Group

Sekarang kita akan menambahkan pengguna ke grup www-data dengan menjalankan perintah berikut:

sudo usermod -a -G www-data sftpuser 

Pada proses yang berhasil, tidak ada output yang akan ditampilkan.

Langkah 6 – Mengatur Izin Direktori Root Dokumen

Harap ikuti instruksi selanjutnya dengan sangat hati-hati karena SFTP sangat ketat terkait izin direktori chroot.

  1. Kita akan mulai dengan memeriksa izin dan kepemilikan saat ini dari var:
    sudo ls -ld /var/ 
    
  2. Izinnya harus 755 dan pemiliknya harus root secara default. Jika tidak, maka jalankan perintah yang diberikan di bawah ini untuk mengatur izin yang tepat:
    sudo chmod 755 /var/ 
    
  3. Sekarang gunakan perintah ini untuk menyetel kepemilikan yang benar:
    sudo chown root:root /var/ 
    
  4. Demikian pula, terapkan izin yang sama ke chroot:

    sudo chmod 755 /var/www/ 
    
  5. Karena kita telah menyetel “/var/www/” ke direktori chroot. Sekarang atur kepemilikan yang tepat dari direktori chroot:
    sudo chown root:root /var/www/ 
    
  6. Untuk mengizinkan grup menulis ke direktori root dokumen, setel izinnya ke 755:
    sudo chmod 755 /var/www/html/ 
    
  7. Untuk memberikan kepemilikan root dokumen “/var/www/html” dan direktori serta file selanjutnya ke grup www-data, gunakan perintah yang diberikan di bawah ini:
    sudo chown -R www-data:www-data /var/www/html* 
    
  8. Sekarang berikan 755 izin ke konten yang ditempatkan di root dokumen “/var/www/html” menggunakan perintah:
    sudo find /var/www/html/ -type d -exec chmod 775 {} \; 
    
  9. Perintah di atas akan memberikan izin baca, tulis, dan eksekusi direktori kepada pengguna SFTP.

    Kami juga perlu memberikan 664 izin ke semua file yang ada di root dokumen agar pemilik dan grup pengguna SFTP dapat membaca dan menulis file:

    sudo find /var/www/html/ -type f -exec chmod 664 {} \; 
    
  10. Sekarang untuk langkah terakhir, pastikan bahwa semua file dan direktori baru memperoleh grup www-data yang dibuat pengguna SFTP yang baru dibuat:
    sudo find /var/www/html -type d -exec chmod g+s {} \; 
    

Selamat! pengguna SFTP baru Anda telah dibuat dan ditambahkan ke root dokumen server web. Sekarang Anda dapat masuk ke SFTP.

Kesimpulan

Dalam panduan cara ini, kita telah mempelajari cara menginstal dan mengkonfigurasi SSH untuk menggunakan kode server SFTP. Setelah itu, kami membuat pengguna baru, membatasi mereka untuk mendokumentasikan root, dan menonaktifkan akses SSH mereka. Kemudian kami menambahkan pengguna ke root dokumen server web untuk memungkinkan pengguna membaca, menulis, dan mengeksekusi file di root dokumen.


Linux
  1. Cara mengatur server SFTP di CentOS

  2. Cara Mengatur Hak Istimewa Sudo untuk Pengguna di Linux

  3. Centos – Bagaimana Cara Membuat Pengguna Sftp Di Centos?

  1. Bagaimana Cara Membuat Pengguna Baru Dengan Akses Ssh?

  2. Cara Membuat Pengguna SFTP tanpa Akses Shell di CentOS 8

  3. CentOS / RHEL :Cara menonaktifkan ssh untuk pengguna non-root (mengizinkan ssh hanya untuk pengguna root)

  1. Cara membuat akun pengguna secara otomatis (SSH + LDAP)

  2. Bagaimana cara membuat pengguna root tambahan?

  3. Bagaimana saya bisa membuat pengguna hanya untuk sftp?