Ketika kamu pertama kali menyewa VPS yang terinstall OS Ubuntu 22.04 LTS, ada beberapa langkah penting yang harus kamu lakukan untuk meningkatkan keamanan dan memberikan pondasi yang solid untuk penggunaan server kedepannya. Ubuntu 22.04 LTS (Jammy Jellyfish) adalah versi Long Term Support terbaru yang akan mendapat dukungan hingga April 2027, menjadikannya pilihan ideal untuk server production.

Panduan Setup Awal Server Ubuntu 22.04 LTS untuk Keamanan Optimal
Update 2025: Artikel ini telah diperbarui dengan best practices terkini untuk Ubuntu 22.04 LTS, termasuk security hardening dan konfigurasi UFW firewall yang disempurnakan.
💼 Tidak punya waktu untuk setup manual? Kami menyediakan jasa setting VPS profesional dengan security hardening lengkap, monitoring server, dan optimasi performa untuk bisnis Anda.
1. Login sebagai Root
Untuk login atau masuk ke server kamu, kamu sebelumnya harus tahu alamat IP public server yang kamu miliki. Kamu juga wajib tahu passwordnya, biasanya bisa didapatkan di panel provider tempat kamu menyewa VPS nya atau juga biasanya ada email notif yang masuk ke email kamu memberitahukan credential login yang berisi alamat ip dan juga password untuk masuk ke server. Dan default user pada server yang baru di sewa adalah root.
Silakan kamu login dengan terminal atau SSH client seperti putty, masuk dengan baris perintah seperti ini:
ssh root@ip_server_kamu
Selesaikan proses login, selanjutnya masukkan password. Jika baru pertama kali login biasanya server akan meminta kamu untuk merubah password.
Tentang Root
Root user adalah administratif user pada Linux, yang mempunyai akses super seperti super administrator pada windows. Jadi dengan root kamu bisa bebas menginstall program, service apa saja.
Memakai root pada penggunaan server sehari-hari sangatlah riskan, karena sifat root yang mempunyai hak bebas untuk mengatur server, install segala macam, hal ini sangatlah membahayakan penggunaan server. Alternatif yang lebih aman adalah dengan membuat user baru dengan akses yang serupa dengan root.
2. Update Sistem (Ubuntu 22.04 LTS)
Sebelum melakukan konfigurasi lanjutan, pastikan sistem Ubuntu 22.04 kamu sudah ter-update dengan patch keamanan terbaru. Jalankan perintah berikut:
sudo apt update && sudo apt upgrade -y
Untuk instalasi package tambahan yang diperlukan:
sudo apt install curl wget git nano htop unattended-upgrades -y
Package yang diinstall:
curl
&wget
: untuk download filegit
: version control systemnano
: text editor yang user-friendlyhtop
: monitor sistem yang lebih baik daritop
unattended-upgrades
: untuk automatic security updates
3. Buat User Baru
Ketika kamu sudah login menggunakan root, selanjutnya kita akan menyiapkan membuat user baru yang nantinya akan kita gunakan untuk login seterusnya menggunakan user tersebut, tidak lagi login menggunakan root.
Berikut contoh baris peritnah membuat user baru dengan username gegeriyadi
, silakan kamu ganti dengan username kamu sendiri ya.
adduser gegeriyadi
Selanjutnya akan muncul beberapa pertanyaan, termasuk tentang password.
Masukkan password yang kuat, dan opsi lainnya seperti informasi tambahan bisa kamu isi ataupun kamu kosongkan dengan tekan Enter.
4. Beri Hak Akses Root
Sekarang, kita punya user baru dengan hak akses tipe reguler, atau secara kasarnya adalah akun biasa
. Untuk bisa melakukan proses administratif seperti root (install/remove) selanjutnya kita akan membuat akun ini sebagai tipe superuser
, yang mempunyai privilege sama seperti root akun dengan menggunakan perintah sudo
diawal baris perintah.
Sebagai root, jalankan baris perintah berikut untuk menambahkan akun biasa yang dibuat tadi kedalam grup sudo:
usermod -aG sudo gegeriyadi
Sekarang silakan kamu coba gunakan perintah dengan perintah yang diharuskan mempunyai hak privilege contohnya sudo apt-get udpate
.
5. Tambahkan Public Key Authentication (Sangat disarankan)
Step berikutnya dalam menambah keamanan server adalah membuat Public Key Authentication untuk user baru yang tadi dibuat. Setting ini akan lebih meningkatkan keamanan server karena server akan meminta Private SSH Key untuk bisa masuk ke dalam server.
Buat Sepasang SSH Key (Public & Private Key)
Jika sebelumnya kamu belum memiliki sepasang SSH key, yaitu key autentikasi yang terdiri dari Public dan Private Key, kamu harus membuatnya. Jika kamu sudah punya sebelumnya kamu bisa skip langkah ini dan langsung ke bagian berikutnya yaitu Menyalin Public Key
.
Gunakan baris perintah berikut untuk membuat sepasang SSH key pada local machine (komputer) kamu:
ssh-keygen
Asumsikan local user di komputer kamu adalah localuser
maka kamu akan melihat output dari hasil generate pada baris perintah diatas seperti ini:
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/localuser/.ssh/id_rsa):
Tekan enter untuk menyetujui nama file dan lokasi file berada (atau kamu bisa sesuaikan dengan nama dan lokasi yang kamu inginkan, saran saya sih biarkan default seperti itu).
Selanjutnya kamu akan dimintai masukkan password untuk mengamankan key kamu, kamu bisa mengisinya bisa juga membiarkannya tanpa password.
Baris perintah tadi akan menghasilkan 2 file, file pertama adalah private key yang dafultnya bernama id_rsa
dan file kedua adalah public key id_rsa.pub
. Kedua file tersebut berada pada folder bernama .ssh
di lokasi user home berada, defaultnya di /c/users/localusername/.ssh
.
Menyalin Public Key ke Server
Langkah berikutnya, kamu perlu menyalin Public Key yang telah di generate tadi ke server untuk keperluan login. Caranya ketik kan baris perintah berikut:
ssh-copy-id gegeriyadi@ip_server_kamu
Setelah dimintai password user dan kamu berhasil login, artinya kamu berhasil menghubungkan local computer kamu dengan server, yang untuk selanjutnya kamu login nanti tidak perlu lagi menggunakan password.
6. Me-nonaktifkan Autentifikasi Password (Sangat di Sarankan)
Sebelumnya kamu login via SSH menggunakan password, setelah membuat SSH key dan menghubungkan nya ke server sekarang kamu tidak perlu lagi login menggunakan password, hal ini tentu akan meningkatkan keamanan server karena orang orang yang tidak berkepentingan yang tidak memiliki SSH key tidak akan bisa masuk ke dalam server.
Untuk menonaktifkan autentifikasi password, kamu perlu mengedit konfigurasi sshd_config
bisa kamu lakukan dengan baris perintah berikut, pertama kita buka file config-nya dahulu dengan nano editor. Kamu bisa melakukan ini dengan root atau user yang baru dibuat tadi.
sudo nano /etc/ssh/sshd_config
Cari baris kode yang berkaitan dengan PasswordAuthentication
, dan ubah nilai nya menjadi no
.
PasswordAuthentication no
Lalu ketik perintah berikut untuk me-reload SSH Daemon:
sudo systemctl reload ssh
Jika sudah, kamu bisa melakukan test login, coba logout terlebih dahulu dengan perintah exit
. Lalu login dengan ssh gegeriyadi@ip_server_kamu
. Dan ya, kamu sudah tidak perlu lagi login dengan password.
7. Disable Root Login
Akun root adalah akun yang utama di sistem operasi linux. Akun ini memiliki akses ke semua perintah dan file di sistem dengan kuasa baca, tulis dan eksekusi penuh.
Karena akun root ini mempunyai power yang absolut, setiap tidakan yang dilakukannya sangatlah penting pada sistem. Dalam hal ini, setiap kesalahan yang dilakukan melalui akun root sangat memungkinkan memiliki impact yang besar pada operasi suatu sistem.
Selain itu, akun ini juga dapat disalahgunakan dengan menggunakannya secara tidak benar, dan juga untuk menghindari hal bodoh yang terjadi meskipun tidak sengaja, untuk itu disarankan untuk melakukan disable terhadap root login ini.
Caranya kamu hanya perlu melakukan setting di sshd_config
, buka dengan mengetikkan berikut
sudo nano /etc/ssh/sshd_config
Lalu cari PermitRootLogin
dan ubah nilai nya dari yes
ke no
PermitRootLogin no
Save dengan menekan tombol Ctrl
dan x
secara bersamaan, lalu enter.
8. Setting UFW Firewall (Ubuntu 22.04)
Ubuntu 22.04 LTS menggunakan UFW (Uncomplicated Firewall) sebagai front-end untuk iptables. UFW menyediakan interface yang lebih user-friendly untuk mengatur firewall dan secara default sudah terinstall di Ubuntu 22.04.
Cek Status UFW:
sudo ufw status
Konfigurasi Default Policy:
Sebelum mengaktifkan UFW, kita akan set policy default untuk memblokir semua koneksi masuk dan mengizinkan semua koneksi keluar:
sudo ufw default deny incoming
sudo ufw default allow outgoing
Izinkan SSH untuk Mencegah Lockout:
sudo ufw allow OpenSSH
Atau jika menggunakan port SSH custom:
sudo ufw allow 2222/tcp
Aktifkan UFW:
sudo ufw enable
Ketik y
untuk konfirmasi.
Cek Status Detail UFW:
sudo ufw status verbose
Output akan menampilkan:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
22/tcp (OpenSSH) ALLOW IN Anywhere
22/tcp (OpenSSH (v6)) ALLOW IN Anywhere (v6)
Menambah Rules untuk Service Lain:
Jika kamu akan install web server, tambahkan rules untuk HTTP dan HTTPS:
# Untuk Apache/Nginx
sudo ufw allow 'Nginx Full'
# atau secara manual
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Best Practices UFW:
Gunakan application profiles jika tersedia:
sudo ufw app list
Gunakan rate limiting untuk SSH untuk mencegah brute force:
sudo ufw limit ssh
Block specific IP jika diperlukan:
sudo ufw deny from 192.168.1.100
Allow from specific subnet untuk akses internal:
sudo ufw allow from 192.168.1.0/24
9. Konfigurasi Automatic Security Updates
Ubuntu 22.04 mendukung automatic security updates untuk menjaga server tetap aman:
sudo dpkg-reconfigure unattended-upgrades
Pilih “Yes” untuk mengaktifkan automatic security updates.
Verifikasi konfigurasi:
sudo systemctl status unattended-upgrades
10. Setting Timezone (Opsional)
Pastikan timezone server sesuai dengan lokasi kamu:
# Cek timezone saat ini
timedatectl
# Set timezone (contoh: Asia/Jakarta)
sudo timedatectl set-timezone Asia/Jakarta
# Verifikasi
timedatectl
Kesimpulan
Dengan mengikuti langkah-langkah di atas, kamu telah berhasil:
✅ Setup user non-root dengan privilege sudo
✅ Mengaktifkan SSH key authentication untuk keamanan maksimal
✅ Menonaktifkan password authentication dan root login
✅ Mengkonfigurasi UFW firewall dengan aturan yang ketat
✅ Mengaktifkan automatic security updates
✅ Mengatur timezone sesuai lokasi
Server Ubuntu 22.04 LTS kamu sekarang sudah memiliki security hardening yang solid dan siap digunakan untuk production.
Next Steps
Setelah setup awal ini selesai, kamu bisa melanjutkan dengan:
- Install Web Server: Cara Install LEMP Stack (Nginx, MySQL, PHP) di Ubuntu 22.04
- Setup SSL Certificate: Menggunakan Let’s Encrypt untuk HTTPS
- Install aplikasi: WordPress, Laravel, atau aplikasi web lainnya
- Monitoring: Setup log monitoring dan system monitoring
Additional Security Tips Ubuntu 22.04
1. Fail2Ban untuk Protection dari Brute Force:
sudo apt install fail2ban
sudo systemctl enable fail2ban
2. Regular Security Audit:
# Cek service yang berjalan
sudo ss -tulpn
# Cek login attempts
sudo journalctl -u ssh -f
# Cek UFW logs
sudo tail -f /var/log/ufw.log
3. Backup Strategy: Pastikan kamu memiliki backup strategy yang baik untuk data penting.
Dengan setup ini, server Ubuntu 22.04 LTS kamu sudah mengikuti security best practices 2025 dan siap untuk digunakan dalam environment production.
Referensi:
- Initial Server Setup with Ubuntu 22.04 - DigitalOcean
- Ubuntu 22.04 Security Guide - Official Ubuntu Documentation
- UFW Firewall Configuration - Ubuntu Community
- SSH Hardening Best Practices - Security Best Practices
About The Author

Gege Riyadi
Founder Gegeriyadi.com, layanan yang sudah 10 tahun bergerak di bidang Web Development & WordPress Security Services yang juga intens update seputar SEO dan juga Web Optimization... [Read full bio]