phone: +62852 5254 2414
e-mail: simonmurdani@gmail.com

ASJ - Web Server (BAB 6) (Kelas XI)

 


BAB 6
Web Server


A. KOMPETENSI DASAR


PENGETAHUAN 
3.6. Mengevaluasi Web Server
 
KETERAMPILAN 
4.6. Mengkonfigurasi Web Server
 
 
B. MATERI PEMBELAJARAN

1. Web Server

Web Server merupakan sebuah aplikasi yang berjalan dengan menggunakan protocol HTTP (Hypertext Transfer Protocol) untuk melayani permintaan file dari sebuah halaman web kepada pengguna. Arsitektur yang digunakan adalah model

client server, yaitu server membuka layanan dengan port tertentu, kemudian client melakukan request. Semua komputer yang melayani penyimpanan dokumen web harus mempunyai aplikasi web server. Beberapa aplikasi web server yang digunakan di dunia ini diantaranya adalah Apache (dengan jumlah paling banyak penggunanya), IIS (Microsoft Internet Information Server), nginx (dibaca Engine X), LiteSpeed, Novell Netware Server, Google Web Server, dan sebagainya.
Dewasa ini web server menjadi bagian yang sangat penting dari Internet dan intranet, karena web server juga dapat melayani aplikasi yang menjembatani email, download dengan ftp melalui antarmuka web, dan menampilkan halaman informasi. Memilih aplikasi web server disesuaikan dengan sistem operasi yang digunakan, apakah dapat menghandle pemrograman berbasis server, mempunyai karakter keamanan yang baik, dan lingkungan pengembangan server yang optimal. Misalkan menggunakan sistem operasi berbasis Microsoft, maka web server yang digunakan adalah IIS, karena sudah disesuaikan dengan karakteristik sistem operasi.

Prosentase sistem operasi yang paling banyak digunakan oleh web server adalah sistem operasi Linux / UNIX. Alasan penggunaan Linux menjadi pilihan utama untuk menyedikanan layanan web adalah lingkungan dalam sistem operasi tersebut ideal bagi aplikasi webserver, diantaranya optimal dalam multitasking aplikasi. Sistem operasi Linux dapat melayani trafik permintaan web yang tinggi, dan sangat efisien, aman dan reliabel.

2. Prinsip dan cara kerja Web Server

Ketika halaman web dibuka dengan menggunakan browser, terjadi permintaan halaman oleh klien kepada webserver. Permintaan tersebut dilakukan oleh browser melalui protokol HTTP (HyperText Transfer Protocol) atau HTTPS (HTTP Secure). HTTP merupakan protokol standar yang digunakan untuk mengirimkan data berbasis web. HTTP Menggunakan port 80 sedangkan HTTPS menggunakan Port 443. Beda antara HTTP dengan HTTPS adalah data yang ditransfer antara web browser pada HTTPS dienkripsi sedemikian rupa sehingga tidak dapat diakses oleh orang yang tidak berhak.
Pada prinsipnya, browser terlebih dahulu menterjemahkan nama domain yang diketik menjadi alamat IP (proses translasi alamat dengan DNS Server dijelaskan pada bab selanjutnya). Proses translasi ini dilakukan browser dengan mengecek terlebih dahulu cache yang ada di browser tersebut, jika tidak ada dalam cache, maka browser akan meminta informasi dari DNS Server. Setelah browser mengetahui alamat IP dari web server, maka browser akan meminta URL secara penuh dari web server. Uniform Resource Locator (URL) adalah rangkaian karakter dengan format standar tertentu, yang digunakan untuk menunjukkan alamat suatu sumber seperti dokumen dan gambar di Internet.

Setelah web server menerima permintaan dari browser, web server akan segera mengirimkan halaman yang diminta. Jika halaman yang diminta tidak ada, web server akan mengirimkan pesan kesalahan bahwa halaman tidak ada atau tidak dapat diakses. Jawaban dari server sesuai dengan kriteria kesalahan yang terjadi. Ketika halaman yang diminta sudah dikirimkan web server ke browser, maka oleh browser akan di render untuk ditampilkan dalam web browser. Dari cara kerja inilah sering disebut bahwa transfer data yang terjadi adalah antara client (web browser) dengan server (web server).

Sebuah webserver dapat berisi lebih dari satu website, bahkan faktanya di penyedia hosting satu server dapat melayani puluhan bahkan ratusan website. Hal ini bisa terjadi karena dalam satu konfigurasi webserver dapat diatur dengan perbedaan port atau perbedaan header pada website. File pertama yang dibaca oleh webserver adalah file dengan nama "index”, misalkan index.html atau index.php. Jadi ketika kita menginginkan tampilan awal pada website, maka dokumen awal yang dipanggil dapat
diatur dengan nama tersebut. 

3. Instalasi dan konfigurasi Apache

Apache sebagai aplikasi penyedia webserver yang paling banyak digunakan di dunia mempunyai konfigurasi dan instalasi yang mudah. Pastikan sebelum melakukan instalasi, DVD repository sudah terpasang atau bisa menggunakan repository secara online melalui jaringan internet. 

a. Instalasi pemasangan Apache Web Server

Untuk memulai instalasi Apache web server, gunakan perintah:
akan muncul pemberitahuan paket apa saja yang diinstall
Tekan Y untuk melanjutkan instalasi. Sistem akan mencari repositori dari apache2 kemudian melakukan konfigurasi dasar aplikasi. Setelah terinstall, maka dapat di check di komputer client dengan mengakses web browser ke alamat webserver, dalam hal ini sesuai dengan konfigurasi di bab sebelumnya, yaitu 192.168.62.1:
Jika tampilan saat diakses seperti gambar diatas, maka webserver apache2 sudah berhasil dipasang di server. 

b. Konfigurasi Apache Web Server

Web server perlu dikonfigurasi agar sesuai dengan kebutuhan pengguna. Cara paling mudah mengkonfigurasi Apache web server adalah dengan mengedit konfigurasi dasar dari Apache yang berada pada file /etc/apache2/sites-available/000-default. conf. Gunakan text editor seperti pico / nano / vi untuk membuka konfigurasi tersebut, contoh dengan menggunakan pico: 
akan tampil konfigurasi seperti dibawah ini:
untuk konfigurasi yang diperhatikan dan sebagian perlu dirubah adalah: 

•  <VirtualHost *:80>
Konfigurasi ini menjelaskan bahwa web server secara virtual akan berjalan di port 80, sedangkan tanda asterik (*) menandakan bahwa webserver akan berjalan sesuai dengan IP yang ada di server, jadi bisa IP mana saja. Jika ingin di definisikan, maka tanda asterisk tersebut bisa diganti dengan alamat IP. misal <VirtualHost 192.168.62.1:80> 

• ServerName www.example.com 
Berisi informasi mengenai nama server yang dikonfigurasi dalam aplikasi webserver apache2. Isikan dengan nama domain yang akan dipilih di server tersebut. Misalkan diisi dengan “ServerName www.mustibisa.com”, karena nanti di bab mengenai DNS akan dibuat nama domain mustibisa.com 

• ServerAdmin webmaster@localhost 
Isikan email dari admin web server, email yang diisikan harus email yang valid, karena akan digunakan oleh sistem sebagai report jika terjadi error dan jika client menginginkan pengiriman pesan kepada administrator web server, misalkan diisi dengan email webmaster@mustibisa.com 

• DocumentRoot /var/www/html 
Merupakan alamat direktori tempat file web server disimpan. Jadi ketika web diakses, isi di dalam folder tersebut yang akan ditampilkan. Apabila didalamnya terdapat halaman web, maka halaman tersebut yang akan ditampilkan. Pastikan jika akan menggunakan folder lain, konfigurasikan bahwa folder tersebut dapat dibuka publik dengan perintah chmod -R 755 /var/www/namafoldertujuan

Setelah konfigurasi disesuaikan kemudian simpan file konfigurasi tersebut (jika menggukanan pico dengan menekan tombol ctrl+o kemudian keluar dengan ctrl+x) dan reload konfigurasi apache dengan mengetikkan perintah:
Untuk mencoba menampilkan halaman pertama pada web, maka kita harus merubah file index.html yang berada pada DocumentRoot dengan perintah:
perlu di pahami bahwa alamat direktori tersebut sama dengan konfigurasi di file 000-default yang sudah dikonfigurasi diatas. Jika file index.html sudans un hapus semua isinya dan ketikkan:
kemudian simpan dengan menekan tombol ctrl+o kemudian keluar dengan ctrl+x. Langkah selanjutnya akses web server di client dengan mengetikkan alamat browser:

c. Menggunakan Konfigurasi lain selain 000-default.conf

Selain menggunakan file konfigurasi default, kita juga dapat menggunakan file konfigurasi lain yang isinya bisa disesuaikan. Di layanan penyedia hosting, biasanya konfigurasi yang digunakan bukan konfigurasi default tetapi konfigurasi sesuai dengan nama hostname. Misalnya kita akan membuat file konfigurasi dengan nama mustibisa.conf, maka langkahnya adalah:
• Buat file konfigurasi dengan mengetik perintah:
• Isikan konfigurasi di bawah ini ke dalam file tersebut
Simpan konfigurasi dengan menekan tombol ctrl+o kemudian keluar dengan ctrl+x. 

