[Lab 8.14] UserDir Nginx

Assalamu'alaikum warahmatullahi wabarakatuh.
Pada kali ini saya akan menjelaskan tentang UserDir Nginx.

Pada kali ini ane ingin share cara Konfigurasi Userdir pada Nginx. Userdir ini berguna untuk meng-share direktori yang dimiliki oleh user tertentu yang dikelolanya. Misalnya seperti hosting saja. Pengguna hosting mengelola suatu direktori dengan sebuah user yang diberikan oleh provider hosting untuk mengelola websitenya. Jadi itu adalah gambarannya. Namun disini saya masih belum mendapat ilmu untuk penerapan userdir dalam hosting. Jadi saya hanya memberikan level dasarnya saja.
Web Userdir ini dapat diakses dengan mengetikkan www.domain.com/~namauser/ Itu adalah defaultnya. Untuk konfigurasinya seperti berikut ini.

1) Install httpd-tools terlebih dahulu. Hal ini dilakukan untuk membuka firewall httpd

2) Buat user beserta passwordnya. Nantinya user ini yang akan digunakan untuk mengakses web userdir.

3) Untuk konfigurasinya sedikit, hanya menambahkan 4 baris script didalam block server pada konfigurasi nginx. Anda bisa meletakkannya di konfigurasi default nginx atau di dalam virtualhost juga bisa.

Block location ~ ^/~(.+?)(/.*)?$ berguna untuk menambahkan direktori home suatu user agar dapat diakses pada web. Diaksesnya dengan mengetikkan http://domain/~user/  script ^/~(.+?)(/.*)?$ merupakan regular expressions yang menunjukkan sebuah user
alias /home/$1/public_html$2 berguna untuk pengganti lokasi yang ditentukan, jadi alias pada konfigurasi disini berguna untuk menggantikan konten dari direktori yang seharusnya diletakkan di ~user menjadi /home/$1/public_html$2. $1 disana menunjukkan semua user yang ada pada server, dan public_html merupakan direktori didalam /home/user.
index index.html index.htm berguna untuk mendefinisikan file index yang digunakan, disini saya hanya mengizinkan file index.html saja, belum index dengan format lainnya seperti .pl atau .php dan lainnya, kalau anda ingin menambahkan index tersebut, pastikan sudah terinstall dependencies yang diperlukan
autoindex on merupakan module yang memproses yang berakhiran dari karakter slash ('/')

4) Restart nginx agar konfigurasi baru berjalan.

5) Buat direktori public_html pada user yang akan diaktifkan fitur userdir, kemudian ubah permission, kepemilikan, dan ubah selinux securitu context secara rekursif terhadap direktori /home/user/public_html.

mkdir /home/abdilah/public_html berguna untuk membuat direktori public_html pada /home/abdilah yang akan dugunakan sebagai direktori konten

chmod 711 /home/abdilah berguna untuk memberikan akses execute pada group ali dan other user. Jadi agar semua orang dapat melihat file yang merupakan konten dari userdir yang telah dieksekusi oleh httpd untuk ditampilkan menjadi konten web (hanya untuk direktori yang telah diberikan akses read terhadap other user).

chown abdilah:abdilah /home/abdilah/public_html berguna untuk mengubah kepemilikan direktori public_html menjadi milik user dan grup ali. Hal ini dilakukan karena pada saat pembuatan direktori public_html dalam shell root user. Jadi otomatis direktori yang telah dibuat adalah milik dari user dan grup yang membuatnya.

chmod 755 /home/abdilah/public_html berguna untuk memberikan akses read dan execute terhadap semua user. Direktori ini diberikan akses execute agar dapat di eksekusi service httpd untuk melayani request userdir.

chcon –R –t httpd_sys_content_t /home/abdilah/public_html berguna untuk mengubah selinux security context terhadap direktori /home/ali//public_html secra rekursif atau keseluruhan berikut isi didalamnya agar dapat diakses http sebagai direktori yang berisi konten website.

6) Buat file index.untuk pengujian.

7) Edit File.

8) Atur selinux Boolean agar klien dapat diizinkan mengakses userdir.

9) Buka web userdir anda dengan mengetikkan http://domain/~user pada browser.

Cukup sekian.

Wassalamu'alaikum warahamatullahi wabarakatuh.
Diberdayakan oleh Blogger.