Cara Membuat Website Yang Aman

Sebelum kita membahas lebih dalam bagaimana cara membuat website yang aman, ada beberapa komponen suatu website yang perlu kalian ketahui, beberapa hal yang perlu diperhatikan agar website kalian dapat dikategorikan sebagai website yang baik, yaitu :

User interface dan User Experience atau sering disebut dengan UI & UX adalah bagian dari “Web Design” dimana website yang akan di rancang harus mempermudah seorang pengunjung website tersebut agar dapat menjawab permasalahan yang mereka cari.

Performance

Performa suatu website juga sangat mempengaruhi tingkat kebaikan suatu website, dan kenyataan nya bahwa google (search engine) lebih suka dengan website yang memiliki performa yang tinggi dibandingkan yang tidak.

Security

Semua pemilik website selalu ingin agar website mereka memiliki fitur keamanan agar website mereka aman dari serangan atau pencurian data oleh hacker, salah satu cara untuk meningkatkan keamanan suatu website yaitu dengan memasang SSL pada website kalian.

SEO (Search Engine Optimization)

Agar website yang kalian buat dapat dikenali oleh search engine (Google), kalian perlu meningkatkan SEO (Search Engine Optimazation), ada beberapa cara untuk meningkat SEO, yaitu :

  • Pemilihan Keyword
  • Isi Konten
  • Backlink
  • dll
Maintenance

Pemeliharan suatu website perlu dilakukan untuk memastikan bahwa website yang sedang berjalan memiliki teknologi yang up to date. Serta pemeliharaan suatu website juga meliputi peningkatan performa dan keamanan.

Pada artikel “Cara membuat website yang aman”, saya akan membahas bagaimana meningkatkan keamanan suatu website dengan menggunakan SSL. SSL ini akan dipasang pada web server apache di article “Cara membuat website yang aman”. Sebelum kita masuk ke dalam proses pemasangan SSL, mari kita memahami tentang SSL dari apa itu sampai mengapa harus menggunakan SSL pada sebuah website.

1. Pengantar

1.1 Apa itu SSL?

SSL merupakan singkatan dari Secure Sockets Layer yang mengacu pada jenis keamanan digital yang memperbolehkan komunikasi di enkripsi di antara website dan web server.

Sementara itu pengertian HTTPS merujuk pada ekstensi HTTP. Website yang menginstall dan mengaktifkan sertifikat SSL dapat menggunakan protocol HTTPS untuk membuat koneksi yang lebih aman dengan server.

  • Sertifikat SSL berfungsi untuk mengamankan informasi yang bersifat privasi, misalnya data diri seseorang, pembayaran atau transfer dan informasi login.
  • SSL merupakan pilihan alternative dari text data transfer biasa di mana koneksi ke server tidak di enkripsi. Dengan adanya sertifikat ini, para hacker akan sangat sulit untuk menembus koneksi dan mencuri data anda
  • Bisa dikatakan, sebagian pengguna familiar dengan sertifikat SSL yang digunakan oleh para webmaster untuk mengamankan website dan juga menyediakan proteksi lebih bagi klien atau visitor terkait transaksi.

1.2 Mengapa Menggunakan SSL?

Seperti yang telah dijelaskan sebelumnya pengguna SSL sangatlah bermanfaat baik bagi end user maupun pemilik website. Pengguna sudah mulai peduli soal pentingnya keamanan internet di beberapa tahun terakhir ini. Itu berarti SSL menyediakan kelebihan yang sangat bagus bagi website modern mana pun.

Dengan SSL, tampilan website anda akan lebih professional

Coba anda ingat. Bisakah anda menyebutkan website popular mana saja yang tidak menampilkan icon gembok kecil di alamat web-nya? ya, dapat dikatakan hampir seluruh website pada saat ini sudah menggunakan SSL di website mereka.

Para pelaku bisnis mengetahui apa yang menjadi kekhawatiran pengguna website ketika hal ini berkaitan dengan privasi digital. Oleh karena itu mereka ingin para pelanggan tahu jika situs telah terlindungi. SSL merupakan cara terbaik untuk menyatakan bahwa platform anda aman. Selain itu, SSL juga memberikan tampilan professional untuk situs mana pun yang menggunakannya.

