aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--vpn/Vagrantfile43
1 files changed, 43 insertions, 0 deletions
diff --git a/vpn/Vagrantfile b/vpn/Vagrantfile
new file mode 100644
index 0000000..c3135c7
--- /dev/null
+++ b/vpn/Vagrantfile
@@ -0,0 +1,43 @@
+# vi: set ft=ruby :
+# frozen_string_literal: true
+
+ENV['VAGRANT_DEFAULT_PROVIDER'] = 'libvirt'
+Vagrant.require_version '>= 2.2.6'
+Vagrant.configure('2') do |config|
+ config.vm.box = 'generic/alpine318'
+ config.vm.box_version = '4.3.2'
+ config.vm.box_check_update = false
+ config.vm.hostname = 'virt-vpn'
+
+ # ssh
+ config.ssh.insert_key = true
+ config.ssh.keep_alive = true
+ config.ssh.keys_only = true
+
+ # timeouts
+ config.vm.boot_timeout = 300
+ config.vm.graceful_halt_timeout = 60
+ config.ssh.connect_timeout = 15
+
+ # shares
+ config.vm.synced_folder './share', '/home/vagrant/nfs', type: 'nfs', nfs_version: 4, nfs_udp: false
+
+ config.vm.provider 'libvirt' do |libvirt|
+ libvirt.default_prefix = 'vpn-'
+ libvirt.driver = 'kvm'
+ libvirt.memory = '128'
+ libvirt.cpus = 1
+ libvirt.sound_type = nil
+ libvirt.qemuargs value: '-nographic'
+ libvirt.qemuargs value: '-nodefaults'
+ libvirt.qemuargs value: '-no-user-config'
+ libvirt.qemuargs value: '-serial'
+ libvirt.qemuargs value: 'pty'
+ # libvirt.random model: 'random'
+ end
+
+ config.vm.provision 'update', type: 'shell', name: 'update', inline: <<-SHELL
+ sudo apk add openvpn tmux
+ sudo modprobe tun
+ SHELL
+end