OS: PRAKTIKUM — Integrated OS Lab: Difference between revisions

From OnnoCenterWiki
Jump to navigationJump to search
Created page with " PRAKTIKUM 11 — Integrated OS Lab Ubuntu sebagai Controller • OpenWRT sebagai Router • Android sebagai Client Tujuan Praktikum Setelah menyelesaikan praktikum ini, mahas..."
 
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
==Tujuan Praktikum==
PRAKTIKUM 11 — Integrated OS Lab
Ubuntu sebagai Controller • OpenWRT sebagai Router • Android sebagai Client
Tujuan Praktikum
Setelah menyelesaikan praktikum ini, mahasiswa mampu:
Setelah menyelesaikan praktikum ini, mahasiswa mampu:
Mengorkestrasi tiga OS berbeda dalam satu sistem terintegrasi
* Mengorkestrasi tiga OS berbeda dalam satu sistem terintegrasi
Mendesain topologi jaringan yang realistis dan aman
* Mendesain topologi jaringan yang realistis dan aman
Mengkonfigurasi routing & firewall berbasis kernel
* Mengkonfigurasi routing & firewall berbasis kernel
Menyajikan layanan dari Ubuntu dan mengaksesnya dari Android
* Menyajikan layanan dari Ubuntu dan mengaksesnya dari Android
Menganalisis alur data lintas OS (kernel ↔ user space ↔ jaringan)
* Menganalisis alur data lintas OS (kernel ↔ user space ↔ jaringan)
Filosofi inti:
Filosofi inti:
Di dunia nyata, sistem selalu multi-OS. Nilai engineer terlihat dari kemampuan mengintegrasikan, bukan sekadar mengonfigurasi satu OS.
Di dunia nyata, sistem selalu multi-OS. Nilai engineer terlihat dari kemampuan mengintegrasikan, bukan sekadar mengonfigurasi satu OS.
Gambaran Arsitektur Lab
 
[ Android x86 ]  <-- client (untrusted)
==Gambaran Arsitektur Lab==
        |
 
        |  TCP/IP
[ Android x86 ]  <-- client (untrusted)
        |
        |
[ OpenWRT x86 ]  <-- router / firewall / policy
        |  TCP/IP
        |
        |
        |  routing + NAT
[ OpenWRT x86 ]  <-- router / firewall / policy
        |
        |
[ Ubuntu Server 24.04 ]  <-- controller / services
        |  routing + NAT
        |
[ Ubuntu Server 24.04 ]  <-- controller / services
 
Peran kunci:
Peran kunci:
Ubuntu: controller (server, monitoring, orchestration)
* Ubuntu: controller (server, monitoring, orchestration)
OpenWRT: router (routing, firewall, policy enforcement)
* OpenWRT: router (routing, firewall, policy enforcement)
Android: client (end-user system, sandboxed)
* Android: client (end-user system, sandboxed)
Persiapan Lingkungan
 
Spesifikasi & Prasyarat
==Persiapan Lingkungan==
Host: Ubuntu Desktop 24.04
===Spesifikasi & Prasyarat===
Hypervisor: VirtualBox (+ GNS3 opsional)
* Host: Ubuntu Desktop 24.04
VM:
* Hypervisor: VirtualBox (+ GNS3 opsional)
Ubuntu Server 24.04 (2–4 CPU, 4–8 GB RAM)
* VM:
OpenWRT x86 (1 CPU, 256–512 MB RAM)
** Ubuntu Server 24.04 (2–4 CPU, 4–8 GB RAM)
Android x86 (2 CPU, 2–4 GB RAM)
** OpenWRT x86 (1 CPU, 256–512 MB RAM)
Jaringan:
** Android x86 (2 CPU, 2–4 GB RAM)
Internal Network untuk lab
* Jaringan:
NAT opsional untuk internet
** Internal Network untuk lab
Gunakan snapshot VM sebelum mulai.
** NAT opsional untuk internet
** Gunakan snapshot VM sebelum mulai.
Konfigurasi OpenWRT sebagai Router
Konfigurasi OpenWRT sebagai Router
IP Addressing (Deterministik)
 
===IP Addressing (Deterministik)===
 
OpenWRT (br-lan): 192.168.100.1/24
OpenWRT (br-lan): 192.168.100.1/24
Cek:
Cek:
ip addr
ip addr
ip route
ip route
DHCP (Opsional, Disarankan)
 
===DHCP (Opsional, Disarankan)===
Pastikan DHCP aktif agar Android mudah mendapat IP.
Pastikan DHCP aktif agar Android mudah mendapat IP.
uci show dhcp
uci show dhcp
/etc/init.d/dnsmasq restart
/etc/init.d/dnsmasq restart
Firewall Dasar (Zona)
 
===Firewall Dasar (Zona)===
Konsep security zone:
Konsep security zone:
LAN: Android
* LAN: Android
WAN/CTRL: Ubuntu
* WAN/CTRL: Ubuntu
 
Cek aturan:
Cek aturan:
uci show firewall
uci show firewall
 
Firewall OpenWRT dieksekusi oleh kernel networking stack—bukan sekadar aplikasi.
Firewall OpenWRT dieksekusi oleh kernel networking stack—bukan sekadar aplikasi.
Ubuntu sebagai Controller
 
Static IP Ubuntu
==Ubuntu sebagai Controller==
===Static IP Ubuntu===
Set 192.168.100.10/24, gateway 192.168.100.1.
Set 192.168.100.10/24, gateway 192.168.100.1.
sudo nano /etc/netplan/01-lab.yaml
sudo nano /etc/netplan/01-lab.yaml
sudo netplan apply
sudo netplan apply
 
Verifikasi:
Verifikasi:
ip a
ip a
ip route
ip route
ping 192.168.100.1
ping 192.168.100.1


Layanan Controller (Contoh Nyata)
===Layanan Controller (Contoh Nyata)===
Web server ringan untuk observasi lintas OS:
Web server ringan untuk observasi lintas OS:
sudo apt update
sudo apt update
sudo apt install -y python3
sudo apt install -y python3
python3 -m http.server 8080
python3 -m http.server 8080
 
Buka port (UFW):
Buka port (UFW):
sudo ufw allow 8080
sudo ufw allow 8080
sudo ufw enable
sudo ufw enable
Android sebagai Client
 
Koneksi Jaringan
==Android sebagai Client==
===Koneksi Jaringan===
Pastikan Android mendapat IP 192.168.100.x.
Pastikan Android mendapat IP 192.168.100.x.
Cek (ADB):
Cek (ADB):
adb shell ip addr
adb shell ip addr
adb shell ip route
adb shell ip route
 
Uji Konektivitas
Uji Konektivitas
adb shell ping -c 3 192.168.100.1
adb shell ping -c 3 192.168.100.1
adb shell ping -c 3 192.168.100.10
adb shell ping -c 3 192.168.100.10
Akses Layanan Ubuntu
 
===Akses Layanan Ubuntu===
Dari browser Android:
Dari browser Android:
http://192.168.100.10:8080
http://192.168.100.10:8080
Observasi lintas OS:
Observasi lintas OS:
Android app → Android framework → kernel Android → TCP/IP → OpenWRT (routing/firewall) → Ubuntu (service).
Android app → Android framework → kernel Android → TCP/IP → OpenWRT (routing/firewall) → Ubuntu (service).
Integrasi & Observasi Sistem
 
Monitoring dari Ubuntu
==Integrasi & Observasi Sistem==
ss -tulpen
===Monitoring dari Ubuntu===
ip -s link
ss -tulpen
journalctl -f
ip -s link
Monitoring di OpenWRT
journalctl -f
logread -f
 
