DISUSUN OLEH :
1.
Bintang
Renaldy Pratama 25051204026
2.
Muchammad
Achsan Ikhtaru 25051204028
3.
Klement
Ezra Suhartanto 25051204082
4.
Muhammad
Nayaka Romero 25051204213
BAB I
PENDAHULUAN
1.1
Latar Belakang
Pemahaman
tentang arsitektur client-server dan manajemen jaringan merupakan
fondasi krusial dalam infrastruktur teknologi informasi. Salah satu
implementasi dasarnya adalah penyediaan layanan web server yang bertugas
melayani dan merespons permintaan (request) dari klien melalui sebuah
jaringan lokal maupun internet. Seringkali, proses instalasi web server
konvensional (seperti Apache atau Nginx) pada sistem operasi Linux membutuhkan
konfigurasi yang kompleks dan rentan terhadap galat (error) pada tingkat
sistem.
Untuk
keperluan pengujian, pengembangan awal, serta demonstrasi fungsionalitas
jaringan yang minim resiko, pemanfaatan modul bawaan bahasa pemrograman seperti
http.server dari Python menawarkan solusi yang sangat
efisien dan praktis. Modul ini memungkinkan pengguna untuk langsung mengubah
direktori aktif menjadi web server fungsional tanpa proses instalasi
pihak ketiga. Oleh karena itu, praktikum ini dilaksanakan untuk mensimulasikan
penyediaan layanan web server sederhana, melakukan konfigurasi dan
identifikasi jaringan (IP Address), serta membuktikan keberhasilan konektivitas
jaringan secara langsung melalui akses lintas perangkat (cross-device)
menggunakan smartphone sebagai client.
1. 2 Rumusan Masalah
- Bagaimana cara membuat dokumen web
(HTML) dasar dan menjalankan web server lokal secara instan
menggunakan modul bawaan Python di lingkungan Linux?
- Bagaimana cara mengidentifikasi alamat IP (Internet
Protocol) dari antarmuka jaringan komputer server menggunakan Command
Line Interface (CLI)?
- Bagaimana cara memvalidasi keberhasilan konfigurasi jaringan dengan mengakses layanan web server tersebut menggunakan perangkat klien (smartphone)?
1.3 Tujuan Praktikum
Dengan dilakukannya praktikum ini, diharapkan :
- Mengimplementasikan
Layanan Web Server: Mahasiswa mampu membuat file indeks HTML
sederhana dan mengeksekusi web server lokal menggunakan perintah
modul Python (python3
-m http.server) tanpa memerlukan konfigurasi software
pihak ketiga yang rumit.
- Menguasai
Manajemen Jaringan Dasar: Mahasiswa mampu menggunakan perintah CLI Linux
(seperti ip a)
untuk mencari, mengetahui, dan memahami letak alamat IP dari komputer server
pada jaringan lokal (wlan0 atau eth0).
- Memvalidasi
Konektivitas Jaringan: Mahasiswa mampu melakukan pengujian koneksi (cross-device
testing) untuk membuktikan bahwa web server telah berjalan dan
jaringan terhubung dengan baik, dengan cara mengakses alamat IP dan port
(8080) server melalui browser pada perangkat seluler.
BAB II
LANDASAN TEORI
2.1
Sistem Operasi dan Command Line Interface
Sistem operasi Linux merupakan sistem operasi sumber terbuka
(open-source) yang beroperasi di bawah lisensi GNU General Public
License (GPL). Linux telah menjadi standar industri dalam infrastruktur server
modern karena memiliki tingkat stabilitas, keamanan, dan efisiensi manajemen
sumber daya yang sangat tinggi. Interaksi administrator dengan kernel
Linux umumnya dilakukan melalui Command Line Interface (CLI)
dibandingkan dengan Graphical User Interface (GUI). CLI adalah antarmuka
berbasis teks yang memungkinkan pengguna memberikan instruksi langsung ke
sistem operasi. Penggunaan CLI membutuhkan alokasi memori yang jauh lebih kecil
dan mengeksekusi perintah secara lebih cepat dan presisi.
2.2
Linux
Linux adalah sebuah sistem operasi bertipe Unix yang
bersifat open-source (sumber terbuka) dan disebarluaskan secara gratis
dibawah lisensi GNU General Public License (GPL). Dikembangkan pertama
kali oleh seorang mahasiswa Universitas Helsinki bernama Linus Torvalds pada
tahun 1991, Linux awalnya dibuat sebagai proyek hobi yang terinspirasi dari
Minix, sebuah sistem Unix kecil. Keunikan utama Linux terletak pada sifatnya
yang terbuka, yang memungkinkan para pengembang di seluruh dunia untuk ikut
serta berkontribusi, memodifikasi, dan mendistribusikan ulang kode sumbernya
secara bebas. Hal inilah yang memicu pertumbuhan Linux menjadi salah satu
sistem operasi paling stabil, aman, dan paling banyak digunakan di dunia saat
ini, mulai dari perangkat embedded (tertanam), ponsel pintar (Android),
hingga superkomputer dan peladen (server) skala besar.
2.3
Setting Jaringan, Koneksi, Web Server
Dalam implementasi arsitektur layanan digital, pemahaman
mengenai konfigurasi antarmuka jaringan dan web server merupakan Pondasi
utama agar komunikasi antarperangkat berbasis alamat Internet Protocol
(IP) dapat berjalan lancar. Pada lingkungan pengujian berbasis mesin virtual (Virtual
Machine), pengaturan mode jaringan seperti Network Address Translation
(NAT) yang mengisolasi koneksi secara privat, atau Bridged Adapter yang
menjembatani IP tamu secara sejajar dengan jaringan antarmuka fisik, sangat
menentukan keberhasilan perutean (routing) paket data. Validasi terhadap
topologi ini diuji menggunakan protokol ICMP melalui perintah ping untuk
memastikan konektivitas end-to-end telah terbentuk, yang selanjutnya
menjadi jalan masuk bagi lalu lintas web server agar mampu merespons
permintaan HTTP/HTTPS dari klien di jaringan lokal maupun publik.
BAB III
METODOLOGI PRAKTIKUM
3.1 Lingkungan Uji Coba
Pada praktikum ini, kami mempelajari dan mengimplementasikan bagaimana cara untuk mengkonfigurasi jaringan dengan membuat web server melalui localhost di Linux menggunakan Command Line Interface (CLI). Dalam pelaksanaan praktikum konfigurasi jaringan dan web server ini, perangkat keras dan perangkat lunak yang digunakan adalah sebagai berikut:
3.1.1 Perangkat Keras (Hardware)
1. Laptop
Berguna sebagai host yang dikonfigurasi sebagai web server lokal
2. Smartphone
Berfungsi sebagai client untuk menguji konektivitas dan merespons layanan di server.
3.
Jaringan
Lokal (Local Network)
Disini kami menggunakan
Tethering sebagai media transmisi yang menghubungkan perangkat server dan
client dalam satu segmentasi jaringan yang sama.
3.1.2 Perangkat Lunak (Software)
1.
Sistem
Operasi Linux
Sistem Operasi Linux
adalah sebagai lingkungan kerja utama untuk mengeksekusi instruksi, pada
praktikum ini menggunakan distro Linux yaitu Kali Linux.
2.
Command
Line Interface
Antarmuka utama untuk
menjalankan perintah dasar Linux.
3. Python Versi 3
Bahasa pemrograman yang built-in module, digunakan untuk menjalankan web server.
4.
Web
Browser
Web Browser bertujuan untuk mengakses alamat server
3.2 Prosedur Pengujian
Praktikum ini dilaksanakan melalui empat tahapan
utama, mulai dari persiapan file hingga pengujian lintas perangkat. Berikut
adalah prosedur kerjanya:
- Tahap 1 (Persiapan) : Menyalakan mesin virtual Linux,
Membuat directory khusus, membuat file berbentuk HTML dengan memasukan
kode “echo
"<h1>Praktikum Berhasil - [Isi Nama Kamu]</h1>" >
index.html”.
- Tahap 2 (Mencari IP) : Buka terminal baru, kemudian
lakukan perintah “ip a” untuk melihat ip komputer.
- Tahap 3 (Web Server) : Dalam terminal pertama jalankan
perintah “python3 -m
http.server 8080”
- Tahap 4 (Pengujian) : Dalam
jaringan yang sama salah satu device bisa membuka web server dengan
memasukan “http://{Ip dari tahap ke 2}:8080”, maka akan muncul tulisan Praktikum Berhasil - [Isi Nama Kamu].
BAB IV
HASIL DAN PEMBAHASAN
4.1 Hasil
Berdasarkan serangkaian langkah kerja yang telah
dilakukan, praktikum ini menghasilkan output sebagai berikut:
gambar 1.1 (Membuat file html)
gambar 1.2 (Melihat IP)
gambar 1.3 (Membuka web server)
gambar 1.4 (Output jika ada yang masuk ke web server yang terbuka)
4.2 Pembahasan
Dalam praktikum ini, implementasi arsitektur client-server sederhana berhasil dilakukan melalui jaringan lokal (LAN/WLAN) tanpa menggunakan software web server konvensional seperti Apache. Berikut adalah analisis teknis dari setiap prosesnya:
1. Operasi File System melalui CLI
Perintah mkdir (make directory) dan cd (change directory) merupakan interaksi dasar dengan OS untuk manajemen file. Penggunaan tanda redirect (>) pada perintah echo berfungsi untuk meneruskan standard output (teks yang dicetak) langsung ke dalam sebuah file bernama index.html. Pemilihan nama index.html sangat penting karena secara default, setiap web server akan mencari file dengan nama ini sebagai halaman utama (beranda) saat sebuah direktori diakses.
2. Pengalamatan Jaringan (IP Address)
Perintah ip a memberikan visibilitas terhadap parameter jaringan fisik dan logis perangkat. Agar komputer (sebagai server) dan smartphone (sebagai client) dapat saling berkomunikasi, keduanya mutlak harus berada dalam satu segmen jaringan lokal yang sama (misalnya terhubung pada Wi-Fi atau hotspot tethering yang sama). Jika berbeda jaringan tanpa adanya routing publik (internet), maka alamat IP lokal 192.168.x.x tidak akan bisa saling menjangkau (Unreachable).
3. Modul http.server pada Python
Alih-alih mengkonfigurasi server yang kompleks, praktikum ini memanfaatkan built-in library Python 3 yakni http.server. Perintah python3 -m memanggil modul tersebut sebagai skrip (aplikasi). Parameter 0.0.0.0 pada output terminal berarti server mendengarkan (listening) pada semua antarmuka IPv4 yang ada di komputer, sehingga dapat diakses dari perangkat luar. Pemilihan angka 8080 (sebagai port non-standar) dilakukan untuk menghindari bentrok dengan port default HTTP (80) yang mungkin membutuhkan hak akses administrator (Root/Sudo).
4. Proses Request dan Response (Client-Server Model)
Ketika browser di smartphone
memuat URL, browser mengirimkan HTTP GET Request ke alamat IP dan port tujuan.
Komputer server menerima permintaan ini, mencari file index.html di dalam
direktori kerja saat ini, kemudian mengirimkan isi file tersebut (HTTP Response)
kembali ke smartphone. Browser smartphone lalu menerjemahkan (rendering) tag
HTML <h1> menjadi teks berukuran besar, yang membuktikan bahwa komunikasi
dua arah telah sukses terjadi.
BAB V
PENUTUP
5.1 Kesimpulan
Berdasarkan serangkaian langkah praktikum
mengenai konfigurasi jaringan dan inisialisasi web server lokal yang
telah dilaksanakan, dapat ditarik beberapa kesimpulan sebagai berikut:
- Efisiensi Implementasi Web Server:
Pembuatan web server lokal pada lingkungan Linux tidak selalu
membutuhkan instalasi perangkat lunak khusus seperti Apache atau Nginx.
Penggunaan built-in module http.server dari bahasa pemrograman Python 3 melalui Command
Line Interface (CLI) terbukti sangat efektif, ringkas, dan minim galat
(error) untuk kebutuhan simulasi dan pengujian sistem dasar.
- Identifikasi Identitas Jaringan: Perintah
CLI ip a merupakan metode fundamental dan presisi
untuk mengetahui alamat IPv4 localhost
dari antarmuka jaringan yang sedang aktif (seperti wlan0 dan eth0). Alamat IP ini menjadi titik koordinat
wajib agar komputer server dapat dijangkau oleh perangkat lain di
dalam jaringan yang sama.
- Validasi Arsitektur Client-Server: Keberhasilan akses halaman index.html dari perangkat smartphone (client) menuju komputer (server) melalui IP Address dan port 8080 membuktikan bahwa komunikasi data dua arah dalam satu segmen jaringan lokal telah berjalan dengan sempurna. Hal ini juga memvalidasi bahwa konsep dasar penyediaan layanan (services) dalam sistem operasi telah berhasil diimplementasikan.
5.2 Saran
Untuk
pengembangan dan penyempurnaan pada pelaksanaan praktikum selanjutnya, terdapat
beberapa saran teknis yang dapat dipertimbangkan:
- Eksplorasi Lingkungan Produksi
(Production): Meskipun modul http.server milik Python sangat praktis untuk
demonstrasi, penggunaannya tidak disarankan untuk aplikasi nyata di
internet (production level) karena keterbatasan fitur keamanan dan
skalabilitas. Praktikum lanjutan sebaiknya mulai mengenalkan instalasi web
server sesungguhnya seperti Nginx atau Apache HTTP Server.
- Pengkondisian Jaringan Akses: Saat
melakukan demonstrasi cross-device, pastikan jaringan lokal yang digunakan
(misalnya Wi-Fi kampus atau cafe) tidak menerapkan fitur AP/Client
Isolation. Fitur tersebut dapat memblokir komunikasi antar perangkat klien
sehingga smartphone tidak bisa mengakses IP komputer server. Sebagai
solusi paling aman, gunakan Mobile Hotspot (Tethering) pribadi.
- Integrasi dengan Pengujian Keamanan (Vulnerability Scanning): Web server yang telah berjalan pada port 8080 ini merupakan target yang sangat ideal untuk dilanjutkan ke praktikum ke-3 (Ethical Hacking). Disarankan untuk tidak mematikan server ini, melainkan memindainya (scanning) menggunakan tools Nmap untuk melihat bagaimana aplikasi pemindai membaca keberadaan port yang terbuka pada jaringan lokal.
DAFTAR PUSTAKA
Kurose, J. F., & Ross, K. W. (2021). Computer
Networking: A Top-Down Approach (8th ed.). Pearson.
Python Software Foundation. (2026). http.server
— HTTP servers. Python 3 Documentation. Diakses dari
https://docs.python.org/3/library/http.server.html
Tidak ada komentar:
Posting Komentar