2026-05-28 06:56:46 -07:00
2026-05-28 06:56:46 -07:00
2026-05-28 06:56:46 -07:00
2026-05-28 06:56:46 -07:00
2026-05-28 06:56:46 -07:00
2026-05-28 06:56:46 -07:00
2026-05-28 06:56:46 -07:00
2026-05-28 06:56:46 -07:00

gns3-remote-install-redux

Revised version of the OG upstream GNS3 remote installer.

What's different

  • Single primary apt pass: packages, repos, and groups rolled up from flags before install runs (as much as possible)
  • Preflight: checks root, OS, needed commands, ports, modules, CPU virt extensions. Reports every error condition at once
  • Auto-loads KVM: modprobe + persist to /etc/modules-load.d/, unless --without-kvm
  • Retry + verify: apt retries 3x with backoff; services verified with systemctl is-active; GNS3 API curled post-install
  • WireGuard: adds modern VPN option
  • EC crypto: P-384 by default for OpenVPN (faster keygen, no DH params). --legacy-rsa if needed
  • Encrypted configs: VPN configs are encrypted with one-time passphrase. A copy+paste one-liner is printed to console to curl and decrypt the file at once. --unsafe-configs to skip
  • Scoped firewall: UFW rules allow VPN from 0.0.0.0/0, others scoped to SSH source + local subnets
  • Sysctl hardening: rp_filter, syncookies, ICMP redirect rejection, source route disable
  • Landing page: ephemeral web page gives server info, version-matched client downloads, VPN configs, warnings, and resources. Auto-expires via systemd timer. Uses Python httpd.server module, instead of installing nginx package.
  • Reconfigure: enhanced idempotence. detects prior install, stops services, re-runs cleanly
  • Testable: main() guarded so functions can be sourced for BATS or plain bash tests

Usage

sudo ./gns3-remote-install-redux.sh [OPTIONS]

Flags

Flag Default Description
--with-openvpn off Install and configure OpenVPN
--with-wireguard off Install and configure WireGuard
--with-welcome off Install GNS3-VM welcome console UI
--without-kvm KVM on Disable KVM hardware acceleration
--without-docker Docker on Skip Docker CE installation
--without-firewall UFW on Skip automatic UFW rule configuration
--without-system-upgrade upgrade on Skip apt upgrade
--unsafe-configs encrypted Serve VPN configs unencrypted
--legacy-rsa EC P-384 Use RSA-2048 + DH for OpenVPN
--unstable stable PPA Use the GNS3 unstable PPA
--custom-repository REPO ppa Use a custom GNS3 PPA name
-h, --help Show help

Requirements

Ubuntu Server 24.04 LTS (amd64). Run as root or with sudo.

License

Based on the original GNS3 remote installer (GPLv3).

S
Description
a revamped and revitalized GNS3 server deployment script
Readme 90 KiB
Languages
Shell 75.5%
Python 14.8%
HTML 9.7%