Sertifikat SSL menjadi sangat penting bagi website e-commerce yang tipe bisnisnya memerlukan informasi penting dan sensitive, seperti rincian kartu kredit. PCI (Payment Card Industry) Standard mengharuskan pembayaran online yang melalui SSL memiliki, setidaknya, 128-bit enkripsi. Enkripsi ini sebisa mungkin mengamankan transaksi online – iklan yang sangat baik untuk brand bisnis anda.

Mengenkripsi Informasi

Alasan utama mengapa penggunaan sertifikat SSL direkomendasikan adalah keamanan berlapis yang ditawarkannya. SSL menjamin bahwa setiap paket data yang ditukar antara pengguna browser dan website yang SSL-nya diaktifkan dilindungi oleh teknik enkripsi paling mutakhir. Hal ini mencegah tindakan pencurian data yang dilakukan oleh pihak yang di inginkan. Informasi yang berguna tidak akan terbaca karena teknik enkripsi tersebut.

Google suka degan situs yang menggunakan SSL

Beberapa perusahaan menghabiskan banyak uang optimasi mesin pencari (SEO) tanpa menyadari bahwa hanya dengan mengaktifkan sertifikat SSL, mereka dapat menaikkan ranking situs di Google Search. Website yang menggunakan SSL memiliki ranking lebih tinggi di Google Sarch ketimbang website yang tidak ada SSL.

1.3 Perbedaan Tipe SSL

Secara mendasar terdapat 3 macam sertifikat SSL, yaitu :

Domain Validation SSL

SSL ini hanya memerlukan validasi domain melalui email saja agar sertifikat SSL anda dapat digunakan, cukup beberapa menit saja SSL sudah dapat diaktifkan.

Business Validation SSL

Organisasi atau perusahaan yang ingin mengaktifkan SSL maka diperlukan beberapa dokumen untuk memenuhi persyaratan yang diperlukan untuk membuat sertifikat SSL.

Extended Validation SSL

SSL ini biasanya digunakan untuk website bisnis, perbankan maupun E-Commerce, Karena website – website tersebut memerlukan tingkat keamanan yang lebih. Extended Validation SSL memang memerlukan dokumen bisnis dan menghabiskan biaya paling tinggi diantara tipe sertifikat SSL yang lain. Namun tidak ada salahnya membayar lebih demi layanan terbaik, Dengan memilih tipe SSL ini, anda akan mendapatkan “Green Bar” pada address bar browser web.

Pada Artikel “Cara membuat website yang aman”, saya tidak akan menggunakan 3 tipe seperti yang sudah di jelaskan, saya akan menggunakan SSL yang dibuat secara gratis, Jika kalian penasaran, teruskan membaca artikel “Cara membuat website yang aman”.

Bagaimana pendapat kalian setelah membaca pengertian dan fungsi dari SSL pada sebuah website? Kalian pasti merasa bahwa SSL ini mempunyai peran yang sangat penting dalam keamanan sebuah website dimana banyak keuntungan yang bisa di dapat dengan menggunakan SSL di suatu website, langkah selanjutnya ada artikel “Cara membuat website yang aman” adalah proses persiapan instalasi SSL.

2. Persiapan Install SSL pada Apache

Seperti judul artikel ini, yaitu “Install SSL Pada Apache”, Kalian perlu menyiapkan web server dengan Apache. Untuk Apache yang saya gunakan adalah Apache yang dipasang secara manual bukan menggunakan web server yang sudah di paketkan seperti Xampp atau Wampserver.

Untuk proses pemasangan web server Apache secara manual, dapat kalian lihat pada article “Instalasi Apache dan PHP”.

Untuk artikel “Install SSL Pada Apache” saya akan menggunakan OS (Operating System) Windows Server 2012 R2 64 Bit. Untuk tahap – tahap yang akan kalian lakukan pada artikel ini yaitu :

  • Membuat Website dan Domain
  • Membuat Sertifikat SSL dengan Open SSL
  • Memasang SSL pada Apache

Jika kalian sudah siap, maka kalian sudah dapat masuk ke tahap selanjutnya.

3. Membuat Website dan Domain

Pembuatan website dan domain, saya akan membuat yang simple saja dengan menampilkan kata “Hello World” pada website yang akan kita gunakan untuk memasang sertifikat SSL, seperti gambar dibawah ini.

