Saturday 29 April 2017

LAB Centos 8.11 | APACHE | Balancer Manager With "Lbmethod"

Assalamualaikum wr.wb.

Salam Sejahtera bagi yang ngelaksanain malam minggu dengan pacar :v pyuh masih jombs wkwkwk. yaa. Kali ini Ane Share bab terakhir dichapter Apache Web Server  dan akan dilanjutkan dengan Engine X atau nginx. Dan materi terakhir di Apache Web Server itu apaa yaa ? lanjut saja kematerinya....

Materinya adalah Konfigurasi Balancer Manager dengan lbmethod. Sebelum ke konfigurasinya mari kita cari tau pengertian Balancer Manager.

Balancer Manager adalah suatu fitur yang berupa aplikasi default pada Apache Web Server yang berfungsi sebagai monitoring dan manage loadbalance. Udah paham kan ? Mari lanjut aja.

Untuk topologinya saya memakai topologi Pada Lab 8.10 Jadi ini lanjutan Lab sebelumnya.

Dan kita kekonfigurasinya.

Server Controller

1. Pertama, kita edit file .conf nya terlebih dulu pada direktori /etc/httpd/conf.d yang akan digunakan untuk konfigurasi Balancer Manager.

"nano /etc/httpd/conf.d/Conf_proxyAz.conf"
Tambahan : Nama file .conf nya bebas terserah kalian
Setelah itu, kita tambahkan script seperti pada gambar dibawah ini lalu jika sama Save

" <IfModule mod_proxy.c>
        ProxyRequests Off
        <Proxy *>
                Require all Granted
        </Proxy>
        #backend server
        <proxy balancer://split>
                BalancerMember http://192.168.43.100/ loadfactor=2
                BalancerMember http://192.168.43.101/ loadfactor=1
        ProxySet lbmethod=byrequests
        </proxy>
        #BalanceManager
        <Location /balancer-manager>
        SetHandler balancer-manager
        </Location>
        ProxyPass /balancer-manager !
        ProxyPass / balancer://split/
</IfModule>
"

Keterangan :
  • ProxyRequests Off = Untuk menonaktifkan fitur default proxy dari mod_proxy.so.
  • ProxyPass = script yang berfungsi untuk menentukan kemana proxy bisa mengakses, dan disini proxy saya hanya dibolehkan mengakses ke "/" dari balancer://split
  • lbmethod = Metode yang digunakan load balancing, disini Server mengaturnya menjadi byrequests yang berarti balancer akan bekerja berdasarkan request dari client
  • <proxy balancer://split> = Module proxy yang digunakan untuk loadbalance, karena sebelumnya saya membuatnya dengan balancer://split, makanya harus disamakan juga, jika tidak, maka loadbalancernya tidak akan berjalan 
  • BalancerMember = member dari server yang akan di balancing
  • loadfactor = Request maksimal yang dapat dilakukan oleh client pada satu server, jika client sudah request maksimal sesuai dengan yang ditentukan, maka server load balancer akan mengalihkan client tersebut ke server lainnya yang telah di balance 
  • <Location /balancer-manager> = lokasi untuk balancer manager nya, yang akan digunakan untuk melihat statistik dari loadbalance.


2. Kemudian restart service httpd nya, agar konfigurasi yang sudah dilakukan bisa berjalan

"systemctl restart httpd"
Client

1. Pertama, buka browser di client, kemudian ketikkan nama domain kalian yang diakhiri dengan /balancer-manager pada address bar di browser tersebut. Dan berikut adalah tampilan dari LoadBalancer Manager 
Pada gambar diatas, kedua Node sedang dalam kondisi aktif, maka dari itu status mereka menjadi Init Ok

2. Pada balancer manager ini, kita juga bisa mengatur Load Factor pada server tertentu, Disi saya akan merubah Load factor dari Node 1 menjadi 23
3. Load Factor dari Node 1 sudah berhasil diubah
4. Selanjutnya kita akan mengecek status pada balancer manager, dan disini saya akan mencoba mematikan ServerNode1_Azrich

"poweroff"
5. Kemudian cek pada balancer manager di client, maka status dari Node 2 akan menjadi Init Error yang artinya server sedang tidak aktif
Bisakah kita menambahkan Basic Authentication pada Balance Manager untuk menghindari orang lain tidak mengkonfigurasi server kita ? ya bisa, yukk kita konfigurasi aja.

Basic Authentication

1. Pertama, kita edit terlebih dulu, file konfigurasi balancer manager pada Server Controller

"nano /etc/httpd/conf.d/namafile.conf"
2. Selanjutnya, tambahkan script Authentication yang sudah  ditandai pada gambar dibawah ini

" AuthType Basic
  AuthName "Login Masuk"
  AuthUserFile /etc/httpd/conf.d/.htpasswd
  Require valid-user"
Keterangan:
  • AuthType = Tipe autentikasi nya
  • AuthName = Nama dari autentikasi nya
  • AuthUserFile = Letak dari user yang akan digunakan untuk mengakses Balancer Manager
  • Require valid-user = User yang dapat mengakses Balancer Manager haruslah menggunakan user yang valid/terdaftar

3. Kemudian buat User beserta Passwordnya, dimana user ini akan digunakan untuk autentikasi saat kita ingin Login akses Balancer Manager

"htpasswd -c /etc/httpd/conf.d/.htpasswd namauser"
4. Setelah itu restart service httpd nya

"systemctl restart httpd"
Client

1. Kembali buka Balancer Manager pada Web browser di client. Maka akan muncul Popup untuk Login ke Aplikasi Balancer Manager, kemudian kita masukkan User dan password yang sudah dibuat sebelumnya agar kita bisa mengakses Balancer Manager ini
2. Jika user dan password yang dimasukkan benar/valid, maka Balancer Manager akan berhasil dibuka, seperti pada gambar dibawah
Cukup Sekian Apabila Ada Kesalahan atau apalah Comment ajaa.
Wassalamualaikum wr.wb.

LAB Centos 8.10 | APACHE | Mod Proxy of Loadbalance with "lbmethod"

Assalamualaikum wr.wb.

Hai, apa kabar semuanya ? Apakah baik semuanya atau tidak ? Ya Kembali lagi di materi selanjutnya setelah Lab tentang Backend. yaa kali ini Saya mau share tentang lanjutan apache ini. apa ya kira-kira materinyaa ? yoo lanjut sajaa ke bawah ini.

Yaitu ada Konfigurasi tentang Loadbalance dari proxy dengan lbmethod.

Loadbalance itu apaa ?

Jadi Loadbalance adalah sebuah cara untuk membagi jalur trafic secara seimbang. Dan fungsinya loadbalance menjadikan sebuah perangkat bekerja optimal dan menghindari overload.

Untuk singkat dari pengertian mari kita lihat topologinya seperti apa.
Dan lanjut ke konfigurasi lab ini. Pada lab ini lanjutan dari lab sebelum sebelumnya. mungkin ini cuman menambahkan script dan mengatur diantara 2 server node. yang post sebelumnya satu node.

Konfigurasi:

Server Controller Balancer

1. Pertama, kita buat file .conf terlebih dulu pada directory /etc/httpd/conf.d/ yang akan digunakan untuk konfigurasi server yang akan di balancing. jika sudah dibuat kaya lab sebelumnya jangan diapus. karena script ini tinggal ditambahin. Bila belum maka buatlah.

"nano /etc/httpd/conf.d/Conf_proxyAz.conf"
Note : Nama file .conf nya bebas terserah kalian 

2. Setelah itu tambahkan script berikut kedalam file .conf nya

"IfModule mod_proxy.c>
        ProxyRequests Off
        <Proxy *>
                Require all Granted
        </Proxy>
        #backend server
        ProxyPass / balancer://split lbmethod=byrequests
        <proxy balancer://split>
                BalancerMember http://192.168.43.100/ loadfactor=2
                BalancerMember http://192.168.43.101/ loadfactor=1
        </proxy>
</IfModule>
 "
Keterangan : 

  • ProxyRequests Off = Untuk menonaktifkan fitur default proxy dari mod_proxy.so.
  • ProxyPass = script yang berfungsi untuk menentukan kemana proxy bisa mengakses, dan disini proxy saya hanya dibolehkan mengakses ke "/" dari balancer://split
  • lbmethod = Metode yang digunakan loadbalance, disini saya mengaturnya menjadi byrequests yang berarti balancer akan bekerja berdasarkan request dari client
  • <proxy balancer://split> = Module proxy yang digunakan untuk load balancing, karena sebelumnya saya membuatnya dengan balancer://split, makanya harus disamakan juga, jika tidak, maka loadbalancer tidak akan berjalan 
  • BalancerMember = member dari server yang akan dibalance
  • loadfactor = Request maksimal yang dapat dilakukan oleh client pada satu server, jika client sudah request maksimal sesuai dengan yang ditentukan, maka server load balancer akan mengalihkan client tersebut ke server lainnya yang telah dibalance 
3. Lalu kita restart service httpd nya

"systemctl restart httpd"
Server Node 2

1. Pertama kita atur tampilan dari Halaman Web yang berasal  dari Node 2, supaya kita bisa melihat perbedaan dan mengetahui perubahan yang terjadi 

"nano /var/www/azrich/index.html"
2. Kemudian edit file html nya, jika sudah jangan lupa untuk disave

Client

1. Pertama, buka browser di client, kemudian ketikkan nama domain pada address bar browser tersebut.
Akses yang pertama akan menampilkan Halaman web dari Node 1
Setelah merefresh, maka masih akan tampil halaman web dari Node 1
Dan baru untuk yang ketiga kalinya, halaman web akan diarahkan ke Node 2
Untuk Video Uji Coba bisa anda lihat dibawah ini.

Dan terjadi. Kenapa bisa terjadi perubahan diweb tersebut. Karena yang kita setting diloadfactor itu sesuai keadaan siserver controller. Ketika si client meminta web yang pertama dikasih oleh controller itu node1 dan apabila masa diloadfactor melebihi nominal maka diganti ke node selanjutnya.

Cukup Sekian Terima Kasih
Wassalamualaikum wr.wb.

LAB Centos 8.9 | APACHE | Mod Proxy Backend server and Forwarded Path

Assalamualaikum wr.wb.

Salam Sejahtera untuk kita semua. Ketika saya ingin memulai awalan kata kata blog ini mungkin saya cuman menuliskan pepatah pepatah yang bertele-tele. Tetapi saya membawakan suatu ilmu yang sangat bisa digunakan di perusahaan :v. yoo.... kembali lagi diblog ini ya kali ini kita akan membahas suatu materi centos masih yang sama yaa labnyaa. apaa ajaa yaa ?....

Yaitu Konfigurasi Mod Proxy Backend dan Forwarded Path Apache Web Server.

Apasih Backend itu ?

Jadi Backend itu seolah-olah kaya ada controllernya ya diibaratkan kita punya 1 server nah kalau takut diserang hacker maka kita akan menambahkan server controller didepannya. fungsinya buat apaa ? kalau diserang oleh hacker maka yang akan diserang siserver controllernya ini. ya intinya si server controllernya bertugas menjadi controller si web server tersebut.

Untuk topologinya agak berbeda dari yang Lab sebelumnya.

Dan sekarang kita ke konfigurasi

Server Controller

1. Pertama, kita cek mod proxy yang akan digunakan sebagai backend sudah aktif atau belum

"grep "mod_proxy" /etc/httpd/conf.modules.d/00-proxy.conf"

2. Kemudian buat file .conf untuk konfigurasi backend pada direktori /etc/httpd/conf.d/

"nano /etc/httpd/conf.d/Conf_proxyAz.conf"
Note : nama file .conf nya boleh bebas

Setelah itu kita tambahkan script seperti pada gambar dibawah ini:


"<IfModule mod_proxy.c>
        ProxyRequests Off
        <Proxy *>
                Require all Granted
        </Proxy>

        #backend server
        ProxyPass / http://192.168.43.100/
        ProxyPassReverse / http://192.168.43.100/
</IfModule>"

Karena Server Backend milik saya tidak mempunyai DNS, maka pada ProxyPass dan ProxyPassReverse kita isi menjadi IP dari Server Backend (Node 1). Tetapi jika Server Backend kalian mempunyai domain, maka pada ProxyPass dan juga ProxyPassReverse nya bisa juga dituliskan nama domainnya.

3. Lalu kita restart service httpd nya, agar konfigurasi yang sudah dilakukan bisa berjalan


Server Node1

1. Pertama, kita buat file index.html nya pada directory default yang akan berfungsi sebagai tampilan default dari halaman Web, yaitu di direktori /var/www/azrich/


2. Setelah itu isi file html yang difile tersebut


Client

1. Coba buka browser pada client, kemudian ketikkan nama domain ataupun IP Server Controller pada address bar browser tersebut, maka dari domain atau IP Server Controller akan ditampilkan halaman web yang ada pada Server Backend (Node 1).

Bila Tampilannya seperti yang ada dihtml maka sukses kalau belum masih ada typo pada script.
Cukup sekian terima kasih.
Wassalamualaikum wr.wb.

Friday 28 April 2017

LAB Centos 8.8 | APACHE | Log Analyzer Configuration

Assalamualaikum wr. wb.

Salam Sejahtera bagi yang ngunjungi ke blog ini dan gw juga sehat sehat ajaa. :v bagaimana kabar kalian semua ? wkwkwk. Yang punya blog lagi ngerjain blog untuk posting blog ini. Jadi bagaimana caranya ini dipost sedemikian rupa. Yup pada kesempatan kali ini akan membahas tentang Konfigurasi log analyzer..

Log Analyzer itu apaa ?

Log Analyzer itu berupa fitur yang menampilkan statistik yang mengunjungi blog tersebut. Ya isinya seperti statistik blog kaya blogger.

untuk lebih cepatnya kita kekonfigurasi tersebut.
Untuk Topologinya masih sama seperti Lab 8.1

Konfigurasi Server

1.Pertama, install wget terlebih dulu, Wget ini digunakan untuk mendownload package dari suatu Web.

2. Selanjutnya, pastikan Server CentOS sudah terhubung ke internet, kemudian download repository epel dengan menggunakan perintah wget. Repository epel ini hanya tersedia untuk CentOS 7 64 bit, jadi bagi yang menggunakan CentOS 7 32 bit,  harus ganti menjadi 64 bit terlebih dulu agar bisa menginstall repositori epel ini. 

"wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm"

3. Kemudian install repository epel yang sudah didownload tadi

"rpm -ivh epel-release-7-9.noarch.rpm"

4.(Tambahan) Jika anda menggunakan repolokal sebaiknya anda mengganti nama di /etc/yum.repos.d yang CentOS-Base.repo.backup dan juga CentOS-Sources.repo.backup menjadi CentOS-Base.repo dan juga CentOS-Sources nya agar kita bisa menginstall awstats .

5. Install awstats nya dengan perintah 

"yum --enablerepo=epel -y install awstats"

6. Selanjutnya, ubah nama file konfigurasi awstats yang sebelumnya memakai nama hostname menjadi memakai nama domain server yang akan digunakan untuk Log Analyzer nanti. 

"mv /etc/awstats/awstats.Azrich.conf /etc/awstats/awstats.www.azrich.net.conf"

7. Setelah itu, edit file konfigurasi awstats tersebut 

"nano /etc/awstats/awstats.www.azrich.net.conf"
Kemudian cari syntax SiteDomain, dan ubah nama nya menjadi nama domain server

8. Selanjutnya edit syntax HostAliases menjadi seperti yang sudah ditandai dibawah

" HostAliases="localhost 127.0.0.1 REGEX[^.*azrich\.net$] REGEX[^192\.168\.43\.]" "

Log Analayzer pada Apache menggunakan bahasa REGEX, Apa sih yang dimaksud dengan REGEX ?
Regular Expression (REGEX) adalah konstruksi bahasa untuk mencocokkan teks berdasarkan pola tertentu, terutama untuk kasus-kasus kompleks. Contoh misalkan mencari teks berawalan karakter tertentu, memiliki jumlah perulangan dari suatu teks, dan lain sebagainya.

9. Kemudian edit file awstats.conf yang berada di direktori /etc/httpd/conf.d/awstats.conf

" nano /etc/httpd/conf.d/awstats.conf"
Lalu kita cari syntax Require dan tambahkan IP Network disamping syntax Require tersebut yang berfungsi agar IP yang berada di dalam network yang ditambahkan akan terbaca di Log.


10. Setelah itu, restart service httpd nya

"Systemctl restart httpd"
11. Selanjutnya update konfigurasi terhadap file awstats.pl

" /usr/share/awstats/wwwroot/cgi-bin/awstats.pl  -config=www.azrich.net -update"

Client

1. Buka web browser di client, kemudian ketikkan nama domain pada address bar yang diakhiri dengan /awstats/awstats.pl

Dan itu merupakan tampilan Log Analyzer diweb browser.

Cukup sekian terima kasih kalau ada yang salah dengan tutor silahkan comment.
Wassalamualaikum wr.wb.

LAB Centos 8.7 | APACHE | Enable Basic Authentication

Assalamualaikum wr.wb.

Salam sejahtera untuk kita semua. Kembali lagi ke blog tiap detik as dreadchase dan sipembuatnya si az.rich. wkwkwk . Dalam kesempatan kali ini Saya mau mengeshare materi tentang lanjutan postingan sebelumnya bisa anda check dilist diatas ada bacaan admin server. oh iya materi postingan ini apaa yaa ? yuk cek....

Ada Enable Basic Authentication. Sebelum ke Konfigurasi arti dari Basic Authentication itu apaa ?

Basic Authentication adalah suatu cara dimana Web yang  dibuat, harus menggunakan user beserta password untuk bisa mengaksesnya. Jadi tidak sembarang orang bisa mengakses Web tersebut, dan yang bisa mengakses Web tersebut hanyalah orang yang mengetahui user dan password yang  dibuat untuk Web tersebut.  Ya yang lebih jelasnya kita bikin web ada login dulu kaya difacebook biar bisa lanjut ke halaman webnya.

Untuk topologinya masih sama dengan Lab 8.1 bisa dicari dilist diatas.
Mari kita lanjutkan ke Konfigurasinya.

Server
saya menggunakan 2 web yang berbeda. versi http dan https. Dan kita liat konfigurasinya wkwkwkw maklum kebawa sama yang https bab 8.6 :v

1. Pertama, edit file auth_basic.conf nya yang berada di directory /etc/httpd/conf.d/
Setelah itu tambahkan syntax seperti pada gambar dibawah 
Keterangan :
  • Directory = lokasi direktori web, dan disini saya membuat basic authentication nya di direktori /var/www/html
  • AuthType = Type authentication yang digunakan
  • AuthName = Penamaan Authentication nya
  • AuthUserFile = File user basic authentication nya
  • require valid-user = Login diharuskan untuk menggunakan user yang valid


2. Kemudian buat User untuk authentication beserta passwordnya 
Keterangan :
  • htpasswd = Perintah untuk membuat password
  • -c = Perintah untuk create (membuat)
  • /etc/httpd/conf/.htpasswd = Letak user authentication nya
  • hafizi = Nama user nya
3. Setelah itu, kita edit file index.html nya 
Jika sudah diedit maka save

4. Selanjutnya, kita restart httpd nya, agar konfigurasi yang sudah dilakukan dapat berjalan
Client

1. Buka web browser, kemudian tuliskan nama domain kalian pada address bar. Dan bisa dilihat pada gambar dibawah, muncul Pop Up Authentication login nya. Jika ingin mengakses web nya, kita harus memasukkan username dan passwordnya
2. Dan jika username dan password yang dimasukkan sudah benar, Halaman Web nya pasti berhasil terbuka dengan isinya yang pas mantap dan nikmat sekali wkwkwkwk  

wkwkwkw bisa yaaa. udah dulu cukup sampai disini apabila ada salah dari gambaran posting atas bilang dicomment.
Wassalamualaikum wr. wb.