Cara Setup Unmanaged Debian Server

Cara install debian pada VPS unmanaged tidak serumit yang kita bayangkan. Kelebihan menggunakan VPS sebagai hosting untuk website / blog kita tentunya adalah kita memiliki resource yang lebih besar dibandingkan dengan shared hosting. Namun terkadang, ketika kita akan melakukan migrasi dari shared hosting ke vps, kita merasa kesulitan untuk memulainya, ini dikarenakan, kita harus mempersiapkan semuanya dari awal. Apalagi kalau kita awam terhadap Linux OS.

Namun, disini saya akan membagikan bagaimana cara mudah melakukan setup dasar VPS unmanaged menggunakan Debian sebagai Operating Systemnya.

Langkah-langkahnya instalasinya meliputi:

  • Konfigurasi Timezone
  • Memilih Locales
  • Membuat sudo user
  • Mengamankan SSH
  • Menambagkan rules firewall

Langkah pertama adalah meng-update apt database dan meng-upgrade semua packages yang terinstall.

apt-get update && apt-get upgrade

Langkah berikutnya:

Konfigurasi Timezone

Untuk mengkonfigurasi ulang timezone gunakan perintah dpkg-reconfigure

dpkg-reconfigure tzdata

Memilih Locales

Perintahnya juga sama menggunakan dpkg-reconfigure

dpkg-reconfigure locales

Membuat sudo user

Menggunakan user root di vps merupakan hal yang perlu dihindari, Untuk itu anda harus menambahkan normal user dan menambahkan ke dalam list sudoers agar bisa menjalankan perintah-perintah sebagai user root.

useradd –shell /bin/bash username
passwd username
visudo

*) ganti username dengan username yang anda inginkan

Sekarang tambahkan baris berikut pada akhir file.

username ALL=(ALL) ALL

Mengamankan SSH

Untuk alasan keamanan server anda, gantilah default port 22 dan menon-aktifkan root login. Buka konfigurasi SSH:

nano /etc/ssh/sshd_config

dan rubah baris berikut:

Port 22

rubah ke angka antara 49152 sampai 65535

Port 58736

Juga cari baris berikut

PermitRootLogin yes

dan rubah menjadi

PermitRootLogin no

Kemudian restart SSH service. Jika anda melakukan semua ini via SSH, tambahkan perintah exit untuk mengakhiri sesi SSH, dan lakukan login ulang.

/etc/init.d/ssh restart && exit

Login lagi ke server dengan port ssh yang telah anda rubah dan user sudo yang telah anda buat sebelumnya.

Sekarang, apabila anda akan melakukan perintah yang hanya bisa dilakukan oleh root user, anda cukup menambahkan kata “sudo” pada awal perintah tersebut. Untuk lebih jelasnya, ikuti tutorial selanjutnya.

Menambahkan rules firewall

Sebuah server menjadi lebih rentan terhadap serangan orang-orang yang tidak bertanggung jawab apabila akses ke semua port dalam sistem terbuka semua. Untuk meminimalisir hal ini, konfigurasi firewall sangatlah diperlukan. Berikut ini adalah seting firewall basic.

sudo iptables -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A INPUT ! -i lo -d 127.0.0.1/8 -j REJECT
sudo iptables -N MYRULES
sudo iptables -A INPUT -j MYRULES
sudo iptables -A MYRULES -m state –state NEW -p tcp –dport 58736 -j ACCEPT
sudo iptables -A MYRULES -m state –state NEW -p tcp –dport 80 -j ACCEPT
sudo iptables -A MYRULES -m state –state NEW -p tcp –dport 443 -j ACCEPT
sudo iptables -A INPUT -j DROP

Anda mungkin bisa merubah “DROP” pada baris akhir dengan “REJECT“, tetapi saya sendiri lebih suka menggunakan “DROP” karena ketika anda me-“reject packets”, sistem akan mengirim kembali “rejected packets” tersebut, tetapi “DROP” akan mengabaikan “packets” tersebut. Aturan/rules diatas akan men-drop icmp packets juga, yang artinya anda tidak akan mendapatkan reply jika anda melakukan ping ke server. Jika anda menginginkan reply dari server, tambahkan perintah berikut:

sudo iptables -A MYRULES -p icmp -m icmp –icmp-type 8 -j ACCEPT

Rules baru dapat anda tambahkan ke dalam table MYRULES. Sekarang waktunya untuk menyimpan rules firewall tersebut, dan memasitkan rules tersebut di load ketika server di reboot.

iptables-save > /etc/iptables.rules
sudo nano /etc/network/if-pre-up.d/firewall

Tambahkan baris berikut kedalam file

#!/bin/bash
/sbin/iptables-restore < /etc/iptables.rules

Simpan file dan jadikan file tersebut executable

sudo chmod +x /etc/network/if-pre-up.d/firewall

Kesimpulan

Ini hanyalah panduan dasar untuk konfigurasi Debian Server, untuk panduan lanjutan tentang pengaturan network service akan dibahas berikutnya.