From 4982cedd95591ee54f4b9d9b849d7a17458d0397 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Thu, 13 Jan 2022 00:05:45 +0100 Subject: add openwrt-based smb host for install media --- inventory/host_vars/ch-installsmb.yml | 126 ++++++++++++++++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 inventory/host_vars/ch-installsmb.yml (limited to 'inventory/host_vars/ch-installsmb.yml') diff --git a/inventory/host_vars/ch-installsmb.yml b/inventory/host_vars/ch-installsmb.yml new file mode 100644 index 00000000..4f98467d --- /dev/null +++ b/inventory/host_vars/ch-installsmb.yml @@ -0,0 +1,126 @@ +--- +install: + vm: + memory: 1536M + numcpus: 2 + autostart: false + disks: + primary: /dev/sda + scsi: + sda: + type: image + path: "/srv/nvme/{{ inventory_hostname }}/root.img" + interfaces: + - bridge: br-mgmt + + +openwrt_arch: x86 +openwrt_target: 64 +openwrt_profile: generic +openwrt_output_image_suffixes: + - "{{ openwrt_profile }}-ext4-combined.img.gz" + +openwrt_packages_remove: + - ppp + - ppp-mod-pppoe + - dnsmasq + - firewall + - odhcpd + - odhcpd-ipv6only +openwrt_packages_add: + - rng-tools + - htop + - ip + - less + - nano + - tcpdump-mini + - iperf + - iperf3 + - mtr + - samba4-server + +openwrt_mixin: + /etc/dropbear/authorized_keys: + content: "{{ ssh_keys_root | join('\n') }}\n" + + /etc/htoprc: + file: "{{ global_files_dir }}/common/htoprc" + + /etc/rc.d/S90smb-tmpfs: + link: "../init.d/network-fw" + + /etc/rc.d/K10smb-tmpfs: + link: "../init.d/network-fw" + + /etc/init.d/smb-tmpfs: + mode: "0755" + content: | + #!/bin/sh /etc/rc.common + START=90 + STOP=10 + + boot() { + mkdir -p /srv/install-media + mount -t tmpfs -o size=1400M install-media /srv/install-media + } + +openwrt_uci: + system: + - name: system + options: + hostname: '{{ host_name }}' + timezone: 'CET-1CEST,M3.5.0,M10.5.0/3' + ttylogin: '0' + log_size: '64' + urandom_seed: '0' + + - name: timeserver 'ntp' + options: + enabled: '0' + enable_server: '0' + + - name: rngd + options: + enabled: '1' + device: '/dev/hwrng' + + dropbear: + - name: dropbear + options: + PasswordAuth: 'off' + RootPasswordAuth: 'off' + Port: '{{ ansible_port | default(22) }}' + + network: + - name: globals 'globals' + options: + ula_prefix: "fc{{ '%02x:%04x:%04x' | format((255 | random(seed=inventory_hostname + '0')), (65535 | random(seed=inventory_hostname + '1')), (65535 | random(seed=inventory_hostname + '2'))) }}::/48" + + - name: interface 'loopback' + options: + device: lo + proto: static + ipaddr: 127.0.0.1 + netmask: 255.0.0.0 + + - name: interface 'mgmt' + options: + device: eth0 + proto: static + ipaddr: "{{ network_zones.mgmt.prefix | ipaddr(network_zones.mgmt.offsets[inventory_hostname]) | ipaddr('address') }}" + netmask: "{{ network_zones.mgmt.prefix | ipaddr('netmask') }}" + + samba4: + - name: samba + options: + workgroup: 'INSTALL' + description: 'OS installation media' + interface: 'mgmt' + allow_legacy_protocols: 'yes' + + - name: sambashare + options: + name: 'media' + path: '/srv/install-media' + guest_ok: 'yes' + read_only: 'yes' -- cgit v1.2.3