Skip to content

Instantly share code, notes, and snippets.

@sveba
Last active August 15, 2018 07:56
Show Gist options
  • Save sveba/a92609d6b85ee4536bb4f01ee2d03ca8 to your computer and use it in GitHub Desktop.
Save sveba/a92609d6b85ee4536bb4f01ee2d03ca8 to your computer and use it in GitHub Desktop.
------ Network -----
----- /etc/systemd/network/10-internet.netdev -----
[NetDev]
Name=internet
Kind=bridge
MACAddress=${enp2s0-MAC}
[Bridge]
STP=false
------ /etc/systemd/network/20-enp2s0.network -----
[Match]
Name=enp2s0
[Network]
Bridge=internet
------ /etc/systemd/network/30-internet.network -----
[Match]
Name=internet
[Network]
Gateway=${enp2s0-GW}
[Address]
Address=${enp2s0-IP}
Peer=${enp2s0-PEER}/32
----- /etc/systemd/network/50-private.netdev -----
[NetDev]
Name=private
Kind=bridge
[Bridge]
STP=false
----- /etc/systemd/network/60-private.network -----
[Match]
Name=private
[Network]
DHCP=no
Address=0.0.0.0/32
------ IPFire VM ------
VM mit 2 interfaces auf die bridges "internet"=RED und "private"=GREEN
Das RED interface MAC muss man in Hetzner Portal generieren lassen und eintragen
RED auf internet
GREEN auf private
RED IP = ${IP2}
RED GW = schau im hetzner portal. Mouse over über die IP2
------ VM aus cloud init images -----
wget ...iso
# Covert and resize
qemu-img convert -O qcow2 xenial-server-cloudimg-amd64-disk1.img xenial-server-cloudimg-amd64-disk1.qcow2
qemu-img resize xenial-server-cloudimg-amd64-disk1.qcow2 +8G
# Snapshot
qemu-img create -f qcow2 -b xenial-server-cloudimg-amd64-disk1.qcow2 ubuntu.img
# Cloud init script
cat > config <<EOF
#cloud-config
password: THE_PASSWORD
chpasswd: { expire: False }
ssh_pwauth: True
EOF
# Create image
cloud-localds config.img config
# Create VM
virt-install --connect=qemu:///system \
--name VMNAME \
--ram 2048 \
--vcpus=2 \
--os-type=linux \
--os-variant=generic \
--disk docker.img,device=disk,bus=virtio \
--disk seed.img,device=cdrom \
--graphics none \
--network=bridge:private,model=e1000 \
--import
# Eject config cd
virsh change-media VMNAME hda --eject --config
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment