Install & Deploy PNETLab v4 · v5 · v6 Klasik
Panduan komprehensif install, upgrade berjenjang, dan deploy PNETLab klasik pada Ubuntu 18.04 Bionic (v5) dan Ubuntu 20.04 Focal (v6), plus OVA vendor v4.2.10. Memakai skrip *_rev3.sh di direktori repositori repo.alsyundawy.com/?berkas=PnetLab, path LabHub terverifikasi 21 September 2026, dan prosedur vendor pnetlab.com. Bukan PNETLab v8 / Ubuntu 26.04 Resolute.
- Bug fix: Footer social links diubah dari
div[role="list"]ke<ul><li>native — menyelesaikan error ARIA "children which are not allowed" & "Prefer native <ul>". - CSS fix: Dihapus properti deprecated
-webkit-overflow-scrolling:touch(tidak didukung sejak Safari iOS 13+, Chrome, Edge, Firefox). Scrollbar API dimigrasi ke@supports (scrollbar-width)guard agar fallback aman di semua browser. - Pseudo-element fix: Semua
:before/:afterdiupgrade ke::before/::after(CSS3 standar). - Responsive Xiaomi/POCO: Tambahan breakpoint
@media (max-width:430px)dan@media (max-width:375px)untuk viewport 360–412px yang umum di Redmi A3, Redmi Note 13, POCO X6 Pro, dan perangkat budget Indonesia. - Security: Atribut
transparentmenggantikan literal#0000pada nilai scrollbar-color untuk kejelasan kode. - Readability: CSS diformat dengan komentar seksi, font-family dikutip dengan benar, dan seluruh kode lolos W3C CSS linter.
- Kerangka visual: Bootstrap 5.3.8, Inter, FA 7.3.1, hero-stat, section-card, sidebar, offcanvas, copy-btn.
- Skrip primer terverifikasi:
install_pnetlab_latest_v5_rev3.sh(5.3.13),install_pnetlab_v5_testing_rev3.sh(5.5.18),install_pnetlab_v6_rev3.sh(6.0.0-100) — HTTP 200 di repo.alsyundawy.com. - Aset repo terverifikasi: OVA 4.2.10 & 5.3.13, patch 5.3.11 / 5.3.45 / 5.4.6 / 5.5.18, video instalasi, tgz Jammy 6.6.
- Bab baru 9b: Deploy OVA PNETLab di Proxmox VE 8+ (nested KVM, importovf CLI, qemu-img VMDK, qm set host).
Ringkasan & Status Sumber 21 Sep 2026
PNETLab klasik adalah platform emulasi jaringan self-hosted (turunan UNetLab) dengan GUI Apache + Guacamole, path /opt/unetlab, dan bridge pnet0–pnet9. Generasi ini berbeda total dari PNETLab v8 Unofficial (Codeberg netkillui, Ubuntu 26.04, PHP 8, pnet-guac-lite).
- v4: OVA resmi pnetlab.com masih 4.2.10. Bare-metal vendor = Ubuntu 18.04 +
deb [trusted=yes] http://repo.pnetlab.com ./. - v5: Ubuntu 18.04 Bionic. Stable komunitas 5.3.13. Testing Alsundawy 5.5.18.
- v6: Ubuntu 20.04 Focal + PHP 7.4 native. Paket skrip rev3: pnetlab 6.0.0-100 / komponen 6.0.0-30 / guacamole 6.0.0-7 / kernel UKSM 5.17.15-pnetlab.
repo.pnetlab.com dengan installer Codeberg v8.
Arsitektur Deploy yang Direkomendasikan
PNETLab KLASIK v4 / v5 / v6
│
┌─────────────────┼─────────────────┐
│ │ │
v4 OVA 4.2.10 v5 Ubuntu 18.04 v6 Ubuntu 20.04
vendor / repo Bionic + rev3 Focal + rev3
│ │ │
▼ ▼ ▼
root/pnet SSH 5.3.13 stable PHP 7.4 + UKSM
admin/pnet GUI 5.5.18 testing guacamole 6.0.0-7
│ │ │
└─────────────────┴─────────────────┘
│
GUI http://<ip>/ + nested VT-x/AMD-V + pnet0..9
| Komponen | v4 | v5 | v6 |
|---|---|---|---|
| OS | OVA vendor / 18.04 bare-metal | Ubuntu 18.04 Bionic saja | Ubuntu 20.04 Focal saja |
| PHP | 7.2 era vendor | 7.2 (+ php7.2-zip sebelum upgrade GUI) | 7.4 native Focal (bukan 8.x) |
| Web | Apache + paket pnetlab-guacamole klasik — bukan pnet-guac-lite | ||
| Path | /opt/unetlab | ||
Persyaratan Sistem
- CPU Intel VT-x/EPT atau AMD-V/RVI. Nested virt wajib di VMware/ESXi/Proxmox agar node QEMU tidak start-stop.
- Docs vendor laptop: 4 logical CPU, RAM host 8 GB / VM 6 GB, HDD 40 GB — lab QEMU nyata butuh jauh lebih besar.
- ISO: 18.04 untuk v5; 20.04.x live-server untuk v6. Bukan 22.04/26.04 untuk jalur klasik.
- Snapshot hypervisor + backup
/opt/unetlab/labsdan/opt/unetlab/addonssebelum upgrade.
grep -E -c '(vmx|svm)' /proc/cpuinfo
kvm-ok
lsmod | grep kvm
Repo Alsundawy & Fitur Script rev3
Skrip revisi official komunitas diunduh 21 September 2026 dari direktori repositori repo.alsyundawy.com/?berkas=PnetLab (proteksi indeks Nginx script berkas, HTTP 200) atau unduh langsung file skrip masing-masing di bawah ini:
| File (Direct Download) | Target | Ukuran cek |
|---|---|---|
install_pnetlab_latest_v5_rev3.sh | 18.04 → patch 5.3.13.zip | 14 611 B |
install_pnetlab_v5_testing_rev3.sh | 18.04 testing 5.5.18 + deb 4.0.0-30 | 21 244 B |
install_pnetlab_v6_rev3.sh | 20.04 Focal 6.0.0-100 | 30 732 B |
Fitur bersama rev3 (dari DOCNOTE skrip)
set -Euo pipefail, gate root + versi Ubuntu (exit 1 jika salah OS).- Mirror LabHub diprioritaskan ke
/0:/pnetlab/upgrades_pnetlab/...(bukan path root yang 500). - Validasi magic ZIP
PK/ DEB!<arch>pada file.partsebelum rename; failover mirror jika HTML/500. ensure_working_dns(8.8.8.8 + 1.1.1.1) sesuai slug vendor name-resolution.check_virtualization(vmx/svm) sebelum QEMU start-stop.- Backup labs ke
/root/labs-TIMESTAMP.tgzjika folder ada; workdirmktemp+ trap cleanup. - Pasca-aksi:
/opt/unetlab/wrappers/unl_wrapper -a fixpermissions.
Khusus v6 rev3
- PHP 7.4 native Focal, purge php8*,
a2enmod rewrite php7.4, libsdl2 sesuai LabHub. - Kernel
linux-image-5.17.15-pnetlab-uksm; paket P/L folders: docker, schema, guacamole 6.0.0-7, vpcs, dynamips, wireshark, qemu, pnetlab 6.0.0-100. - Password root vendor hanya jika
/opt/ovf/.configuredbelum ada (idempotent). - Perbaikan fstab Azure (pemisah spasi, bukan literal
\t).
Khusus v5 testing rev3
- Artefak:
5.5.18.zip,pnetlab-docker/qemu/wireshark_4.0.0-30,pnetlab-guacamole_4.0.0-6,docker-ce.zip,swtpm-bionic.zip. - ALTER TABLE kuota CPU/RAM di DB
pnetlab_dbmemakaiMYSQL_PWD+ env, bukan hardcode di output.
sudo -i
echo 'nameserver 8.8.8.8' > /etc/resolv.conf
cd /root
wget -O install_pnetlab_latest_v5_rev3.sh \
https://repo.alsyundawy.com/PnetLab/install_pnetlab_latest_v5_rev3.sh
wget -O install_pnetlab_v5_testing_rev3.sh \
https://repo.alsyundawy.com/PnetLab/install_pnetlab_v5_testing_rev3.sh
wget -O install_pnetlab_v6_rev3.sh \
https://repo.alsyundawy.com/PnetLab/install_pnetlab_v6_rev3.sh
less install_pnetlab_latest_v5_rev3.sh # inspeksi dulu
chmod +x install_pnetlab_*_rev3.sh
Install PNETLab v4
OVA 4.2.10
Vendor: pnetlab.com/pages/download. Mirror Alsundawy (HTTP 200, 2 061 676 032 B): PNET_4.2.10.ova.
- Import OVA ke VMware/VirtualBox/ESXi. Aktifkan Virtualize VT-x/EPT atau AMD-V/RVI.
- Login konsol
root/pnet. Wizard awal. Offline GUI:admin/pnet. - Akses HTTP ke IP manajemen (docs vendor: HTTP, bukan HTTPS).
sudo -i
passwd
sed -i -e 's/.*PermitRootLogin .*/PermitRootLogin yes/' /etc/ssh/sshd_config
service sshd restart
echo 'deb [trusted=yes] http://repo.pnetlab.com ./' >> /etc/apt/sources.list
echo 'nameserver 8.8.8.8' > /etc/resolv.conf
apt-get update
apt-get purge netplan.io
apt-get install pnetlab -y
# jika gagal: apt-get update && apt-get install pnetlab -y
reboot
Sumber: slug vendor install-bare-metal. Ini generasi v4/v5, bukan skrip Focal v6.
Install / Upgrade v5 Stable — Ubuntu 18.04
Skrip install_pnetlab_latest_v5_rev3.sh mensyaratkan PNETLab sudah ada di host Bionic, lalu mengunduh 5.3.13.zip dan menjalankan prosedur vendor ./upgrade/upgrade.
apt-get install pnetlab vendor.
sudo -i
cd /root
wget -O install_pnetlab_latest_v5_rev3.sh \
https://repo.alsyundawy.com/PnetLab/install_pnetlab_latest_v5_rev3.sh
bash install_pnetlab_latest_v5_rev3.sh
reboot
kvm-ok
grep -cw vmx /proc/cpuinfo
.../pnetlab/upgrades_pnetlab/bionic/stable/5.3.13.zip. OVA siap pakai: PNetLab-v.5.3.13.ova (3 236 652 544 B).
v5 Testing 5.5.18 — Bionic
Cabang testing, bukan stable. Patch lokal Alsundawy: 5.5.18.zip (128 059 576 B). Hanya Ubuntu 18.04.
sudo -i
wget -O install_pnetlab_v5_testing_rev3.sh \
https://repo.alsyundawy.com/PnetLab/install_pnetlab_v5_testing_rev3.sh
bash install_pnetlab_v5_testing_rev3.sh
reboot
Install PNETLab v6 — Ubuntu 20.04 Focal
Skrip install_pnetlab_v6_rev3.sh menolak OS selain 20.04. Patch PHP 7.4 (bukan PPA PHP 7.2 yang sudah hilang). Reboot wajib karena kernel UKSM.
sudo -i
echo 'nameserver 8.8.8.8' > /etc/resolv.conf
apt-get update
wget -O install_pnetlab_v6_rev3.sh \
https://repo.alsyundawy.com/PnetLab/install_pnetlab_v6_rev3.sh
less install_pnetlab_v6_rev3.sh
bash install_pnetlab_v6_rev3.sh
reboot
php -v # harapkan 7.4
kvm-ok
dpkg -l | egrep 'pnetlab|guacamole'
install.txt di repo masih memuat curl ... labhub.eu.org/api/raw/?path=/upgrades_pnetlab/focal/.... API raw itu pada 2026-09-21 redirect ke index. Pakai skrip rev3, bukan pipa path lama.
OVA, Patch, Video, dan Bundel Lain di Repo
Semua URL berkas langsung berikut berstatus HTTP 200 pada 21 September 2026. Seluruh direktori berkas dapat ditelusuri melalui repo.alsyundawy.com/?berkas=PnetLab.
| Aset | Peran | Bytes |
|---|---|---|
| PNET_4.2.10.ova | OVA v4 | 2 061 676 032 |
| PNetLab-v.5.3.13.ova | OVA v5 stable | 3 236 652 544 |
| from_any_to_5.3.11.zip | Patch extras 5.3.11 | 132 142 153 |
| 5.3.45.zip | Patch 5.3.45 | 123 360 833 |
| 5.4.6.zip | Patch 5.4.6 | 127 356 923 |
| 5.5.18.zip | Testing 5.5.18 | 128 059 576 |
| pnetlab6.6-jammy-2026-06-08.tgz | Bundel komunitas 22.04 — bukan Focal v6 klasik, bukan v8 | 602 852 164 |
Video instalasi
- pnet-install-part-1.mp4 (32 221 025 B)
- pnet-install-part-2-1.mp4 (18 351 429 B)
- pnet-install-part-2-2.mp4 (127 444 630 B)
Deploy OVA PNETLab di Proxmox VE 8+
Minimum Proxmox VE 8 (disarankan 8.3+ atau 9.x). Docs resmi: QEMU/KVM Virtual Machines dan Migrate to Proxmox VE. Wizard impor OVA/OVF masuk siklus PVE 8.2 dan distabilkan di 8.3 (konten storage import).
device-start-and-stop-immediately). CPU type default PVE (x86-64-v2-AES / kvm64) tidak meneruskan VT-x/AMD-V.
A. Nested virtualization di host PVE
# Cek modul
cat /sys/module/kvm_intel/parameters/nested # Intel: Y atau 1
cat /sys/module/kvm_amd/parameters/nested # AMD: Y atau 1
# Intel — persist
echo "options kvm-intel nested=1" > /etc/modprobe.d/kvm-intel.conf
# AMD — persist
echo "options kvm-amd nested=1" > /etc/modprobe.d/kvm-amd.conf
update-initramfs -u
# Reload modul hanya jika tidak ada VM yang berjalan:
# modprobe -r kvm_intel && modprobe kvm_intel
# atau reboot host
B. Jalur GUI PVE 8.3+ (resmi)
- Datacenter → Storage → edit storage file-based (
localatau NFS/CIFS) → centang konten Import (plus Disk Image). - Pada node: Storage → tab Import → Upload atau Download from URL (contoh OVA Alsundawy).
- Pilih file OVA → Import. Wizard membaca OVF (vCPU/RAM/nama). Set target storage disk.
- Docs resmi: OVA butuh ruang sementara untuk extract; bisa set Import Working Storage.
OVA terverifikasi:
C. Jalur CLI — qm importovf (semua PVE 8+)
OVA adalah tar. Docs wiki: extract dulu, lalu impor OVF. Jaringan harus dipasang manual setelah import.
# di node PVE, sebagai root
mkdir -p /var/lib/vz/import/pnetlab && cd /var/lib/vz/import/pnetlab
# scp/wget OVA ke sini, contoh:
# wget -O PNET_4.2.10.ova https://repo.alsyundawy.com/PnetLab/PNET_4.2.10.ova
tar -xvf PNET_4.2.10.ova
ls -l
# biasanya: *.ovf *.vmdk *.mf
# VMID bebas, storage = local-lvm / local-zfs / nama storage Anda
qm importovf 210 PNET_4.2.10.ovf local-lvm --format qcow2
D. Alternatif: VM kosong + qemu-img + qm importdisk
Dipakai komunitas jika OVF PNETLab memicu error XPath namespace pada qm importovf (thread forum Proxmox; perbaiki xmlns di Envelope atau pakai jalur ini).
qemu-img convert -p -f vmdk -O qcow2 PNET_4.2.10-disk1.vmdk pnetlab.qcow2
qm create 210 --name pnetlab --ostype l26 --memory 8192 --cores 4 \
--cpu host --numa 1 --scsihw virtio-scsi-pci \
--net0 virtio,bridge=vmbr0 --bios seabios
qm importdisk 210 pnetlab.qcow2 local-lvm
# pasang disk yang muncul sebagai unused0:
qm set 210 --scsi0 local-lvm:vm-210-disk-0 --boot order=scsi0
Nama file VMDK di dalam OVA bisa berbeda; cek hasil tar -tf. Sesuaikan storage ID dan nama LV setelah impor.
E. Wajib setelah impor — CPU host & NIC
qm set 210 --cpu host
qm set 210 --cores 4 --memory 8192
# NIC manajemen: virtio ke vmbr0 (sesuaikan bridge lab Anda)
qm set 210 --net0 virtio,bridge=vmbr0
# SeaBIOS biasanya benar untuk OVA PNETLab (bukan OVMF)
qm set 210 --bios seabios
qm config 210
host tidak portable. Untuk cluster homogen itu aman. PVE 9.1+ punya flag nested-virt pada model CPU vendor; untuk lab PNETLab tetap paling sederhana cpu: host.
F. Validasi di dalam guest PNETLab
grep -E -c '(vmx|svm)' /proc/cpuinfo
kvm-ok
ip -br a
# ganti password default root/pnet
passwd
Upgrade Patch Berjenjang (Vendor)
Slug how-to-upgrade-pnetlab: online lewat GUI System → Version → Upgrade. Offline wajib naik bertahap (contoh vendor 1.0.1 → 1.0.2 → 1.0.3). Komunitas: sampai 4.2.10 berjenjang; 5.2.7+ banyak patch from_any_to_5.3.x.
cd /tmp
rm -rf upgrade
unzip NAMA.zip -d ./upgrade
chmod 755 -R upgrade
find upgrade -type f -print0 | xargs -0 dos2unix 2>&1
./upgrade/upgrade
reboot
Sebelum tombol upgrade GUI di 18.04, docs vendor:
rm -f /var/lib/dpkg/lock /var/lib/dpkg/lock-frontend
apt-get install php7.2-zip -y
# jika stuck 100%: php /opt/unetlab/html/store/artisan upgrade now
Upgrade OS & Lintas Versi (4→5, 5→6, 4→6)
from_4.2.10_to_5.0.1/5.0.1.zip di LabHub, lalu extras / from_any_to_5.3.11.zip / rev3 5.3.13. Cadangkan labs. Jangan loncat 4.2.10 langsung ke 5.5.18 tanpa snapshot.
do-release-upgrade. Folder LabHub extras/upgrade_to_ubuntu_20.04/ hanya berisi zip offline v6. Jalur aman: export config + tar labs/addons → Focal baru → install_pnetlab_v6_rev3.sh → restore + Fixpermissions.
pnetlab6.6-jammy-2026-06-08.tgz adalah bundel komunitas Ubuntu 22.04. Bukan target skrip v6 rev3 (gate 20.04) dan bukan v8 Resolute. Jangan dicampur ke host Focal/Bionic tanpa prosedur terpisah yang Anda uji sendiri.
HTML Console / Guacamole Klasik
- HTML Console = default vendor, tanpa paket klien (Guacamole klasik v4–v6).
- Native console: PuTTY/UltraVNC/Wireshark atau eve-ng-integration Linux.
- Wireshark HTML memakai Docker; simpan ke
/nobody/thinclient_drives/GUAC/Download.
mode default offline
mode default online
mode reset offline
Error Umum Vendor
Name resolution
echo 'nameserver 8.8.8.8' > /etc/resolv.conf
ping -c 2 pnetlab.com
# jika Google DNS diblokir:
rm /etc/resolv.conf
ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
file_get_contents / MySQL SSL
sed -i '/skip_ssl/d' /etc/mysql/mysql.conf.d/mysqld.cnf
echo 'skip_ssl' >> /etc/mysql/mysql.conf.d/mysqld.cnf
service mysql restart
sed -i 's/Update-Package-Lists "1"/Update-Package-Lists "0"/g' /etc/apt/apt.conf.d/20auto-upgrades
- Node start-stop: image INVALID, nested virt mati, atau
iourcIOL rusak. - Fixpermissions GUI atau wrapper
unl_wrapper -a fixpermissions.
Validasi Runtime
lsb_release -a
php -v
dpkg -l | egrep 'pnetlab|guacamole|qemu|dynamips|vpcs'
systemctl is-active apache2 mysql docker || true
ip -br link | egrep 'pnet|br'
ss -lntup | egrep ':80|:8080|:22'
grep -E -c '(vmx|svm)' /proc/cpuinfo
kvm-ok
ls -ld /opt/unetlab /opt/unetlab/addons /opt/unetlab/labs
Security Baseline & Larangan
- Ganti password
root/pnetdanadmin/pnetsegera. - Jangan expose UI ke internet. VLAN lab / VPN / allowlist.
- Isolasi bridge
pnet1–pnet9dari jaringan kampus. - Jangan
do-release-upgradeke 22.04/26.04 pada host klasik. - Jangan campur repo.pnetlab.com dengan channel Codeberg v8.
- Jangan pipe
curl | bashke API raw LabHub yang redirect index. - Image IOS/ASA/dll adalah tanggung jawab lisensi Anda.
Urutan Final yang Direkomendasikan
PHASE 1 — Host
- Pilih OS yang cocok: OVA v4/v5, Bionic untuk v5, Focal untuk v6.
- Nested virt, snapshot, DNS, SSH key.
PHASE 2 — Install
- v4: OVA atau apt vendor 18.04.
- v5: basis +
install_pnetlab_latest_v5_rev3.sh(atau testing 5.5.18). - v6: Focal bersih +
install_pnetlab_v6_rev3.sh.
PHASE 3 — Hardening & lab
- Reboot, ganti password, Fixpermissions, uji 2-node, baru tarik image besar.
/0:/pnetlab/upgrades_pnetlab/.