Skip to content

john-clark/proxmox-nfp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Proxmox NFP (NOT FOR PRODUCTION)

Automate Proxmox for home or development use.

Typically, Proxmox environment requires multiple machines: Proxmox server, user console, and network management. Proxmox typically bridges its network management interface to the local lan, it is expected that you run a firewall/dns/router in front of Proxmox, then use a desktop to interact with the Proxmox server.

The purpose of this is to incorporate everything into a single machine. We remove the bridge to the local lan, install OpenWRT to manage the network, and set Proxmox to bridge the internal OpenWRT NAT network. Then we install a GUI desktop on the machine so you can browse to the local Proxmox and OpenWRT management consoles. To create an empirical environment when testing cloud systems and services locally.

TODO: we will add VPN/Wireguard access and cloudflared tunneling to our inside network.

Warning This is not for Enterprise Environments

Warning This is not supported by Proxmox or affiliated in anyway!

Warning You probably will delete or corrupt your computer with this!

Warning Absolutely NO support, guarantee, or warranty is given or implied!

Information

Note Proxmox is meant to be a server so it only has a minimal Operating System. This project is the opposite of their design. Since Proxmox was not designed for this functionality, do not ask them for support.

Note As an paid or unpaid user of Proxmox you are subject to their changes, and therefor this may not function as designed. This project combines the work from many different people and which is also subject to change at anytime. Onkly an attempt was made to make this version independent.

Note This project is still a work in progress and therefore it is not complete.

Quick Instructions

On a functioning machine create the installer media and copy this repo to the USB key

Ensure VTx enabled in BIOS https://pve.proxmox.com/wiki/Pci_passthrough#Enable_the_IOMMU

Install the machine with Proxmox USB key, following the specifics in this guide

Run the setup scripts in this repo from the usb key following the instructions

The final reboot will be into KIOSK mode. Press CTRL-N in browser, 192.168.1.1 for OpenWRT

Requirements

  • CPU: 64bit (Intel EMT64 or AMD64)
  • Intel VT/AMD-V capable CPU/Mainboard (for KVM Full Virtualization support)
  • Minimum 8GB RAM ( Recommanded 16 or more)
  • Hard Drive 256GB ( Recommended 512GB or more)
  • One Hardware NIC ( Recommended 2nd NIC for LAN and Wifi if you want OpenWRT to be an AP)
  • USB key for installation

Prereq:

  1. Download and install Ventoy on the USB key
  2. Download and copy Proxmox iso to the Ventoy data folder
  3. Download openwrt to the proxmox-nfp folder

Installation Detailed Instructions

Preinstall

  1. Create Ventoy USB Key following their instructions
    • https://www.ventoy.net/en/doc_start.html
  2. Copy Proxmox ISO to USB key
  3. git clone this repo, or download the zip and extract to the USB key
  4. Copy openwrt...gz to the root of the USB key

System Installation

unplug network cable To avoid DHCP

Boot computer from USB key

  1. Install proxmox - choose defaults except for network

    • hostname: pve.lan
    • ip: 192.168.1.2/24
    • gw: 192.168.1.1
    • dns: 192.168.1.1
  2. After Proxmox Install finished reboot

    • login
    • mount /dev/sda1 /mnt
    • /mnt/proxmox-nfp/runme1st.sh

plug in network cable

Boot computer

  1. Run setup

    • log in as root

    • run proxmox-nfp/baseline.sh

    • After reboot you will be brought to a GUI Proxmox Login

      Warning If DHCP is not available on the outside proxmox network, you will need to setup OpenWRT with a static ip. Press CTRL-N and browse to 192.168.1.1 to configure your outside connection.

  2. Install Docker

    • log in as root in the Proxmox Gui
    • Browse to Console
    • Wait until you can ping the outside and you know OpenWRT has an ip address.
    • proxmox-nfp/create-debian-docker-ct.sh

Not quite there yet

TODO: Docker containers

  • Yacht
  • Cloudflared
  • Traefik
  • Wireguard
  • AdGuard - point OpenWRT here

TODO: Reverse Proxy overlay/menu

THANKS

About

Proxmox Not For Production

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published