• Setelah konfigurasi baru selesai dibuat, matikan konfigurasi default dengan perintah:
Perintah a2dissite merupakan perintah Apache2 Disable Site, yang artinya mematikan konfigurasi site.

• Aktifkan konfigurasi yang telah dibuat dengan mengetikkan perintah:
Perintah a2ensite merupakan perintah Apache2 Enable Site, yang artinya menyalakan konfigurasi site. 

• Cek konfigurasi apakah sudah benar atau belum dengan mengetikkan perintah:
Output dari perintah diatas, jika konfigurasi sudah benar adalah “Syntax OK”.

• Untuk mengatur ulang apache, gunakan perintah 

d. File / Folder penting dalam konfigurasi Apache2

Beberapa file ataupun folder yang digunakan untuk konfigurasi webserver dengan apache 2 diantaranya adalah:

• /etc/apache2: Merupakan direktori utama dari Apache Webserver. Semua konfigurasi berada pada folder ini.

• /etc/apache2/apache2.conf: Adalah file utama dalam konfigurasi aplikasi Apache. File ini dapat dimodifikasi untuk membuat perubahan pada konfigurasi global Apache. File ini bertanggung jawab untuk memuat banyak file lain di direktori konfigurasi. 

• /etc/apache2/ports.conf: File ini menentukan port yang akan dilayani oleh Apache. Secara default, Apache melayani pada port 80 dan tambahan pada port 443 jika mengaktifkan modul SSL. 

• /etc/apache2/sites-availablel: Direktori tempat penyimpanan konfigurasi host virtual pada tiap situs. Apache tidak akan menggunakan file konfigurasi yang ditemukan di direktori ini kecuali jika file tersebut ditautkan ke direktori sites-enabled. Biasanya, semua konfigurasi blok server dilakukan dalam direktori ini, dan kemudian diaktifkan dengan menautkan ke direktori lain dengan perintah a2ensite. 

• /etc/apache2/sites-enabled/: Direktori tempat penyimpanan konfigurasi host virtual yang diaktifkan. Biasanya dibuat dengan menautkan ke file konfigurasi yang ditemukan di direktori sites-available dengan menggunakan perintah aZensite. 

• /etc/apache2/conf-availablel, /etc/apache2/conf-enabled/: Direktori ini memiliki hubungan yang sama dengan direktori sites-available dan sites enabled, bedanya dalam direktori ini digunakan untuk menyimpan fragmen konfigurasi yang tidak termasuk dalam host virtual. File dalam direktori conf-available dapat diaktifkan dengan perintah a2enconf dan dinonaktifkan dengan perintah a2disconf.

• etc/apache2/mods-availablel, letc/apache2/mods-enabled/: Direktori ini berisi modul yang disediakan oleh Apache, dan dapat diaktifkan. File mods berekstensi .load berisi fragmen untuk memuat modul tertentu, sementara file dengan akhiran .conf berisi konfigurasi untuk modul tersebut. Modul dapat diaktifkan dan dinonaktifkan menggunakan perintah a2enmod dan a2dismod.

• /var/log/apache2/access.log: Secara default, setiap permintaan akses ke dalam server web dicatat dalam file log ini kecuali jika konfigurasi Apache diatur sebaliknya.

• /var/log/apache2/error.log: Secara default, semua kesalahan dalam menjalanan aplikasi dicatat dalam file ini. Pengaturan LogLevel dalam konfigurasi Apache menentukan detail informasi yang akan berisi log kesalahan.

4. Instalasi dan konfigurasi Nginx

Nginx (dibaca Engine X) akhir-akhir ini mulai banyak digunakan sebagai alternatif pengganti Apache, terlebih nginx terbukti dapat melayani banyak request dalam webserver dengan menggunakan resource yang sedikit. Bahkan dalam sebuah survay penggunaan aplikasi webserver, nginx menempati posisi nomor 2 setelah Apache web server.

a. Instalasi pemasangan Nginx Web Server

Untuk memulai instalasi Nginx web server, gunakan perintah:
akan muncul pemberitahuan paket apa saja yang diinstall
Tekan Y untuk melanjutkan instalasi. Sistem akan mencari repositori dari apache2 kemudian melakukan konfigurasi dasar aplikasi. Setelah terinstall, maka dapat di check di komputer client dengan mengakses web browser ke alamat webserver, dalam hal ini sesuai dengan konfigurasi di bab sebelumnya, yaitu
192.168.62.1:
Jika tampilan saat diakses seperti gambar diatas, maka webserver nginx sudah berhasil dipasang di server. 

b. Konfigurasi Nginx Web Server

Hampir sama dengan konfigurasi apache web server, pada konfigurasi nginx web server juga terdapat file default yang bisa langsung disesuaikan dengan kebutuhan pengguna. Adapun konfigurasi nginx berada pada file /etc/nginx/sites-available/ default. Gunakan text editor seperti pico / nano / vi untuk membuka konfigurasi tersebut, contoh dengan menggunakan pico:
akan tampil konfigurasi seperti di bawah ini:
Scroll ke arah bawah, cari konfigurasi server yang telah dihilangkan pagar (artinya konfigurasi tersebut aktif. Untuk konfigurasi yang diperhatikan dan sebagian perlu dirubah adalah:
ра

• listen 80 default_server; listen [::]:80 default_server;
Konfigurasi ini menjelaskan bahwa web server nginx membuka layanan di port 80.

• root /var/www/html;
Merupakan alamat direktori tempat file web server disimpan. Jadi ketika web diakses, isi di dalam folder tersebut yang akan ditampilkan. Apabila didalamnya terdapat halaman web, maka halaman tersebut yang akan ditampilkan. Pastikan jika akan menggunakan folder lain, konfigurasikan bahwa folder tersebut dapat dibuka publik dengan perintah chmod -R 755 /var/www/namafoldertujuan

• server_name _;
Berisi informasi mengenai nama server yang dikonfigurasi dalam aplikasi webserver nginx. Isikan dengan nama domain yang akan dipilih di server tersebut. Misalkan diisi dengan “server_name mustibisa.com www.mustibisa. com;".

Setelah konfigurasi disesuaikan kemudian simpan file konfigurasi tersebut (jika menggukanan pico dengan menekan tombol ctrl+o kemudian keluar dengan ctrl+x) dan reload konfigurasi apache dengan mengetikkan perintah:
Untuk mencoba menampilkan halaman pertama pada web, maka kita harus merubah file index.nginx-debian.html yang berada pada root dengan perintah:
perlu dipahami bahwa alamat direktori tersebut sama dengan konfigurasi di file default yang sudah dikonfigurasi diatas. Jika file index.nginx-debian.html sudah dibuka, hapus semua isinya dan ketikkan:
kemudian simpan dengan menekan tombol ctrl+o kemudian keluar dengan ctrl+x. Langkah selanjutnya akses web server di client dengan mengetikkan alamat browser:

c. Menggunakan Konfigurasi lain selain konfigurasi default pada nginx

Selain menggunakan file konfigurasi default, kita juga dapat menggunakan file konfigurasi lain yang isinya bisa disesuaikan. Di layanan penyedia hosting, biasanya konfigurasi yang digunakan bukan konfigurasi default tetapi konfigurasi sesuai dengan nama hostname. Misalnya kita akan membuat file konfigurasi dengan nama mustibisa.com, maka langkahnya adalah: 

• Buat file konfigurasi dengan mengetik perintah:
• Isikan konfigurasi dibawah ini ke dalam file tersebut
Simpan konfigurasi dengan menekan tombol ctrl+o kemudian keluar dengan ctrl+x. Perhatikan bahwa dalam konfigurasi tersebut, tempat folder root dipindah di folder mustibisa, dan servername juga dirubah. 

• Setelah konfigurasi baru selesai dibuat, berikan link kedalam konfigurasi site-enabled dengan perintah:
Perintah In / link berfungsi untuk membuat hubungan antara file konfigurasi dengan folder site-enabled dari aplikasi nginx, agar ketika startup nginx dapat membaca file konfigurasi tersebut. 

• Untuk mencegah terjadinya error “hash bucket memory" yang mungkin timbul karena adanya tambahan nama server, rubah konfigurasi nginx di file /etc/nginx/nginx.conf dengan mengetikkan perintah: 
Kemudian hilangkan tanda pagar pada konfigurasi server_names_hash_ bucket_size 64;. 

• Cek konfigurasi apakah sudah benar atau belum dengan mengetikkan perintah:
Output dari perintah di atas, jika konfigurasi sudah benar adalah: 
• Untuk mengatur ulang webserver nginx, gunakan perintah /etc/init.d/nginx restart

d. File/Folder penting dalam konfigurasi nginx

Beberapa file ataupun folder yang digunakan untuk konfigurasi webserver dengan nginx diantaranya adalah: 

•  /etc/nginx: Folder utama tempat konfigurasi web server nginx berada disini.

• /etc/nginx/nginx.conf: Adalah file utama dalam konfigurasi web server nginx. File ini dapat dimodifikasi untuk membuat perubahan pada konfigurası global nginx.

• /etc/nginx/sites-availablel: merupakan direktori tempat menye konfigurasi tiap site. Nginx tidak akan membaca konfigurasi dalam folder ini jika tidak di buat link dengan folder sites-enabled. Jadi ketika konnguas sudah dibuat dan disimpan pada folder ini, harus di link kan terlebih dahulu kedalam direktori sites-enabled agar dapat digunakan. 

• /etc/nginx/sites-enabled/: Direktori yang digunakan untuk menyimpan konfigurasi tiap site yang akan dijalankan ketika webserver nginx dijalankan.

• /var/log/nginx/access.log: setiap permintaan / request yang ditujukan kedalam webserver akan terekam dalam file log ini, kecuali disetting sebaliknya menjadi tidak terekam.

• /var/log/nginx/error.log: semua pesan kesalahan dari webserver nginx akan direkam dalam file log ini. 

5. Instalasi PHP Module

PHP merupakan singkatan dari PHP Hypertext Prepocessor, yaitu bahasa pemrograman yang handal dalam menangani transaksi data dalam interface web secara dinamis. PHP diciptakan oleh Rasmus Lerdorf pada tahun 1994. Pada awalnya PHP merupakan singkatan dari Personal Home Page Tools, kemudian berubah menjadi FI / Forms Interpreter. Semenjak versi 3.0 akhirnya menjadi PHP Hypertext Prepocessor. PHP versi terbaru adalah versi ke-7. Salah satu keunggulan bahasa pemrograman PHP adalah script yang dituliskan tidak perlu untuk dikompilasi (compile). Kemudian PHP juga dapat dijalankan diberbagai sistem operasi, baik Windows, Linux, Macintosh. dsb. Adapun langkah instalasi PHP dalam webserver adalah sebagai berikut: 

a. Instalasi dan Konfigurasi PHP Module pada webserver berbasis Apache

Untuk melakukan instalasi PHP, gunakan perintah:
akan tampil proses instalasi PHP seperti berikut ini:
Dalam detail instalasi diatas, terlihat bahwa ketika melakukan instalasi PHP maka ada paket lain yang juga akan terinstall, hal tersebut wajar karena aplikasi php memerlukan dependensi dengan paket aplikasi lainnya. Ketika instalasi sudah berhasil, secara default web server apache membaca file index.html terlebih dahulu saat pertama kali diakses. Untuk melakukan perubahan agar file yang dipanggil pertama adalah index.php maka terdapat konfigurasi yang harus dirubah pada file dir.conf. Untuk merubahnya, gunakan perintah:

akan tampil konfigurasi file yang akan dipanggil pertama kali secara berurutan seperti di bawah ini:

Setelah selesai, simpan dengan menekan tombol ctrl+o kemudian keluar dengan ctrl+x. kemudian muat ulang / restart service apache dengan perintah:

Untuk melakukan pengecekan apakah instalasi PHP sudah berjalan dengan baik dan dapat digunakan, buat file php untuk mengambil informasi mengenai instalasi php dan simpan file tersebut pada DocumenRoot. Misalkan DocumentRoot berada di /var/www/html maka perintah untuk membuat file informasi php yaitu:
kemudian isikan kode berikut ini:
langkah selanjutnya adalah membuka halaman tersebut pada browser client, yaitu di alamat http://192.168.62.1/info.php. Jika instalasi dan konfigurasi sudah benar, maka akan tampil seperti gambar dibawah ini:
b. Instalasi dan Konfigurasi PHP Module pada webserver berbasis Nginx

Karena webserver Nginx tidak mempunyai native PHP processing sepert web server lainnya, maka perlu instalasi aplikasi yang mendukung pemrosesan PHP di dalam mesin Nginx. Aplikasi pendukung tersebut adalah fpm, yaitu singkatan dari “fastCGI process manager”. Fpm akan memproses semua request dari php ke webserver Nginx. Adapun langkah instalasi php-fpm adalah
tampilan saat akan dilakukan instalasi adalah sebagai berikut:
Setelah php-fpm terinstal, perlu dikonfigurasi ke dalam mesin Nginx agar dapat memproses konten dinamis yang dikeluarkan oleh PHP. Tambahkan kode dibawah ini pada konfigurasi site, dengan catatan jika konfigurasi masih berada pada sites-available default maka tinggal tambahkan kode dibawah ini di dalamnya. Pada bahasan sebelumnya, konfigurasi yang dipakai adalah mustibisa. com, dibuka dengan perintah:
tambahkan kode dibawah ini sebelum penutup konfigurasi (kurung kurawal akhir)
Sehingga secara keseluruhan tampilan konfigurasinya menjadi:
Simpan dengan menekan tombol ctrl+o kemudian keluar dengan ctrl+x. Kemudian cek apakah ada kesalahan konfigurasi dengan menggunakan perintah:
jika terdapat pesan kesalahan, maka cek ulang file yang masih terdapat konfigurasi yang salah. Jika sudah benar, muat ulang / restart konfigurasi Nginx dengan menggunakan perintah:
Untuk melakukan pengecekan apakah instalasi PHP sudah berjalan dengan baik dan dapat digunakan pada webserver Nginx, buat file php untuk mengambil informasi mengenai instalasi php dan simpan file tersebut pada direktori file Nginx. Misalkan direktori file Nginx berada di /var/www/html maka perintah untuk membuat file informasi php yaitu:

kemudian isikan kode berikut ini:
langkah selanjutnya adalah membuka halaman tersebut pada browser client, yaitu di alamat http://192.168.62.1/info.php. Jika instalasi dan konfigurasi sudah benar, maka akan tampil seperti gambar dibawah ini:
Terdapat perbedaan Server API antara Apache dan Nginx. Di Nginx server dihandle oleh FPM.

6. Instalasi SSL Pada Webserver

TLS (Transport Layer Security) dan SSL (Secure Sockets Layer) merupakan protokol yang digunakan untuk melindungi lalu lintas data denggan cara melakukan enkripsi data yang dikirimkan. Dengan menggunakan teknologi ini, server dapat mengirim lalu lintas dengan aman antara server dan klien tanpa kemungkinan pesan diambil oleh pihak luar. Untuk melakukan instalasi SSL, gunakan perintah:
adapun detail dari perintah tersebut adalah:
• openssl: perintah dasar untuk membuat dan memanajemen OpenSSL certificates, keys, dan file yang berhubungan dengan Secure Sockets Layer. 
• req: perintah ini menentukan bahwa sertifikat keamanan yang diinginkan sesuai standar 
• -x.509 0 -4509: standar keamanan yang dipilih.
• -nodes: Perintah ini digunakan untuk memberitahu OpenSSL mengamankan sistem tanpa menggunakan password.
• -days 365: waktu yang ditetapkan untuk berapa lama sertifikat keamanan ini valid.
• -newkey rsa:2048: key atau kunci frasa yang digunakan sesuai standar rsa:2048, artinya mempunyai panjang frasa 2048 byte.
• -keyout: tempat dimana diletakkan key OpenSSL yang dibuat. O -out: menyatakan bahwa key tersebut dikeluarkan sebagai file. 

Langkah selanjutnya adalah melakukan konfigurasi pada apache agar ada parameter SSL yang disesuaikan, adapun perintahnya adalah:
sesuaikan isi konfigurasi dengan pengaturan seperti di bawah ini:
Setelah sesuai, simpan dan keluar. Kemudian konfigurasi Apache SSL Virtual Host dengan membuka konfigurasinya
Setelah terbuka, sesuaikan isi konfigurasi seperti di bawah ini
Setelah disesuaikan, simpan dan keluar dari konfigurasi tersebut. Langkah selanjutnya adalah melakukan konfigurasi HTTP Host File agar dapat redirect ke HTTPS. Caranya dengan membuka konfigurasi host yang telah dibuat sebelumnya. Jika sebelumnya file host masih di 000-default, maka cara membukanya dengan perintah:
Tambahkan konfigurasi di bawah pada isi dari virtualhost:
kemudian simpan dan keluar dari file konfigurasi. Untuk mengecek apakah penulisan sudah benar, gunakan perintah:
setelah dinyatakan syntax ok, maka langkah selanjutnya adalah mengaktifkan mod_ ssl, serta mod_headers agar bisa digunakan oleh apache, perintahnya adalah:
langkah selanjutnya adalah mengaktifkan SSL Virtual Host dengan perintah a2ensite:
kemudian aktifkan juga konfigurasi parameter yang telah dibuat sebelumnya dengan perintah:
terakhir, restart apache webserver dengan perintah
Uji dengan cara membuka di browser client, apabila ketika diketik alamat server terdapat notifikasi bahwa koneksi tidak aman / connection not private, maka ssl sudah berhasil dikonfigurasi, tinggal memilih advanced dan proceed unsafe, maka pada address bar alamat akan menjadi https


C. PENILAIAN MANDIRI

Jawablah pertanyaan di bawah ini dengan tepat dan benar!
1. Jelaskan pengertian dari Web Server! 
2. Sebutkan 10 Aplikasi Web Server yang dapat melayani akses dalam jaringan komputer.
3. Jelaskan alasan kenapa web server menjadi bagian yang sangat penting dari Internet dan intranet? 
4. Jelaskan alasan kenapa sistem operasi berbasis UNIX lebih banyak digunakan untuk mendukung web server? 
5. Protokol yang dilayani oleh webserver adalah... 
6. Jelaskan proses yang terjadi antara Web Browser dengan Web Server. 
7. Jelaskan apa yang menjadi keunggulan dari bahasa pemrograma PHP. 
8. Bagaimana TLS (Transport Layer Security) dan SSL (Secure Sockets Layer) melakukan pengamanan data pada webserver? 
9. Sebutkan port yang digunakan oleh http dan https! 10. Sebutkan beberapa web browser yang digunakan untuk mengakses web server.


D. PENILAIAN KELOMPOK

1. Buatlah kelompok yang terdiri dari 2 – 4 anak 
2. Lakukan praktikum installasi dan konfigurasi Web Server, gunakan Aplikasi Web Server yang bebeda (apache2 / nginx). 
3. Isikan halaman web statik pada webserver yang telah dibuat. 
4. Catat kendala yang terjadi saat pembuatan web Server. 
5. Presentasikan instalasi web server dan halaman statik web yang dibuat beserta kendala
yang terjadi dengan kompak, jelas, padat, dan singkat!


E. KOMPETENSI

Pilihlah jawaban yang paling tepat dengan memberikan tanda silang (X) pada huruf A, B, C, D atau E!

1. HTTP merupakan singkatan dari...
A. Hyper Transfer Text Protocol 
B. Homepage Transfer Text Protocol 
C. Hypertext Transfer Protocol 
D. Homepage Text Transfer Protocol
E. Highend Transfer Text Protocol 

2. Port yang digunakan oleh webserver dalam melayani pengguna adalah...
A. 80,443
D. 82,433 
B. 90,443
E. 81,430. 
C. 80,433 

3. Berikut ini yang bukan merupakan aplikasi web server adalah...
A. Apache
D. Kestrel 
B. Nginx
E. Lighttpd 
C. Chrome 

4. Salah satu aplikasi webserver yang cocok digunakan untuk lingkup sistem operasi Windows adalah...
A. Apache
D. IIS 
B. Nginx
E. LiteSpeed 
C. Lighttpd 

5. Cara melakukan instalasi aplikasi webserver apache di sistem operasi linux...
A. apt-get install apache
D. apt-get install apache2 
B. install apache
E. apt install apache 
C. apache installed 

6. File utama dalam konfigurasi apache adalah... 
A. /etc/apache/apache.conf
D. /etc/apache2.conf 
B. /etc/apache.conf
E. (apache/apache2.conf 
C. /etc/apache2/apache2.conf

7. HTTPS merupakan layanan web yang aman, disebut aman karena dengan menggunakan https maka...
A. Webserver di lapisi dengan password 
B. Web Browser dilapisi dengan password 
C. Protokol yang digunakan digunakan diberi password 
D. Port yang digunakan diberi password
E. Data yang ditransfer pada HTTPS dienkripsi. 

8. Browser menterjemahkan nama domain yang diketik menjadi alamat IP dengan bantuan...
A. DHCP Server
D. Web Server 
B. DNS Server
E. Mail Server 
C. FTP Server 

9. Di bawah ini yang bukan merupakan paket instalasi dari apache2 adalah...
A. libapr1
D. libaprutill-Idap 
B. libaprutil1
E. www-browser 
C. liblua5.2-0 

10. Document Root adalah tempat yang digunakan untuk..
A. Menyimpan folder Root 
B. Menyimpan data Root 
C. Dokumen perintah dasar Root 
D. Menyimpan file webserver
E. Dokumen konfigurasi pengguna root 

11. Perintah untuk mengaktifkan konfigurasi situs dalam webserver adalah...
A. apache2ct)
D. a2dissite 
B. apache2 start
E. apache2 restart 
C. a2ensite 

12. Perintah untuk mematikan konfigurasi situs dalam webserver adalah.....
A. apache2ct)
D. a2dissite 
B. apache2 stop
E. apache2 stopped 
C. a2ensite

