Difference between revisions of "OS: PRAKTIKUM — Ubuntu Server from Scratch"
Onnowpurbo (talk | contribs) (Created page with " PRAKTIKUM 2 — Ubuntu Server from Scratch (Ubuntu 24.04 sebagai fondasi engineer Sistem Operasi) Tujuan Praktik ini bertujuan membangun server Linux minimal dari nol, sehing...") |
Onnowpurbo (talk | contribs) |
||
| Line 1: | Line 1: | ||
| − | + | ==Tujuan== | |
| − | |||
| − | |||
| − | Tujuan | ||
Praktik ini bertujuan membangun server Linux minimal dari nol, sehingga mahasiswa memahami sistem operasi sebagai sistem hidup, bukan sekadar installer otomatis. Mahasiswa akan: | Praktik ini bertujuan membangun server Linux minimal dari nol, sehingga mahasiswa memahami sistem operasi sebagai sistem hidup, bukan sekadar installer otomatis. Mahasiswa akan: | ||
| − | Menginstal Ubuntu Server 24.04 LTS secara clean | + | * Menginstal Ubuntu Server 24.04 LTS secara clean |
| − | Mengkonfigurasi static IP & routing menggunakan netplan | + | * Mengkonfigurasi static IP & routing menggunakan netplan |
| − | Menerapkan basic firewall berbasis kernel networking stack | + | * Menerapkan basic firewall berbasis kernel networking stack |
| − | Melakukan monitoring dasar sistem operasi | + | * Melakukan monitoring dasar sistem operasi |
Praktik ini menjadi fondasi untuk seluruh lab lanjutan (kernel, OpenWRT, Android x86). | Praktik ini menjadi fondasi untuk seluruh lab lanjutan (kernel, OpenWRT, Android x86). | ||
| − | Install Ubuntu 24.04 Server | + | |
| − | Konsep Dasar | + | ==Install Ubuntu 24.04 Server== |
| + | ===Konsep Dasar=== | ||
Ubuntu Server adalah GNU/Linux server-class OS yang: | Ubuntu Server adalah GNU/Linux server-class OS yang: | ||
| − | Menggunakan kernel Linux monolitik | + | * Menggunakan kernel Linux monolitik |
| − | Mengandalkan CLI sebagai antarmuka utama | + | * Mengandalkan CLI sebagai antarmuka utama |
| − | Dirancang untuk multi-user, multi-tasking, dan networking-heavy workload | + | * Dirancang untuk multi-user, multi-tasking, dan networking-heavy workload |
Dalam konteks buku Sistem Operasi, instalasi ini adalah pintu masuk eksplorasi kernel, filesystem, process, dan network stack . | Dalam konteks buku Sistem Operasi, instalasi ini adalah pintu masuk eksplorasi kernel, filesystem, process, dan network stack . | ||
| − | Langkah Instalasi | + | ===Langkah Instalasi=== |
| − | Tahap Persiapan | + | ====Tahap Persiapan==== |
| − | ISO: ubuntu-24.04-live-server-amd64.iso | + | * ISO: ubuntu-24.04-live-server-amd64.iso |
| − | VM / Bare metal | + | * VM / Bare metal |
| − | Disk minimal 20 GB (ideal 40–60 GB) | + | * Disk minimal 20 GB (ideal 40–60 GB) |
| − | Langkah Utama | + | ====Langkah Utama==== |
| − | Boot dari ISO | + | * Boot dari ISO |
| − | Pilih: | + | * Pilih: |
| − | Language: English | + | ** Language: English |
| − | Keyboard: Generic 105-key | + | ** Keyboard: Generic 105-key |
| − | Network: | + | |
| − | DHCP (sementara, akan diubah ke static) | + | * Network: |
| − | Storage: | + | ** DHCP (sementara, akan diubah ke static) |
| − | Use entire disk | + | |
| − | LVM optional (boleh non-LVM untuk pemula) | + | * Storage: |
| − | User: | + | ** Use entire disk |
| − | Buat user non-root | + | ** LVM optional (boleh non-LVM untuk pemula) |
| − | SSH: | + | |
| − | ✔️ Enable OpenSSH Server | + | * User: |
| − | Package tambahan: | + | ** Buat user non-root |
| − | ❌ Tidak perlu (minimal system) | + | |
| + | * SSH: | ||
| + | ** ✔️ Enable OpenSSH Server | ||
| + | |||
| + | * Package tambahan: | ||
| + | ** ❌ Tidak perlu (minimal system) | ||
Setelah reboot, Anda akan masuk ke pure CLI Linux system — inilah real operating system environment. | Setelah reboot, Anda akan masuk ke pure CLI Linux system — inilah real operating system environment. | ||
| − | Static IP & Routing (Netplan) | + | |
| − | Konsep Akademik | + | ==Static IP & Routing (Netplan)== |
| + | ===Konsep Akademik=== | ||
Pada Linux modern, konfigurasi jaringan adalah bagian dari user-space, namun: | Pada Linux modern, konfigurasi jaringan adalah bagian dari user-space, namun: | ||
| − | Dieksekusi oleh kernel networking stack | + | * Dieksekusi oleh kernel networking stack |
| − | Routing, ARP, ICMP, TCP/IP tetap dikontrol kernel | + | * Routing, ARP, ICMP, TCP/IP tetap dikontrol kernel |
| − | Ubuntu 24.04 menggunakan netplan sebagai declarative network configuration. | + | * Ubuntu 24.04 menggunakan netplan sebagai declarative network configuration. |
| − | Identifikasi Interface | + | |
| − | ip a | + | ===Identifikasi Interface=== |
| + | ip a | ||
Contoh output: | Contoh output: | ||
| − | ens33 | + | ens33 |
| − | Konfigurasi Static IP | + | ===Konfigurasi Static IP=== |
Edit file: | Edit file: | ||
| − | sudo nano /etc/netplan/01-netcfg.yaml | + | sudo nano /etc/netplan/01-netcfg.yaml |
Contoh konfigurasi static IP: | Contoh konfigurasi static IP: | ||
| − | network: | + | network: |
| − | + | version: 2 | |
| − | + | renderer: networkd | |
| − | + | ethernets: | |
| − | + | ens33: | |
| − | + | dhcp4: no | |
| − | + | addresses: | |
| − | + | - 192.168.10.10/24 | |
| − | + | gateway4: 192.168.10.1 | |
| − | + | nameservers: | |
| − | + | addresses: | |
| − | + | - 8.8.8.8 | |
| − | + | - 1.1.1.1 | |
Apply: | Apply: | ||
| − | sudo netplan apply | + | sudo netplan apply |
Verifikasi: | Verifikasi: | ||
| − | ip route | + | ip route |
| − | ping 8.8.8.8 | + | ping 8.8.8.8 |
Mahasiswa belajar bahwa networking bukan “wizard”, tapi hasil konfigurasi deterministik. | Mahasiswa belajar bahwa networking bukan “wizard”, tapi hasil konfigurasi deterministik. | ||
| − | Basic Firewall (UFW → Netfilter Kernel) | + | |
| − | Konsep OS | + | ==Basic Firewall (UFW → Netfilter Kernel)== |
| + | ===Konsep OS=== | ||
Firewall Linux: | Firewall Linux: | ||
| − | Berbasis Netfilter (kernel space) | + | * Berbasis Netfilter (kernel space) |
| − | Diakses dari user-space via iptables/nftables | + | * Diakses dari user-space via iptables/nftables |
| − | UFW = antarmuka sederhana, safe for beginners | + | * UFW = antarmuka sederhana, safe for beginners |
| − | Aktivasi Firewall Dasar | + | ===Aktivasi Firewall Dasar=== |
Install (biasanya sudah ada): | Install (biasanya sudah ada): | ||
| − | sudo apt update | + | sudo apt update |
| − | sudo apt install ufw | + | sudo apt install ufw |
Aturan minimum server: | Aturan minimum server: | ||
| − | sudo ufw default deny incoming | + | sudo ufw default deny incoming |
| − | sudo ufw default allow outgoing | + | sudo ufw default allow outgoing |
| − | sudo ufw allow ssh | + | sudo ufw allow ssh |
| − | sudo ufw enable | + | sudo ufw enable |
Cek status: | Cek status: | ||
| − | sudo ufw status verbose | + | sudo ufw status verbose |
Firewall adalah lapisan pertama isolasi OS, bukan sekadar tool jaringan. | Firewall adalah lapisan pertama isolasi OS, bukan sekadar tool jaringan. | ||
| − | Monitoring Dasar Sistem Operasi | + | |
| − | Filosofi Monitoring | + | ==Monitoring Dasar Sistem Operasi== |
| + | ===Filosofi Monitoring=== | ||
Monitoring OS berarti: | Monitoring OS berarti: | ||
| − | Mengamati process | + | * Mengamati process |
| − | Memahami memory behavior | + | * Memahami memory behavior |
| − | Melihat I/O & network activity | + | * Melihat I/O & network activity |
Ini langsung berkaitan dengan scheduler, memory manager, dan kernel runtime . | Ini langsung berkaitan dengan scheduler, memory manager, dan kernel runtime . | ||
| − | Tool Wajib (CLI) | + | ===Tool Wajib (CLI)=== |
Process & CPU | Process & CPU | ||
| − | top | + | * top |
| − | htop | + | * htop |
| + | |||
Memory | Memory | ||
| − | free -h | + | * free -h |
| − | vmstat 1 | + | * vmstat 1 |
| + | |||
Disk | Disk | ||
| − | df -h | + | * df -h |
| − | iostat | + | * iostat |
| + | |||
Network | Network | ||
| − | ss -tulpen | + | * ss -tulpen |
| − | iptraf-ng | + | * iptraf-ng |
| − | Mini Eksperimen (Hands-on) | + | |
| + | ===Mini Eksperimen (Hands-on)=== | ||
Jalankan: | Jalankan: | ||
| − | yes > /dev/null & | + | yes > /dev/null & |
Amati: | Amati: | ||
| − | top → CPU naik | + | * top → CPU naik |
| − | load average berubah | + | * load average berubah |
Hentikan: | Hentikan: | ||
| − | killall yes | + | killall yes |
Mahasiswa melihat langsung efek process terhadap kernel scheduler. | Mahasiswa melihat langsung efek process terhadap kernel scheduler. | ||
| − | Refleksi Praktik (OBE-Oriented) | + | |
| + | ==Refleksi Praktik (OBE-Oriented)== | ||
Setelah praktik ini, mahasiswa mampu: | Setelah praktik ini, mahasiswa mampu: | ||
| − | ✅ Menginstal OS Linux secara clean | + | ✅ Menginstal OS Linux secara clean |
| − | ✅ Mengonfigurasi networking tanpa GUI | + | ✅ Mengonfigurasi networking tanpa GUI |
| − | ✅ Memahami firewall sebagai fitur kernel | + | ✅ Memahami firewall sebagai fitur kernel |
| − | ✅ Membaca kondisi sistem secara real-time | + | ✅ Membaca kondisi sistem secara real-time |
Inilah mindset “System Builder”, bukan sekadar user OS. | Inilah mindset “System Builder”, bukan sekadar user OS. | ||
| + | |||
Tantangan Lanjutan (Opsional, Fun & Menantang) | Tantangan Lanjutan (Opsional, Fun & Menantang) | ||
| − | Ubah static IP menjadi routing antar VM | + | * Ubah static IP menjadi routing antar VM |
| − | Tambahkan rule firewall berbasis subnet | + | * Tambahkan rule firewall berbasis subnet |
| − | Logging resource menggunakan sar | + | * Logging resource menggunakan sar |
| − | Bandingkan top vs htop | + | * Bandingkan top vs htop |
==Pranala Menarik== | ==Pranala Menarik== | ||
* [[Sistem operasi]] | * [[Sistem operasi]] | ||
Latest revision as of 03:04, 14 February 2026
Tujuan
Praktik ini bertujuan membangun server Linux minimal dari nol, sehingga mahasiswa memahami sistem operasi sebagai sistem hidup, bukan sekadar installer otomatis. Mahasiswa akan:
- Menginstal Ubuntu Server 24.04 LTS secara clean
- Mengkonfigurasi static IP & routing menggunakan netplan
- Menerapkan basic firewall berbasis kernel networking stack
- Melakukan monitoring dasar sistem operasi
Praktik ini menjadi fondasi untuk seluruh lab lanjutan (kernel, OpenWRT, Android x86).
Install Ubuntu 24.04 Server
Konsep Dasar
Ubuntu Server adalah GNU/Linux server-class OS yang:
- Menggunakan kernel Linux monolitik
- Mengandalkan CLI sebagai antarmuka utama
- Dirancang untuk multi-user, multi-tasking, dan networking-heavy workload
Dalam konteks buku Sistem Operasi, instalasi ini adalah pintu masuk eksplorasi kernel, filesystem, process, dan network stack .
Langkah Instalasi
Tahap Persiapan
- ISO: ubuntu-24.04-live-server-amd64.iso
- VM / Bare metal
- Disk minimal 20 GB (ideal 40–60 GB)
Langkah Utama
- Boot dari ISO
- Pilih:
- Language: English
- Keyboard: Generic 105-key
- Network:
- DHCP (sementara, akan diubah ke static)
- Storage:
- Use entire disk
- LVM optional (boleh non-LVM untuk pemula)
- User:
- Buat user non-root
- SSH:
- ✔️ Enable OpenSSH Server
- Package tambahan:
- ❌ Tidak perlu (minimal system)
Setelah reboot, Anda akan masuk ke pure CLI Linux system — inilah real operating system environment.
Static IP & Routing (Netplan)
Konsep Akademik
Pada Linux modern, konfigurasi jaringan adalah bagian dari user-space, namun:
- Dieksekusi oleh kernel networking stack
- Routing, ARP, ICMP, TCP/IP tetap dikontrol kernel
- Ubuntu 24.04 menggunakan netplan sebagai declarative network configuration.
Identifikasi Interface
ip a
Contoh output:
ens33
Konfigurasi Static IP
Edit file:
sudo nano /etc/netplan/01-netcfg.yaml
Contoh konfigurasi static IP:
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
addresses:
- 192.168.10.10/24
gateway4: 192.168.10.1
nameservers:
addresses:
- 8.8.8.8
- 1.1.1.1
Apply:
sudo netplan apply
Verifikasi:
ip route ping 8.8.8.8
Mahasiswa belajar bahwa networking bukan “wizard”, tapi hasil konfigurasi deterministik.
Basic Firewall (UFW → Netfilter Kernel)
Konsep OS
Firewall Linux:
- Berbasis Netfilter (kernel space)
- Diakses dari user-space via iptables/nftables
- UFW = antarmuka sederhana, safe for beginners
Aktivasi Firewall Dasar
Install (biasanya sudah ada):
sudo apt update sudo apt install ufw
Aturan minimum server:
sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow ssh sudo ufw enable
Cek status:
sudo ufw status verbose
Firewall adalah lapisan pertama isolasi OS, bukan sekadar tool jaringan.
Monitoring Dasar Sistem Operasi
Filosofi Monitoring
Monitoring OS berarti:
- Mengamati process
- Memahami memory behavior
- Melihat I/O & network activity
Ini langsung berkaitan dengan scheduler, memory manager, dan kernel runtime .
Tool Wajib (CLI)
Process & CPU
- top
- htop
Memory
- free -h
- vmstat 1
Disk
- df -h
- iostat
Network
- ss -tulpen
- iptraf-ng
Mini Eksperimen (Hands-on)
Jalankan:
yes > /dev/null &
Amati:
- top → CPU naik
- load average berubah
Hentikan:
killall yes
Mahasiswa melihat langsung efek process terhadap kernel scheduler.
Refleksi Praktik (OBE-Oriented)
Setelah praktik ini, mahasiswa mampu:
✅ Menginstal OS Linux secara clean ✅ Mengonfigurasi networking tanpa GUI ✅ Memahami firewall sebagai fitur kernel ✅ Membaca kondisi sistem secara real-time
Inilah mindset “System Builder”, bukan sekadar user OS.
Tantangan Lanjutan (Opsional, Fun & Menantang)
- Ubah static IP menjadi routing antar VM
- Tambahkan rule firewall berbasis subnet
- Logging resource menggunakan sar
- Bandingkan top vs htop