1. Hypertext Transfer Protokol (HTTP) adalah
sebuah protokol jaringan lapisan aplikasi yang digunakan untuk sistem informasi
terdistribusi, kolaboratif, dan menggunakan hipermedia penggunaannya banyak
pada pengambilan sumber daya yang saling terhubung dengan tautan yang disebut
dengan dokumen hiperteks yang kemudian membentuk World Wide Web pada tahun 1990
oleh fisikawan inggris yang bernama Tim Berners Lee. Http merupakan protokol
yang menyediakan perintah dalam komunikasi antar jaringan, yaitu komunikasi
antara jaringan komputer client dengan web server. Dalam
komunikasi ini, komputer clientmelakukan permintaan dengan
mengetikkan alamat atau website yang ingin di akses. Sedangkan server mengolah
permintaan tersebut berdasarkan kode protokol yang di inputkan.
HTTP disebut
protokol Stateless karena setiap perintah dijalankan secara
independen, tanpa pengetahuan tentang perintah yang datang sebelumnya. Ini
adalah alasan utama yang sulit untuk menerapkan situs Website yang bereaksi
secara cerdas untuk input pengguna.
2. Hypertext Transfer Protocol Secure (HTTPS) memiliki
pengertian yang sama dengan HTTP hanya saja HTTPS memiliki kelebihan fungsi di
bidang keamanan (secure). HTTPS di temukan oleh Netscape
Communication Corporation. HTTPS menggunakan Secure Socket Layer (SSL)
atau Transport Layer Security(TLS) sebagai sublayer dibawah HTTP
aplikasi layer yang biasa. HTTP di enkripsi dan deskripsi dari halaman yang di
minta oleh pengguna dan halaman yang di kembalikan oleh web server. Kedua
protokol tersebut memberikan perlindungan yang memadai dari serangan
eavesdroppers, dan man in the middle attacks. Pada umumnya port
yang digunakan HTTPS adalah port 443. Tingkat keamanan tergantung pada
ketepatan dalam mengimplementasikan pada browser web dan perangkat lunak server
dan didukung oleh algorithma penyandian yang aktual. Oleh karena itu, pada
halaman web digunakan HTTPS, dan URL yang digunakan dimulai dengan
‘https://’.
Https dapat menjamin
keamanan dalam Autentikasi server yaitumemungkinkan peramban dan pengguna
memiliki kepercayaan bahwa mereka sedang berbicara kepada server aplikasi
sesungguhnya.Https juga mampu dalam menjaga kerahasiaan data dan Integritas
data.
3. Perbedaan utama
HTTP dan HTTPS
Perbedaan utama
antara http dan https, dimulai dengan port default, yang 80 untuk http dan 443
untuk https. Https bekerja dengan transmisi interaksi yang normal http melalui
sistem terenkripsi, sehingga dalam teori, informasi tidak dapat diakses oleh
pihak selain klien dan server akhir. Ada dua jenis umum lapisan enkripsi:
Transport Layer Security (TLS) dan Secure Socket Layer (SSL), yang keduanya
menyandikan catatan data yang dipertukarkan.
4. Cara Kerja
Https bukan protokol
yang terpisah, tetapi mengacu pada kombinasi dari interaksi HTTP normal melalui
Socket Layer terenkripsi SSL (Secure) atau Transport Layer Security (TLS)
mekanisme transportasi. Hal ini menjamin perlindungan yang wajar dari penyadap
dan (asalkan dilaksanakan dengan benar dan otoritas sertifikasi tingkat atas
melakukan pekerjaan mereka dengan baik) serangan.
Port default TCP https:
URL adalah 443 (untuk HTTP tanpa jaminan, defaultnya adalah 80). Untuk
mempersiapkan web-server untuk koneksi https penerima harus sebagai
administrator dan membuat sertifikat kunci publik untuk server web. Sertifikat
ini dapat dibuat untuk server berbasis Linux dengan alat seperti Open SSL yang
ssl atau gensslcert SuSE. Sertifikat ini harus ditandatangani oleh otoritas
sertifikat satu bentuk atau lain, yang menyatakan bahwa pemegang sertifikat
adalah siapa yang mereka ajukan. Web browser pada umumnya didistribusikan
dengan penandatanganan sertifikat otoritas sertifikat utama, sehingga mereka
dapat memverifikasi sertifikat yang ditandatangani oleh mereka.
Bila menggunakan
koneksi https, server merespon koneksi awal dengan menawarkan daftar metode
enkripsi mendukung. Sebagai tanggapan, klien memilih metode sambungan, dan
klien dan sertifikat server pertukaran untuk otentikasi identitas mereka.
Setelah ini dilakukan, kedua belah pihak bertukar informasi terenkripsi setelah
memastikan bahwa kedua menggunakan tombol yang sama, dan koneksi ditutup. Untuk
host koneksi https, server harus memiliki sertifikat kunci publik, yang embeds
informasi kunci dengan verifikasi identitas pemilik kunci itu. Sertifikat
Kebanyakan diverifikasi oleh pihak ketiga sehingga klien yakin bahwa kuncinya
adalah aman.
2. Langkah – Langkah Instalasi
A. Web Server (Apache2)
1. Untuk
menginstall paket web server ketik perintah “apt install apache2 php” . dan tunggu hingga selesai.
2. Pindah ke
direktori sites-available dengan
perintah cd /etc/apache2/sites-available/
3. Anda
bisa melihat isi direktori dengan
perintah ls dapat terlihat 2 file. Kita coba melihat file 000-default.conf
dengan konfigurasi “nano
000-default.conf”.
4. Kita masuk ke
direktori tempat menyimpan file web server, pada /var/www/html. Kita ketik
perintah “cd /var/www/html” .
Setelah itu konfigurasikan file index.html didalamnya ketik “nano index.html”. Lalu jangan lupa save.
5. Setelah itu
restart service apache2nya. Ketik “/etc/init.d/apache2
restart”. Jika gagal berarti ada konfigurasi yang salah.
6. Kita coba
buka di dalam web browser dengan mengetikkan http://AlamatIp anda. Jika berhasil aka nada tampilan seperti gambar
dibawah.
Kita juga dapat
mengakses didalam debian dengan service “w3m”. anda bisa menginstal service nya
dengan mengetik “apt install w3m” dan
mengetik w3m http://AlamatIp
B. Web Server Secure (HTTPS)
1. Install paket
“openssl ssl-cert” dengan mengetik perintah “apt install openssl ssl-cert” karena disini saya telah mengintall
maka disitu tampil “already the newest
version” .
2. Setelah itu kita buat sertifikan sendiri (self-signed) dengan mengetik perintah berikut.
openssl req –x509 –newkey rsa:1024 –keyout
/etc/ssl/private/apache2.pem –out /etc/ssl/certs/apache.crt –nodes –days 365
Setelah itu isi
data-data tentang diri anda.
3. Setelah itu
kita rubah permission folder yang telah kita buat tadi, agar admin saja yang
dapat mengakses dan hanya perintah read & write saja. Ketik perintah “chmod 600 /direktori” .
4. Langkah
selanjutnya kita masuk ke direktori /etc/apache2/sites-available/ dengan
mengetik perintah “cd /etc/
apache2/sites-available/” dan kita konfigurasikan file default-ssl.conf
dengan peintah “nano default-ssl.conf”
5. Kita aktifkan
“SSLEngine on”, lalu “SSLCertificateFile” dan “SSLCertificateKeyFile” arahkan
ke direktori tempat sertifikat yang telah kita buat tadi.
6. Kita aktifkan
konfigurasi file situs ssl dengan perintah “a2ensite
default-ssl.conf” .
7. Setelah itu
kita aktifkan konfigurasi sertifikat sslnya dengan perintah “a2enmod ssl” .
8. Setelah itu
kita restart service apachenya dengan perintah “/etc/init.d/apache2.restart”.
9. Kita coba
buka dengan web browser lagi, ketik https://AlamatIp akan tampil peringatan seperti gambar dibawah. Kita
tetap masuk saja
C. Redirect HTTP ke HTTPS
1. Kita
konfigurasikan file 000-default.conf pada /etc/apache2/sites-available/ dengan “nano
/etc/apache2/sites-available/000-default.conf” tambahkan script “RedirectPermanent / https://AlamatIp” . dibawah DocumentRoot.
2. Kemudian kita
restart service apache2 dengan perintah “/etc/init.d/apache2
restart”
3. Kita coba
buka website kita dengan ketik http://AlamatIp
. Jika berhasil
maka akan langsung diarahkan ke web HTTPS.
Jika benar akan
tampil seperti gambar diatas. Kalau tidak berhasil maka ada konfigurasi yang
salah.
Kesimpulan, Jika
kita hendak membuat web server tentunya kita harus memperhatikan tingkat
keamanan nya. Entah kita memilih HTTP atau HTTPS. Karena HTTPS memiliki keamanan lebih daripada HTTP
Demikian Tutorial dari saya. Apabila ada yang kurang saya minta maaf. Jangan lupa comment dan bagikan artikel ini jika dinilai bermanfaat. Terima Kasih
Belum ada tanggapan untuk "Web Server (HTTP dan HTTPS)"
Post a Comment