13. Konfigurasi nama server yang diatur dalam aplikasi webserver apache2 ada pada perintah: 
A. Server Admin
D. DocumentRoot 
B. ServerName
E. Named.conf 
C. VirtualHost 

14. Agar folder tersebut dapat dibuka publik, maka pengaturan hak akses pada folder tersebut harus dibuah dengan perintah
A. chmod -R 755
D. chown -R 775 
B. chmod -R 775
E. chown -R 755 
C. chmod -R 644 

15. Folder tempat konfigurasi webserver engine X berada pada...
A. lenginex/
D. /etc/nginx 
B. /etc/enginex
E. /conf/nginx 
C. Inginx 

16. Konfigurasi yang menjelaskan bahwa web server nginx membuka layanan di port 8080 adalah...
A. <VirtualHost *:80>
D. listen [::]:8080 default_server 
B. listen [::]:80 default_server
E. nginx_server 8080; 
C. <VirtualHost *:8080> 

17. Solusi mencegah terjadinya error hash bucket memory adalah dengan...
A. Menghilangkan tanda pagar pada perintah server _hash_bucket_size 64; 
B. Menghilangkan tanda pagar pada perintah hash_bucket_size 64; 
C. Menghilangkan tanda pagar pada perintah server_names_hash_bucket_size 64; 
D. Menghilangkan tanda pagar pada perintah conf_server_names_hash_bucket_size 64; 
E. Menghilangkan tanda pagar pada perintah server_names_hash _size 64; 

