Daftar Isi
--
Persiapan Instalasi
1. Kebutuhan Hardware Minimum
| Komponen | Minimum | Direkomendasikan |
|---|---|---|
| CPU | 1 Core | 2+ Core |
| RAM | 1 GB | 4+ GB |
| Storage | 10 GB | 50+ GB SSD |
| Network | Ethernet | Ethernet/Gigabit |
2. Software yang Dibutuhkan
- *Rufus
- (untuk membuat bootable USB di Windows)
- *balenaEtcher
- (alternatif cross-platform)
- *VirtualBox
- (untuk testing di virtual machine)
3. Download ISO Linux Server
Ubuntu Server 22.04 LTS
-
Download: ubuntu.com/download/server
-
Size: ~1.4 GB
-
Support: 5 tahun LTS
CentOS Stream 9
-
Download: centos.org/download
-
Size: ~2 GB
-
Support: Rolling release
--
Pilihan Distribusi Linux
Ubuntu Server
✅ *Kelebihan:
-
Mudah untuk pemula
-
Repository lengkap
-
Dokumentasi bagus
-
Komunitas besar
❌ *Kekurangan:
- Update setiap 6 bulan
- Sedikit lebih berat
CentOS Stream
✅ *Kelebihan:
-
Sangat stabil
-
Cocok untuk enterprise
-
Update keamanan cepat
-
Ringan
❌ *Kekurangan:
- Learning curve lebih curam
- Repository lebih terbatas
--
Instalasi Ubuntu Server
Step 1: Buat Bootable USB
- Download Rufus dari rufus.ie
| Link | Type | Platform | Size | Date |
|---|---|---|---|---|
rufus-4.11.exe |
Standard | Windows x64 | 1.8 MB | 2025.10.02 |
rufus-4.11p.exe |
Portable | Windows x64 | 1.8 MB | 2025.10.02 |
rufus-4.11_x86.exe |
Standard | Windows x86 | 1.8 MB | 2025.10.02 |
rufus-4.11_arm64.exe |
Standard | Windows ARM64 | 4.9 MB | 2025.10.02 |
-
Masukkan USB flash drive (minimal 4GB)
-
Pilih ISO Ubuntu Server
-
Klik "Start" untuk membuat bootable USB
Step 2: Boot dari USB
-
Masukkan USB ke server
-
Restart dan masuk BIOS (biasanya F2, F10, atau DEL)
-
Set boot priority ke USB
-
Save dan restart
Step 3: Proses Instalasi
Language Selection

*Source: ubuntu.com
Pilih "English" atau "Bahasa Indonesia" lalu tekan Enter.
Keyboard Configuration

*Source: ubuntu.com
Pilih layout keyboard yang sesuai, biasanya "English (US)".
Network Configuration
*Source: ubuntu.com
System akan otomatis mendeteksi network interface. Untuk server, disarankan menggunakan IP statik:
# Contoh konfigurasi IP statik
IP Address: 192.168.1.100
Netmask: 255.255.255.0
Gateway: 192.168.1.1
DNS: 8.8.8.8, 8.8.4.4
Proxy Configuration
Jika menggunakan proxy corporate, masukkan konfigurasi proxy. Jika tidak ada, biarkan kosong.
Mirror Address
Pilih mirror terdekat untuk kecepatan download. Untuk Indonesia:
id.archive.ubuntu.comkambing.ui.ac.id
Disk Partitioning
*Source: ubuntu.com
Opsi 1: Otomatis (Recommended untuk pemula)
-
"Use an entire disk"
-
"Set up this disk as an LVM group"
*Opsi 2: Manual (Advanced)
/ (root) : 20-30 GB
/home : 10-20 GB
/var : 20-50 GB
/swap : 2x RAM size
/tmp : 5-10 GB
User Configuration
*Source: ubuntu.com
-
Server name:
ubuntu-server -
Username:
admin(hindari "root") -
Password: Gunakan password yang kuat (minimal 12 karakter)
-
Enable SSH key: Yes (untuk akses remote)
Software Selection
*Source: ubuntu.com
Pilih software yang akan diinstall:
- ✅ *OpenSSH server
- (wajib untuk remote access)
- ✅ *Standard system utilities
- ⬜ Docker (install manual jika diperlukan)
- ⬜ *LAMP
- (install manual jika diperlukan)
Install GRUB Bootloader
*Source: ubuntu.com
Pilih "Install the GRUB boot loader on a hard disk" untuk membuat server bisa booting.
Step 4: Post-Installation
Setelah instalasi selesai, system akan restart. Lepas USB dan server akan boot ke Ubuntu Server.
Login dengan username dan password yang sudah dibuat:
Ubuntu 22.04 LTS ubuntu-server tty1
ubuntu-server login: admin
Password: *******
*
Welcome to Ubuntu 22.04 LTS (GNU/Linux 5.15.0-52-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/pro
Last login: Wed Dec 10 10:30:15 2025
admin@ubuntu-server:~$
--
Instalasi CentOS Stream
Step 1: Buat Bootable USB
Sama seperti Ubuntu, gunakan Rufus atau balenaEtcher untuk membuat bootable USB dari ISO CentOS Stream.
Step 2: Boot dan Proses Instalasi
Boot Menu
*Source: docs.centos.org
Pilih "Install CentOS Stream 9" dan tekan Enter.
Language Selection
Pilih "English" atau "Bahasa Indonesia" lalu klik "Continue".
Installation Summary
*Source: docs.centos.org
Konfigurasi yang perlu diatur:
-
Keyboard: Layout keyboard
-
Language Support: Bahasa yang didukung
-
Time & Date: Timezone (Asia/Jakarta)
-
Installation Destination: Partisi disk
-
Network & Host Name: Konfigurasi network
-
Software Selection: Pilihan software
Disk Partitioning di CentOS
*Opsi 1: Otomatis
- "Automatic" untuk partisi otomatis
- Centang "I would like to make additional space available"
*Opsi 2: Manual (Custom)
/boot/efi : 512 MB (EFI System Partition)
/boot : 1 GB (Boot partition)
/ : 20 GB (Root filesystem)
/home : 10 GB (User data)
/var : 30 GB (Application data)
/swap : 4 GB (Swap space)
Network Configuration
*Source: docs.centos.org
-
Klik "Network & Host Name"
-
Set hostname:
centos-server -
Configure network interface:
-
Set "Connect automatically"
-
Configure IPv4: Manual
-
IP: 192.168.1.101
-
Netmask: 255.255.255.0
-
Gateway: 192.168.1.1
-
DNS: 8.8.8.8
Software Selection
*Base Environment:
- Server with GUI (jika perlu desktop)
- *Server
- (minimal, command line only)
- *Minimal Install
- (paling ringan)
*Additional Software:
- ✅ Standard (utilities dasar)
- ✅ *Development Tools
- (jika akan compile software)
- ✅ *System Tools
- (administrasi tools)
- ✅ *Headless Management
- (remote management)
User Configuration
-
Root Password: Set password root yang kuat
-
User Creation: Buat user biasa untuk daily use
-
Username:
admin -
Make this user administrator: Yes
Step 3: Mulai Instalasi
Klik "Begin Installation" dan tunggu proses instalasi selesai (15-30 menit tergantung hardware).
--
Konfigurasi Awal Server
1. Update System
Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget git vim htop
CentOS/RHEL
sudo dnf update -y
sudo dnf install -y curl wget git vim htop
2. Konfigurasi Network
Ubuntu (Netplan)
Edit file /etc/netplan/00-installer-config.yaml:
network:
version: 2
ethernets:
ens33:
dhcp4: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
Apply konfigurasi:
sudo netplan apply
CentOS (NetworkManager)
# Edit connection
nmcli connection edit ens33
# Set static IP
nmcli> set ipv4.method manual
nmcli> set ipv4.addresses 192.168.1.101/24
nmcli> set ipv4.gateway 192.168.1.1
nmcli> set ipv4.dns 8.8.8.8
nmcli> save
nmcli> quit
# Restart network
sudo systemctl restart NetworkManager
3. Setup SSH Key Authentication
# Generate SSH key (di client)
ssh-keygen -t rsa -b 4096 -C "admin@server"
# Copy key ke server
ssh-copy-id [email protected]
# Test login
ssh [email protected]
4. Konfigurasi Firewall
Ubuntu (UFW)
# Enable firewall
sudo ufw enable
# Allow SSH
sudo ufw allow ssh
# Allow web server
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# Check status
sudo ufw status
CentOS (Firewalld)
# Start firewall
sudo systemctl start firewalld
sudo systemctl enable firewalld
# Allow SSH
sudo firewall-cmd --permanent --add-service=ssh
# Allow web server
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
# Reload firewall
sudo firewall-cmd --reload
# Check status
sudo firewall-cmd --list-all
--
Setup Keamanan Dasar
1. Disable Root Login
Edit /etc/ssh/sshd_config:
# Find and change this line
PermitRootLogin no
PasswordAuthentication no
# Restart SSH service
sudo systemctl restart sshd
2. Setup Fail2Ban
# Ubuntu
sudo apt install -y fail2ban
# CentOS
sudo dnf install -y fail2ban
# Enable and start
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
3. Create User dengan Sudo
# Create new user
sudo adduser developer
sudo usermod -aG sudo developer
# Test sudo access
su
- developer
sudo whoami
4. Setup Timezone dan NTP
# Set timezone
sudo timedatectl set-timezone Asia/Jakarta
# Install NTP
# Ubuntu
sudo apt install -y ntp
# CentOS
sudo dnf install -y chrony
# Enable and start
sudo systemctl enable ntp
# atau chrony
sudo systemctl start ntp
# atau chrony
--
Troubleshooting
1. Tidak Bisa Boot dari USB
*Masalah:
-
USB tidak terdeteksi di boot menu *Solusi:
-
Coba USB port yang berbeda
-
Disable Secure Boot di BIOS
-
Coba buat ulang bootable USB dengan tool berbeda
2. Network Tidak Terdeteksi
*Masalah:
-
Tidak ada koneksi network setelah instalasi *Solusi:
# Cek network interface
ip link show
# Cek driver
lspci -k | grep -i net
# Restart network
sudo systemctl restart networking
# Ubuntu
sudo systemctl restart NetworkManager
# CentOS
3. SSH Connection Refused
*Masalah:
-
Tidak bisa SSH ke server *Solusi:
# Cek SSH service
sudo systemctl status sshd
# Cek port
sudo netstat -tlnp | grep :22
# Cek firewall
sudo ufw status
# Ubuntu
sudo firewall-cmd --list-all
# CentOS
4. Disk Space Penuh
*Masalah:
-
Server tidak bisa install/update karena disk penuh *Solusi:
# Cek disk usage
df -h
# Cari file besar
sudo find / -type f -size +1G 2>/dev/null
# Clean package cache
# Ubuntu
sudo apt clean
# CentOS
sudo dnf clean all
--
Tips Tambahan
1. Backup Konfigurasi Penting
# Buat direktori backup
mkdir -p ~/backup/$(date +%Y%m%d)
# Backup konfigurasi penting
sudo cp /etc/netplan/*.yaml ~/backup/$(date +%Y%m%d)/
sudo cp /etc/ssh/sshd_config ~/backup/$(date +%Y%m%d)/
sudo cp /etc/fstab ~/backup/$(date +%Y%m%d)/
2. Monitoring Dasar
# Install monitoring tools
sudo apt install -y htop iotop nethogs
# Ubuntu
sudo dnf install -y htop iotop nethogs
# CentOS
# Monitor system
htop
# CPU dan memory
iotop
# Disk I/O
nethogs
# Network usage
3. Setup Log Rotation
# Cek log rotation config
ls /etc/logrotate.d/
# Manual rotate
sudo logrotate -f /etc/logrotate.conf
--
Checklist Post-Instalasi
-
System update selesai
-
Network configuration OK
-
SSH key authentication setup
-
Firewall enabled
-
User accounts created
-
Timezone configured
-
NTP service running
-
Fail2ban installed
-
Root login disabled
-
Backup configuration
-
Monitoring tools installed
--
Guide ini dibuat untuk membantu instalasi Linux server untuk pemula. Untuk production environment, disarankan untuk melakukan konfigurasi keamanan yang lebih lanjut.
Terakhir diperbarui: Desember 2025