iptables -L -v -n
===Monitoring di OpenWRT===
Observasi di Android
logread -f
adb shell ps -A | head
iptables -L -v -n
adb shell getenforce
===Observasi di Android===
adb shell ps -A | head
adb shell getenforce
Perhatikan perbedaan model isolasi dan policy di tiap OS.
Perhatikan perbedaan model isolasi dan policy di tiap OS.
Keamanan Berlapis (Defense in Depth)
==Keamanan Berlapis (Defense in Depth)==
Android: sandbox, UID isolation, SELinux enforcing
* Android: sandbox, UID isolation, SELinux enforcing
OpenWRT: firewall, routing policy, NAT
* OpenWRT: firewall, routing policy, NAT
Ubuntu: UFW, service hardening
* Ubuntu: UFW, service hardening
Contoh kebijakan:
Contoh kebijakan:
Android → Ubuntu: allow HTTP (8080)
* Android → Ubuntu: allow HTTP (8080)
Android → Ubuntu: deny SSH (22)
* Android → Ubuntu: deny SSH (22)
 
Implementasi (Ubuntu):
Implementasi (Ubuntu):
sudo ufw deny from 192.168.100.0/24 to any port 22
sudo ufw deny from 192.168.100.0/24 to any port 22
Failure Scenarios (Wajib Dicoba)
 
Matikan firewall OpenWRT → amati perubahan akses
==Failure Scenarios (Wajib Dicoba)==
Putuskan routing → Android gagal akses Ubuntu
* Matikan firewall OpenWRT → amati perubahan akses
Hentikan service Ubuntu → Android connection refused
* Putuskan routing → Android gagal akses Ubuntu
Belajar OS terbaik datang dari kegagalan yang terkontrol.
* Hentikan service Ubuntu → Android connection refused
Refleksi Akademik (OBE-Oriented)
* Belajar OS terbaik datang dari kegagalan yang terkontrol.
 
==Refleksi Akademik (OBE-Oriented)==
Mahasiswa kini mampu:
Mahasiswa kini mampu:
Mendesain sistem multi-OS
* Mendesain sistem multi-OS
Mengintegrasikan jaringan lintas OS
* Mengintegrasikan jaringan lintas OS
Menerapkan keamanan berlapis
* Menerapkan keamanan berlapis
Menganalisis alur data lintas kernel & user space
* Menganalisis alur data lintas kernel & user space
Berpikir sebagai system architect
* Berpikir sebagai system architect
 
 
 
==Penutup==
Praktikum ini menegaskan transformasi akhir:
* dari OS user → OS builder → system integrator.
* Ubuntu, OpenWRT, dan Android kini bukan entitas terpisah, melainkan satu sistem komputasi hidup—seperti yang ditemui di data center, edge computing, dan IoT dunia nyata.
* Jika Anda menuntaskan praktikum ini, Anda tidak hanya memahami sistem operasi—Anda memahami sistem terintegrasi.





Latest revision as of 06:13, 15 February 2026

Tujuan Praktikum

Setelah menyelesaikan praktikum ini, mahasiswa mampu:

  • Mengorkestrasi tiga OS berbeda dalam satu sistem terintegrasi
  • Mendesain topologi jaringan yang realistis dan aman
  • Mengkonfigurasi routing & firewall berbasis kernel
  • Menyajikan layanan dari Ubuntu dan mengaksesnya dari Android
  • Menganalisis alur data lintas OS (kernel ↔ user space ↔ jaringan)

Filosofi inti:

Di dunia nyata, sistem selalu multi-OS. Nilai engineer terlihat dari kemampuan mengintegrasikan, bukan sekadar mengonfigurasi satu OS.

Gambaran Arsitektur Lab

[ Android x86 ]  <-- client (untrusted)
        |
        |  TCP/IP
        |
[ OpenWRT x86 ]  <-- router / firewall / policy
        |
        |  routing + NAT
        |
[ Ubuntu Server 24.04 ]  <-- controller / services

Peran kunci:

  • Ubuntu: controller (server, monitoring, orchestration)
  • OpenWRT: router (routing, firewall, policy enforcement)
  • Android: client (end-user system, sandboxed)

Persiapan Lingkungan