18. Bahasa pemrograman web PHP diciptakan oleh...
A. Bill Gates
D. Rasmus Lerdorf 
B. Mark Zuckerberg
E. Bill Clinton 
C. Steve Jobs

19. Perhatikan isi konfigurasi file berikut ini


Perubahan apa dalam kode di atas agar file php menjadi yang pertama kali diakses oleh webserver...
A. Menghapus semua konfigurasi dan menuliskan index.php saja 
B. Menghapus semua DirectoryIndex hingga menyisakan index.php saja 
C. Merubah posisi index.php menjadi yang paling depan 
D. Merubah semua ekstensi menjadi .php
E. Menghapus semua konfigurasi yang ada dalam perintah tersebut 

20. Kode dalam bahasa pemrograman php untuk mengeluakan informasi dari web server
adalah...
A. Info.php
D. Dir.php 
B. Phpinfo();
E. Infodir(); 
C. Infophp();

F. SOAL VARIASI

Jawablah soal di bawah ini dengan petunjuk sebagai berikut!
Pilihan:
A. Jika 1, 2 dan 3 benar 
B. Jika 1 dan 3 benar 
C. Jika 2 dan 4 benar 
D. Jika hanya 4 benar 
E. Jika semua benar

1. Berikut ini merupakan aplikasi webserver yang popular...
(1) Apache2.
(2) Nginx.
(3) IIS. 
(4) LiteSpeed.

2. Layanan yang disediakan oleh webserver berada pada port....
(1) 80
(2) 21
(3) 443
(4) 22 

3. Berikut ini merupakan aplikasi web browser yang bisa digunakan untuk mengakses webserver...
(1) WinSCP
(2) Mozilla Firefox
(3) Filezilla Client 
(4) Google Chrome 

4. Konfigurasi yang perlu diperhatikan dan sebagian perlu dirubah untuk konfigurasi apache..
(1) Virtual Host
(2) ServerName
(3) Server Admin 
(4) DocumentRoot 

5. Kode berikut ini yang merupakan kode bahasa pemrograman HTML adalah...
(1) <head>
(2) <title>
(3) <body> 
(4) <echos 

6. Paket yang diinstall ketika melakukan pemasangan aplikasi webserver nginx diantaranya.... 
(1) libapr1
(2) libaprutill
(3) liblua5.2-0 
(4) libgd3 

7. Konfigurasi yang perlu diperhatikan dan sebagian perlu dirubah untuk konfigurasi nginx...... 
(1) listen
(2) root
(3) server_name 
(4) virtualhost 

8. Kode berikut ini yang merupakan kode bahasa pemrograman PHP adalah....
(1) echo
(2) body
(3) for 
(4) title 

9. Metode keamanan saat server memberikan akses ke client dengan cara melakukan enkripsi data yang dikirimkan dengan menggunakan protokol.... 
(1) SSH.
(2) SSL.
(3) TSL. 
(4) TLS,

10. Tanda komunikasi antara server dengan client berjalan aman....
(1) Ada permintaan memasukkan password saat mengakses server. 
(2) Loading yang cukup lama untuk mengenali client. 
(3) Huruf pada browser tidak terbaca. 
(4) Address bar alamat browser menjadi https.

0 komentar: