Ricerca nel sito web

Installa e configura OpenWrt VM su Proxmox VE


In questo articolo esamineremo l'installazione di OpenWrt in Proxmox Virtual Environment. OpenWrt può essere installato su un normale PC, su una macchina virtuale o su un server hardware e sfruttare la potenza che l'architettura x86 (Intel/AMD) può offrire. OpenWrt Project è basato sul sistema operativo Linux ed è stato creato per adattarsi alle applicazioni nei dispositivi embedded nell'instradamento del traffico. Inoltre, OpenWrt fornisce un filesystem completamente scrivibile con gestione dei pacchetti che sblocca la potenza delle integrazioni.

OpenWrt può essere utilizzato per varie funzioni come:

  • Configurazione del tuo server o client VPN privato
  • Configurazione del DNS dinamico
  • Migliorare la sicurezza della tua rete
  • Migliorare le prestazioni generali della tua rete con più dispositivi
  • Esecuzione del client BitTorrent all'interno dell'appliance del router
  • Condivisione di file tra dispositivi con l'unità di archiviazione esterna collegata al router OpenWrt
  • Utilizzare OpenWrt per creare una stampante di rete a cui è possibile accedere dalla propria LAN
  • Esecuzione della limitazione della larghezza di banda di un particolare dispositivo nella rete
  • Per il monitoraggio della rete in tempo reale

1. Scarica OpenWrt Image per l'installazione

Eseguiremo l'installazione di OpenWRT su un ambiente virtuale Proxmox. Ma prima dobbiamo scaricare il file immagine più recente per la nostra architettura della CPU. Sono su x86_64.

Ottieni l'ultimo tag di rilascio. Dovresti eseguire i comandi nel tuo server Proxmox.

VER=$(curl --silent "https://api.github.com/repos/openwrt/openwrt/releases/latest"|grep '"tag_name"'|sed -E 's/.*"([^"]+)".*/\1/'|sed 's/v//')

Scarica l'ultimo file immagine OpenWRT nel percorso del server Proxmox.

wget -O openwrt.img.gz https://downloads.openwrt.org/releases/$VER/targets/x86/64/openwrt-$VER-x86-64-generic-ext4-combined.img.gz

Il file è in realtà piccolo, come può essere confermato di seguito.

$ du -sh openwrt.img.gz
11M	openwrt.img.gz

Estrai l'archivio scaricato per ottenere il file immagine raw

$ gunzip ./openwrt.img.gz
gzip: ./openwrt.img.gz: decompression OK, trailing garbage ignored

Aumentiamo la dimensione del disco raw a 5 GB.

$ qemu-img resize -f raw ./openwrt.img 5G
Image resized.

2. Crea una macchina virtuale OpenWrt su Proxmox VE

Accedi alla tua shell Proxmox VE e imposta le variabili richieste per la creazione della macchina virtuale.

VM_NAME=OpenWrt
VM_ID=$(pvesh get /cluster/nextid)
RAM=2048
CORES=1
BRIDGE=vmbr0
IMAGE=./openwrt.img

Quindi crea la macchina virtuale utilizzando lo strumento da riga di comando qm.

qm create --name $VM_NAME \
  $VM_ID --memory $RAM \
  --cores $CORES --cpu cputype=kvm64 \
  --net0 virtio,bridge=$BRIDGE \
  --scsihw virtio-scsi-pci --numa 1

È possibile elencare i domini di archiviazione disponibili utilizzando i seguenti comandi:

# pvesm status
Name         Type     Status           Total            Used       Available        %
local         dir     active       772966856        53281488       680347384    6.89%

Imposta il valore di archiviazione nella variabile STORAGE.

STORAGE=local

Successivamente importiamo l'immagine nel disco della VM.

# qm importdisk $VM_ID $IMAGE $STORAGE
...
transferred 3.0 GiB of 5.0 GiB (59.75%)
transferred 3.1 GiB of 5.0 GiB (61.41%)
transferred 3.2 GiB of 5.0 GiB (63.07%)
transferred 3.2 GiB of 5.0 GiB (64.73%)
transferred 3.3 GiB of 5.0 GiB (66.39%)
transferred 3.4 GiB of 5.0 GiB (68.05%)
transferred 3.5 GiB of 5.0 GiB (69.71%)
transferred 3.6 GiB of 5.0 GiB (71.37%)
transferred 3.7 GiB of 5.0 GiB (73.03%)
transferred 3.7 GiB of 5.0 GiB (74.69%)
transferred 3.8 GiB of 5.0 GiB (76.35%)
transferred 3.9 GiB of 5.0 GiB (78.01%)
transferred 4.0 GiB of 5.0 GiB (79.67%)
transferred 4.1 GiB of 5.0 GiB (81.33%)
transferred 4.1 GiB of 5.0 GiB (82.99%)
transferred 4.2 GiB of 5.0 GiB (84.65%)
transferred 4.3 GiB of 5.0 GiB (86.31%)
transferred 4.4 GiB of 5.0 GiB (87.97%)
transferred 4.5 GiB of 5.0 GiB (89.63%)
transferred 4.6 GiB of 5.0 GiB (91.29%)
transferred 4.6 GiB of 5.0 GiB (92.95%)
transferred 4.7 GiB of 5.0 GiB (94.61%)
transferred 4.8 GiB of 5.0 GiB (96.27%)
transferred 4.9 GiB of 5.0 GiB (97.93%)
transferred 5.0 GiB of 5.0 GiB (99.59%)
transferred 5.0 GiB of 5.0 GiB (100.00%)
transferred 5.0 GiB of 5.0 GiB (100.00%)
Successfully imported disk as 'unused0:local:102/vm-102-disk-0.raw'

Dopo l'importazione il disco non è collegato alla macchina virtuale. Eseguire i comandi seguenti per allegarlo.

# qm set $VM_ID --scsihw virtio-scsi-pci --virtio0 $STORAGE:$VM_ID/vm-$VM_ID-disk-0.raw
update VM 102: -scsihw virtio-scsi-pci -virtio0 local:102/vm-102-disk-0.raw

Imposta la console seriale e la priorità dell'ordine di avvio.

qm set $VM_ID --serial0 socket --vga serial0
qm set $VM_ID --boot c --bootdisk virtio0

Configura l'istanza per l'avvio all'avvio del sistema.

qm set $VM_ID --onboot 1

3. Accedi alla console della macchina virtuale OpenWrt

Fare clic sul nome dell'istanza in Proxmox e avviare la macchina virtuale dalla console.

Una volta avviato cadrà nel guscio.

Imposta la nuova password di root utilizzando il comando passwd.

passwd

Come mostrato nello screenshot.

Per elencare le informazioni sulla rete corrente, eseguire:

uci show network

Per impostare le informazioni sull'IP statico nella macchina virtuale, modificare il file delle configurazioni di rete.

# vim /etc/config/dhcp

È possibile modificare il file e impostare indirizzo IP statico, maschera di rete e gateway.

Riavviare il servizio di rete per rendere effettive le modifiche.

service network restart

Oppure direttamente con l'esecuzione dello script.

/etc/init.d/network restart

Con l'istanza connessa a Internet è possibile aggiornare l'indice dei pacchetti di sistema.

opkg update

Per installare un pacchetto utilizzare;

opkg install <package-name>

4. Accedere all'interfaccia Web OpenWrt

Avvia il tuo browser web e inserisci l'indirizzo IP OpenWrt. Accedi con il nome utente root e la password impostata in precedenza.

Avrai accesso alla dashboard di gestione web di OpenWrt da dove potrai eseguire molte configurazioni.

Conclusione

OpenWrt è una soluzione altamente estensibile e flessibile per l'esecuzione in dispositivi embedded e come router. È una soluzione popolare tra gli appassionati di reti e sistemi che desiderano un controllo completo sull'hardware e sul design della propria rete. Nei nostri futuri articoli avremo guide più approfondite sull'utilizzo di OpenWrt. Rimani connesso e abbi cura di te!.

Articoli correlati: