Minggu, 19 Februari 2017

Cara Membuat Web Server pada Centos 7 menggunakan Apache


Cara Membuat Web Server pada Centos 7 menggunakan Apache


Hai kembali lagi bersama saya , masih disini dengan blog yang sama dan admin yang tingkat ketamvanan nya yang masih sama , gak nambah gak kurang alias statis :v
oke daripada kita membahas ketamvanan seseorang yang bisa statis maupun dhcp , eh maksudnya dinamis :v mending kita ke pembahasan yang ada di judul bacaan:v


Apa itu web server ? sesuai dengan namanya , web server adalah tempat penyimpanan semua data dari web tersebut , atau bisa dikatakan / disebut juga sebagai pusat datanya dari web tersebut. Mungkin agan pernah mendengar macam-macam web server , ada IIS , Apache , Zeus web server , dll. Web server menggunakan protokol http dan port 80 dalam pengoperasiannya.

oke , materi ini lanjutan dari materi centos 7 / sysadmin , sudah sekian lama saya tidak update , dan saya masih ingat , apdetan saya yang terakhir itu tentang bagaimana cara membuat server DHCP Relay , kalo agan belum baca silahkan dibaca dulu gan : http://skyblues-2.blogspot.co.id/2016/10/lab-52-centos-server-dhcp-relay.html


yak sebelum ke materi utama , dan karena berhubung dalam blog saya belum ada postingan tentang bagaimana membuat sebuah nama domain / DNS , maka disini saya akan menjelaskan terlebih dahulu apa yang dimaksud dengan DNS / domain name servers . DNS adalah penamaan suatu alamat host yang akan kita akses agar kita lebih mudah dalam mengingat / mengaksesnya dibandingkan pengaksesan dengan alamat IP , contohnya saja Facebo*k.com Go*gle.com , kan kalo kita mau akses suatu halaman web kalo ngetik alamat webnya panjang males juga , apalagi dengan angka , pasti riweuh kan ? :v belum lagi kalo agan lupa ip nya berapa :v
itu sih menurut yang saya pahami , tapi apa yang saya jabarkan tadi mungkin lebih cenderung pada kegunaan DNS bukan pengertiannya....

yak baiklah , sekarang kita lanjut ke konfigurasi DNS nya terlebih dahulu.. kenapa saya menyarankan untuk melihat blog teman saya dibandingkan blog saya ? karena pada blog itu , konfigurasi DNS nya masih secara garis besar ( tidak ada tambahan protokol lainnya atau embel embel lain ) , sedangkan pada blog saya , yang sekarang akan kita bahas ini, akan langsung ke konfigurasi DNS untuk mengakses WEB , dengan menggunakan protokol 'www'.


Dan berikut ini adalah tabel ip addressnya :


OSDEVICEIP ADDRESSGATEWAY
CENTOS 7SERVER192.168.19.33/24192.168.19.1
WINDOWS 10CLIENT192.168.19.45/24192.168.19.1

Dan ini adalah topologinya : 

gambar0(WSAS-SB2-DL)


A. KONFIGURASI DNS SERVER

Oke daripada membuang banyak waktu mari kita mulai saja konfigurasi DNS nya



 

1. Tentukan IP Address Server

gambar1(WSAS-SB2-DL)

Untuk cara mengatur ip address CentOS 7 secara gui bisa dilihat disini : http://skyblues-2.blogspot.co.id/2016/08/cara-konfigurasi-ip-centos-7-mode-gui.html 
Atur ip sesuai kebutuhan / kemauan agan , karena yang dipaksa itu sakit :v , jika agan memakai VirtualBox , pastikan adapter untuk server dan client sama. Dan jika agan berhasil mengatur ip untuk server , jangan lupa untuk mengatur ip clientnya.


gambar2(WSAS-SB2-DL)

2.Install Bind

Langkah selanjutnya adalah menginstall bind , bind adalah sebuah package untuk menjalankan / mengkonfigurasi DNS , oh iya sebelum menginstall bind , pastikan agan mempunyai repositori pada centos agan , karena kalo gak ada , gak bakalan jalan dah tuh installannya :v , cara untuk menginstall bind yaitu sebagai berikut :


yum install bind bind-utils -y

gambar3(WSAS-SB2-DL)


3. Edit file named.conf


Langkah selanjutnya adalah mengedit file konfigurasi DNS / named.conf , di file ini lah hampir semua konfigurasi DNS berada , cara untuk mengeditnya adalah dengan mengetikkan peritah


 nano /etc/named.conf

gambar4(WSAS-SB2-DL)

 a. Menambahkan IP Server dan IP Network

hal pertama yang harus dilakukan adalah dengan menambahkan ip address server pada line 'listen-on port 53 bla bla...' dan ip network agan pada line 'allow-query....' jika belum jelas , agan bisa lihat pada gambar dibawah ini ,

yang berkotak merah itu adalah konfigurasi yang akan agan tambahkan yaitu ip server dan ip network agan , sebelumnya memang belum ada pada file tersebut , jadi sebenarnya kita disini hanya menambah konfigurasi saja agar bisa berjalan pada server kita.


 

b. Menambahkan zone




gambar5(WSAS-SB2-DL)

yang kedua adalah menambahkan 'zone' untuk DNS agan ,Disini saya sedikit menjelaskan saja , bahwa diatas syntax 'zone "dhika.id"' terdapat sebuah syntax zone yang memang secara defaultnya begitu , jadi jangan di otak atik ya gan :v , zone "dhika.id" merupakan nama domain yang akan kita buat nanti , jadi tentukan domainnya :v
Dan juga pada zone "19.168.192.in-addr.arpa" , itu merupakan 3 bit IP saya , jadi kemungkinan konfigurasinya akan berbeda karena dikondisikan dengan ip masing masing ,  perlu diingat bahwa digit/bit awal penulisan dalam syntaxnya merupakan bit terakhir dalam ip agan , jadi seperti kebalikan saja , tetapi tanpa ip hostnya,

'type master' , merupakan sebuah type yang menjalankan semua konfigurasi DNS yang agan buat , jadi ibarat itu dia seperti otaknya , dalam type itu juga ada yang disebut 'type slave' ,


Dan 'include' biarkan saja default , jika sudah save file hasil konfigurasi agan ,


4. Tambahkan File Forward dan Reverse

Langkah selanjutnya adalah dengan menambahkan dua file baru untuk konfigurasi DNS agan , yaitu file forward dan reverse , dua file tersebut merupakan tempat customize DNS agan , saya masih kurang tahu apa perbedaan dari kedua file tersebut , tapi menurut pengertian saya Forward adalah cara mengubah nama domain ke IP address di dalam DNS sedangkan reverse adalah kebalikan dari forward yaitu cara mengubah IP address ke nama domain di dalam DNS .tapi intinya kedua file tersebut sangat penting :v , (itumah ente juga tau :v) .
Oh iya nama file Forward dan Reverse nya harus sama dengan nama yang sudah agan berikan pada file konfigurasi 'named.conf' sebelumnya , karena kalo namanya salah walaupun hanya dalam 'capitalize' nya saja , maka DNS tidak akan bisa dijalankan , perlu diperhatikan semua file konfigurasi DNS Server ini terletak pada direkotri /var/named

a. File forward


oke langsung saja ketikkan command berikut :



nano /var/named/[nama_file_forward_agan]
contoh : nano /var/named/forward.tkj

gambar6(WSAS-SB2-DL)

kemudian isikan syntax seperti pada gambar , berikut merupakan sedikit penjelasan tentang gambar ,

####penjelasan####
ns.dhika.id. = merupakan nama DNS saya ( mode biasa )
root.dhika.id. = merupakan nama DNS saya ( mode root )
NS = name server
A = Address
ns = protokol name server
client = protokol client server
www = protokol web
ns = menggunakan address server
client = menggunakan address client
www = menggunakan address server
####penjelasan#####


jika sudah selesai , save file konfigurasinya , kita lanjut ke file reverse nya...


b. File Reverse
 

oke langsung saja ketikkan command berikut :
nano /var/named/[nama_file_reverse_agan]
contoh : nano /var/named/reverse.tkj
gambar7(WSAS-SB2-DL)



kemudian isikan syntax seperti pada gambar , berikut merupakan sedikit penjelasan tentang gambar ,

####penjelasan####
ns.dhika.id. = merupakan nama DNS saya ( mode biasa )
root.dhika.id. = merupakan nama DNS saya ( mode root )
NS = name server
PTR =  merupakan kependekan dari Pointer Record. PTR atau Pointer Record juga disebut Reverse DNS Record.
A = Address
ns = protokol name server
client = protokol client server
ns = menggunakan address server
client = menggunakan address client
33 = ip host server , digunakan untuk protokol server dan www
45 = ip host client , digunakan untuk protokol client
####penjelasan#####

jika sudah selesai , save lagi file konfigurasinya , jangan sampai salah dalam pengetikkan ya , karena kalau salah DNS nya tidak akan bisa distart..


5. Cek File Konfigurasi

Sebelum kita melanjut lebih jauh lagi , kita akan mengecek file konfigurasi yang sudah kita buat dan atur tadi , disinilah kita akan mengetahui sytax yang sudah kita ketik tadi error atau tidak , biasanya sih karena typo atau lupa memasukkan 1 simbol , oke pertama kita akan mengecek file 'named.conf'

 named-checkconf /etc/named.conf

jika hasilnya seperti pada gambar dibawah ini , berarti tidak ada error pada file konfigurasi agan ,

gambar8(WSAS-SB2-DL)

sebaliknya jika keluar tulisan warning atau error gak jelas , bisa jadi itu error :v ( masa si :v ) bisa jadi agan kurang 1 simbol atau typo , cek kembali file konfigurasi agan , jika agan sudah yakin benar , save kembali dan lakukan perintah/command yang tadi lagi.

sekarang kita akan mengecek file konfigurasi forward dan reversenya ...
pertama kita akan cek file forwardnya terlebih dahulu
caranya dengan mengetikkan perintah / command sebagai berikut :

named-checkzone [nama_domain_agan]  /var/named/[nama_file_forward_agan]
contoh : named-checkzone dhika.id  /var/named/forward.tkj
jika terjadi error maka akan muncul peringatan error , kalo terjadi seperti itu , silahkan kembali cek file konfigurasi agan , jika agan yakin sudah benar , maka save lagi dan ulangi perintah tersebut

selanjutnya kita akan cek file reversenya
caranya dengan mengetikkan perintah / command sebagai berikut :


named-checkzone [nama_domain_agan]  /var/named/[nama_file_reverse_agan]
contoh : named-checkzone dhika.id  /var/named/reverse.tkj

jika tidak ada error , maka akan muncul tulisan 'ok' , seperti pada gambar dibawah ini :

gambar9(WSAS-SB2-DL)

 jika terjadi error maka akan muncul peringatan error , kalo terjadi seperti itu , silahkan kembali cek file konfigurasi agan , jika agan yakin sudah benar , maka save lagi dan ulangi perintah tersebut

6. Start dan Enable Named

Jika semua file konfigurasi sudah benar dan berjalan lancar , maka langkah selanjutnya adalah memulai service dari Named ( DNS Server ) nya , setelah di start maka langkah selanjutnya adalah meng-enable-kan servicenya , fungsinya adalah agar service DNS Server / Named auto-startup / auto-running ketika server dinyalakan, caranya dengan mengetikkan perintah :


systemctl start named
systemctl enable named

 berikut adalah ssnya :

gambar10(WSAS-SB2-DL)

Oh iya , kalo muncul peringatan pada saat meng-enable-kan named , jangan panik , karena itu bukan peringatan error , melainkan itu konfirmasi kalau service named sudah berjalan auto-startup


7. Akses Firewall

Setelah DNS / named sudah berjalan , maka langkah selanjutnya adalah dengan mendaftarkan service / port DNS / named nya , langkah ini kita gunakan agar firewall bisa menerima service ini dan bisa berjalan lancar ( kalo lancar sih tergantung amal perbuatan kayaknya :v ). cara ini bisa dengan mendaftarkan port atau servicenya saja , tidak harus keduanya , jika agan tau portnya , maka pilih portnya dan perintahnya pun 'add-port' , sedangkan jika agan tidak tau portnya agan bisa mendaftarkan servicenya , dan perintahnya pun berubah menjadi 'add-service' , disini saya menggunakan port, perintah untuk mengaktifkannya adalah sebagai berikut :

firewall-cmd --permanent --add-port=53/tcp
firewall-cmd --permanent --add-port=53/udp
 setelah itu kita reload firewallnya , dengan menggunakan perintah :
 firewall-cmd --reload

gambar11(WSAS-SB2-DL)


8. Konfigurasi Permission , Ownership , dan SELinux

Oke , firewall berhasil dikonfigurasi , langkah selanjutnya adalah melakukan konfigurasi untuk permission , ownership dan SELinux , tahap konfigurasi dibawah ini berurutan dari permission sampai dengan SELinux , lakukan perintahnya satu - satu ,

chgrp named -R /var/named
chown -v root:named /etc/named.conf
restorecon -rv /var/named
restorecon /etc/named.conf

gambar12(WSAS-SB2-DL)

berikut adalah sedikit penjelasan tentang konfigurasi diatas ,

####Penjelasan####
chgrp[....] = untuk mengganti permission dari suatu file/ untuk mengganti hak akses dari suatu file
chown[...] = Untuk mengganti si pemakai / user dari suatu file
restorecon = mengganti permission

####Penjelasan####


9. Edit file resolv.conf

Langkah selanjutnya adalah mengedit file resolv.conf yang terletak pada direktori /etc/
ketikkan command berikut :

nano /etc/resolve.conf

gambar13(WSAS-SB2-DL)
setelah itu , edit ( jika sudah ada ) dan tambahkan ( jika belum ada ) nameservernya , pastikan nameservernya sudah sama dengan ip server agan , jika sudah sama save dan close file tersebut , kemudian restart networknya dengan perintah 'systemctl restart network'


gambar14(WSAS-SB2-DL)

10. Verifikasi

a. Verifikasi 'dig'

Edit file konfigurasi sudah , service sudah dijalankan , dan firewall juga sudah didaftarkan , serta tahap tahap yang mungkin 'menyusahkan' sudah dilewati ,langkah selanjutnya atau mungkin yang terakhir adalah verifikasi , lakukan perintah 'dig' untuk melihat 'print details' DNS agan , seperti ini kira kira contohnya :


dig ns.nama_domain_agan.ex
contoh : dig ns.dhika.id
 maka  akan mendapatkan 'print out' sebagai berikut :

gambar15(WSAS-SB2-DL)
maksud dari gambar itu adalah agan mendapatkan jawaban dari DNS agan , yang memiliki ip server demikian dan nama domain serta alias domainnya dengan menggunakan port 53 '#53', ya kira kira begitulah yang saya pahami :v

b. Verifikasi 'nslookup'

Setelah verifikasi dengan menggunakan 'dig' , selanjutnya kita akan memverifikasi dengan menggunakan perintah 'nslookup' ke domain agan , perintah ini digunakan untuk mengetahui juga detail tentang domain agan , kira kira seperti inilah contohnya :



nslookup naama_domain_agan.ex
contoh : nslookup dhika.id
 maka akan keluar hasil 'print out' sebagai berikut :

gambar16(WSAS-SB2-DL)

jika hasilnya malah timed out atau unreachable , maka bisa dipastikan terjadi error pada konfigurasi agan , silahkan agan berpusing ria mencari letak kesalahannya :v (wkwkwk jahat juga ya ane  :v ) maaf ni ane gak bisa kasih tau dikarenakan kan ane juga gatau ente error dimana :v , oke lakukan juga verifikasi 'nslookup' pada client.

c. Verifikasi 'ping'

Oke verifikasi selanjutnya adalah dengan menggunakan test ping ,test ping dilakukan dari server ke client dan sebaliknya , serta protokol www nya dari client, oke langsung saja lakukan test pingnya

ping dari server ke client



gambar17(WSAS-SB2-DL)

ping dari client ke server


gambar18(WSAS-SB2-DL)

ping www dari client


gambar19(WSAS-SB2-DL)

jika kemudian muncul unreachable / timed out maka dipastikan ada kesalahan dalam jaringan agan :v , kalo RTO kemungkinan sih firewall pada client agan belum dinonaktifkan ... kalo unreachable banyak kemungkinannya :v

Oke verifikasi sudah , maka sudah selesai juga konfigurasi DNS nya , gimana ? mudah kan ? oke langsung aja kita lanjut ke konfigurasi Web Servernya


#################################################

B. KONFIGURASI WEB SERVER

Tahap selanjutnya adalah merupakan tahap inti ,yaitu konfigurasi web servernya , yak mungkin inilah yang kalian tunggu tunggu sedari tadi , oke langsung saja 


1. Install httpd

langkah pertama yang harus dilakukan adalah menginstall paket httpd / apache server , yak kali ini kita akan menggunakan apache server / httpd , berikut adalah perintah untuk menginstall paket tersebut :



yum install httpd -y
dan inilah tampilan jika kita berhasil menginstall httpd nya :

gambar20(WSAS-SB2-DL)

2. Edit file konfigurasi httpd

Langkah selanjutnya adalah mengedit file konfigurasi httpd nya , file konfigurasinya terdapat di direktori /etc/httpd/conf dan nama filenya adalah 'httpd.conf' , untuk masuk ke file tersebut lakukan perintah sebagai berikut :


nano /etc/httpd/conf/httpd.conf
  
pertama edit 'ServerAdmin' , ubah nama 'root@localhost' menjadi hostname dan domain agan , contohnya seperti ini : 'dhika@dhika.id' , kemudian hilangkan tanda pagar dan edit 'ServerName' , ubah 'www.example.com:80' menjadi nama domain yang sudah agan buat , tapi tetap biarkan port 80 tersebut , contohnya seperti ini : 'www.dhika.id:80', dan inilah ss before dan afternya ,

before:



gambar21(WSAS-SB2-DL)

after :


gambar22(WSAS-SB2-DL)

Selanjutnya edit 'AllowOverride None' menjadi 'AllowOverride All' pada line <Directory "/var/www"> , jika bingung , maka agan bisa melihat gambar dibawah ini :


gambar23(WSAS-SB2-DL)

Fungsi dari syntax tersebut adalah untuk membolehkan kita untuk mengakses direktori default dari httpd , perlu diperhatikan bahwa semua yang berhubungan dengan tampilan httpd yang akan di akses client ada di direktori /var/www , sedangkan konfigurasi webserver / httpd berada pada /etc/httpd/conf/httpd.conf , 


gambar24(WSAS-SB2-DL)

Kemudian kita tambahkan juga format / module untuk web server apache nya , secara default apache hanya menampilkan format .html saja , tapi kita bisa menampilkan format format yang lain , disini saya akan mengaktifkan format .cgi dan.php saja , dan untuk membuat halaman .cgi dan .php akan saya share di postingan selanjutnya , untuk kali ini kita akan menambahkan formatnya terlebih dahulu , agar di tutor selanjutnya kalau ane lupa kan jadi terselamatkan :v , Oke setelah ditambahkan lalu sekarang kita save dan close file konfigurasinya ,


3. Start dan Enable httpd



gambar25(WSAS-SB2-DL)

Langkah selanjutnya adalah memulai service dan enable httpd , sudah paham kan fungsi start dan enable ? kalo belum silahkan scroll lagi ke atas :v , jika sudah maka kita langsung coba buka browser dan akses alamat web / domain yang agan sudah buat tadi ,

4. Akses Web


Buka browser dan akses halaman web agan dengan mengetikkan alamat domain yang sudah agan buat , kemudian akan muncul tampilan 'Testing 123...' yang merupakan halaman welcome.html / halaman default / bawaan dari apache server jika agan belum membuat halaman html lainnya , halaman ini akan secara otomatis terbuka / ditampilkan jika tidak ada halaman html lainnya pada direktori tersebut , sebaliknya jika agan membuat sebuah halaman baru , maka akan secara otomatis apache server akan menampilkan halaman web yang agan buat, jika tidak percaya mari kita buktikan , oh iya nama file html nya harus bernama 'index.html' , oke mari kita buat dengan cara mengetikkan perintah sebagai berikut :



gambar26(WSAS-SB2-DL)


nano /var/www/html/index.html

kemudian isikan script html , ya kira kira beginilah scriptnya :

gambar27(WSAS-SB2-DL)

jika sudah save and close filenya , kemudian refresh halaman web agan , dan secara otomatis tampilannya akan terganti , contohnya seperti ss berikut ini :

gambar28(WSAS-SB2-DL)
 Yak selesai sudah konfigurasi tentang web server kali ini , oh iya ini baru part 1 , masih ada yang lainnya termasuk yang saya janjikan untuk membuat halaman .cgi dan .php pada apache server / httpd . Sampai berjumpa di next post....
Unknown Web Developer

Morbi aliquam fringilla nisl. Pellentesque eleifend condimentum tellus, vel vulputate tortor malesuada sit amet. Aliquam vel vestibulum metus. Aenean ut mi aucto.

1 komentar :