IT Bootcamp

Belajar Mengenai Jaringan, Server, dan Website.

LAB 8.14. Konfigurasi UserDir Web Server Nginx CentOS7

Konsep Dasar

Salah satu cara agar setiap user memiliki web pribadi adalah dengan menggunakan UserDir. UserDir memungkinkan untuk dapat membaca dokumen-dokumen html milik user sistem linux yang tersimpan dalam home directory user. Sehingga setiap user linux dapat memiliki web pribadi. Ini dapat dilakukan dengan mendefinisikan lokasi direktori web milik user dalam file konfigurasi dengan menggunakan directive UserDir.

Topologi dan Ketentuan

topologi
  • Domain yang digunakan adalah : gilang.net
  • Konfigurasi UserDir Web Server Nginx

Konfigurasi

1. Hal pertama yang harus anda lakukan adalah membuat user baru. Untuk membuat user baru ketikkan command seperti berikut.
[root@gilang ~]# useradd gilznet
[root@gilang ~]# passwd gilznet

Membuat user baru
 Keterangan:

  • useradd gilznet --> membuat user baru dengan nama user yang dibuat adalah gilznet.
  • passwd gilznet --> memberi password pada user yang telah dibuat.


2. Kemudian edit file vhost.conf untuk memberi beberapa script tambahan seperti location, file untuk tampilan web, dan lain-lain.
[root@gilang ~]# nano /etc/nginx/conf.d/vhost.conf
Kemudian tambahkan script berikut pada file vhost.conf. 
Mengedit file vhost.conf
 Keterangan:

  • location ~ ^/~(.+?)(/.*)?$ --> menambahkan direktori home pada suatu user agar dapat diakses pada web. Untuk mengakses web UserDir, kita harus mengetikkan http://domain/~namauser/. ^/~(.+?)(/.*)?$ merupakan bahasa REGEX yang menunjukkan sebuah user. 
  • /home/$1/public_html$2 --> menggantikan konten dari direktori yang seharusnya diletakkan di direktori user menjadi di direktori /home/$1/public_html$2. $1 disitu menunjukkan semua user yang ada pada server, sedangkan untuk public_html, itu merupakan direktori didalam /home/user.
  • index index.html index.htm --> mendefinisikan file index yang digunakan oleh untuk tampilan web server. 
  • autoindex on --> module yang digunakan untuk memproses semua yang berakhiran dari karakter / (slash).


3. Agar terjadi perubahan, lakukan restart pada nginx. Untuk merestart nginx ketikkan command berikut.
[root@gilang ~]# systemctl restart nginx

4. Buatlah direktori public_html yang digunakan user untuk menyimpan file html. Kemudian berikan hak akses, permission, dan ubah selinux security context terhadap direktori tersebut.
[root@gilang ~]# mkdir /home/gilznet/public_html
[root@gilang ~]# chmod 711 /home/gilznet/
[root@gilang ~]# chown gilznet:gilznet /home/gilznet/public_html/
[root@gilang ~]# chmod 755 /home/gilznet/public_html/
[root@gilang ~]# chcon -R -t httpd_sys_content_t /home/gilznet/public_html/
 Keterangan:

  • mkdir /home/gilznet/public_html --> membuat direktori public_html pada user.
  • chmod 711 /home/gilznet/ --> memberikan hak akses pada group gilznet dan user lain agar semua orang dapat melihat file yang merupakan konten dari web UserDir yang sudah dieksekusi oleh httpd untuk ditampilkan menjadi konten web.
  • chown gilznet:gilznet/home/gilznet/public_html/ --> mengatur ownership atau kepemilikan terhadap direktori /home/gilznet/public_html/ pada user dan group gilznet.
  • chmod 755 /home/gilznet/public_html/ --> memberikan permission atau hak akses read dan execute terhadap semua user. Direktori ini diberikan akses execute agar dapat di eksekusi oleh service httpd untuk melayani request dari UserDir.
  • chcon -R -t httpd_sys_content_t /home/gilznet/public_html/ --> mengubah selinux security context terhadap direktori /home/gilznet/public_html secara keseluruhan agar dapat diakses oleh http sebagai direktori yang berisi konten website.

5. Buat file html yang digunakan untuk membuat tampilan web pada user.
[root@gilang ~]# nano /home/gilznet/public_html/index.html
Masukkan script html yang digunakan untuk tampilan web.
Membuat file html


6. Berikan permission untuk file html yang dibuat sebelumnya. Berikan juga selinux permission agar client dapat mengakses UserDir.
[root@gilang ~]# chmod 644 /home/gilznet/public_html/index.html
[root@gilang ~]# setsebool -P httpd_enable_homedirs true

Verifikasi

Cek menggunakan browser pada client. Buka browser kemudian ketikkan [namadomain]/~[namauser]/ pada kotak URL, misalnya www.gilang.net/~gilznet/ maka akan muncul tampilan web yang dibuat pada direktori user tersebut. Gambar dibawah ini adalah tampilan web pada user gilznet.
Tampilan web user


Demikianlah artikel pada kali ini jika terdapat kesalahan kata pada artikel yang anda baca, saya mohon maaf sebesar-besarnya. Jika anda masih kurang paham atau kurang mengerti akan artikel yang saya sampaikan, anda dapat mengetikkan keluhan anda melalui kolom komentar. Terima kasih.

Tidak ada komentar

Posting Komentar

Search Panel