3.1 Membuat Index.php

  • Pertama kalian perlu membuka folder htdocs di dalam apache, direktori pada article ini adalah C:\Apache24\htdocs. Sesuaikan dengan direktori apache kalian
  • Buat folder baru, untuk nama folder bebas
  • Buka folder yang sudah kalian buat, di dalam folder tersebut buat 1 file baru dengan nama index.php
  • Selanjutnya kalian buka file index.php dengan menggunakan text editor, pada tutorial ini saya menggunakan Notepad++
  • Lalu tambahkan script sederhana, seperti gambar di bawah ini
  • Save file tersebut, lalu kalian dapat menutup text editor

3.2 Pengaturan httpd.conf

  • Langkah selanjutnya kalian perlu melakukan setting pada apache dengan mengakses file httpd.conf, pada tutorial ini direktori nya adalah C:\Apache24\conf
  • Buka file httpd.conf dengan text editor
  • Selanjutnya kalian mencari script “include conf/extra/httpd-vhost.conf”, lalu menghapus tanda # pada bagian depan script tersebut untuk mengaktifkan virtual host
  • Jika sudah selesai, kalian dapat save file httpd.conf lalu menutup text editor.

3.3 Pengaturan httpd-vhost.conf

  • Pada langkah ini, kalian akan perlu melakukan setting pada httpd-vhost.conf yang sudah diaktifkan pada pengaturan httpd.conf, untuk direktori nya adalah C:\Apache24\conf\extra
  • Buka file httpd-vhost.conf dengan text editor
  • Selanjutnya kalian perlu meng-copy 1 script pada httpd-vhost.conf seperti gambar di bawah ini
  • Lalu paste pada bagian paling bawah dan menghapus tanda # di depan script ini
  • Selanjutnya kalian perlu merubah script ini, seperti gambar di bawah ini
  • Pada ServerAdmin kalian dapat mengisi nya secara bebas, DocumentRoot harus disesuaikan dengan folder yang kalian buat pada htdocs, ServerName dapat kalian ubah dengan bebas, untuk ErrorLog dan CustomLog dapat kalian ubah atau biarkan saja default.
  • Jika kalian sudah selesai, kalian dapat save file httpd-vhost.conf lalu menutup text editor

3.4 Pengaturan Host

  • Pada tahap ini kalian perlu mendaftarkan domain di komputer atau laptop yang kalian gunakan, kalian perlu mencari file dengan nama host pada direktori C:\Windows\System32\drivers\etc
  • Buka file host dengan menggunakan text editor
  • Copy script seperti gambar di bawah ini
  • Lalu paste script tersebut pada bagian paling bawah, lalu menghapus tanda # pada bagian depan script ini
  • Selanjutnya kalian perlu mengubah localhost menjadi domain seperti yang kalian di ServerName pada file httpd-vhost.conf
  • Jika sudah, kalian dapat save file ini, lalu menutup text editor

3.5 Pengetesan

  • Sebelum kalian dapat mengakses domain lokal yang sudah kalian buat pada tahap sebelumnya, kalian perlu merestart Apache terlebih dahulu yang dapat kalian lihat pada article “Instalasi Apache dan PHP”.
  • Selanjutnya kalian dapat membuka browser, pada tutorial ini saya menggunakan “Google Chrome” sebagai browser nya
  • Pada kolom url browser, ketikakan domain yang sudah kalian buat pada file host, untuk domain yang dibuat pada tutorial ini adalah “opusitid.site”, lalu tekan enter
  • Jika kalian sudah melihat tampilan website seperti gambar di bawah ini, artinya kalian sudah berhasil membuat domain pada server lokal

4. Membuat sertifikat SSL dengan Open SSL

Untuk memasang SSL kalian perlu membuat sertifikat dan key untuk domain yang kalian buat, pada tahap ini saya akan memberikan langkah – langkah untuk membuat self SSL dengan menggunakan open SSL, untuk menghasilkan 2 file, yaitu Sertifikat dan Key.

