virt-install --name pfsense --ram 1024 --vcpus=1 --os-variant freebsd7 --hvm --vnc \
--controller type=scsi,model=virtio-scsi --disk path=pfSense-2.2.2.raw,size=4,bus=scsi \
--network=bridge:br0,model=virtio \
--cdrom pfSense-LiveCD-2.2.2-RELEASE-amd64.iso
Configure vtnet0 as WAN.
- Interfaces/WAN:
- General configuration/MTU: 1460
- DHCP client configuration/Advanced: Checked
- DHCP client configuration/Option Modifiers: supersede subnet-mask 255.255.0.0
- System/Advanced:
- webConfigurator/Browser HTTP_REFERER enforcement: Checked
- Secure Shell/Secure Shell Server: Checked (optional)
curl https://sdk.cloud.google.com | bash
gcloud auth login
gcloud config set project endless-gamma-92206
gsutil mb gs://pfsense
gsutil cp pfSense-2.2.2-1.tar.gz gs://pfsense
gcloud compute images create pfsense-2-2-2-1 --source-uri gs://pfsense/pfSense-2.2.2-1.tar.gz
- Allow HTTPS: Checked
- Allow HTTP: Checked (optional)
Hi man,
thanks on first for your job, been traveling and mindscrapping for a WHILE before I got here, and THIS ONE WORKS.
But....would be more useful if you define some details of the environment.
For example:
I used your script syntax on a Debian VM machine inside a Virtualbox environment, it has to be updated, and some details for virt-manager can be found here:
https://virt-manager.org/
The machine itself must have a second interface, virtual or not, to fulfill that br0 so some editing should be done to "interfaces" file.
You probably started from an already double homed machine, but I did all this stuf above a virtualized Debian on my laptop.
OK, you could excerpt that a single homed firewall makes no sense, but I was in need to bring up the machine in GCE on first , and after that to mess up with the network settings.
Anyhow, is much (let me say MUCH) better to let the machine get ready while creating the image above the homing virt-manager environment, whatever it is.
If any will redo the process, the PfSense image will have to install these stuff too:
https://cloud.google.com/compute/docs/tutorials/building-images#os
before you shot it down and transfer it to GCE.
Going on, its better to create a working directory in a place outside home, because the script operates with a user different from "root", for example.
Last thing: the created image in raw format needs a rename first and a compress last.
GCE accepts images only if the tar.gz contains a file named disk.raw, and the tar command needs qualifiers czvf (having DEEP troubles to find this out, in between GCE docs and vids) if not GCE says it's not a correct tar format.
Afak that's all.