qemu-guest-agent für PFSense (ab Version 2.6.0)

Ich betreibe eine PFsense-Firewall, hinter der meine Services betrieben werden, die ich für meine Hobbies benötige. Die PFsense wickelt auch andere nützliche Dienste, wie SSL Offloading inkl. ACME-Client für automatischen Zertifikatstausch bei Let’s Encrypt ab oder Loadbalancing für zB. meinen RabbitMQ-Cluster.

Die PFsense läuft als Virtuelle Maschine (VM) auf einem Proxmox Host. Bisher war leider keine ordentliche Implementierung des qemu-guest-agent verfügbar, mit dem einige Management-Funktionen der virtuellen Umgebung auch für die PFsense nutzbar sind.

Seit Version 2.6.0 ist nun ein Paket verfügbar, das sich – zwar nicht über das Webinterface alleine – aber immerhin „ordentlich“ (in meiner Definition) installieren und betreiben lässt, sehr gut funktioniert und mit sinnvollem Aufwand zu installieren ist.

Mehr Infos zum qemu-guest-agent gibt es ua. hier:

Meine Anleitung stützt sich – neben meinen Erkenntnissen – auf diese Artikel:

Schritt für Schritt durch die Installation

1) öffne die Console und gib folgendes Kommando für die Installation ein:

pkg install qemu-guest-agent

2) man benötigt das Paket „Shellcmd“, um beim Booten den automatischen Start des qemu-guest-agent einzurichten. Die Installation erfolgt über das Webinterface:
2a) unter System / Paketverwaltung das Paket „Shellcmd“ installieren.
2b) nun ist unter Dienste / Shellcmd möglich, dieses Kommando hinzuzufügen, das ab sofort bei jedem Reboot den Dienst startet:

service qemu-guest-agent start

3) in der Datei /etc/rc.local (in manchen Anleitungen steht /etc/rc.conf.local) muss man nun folgende Zeilen einfügen,:

qemu_guest_agent_enable="YES"
qemu_guest_agent_flags="-d -v -l /var/log/qemu-ga.log"

Damit ist die Installation abgeschlossen! Nach einem Reboot sollte der Dienst starten bzw. laufen und scheint bei mir in der Proxmox-Umgebung auch sofort auf.

4) als letzter Schritt wird empfohlen, in den Erweiterte Einstellungen / System Feinabstimmung („Tunables“) folgenden Eintrag hinzuzufügen:

  • Abstimmungsname: virtio_console_load
  • Wert: YES