4.1 Download dan Instalasi Open SSL

  • ·         Kalian perlu mendownload aplikasi Open SSL.

  • Untuk versi yang saya pilih adalah 1.1v untuk windows 64 bit, pastikan sesuai dengan OS yang kalian gunakan, pilih tombol exe untuk mendownload aplikasi Open SSL
  • Jika sudah kalian dapat mengsintall aplikasi Open SSL dengan membuka installer yang sudah kalian download
  • Untuk tahap instalasi kalian dapat lakukan sendiri atau mencari pada tutorial instalasi pada website tecadmin ini

4.2 Membuat Sertifikat dan key

  • Jika kalian menggunakan setting default saat melakukan proses instalasi, kalian dapat melihat folder dengan nama OpenSSL-Win64 di dalam folder program files, untuk direktori nya adalah C:\Program Files
  • Selanjutnya kalian dapat mengakses folder bin di dalam folder OpenSSL-Win64, pada direktori C:\Program Files\OpenSSL-Win64\bin
  • Selanjutnya kalian perlu membuka “openssl.exe” sebagai administrator, dengan klik kanan mouse pada file openssl.exe dan memilih Run as administrator
  • Maka kalian akan melihat halaman seperti gambar di bawah ini
  • Ketik script ini “req –x509 –nodes –days 365 –newkey rsa:2048 –keyout server.key –out server.crt
  • Lalu tekan enter, maka kalian akan melihat tampilan seperti gambar di bawah ini
  • Selanjutnya kalian hanya perlu mengisi tiap pertanyaan yang disediakan, setelah kalian mengisi pertanyaan pertama, maka kalian cukup tekan enter untuk ke pertanyaan selanjutnya
  • Pertanyaan terakhir adalah Email Address, perlu diperhatikan untuk Common Name, pastikan sesuai dengan domain yang sudah kalian buat pada langkah sebelumnya, untuk Common Name artikel ini adalah opusitiid.site, lalu tekan enter
  • Anda dapat menutup OpenSSL lalu membuka folder bin di dalam folder OpenSSL-Win64 pada direktori C:\Program Files\OpenSSL-Win64\bin, maka kalian akan melihat 2 file baru dengan nama server.crt dan server.key
  • Selanjutnya kalian dapat memindahkan 2 file tersebut ke dalam folder, pada artikel ini saya akan memindahkan file tersebut kedalam folder apache, dengan nama folder cert
  • Pada tahap ini kalian sudah berhasil membuat sertifikat dan key dengan menggunakan Open SSL, sebelum dapat memasang SSL, kalian perlu menginstall sertifikat terlebih dahulu

4.3 Install Sertifikat SSL

  • Pada tahap ini, kalian perlu menginstall sertifikat dengan membuka server.crt
  • Pilih “Install Certificate”
  • Pilih “Local Machine” lalu tekan next
  • Pillih “Place all certificates in the following store”, lalu pilih “browse”
  • Selanjutnya kalian memilih folder dengan nama “Trusted Root Cerfitication Authorities”, lalu tekan tombol ok
  • Pilih next
  • Pilih finish, maka anda sudah berhasil menginstall sertifikat SSL di komputer atau laptop yang anda gunakan, selanjutnya kita akan masuk ke tahap terakhi yaitu memasang SSL pada domain atau website yang sudah kalian buat

5. Memasang SSL pada Website

Perbedaan antara website yang memiliki SSL atau tidak adalah bila website sudah terpasang SSL, kalian dapat mengakses web tersebut dengan menambahkan “https://” sebelum domain website, contoh adalah domain opusitid.site menjadi https://opusitid.site

5.1 Setting httpd.conf

  • Kalian perlu mengaktifkan SSL pada apache dengan membuka file httpd.conf pada folder apache seperti langkah sebelumnya
  • Buka file httpd.conf dengan text editor, lalu mengaktifkan module SSL dengan menghapus tanda # pada script “LoadModule ssl_module modules/mod_ssl.so”
  • Selanjutnya mengaktifkan file httpd-ssl.conf, dengan menghapus tanda # pada script “include conf/extra/httpd-ssl.conf”
  • Jika sudah selesai mengubah script seperti langkah diatas, kalian dapat save file httpd.conf, lalu menutup text editor

5.2 Setting httpd-ssl.conf

  • Selanjutnya kalian perlu mengubah file httpd-ssl.conf yang sudah diaktifkan pada httpd.conf di dalam folder extra pada direktori C:\Apache24\conf\extra
  • Buka file httpd-ssl.conf dengan text editor
  • Selanjutnya kalian perlu mencari script “SSLCertificateFile”, script ini berfungsi untuk membaca sertifikat SSL
  • Yang perlu kalian ubah adalah pada baris 144, ubah direktori nya sesuaikan dengan direktori dimana kalian menyimpan sertifikat dan key yang sudah dibuat dengan Open SSL. Kalo saya menyimpan sertifikat di dalam folder apache maka direktori nya adalah C:\Apache24\cert\server.crt
  • Selanjutnya kalian perlu menyari script “SSLCertificateKeyFile”, script ini untuk membaca file key SSL
  • Ubah direktori nya sesuaikan dengan direktori pada langkah sebelumnya, cukup mengganti file extension nya menjadi key, C:\Apache24\cert\server.key
  • Jika sudah selesai, maka kalian dapat save httpd-ssl.conf lalu menutup text editor

5.3 Setting httpd-vhost.conf

  • Selanjutnya kalian perlu membuka kembali httpd-vhost.conf, file ini terletak didalam folder yang sama dengan httpd-ssl.conf
  • Buka file httpd-vhost.conf dengan text editor, lalu mencari virtual host yang sudah dibuat pada tahap pembuatan website atau domain
  • Copy dan paste virtual host tersebut di paling bawah text editor
  • Ubah angka 80 menjadi 443, angka tersebut adalah port yang akan digunakan oleh web server
  • Selanjutnya kalian perlu menambah script baru pada bagian bawah setelah CustomLog, script nya seperit gambar dibawah ini
  • Maka Script lengkap untuk VirtualHost dengan port 443 adalah seperti gambar dibawah ini
  • Jika sudah selesai, kalian dapat save file httpd-vhost.conf dan menutup text editor

5.4 Pengetesan

  • Seperti sebelumnya, jika kalian sudah selesai merubah file setting pada apache, kalian perlu restart Apache terlebih dahulu agar kalian dapat menjalankan setting yang sudah berubah atau setting baru
  • Selanjutnya kalian dapat membuka website yang sudah kalian buat dengan browser
  • Selanjutnya pada bagian depan domain nya, tambahkan https://, domain yang dibuat pada tutorial ini adalah opusitid.site menjadi https://opusitid.site, lalu tekan enter
  • Jika kalian melihat tampilan seperti gambar di bawah ini, penyebab nya adalah sertifikat yang kita buat tidak lah asli ini yang menyebabkan sertifikat menjadi “unsafe”, kalian perlu menekan tombol “advanced”
  • Lalu memilih “Proceed to domain kalian (unsafe)”
  • Maka kalian akan melihat tulisan “Not Secure” disamping kanan tempat url browser
  • Untuk meilhat sertifikat yang terpasang, kalian dapat menekan tulisan Not Secure, lalu menekan tulisan Certificate
  • Kalian akan melihat sertifikat yang sudah dibuat dengan Open SSL
  • Bila hasil kalian sama dengan gambar di atas, maka kalian sudah berhasil memasang SSL pada domain atau website di web server Apache

6. Kesimpulan

Setelah kita melewati banyak langkah dari membuat domain atau website di local pada web server apache, sampai memasang SSL. Pada umumnya jika kalian sudah mempunyai domain atau website serta sertifikat dan key yang di buat melalui lembaga resmi seperti GoDaddy, kalian hanya perlu memulai dari tahap ke 5.

Pemasangan sertifikat SSL pada web server Apache tidaklah rumit dan sulit karena hampir semua script pendukung untuk pemasangan SSL ini sudah disediakan oleh web server ini. Jika kalian merasa terbantu dengan adanya artikel ini, jangan lupa untuk share artikel cara membuat website yang aman kepada teman kalian yang membutuhkan informasi pentinganya SSL serta tutorial install ssl pada apache.

Anda juga dapat menggunakan jasa kami, kami menyediakan jasa pembuatan website, dimana kami sangat memperhatikan aspek – aspek seperti UI & UX, Performance, Security dan SEO. Kami menggunakan teknologi wordpress dalam pembuaan website nya, kami juga sangat memperhatikan cara membuat website yang aman tidak hanya mengandalkan SSL. Untuk portofolio kami dapat kalian lihat pada website opusisv.com.