Spesifikasi & Prasyarat

  • Host: Ubuntu Desktop 24.04
  • Hypervisor: VirtualBox (+ GNS3 opsional)
  • VM:
    • Ubuntu Server 24.04 (2–4 CPU, 4–8 GB RAM)
    • OpenWRT x86 (1 CPU, 256–512 MB RAM)
    • Android x86 (2 CPU, 2–4 GB RAM)
  • Jaringan:
    • Internal Network untuk lab
    • NAT opsional untuk internet
    • Gunakan snapshot VM sebelum mulai.

Konfigurasi OpenWRT sebagai Router

IP Addressing (Deterministik)

OpenWRT (br-lan): 192.168.100.1/24

Cek:

ip addr
ip route

DHCP (Opsional, Disarankan)

Pastikan DHCP aktif agar Android mudah mendapat IP.

uci show dhcp
/etc/init.d/dnsmasq restart

Firewall Dasar (Zona)

Konsep security zone:

  • LAN: Android
  • WAN/CTRL: Ubuntu

Cek aturan:

uci show firewall

Firewall OpenWRT dieksekusi oleh kernel networking stack—bukan sekadar aplikasi.

Ubuntu sebagai Controller

Static IP Ubuntu

Set 192.168.100.10/24, gateway 192.168.100.1.

sudo nano /etc/netplan/01-lab.yaml
sudo netplan apply

Verifikasi:

ip a
ip route
ping 192.168.100.1

Layanan Controller (Contoh Nyata)

Web server ringan untuk observasi lintas OS:

sudo apt update
sudo apt install -y python3
python3 -m http.server 8080

Buka port (UFW):

sudo ufw allow 8080
sudo ufw enable

Android sebagai Client

Koneksi Jaringan

Pastikan Android mendapat IP 192.168.100.x.

Cek (ADB):

adb shell ip addr
adb shell ip route

Uji Konektivitas

adb shell ping -c 3 192.168.100.1
adb shell ping -c 3 192.168.100.10

Akses Layanan Ubuntu

Dari browser Android:

http://192.168.100.10:8080

Observasi lintas OS:

Android app → Android framework → kernel Android → TCP/IP → OpenWRT (routing/firewall) → Ubuntu (service).

Integrasi & Observasi Sistem

Monitoring dari Ubuntu

ss -tulpen
ip -s link
journalctl -f

Monitoring di OpenWRT

logread -f
iptables -L -v -n

Observasi di Android

adb shell ps -A | head
adb shell getenforce

Perhatikan perbedaan model isolasi dan policy di tiap OS.

Keamanan Berlapis (Defense in Depth)

  • Android: sandbox, UID isolation, SELinux enforcing
  • OpenWRT: firewall, routing policy, NAT
  • Ubuntu: UFW, service hardening

Contoh kebijakan:

  • Android → Ubuntu: allow HTTP (8080)
  • Android → Ubuntu: deny SSH (22)

Implementasi (Ubuntu):

sudo ufw deny from 192.168.100.0/24 to any port 22

Failure Scenarios (Wajib Dicoba)

  • Matikan firewall OpenWRT → amati perubahan akses
  • Putuskan routing → Android gagal akses Ubuntu
  • Hentikan service Ubuntu → Android connection refused
  • Belajar OS terbaik datang dari kegagalan yang terkontrol.

Refleksi Akademik (OBE-Oriented)

Mahasiswa kini mampu:

  • Mendesain sistem multi-OS
  • Mengintegrasikan jaringan lintas OS
  • Menerapkan keamanan berlapis
  • Menganalisis alur data lintas kernel & user space
  • Berpikir sebagai system architect


Penutup

Praktikum ini menegaskan transformasi akhir:

  • dari OS user → OS builder → system integrator.
  • Ubuntu, OpenWRT, dan Android kini bukan entitas terpisah, melainkan satu sistem komputasi hidup—seperti yang ditemui di data center, edge computing, dan IoT dunia nyata.
  • Jika Anda menuntaskan praktikum ini, Anda tidak hanya memahami sistem operasi—Anda memahami sistem terintegrasi.


Pranala Menarik