From 38e56b4de40bcf9a6487cf8f3bab449495d59648 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zolt=C3=A1n=20Felleg?= Date: Wed, 1 Dec 2021 23:45:08 +0100 Subject: [PATCH] Added ls.in (logserver). --- sources/ls.in/config | 22 +++++++ sources/ls.in/envvars | 5 ++ sources/ls.in/firstboot/01_setupnetworking.sh | 59 +++++++++++++++++++ sources/ls.in/firstboot/02_settimezone.sh | 21 +++++++ sources/ls.in/firstboot/03_setupldap.sh | 10 ++++ sources/ls.in/firstboot/99_cleanup.sh | 6 ++ sources/ls.in/postinstall/01_setownership.sh | 7 +++ .../ls.in/postinstall/02_setpermissions.sh | 5 ++ sources/ls.in/postinstall/03_installfiles.sh | 16 +++++ sources/ls.in/postinstall/10_setupservices.sh | 6 ++ sources/ls.in/postinstall/20_setuprsyslog.sh | 10 ++++ sources/ls.in/postinstall/99_cleanup.sh | 6 ++ 12 files changed, 173 insertions(+) create mode 100644 sources/ls.in/config create mode 100644 sources/ls.in/envvars create mode 100755 sources/ls.in/firstboot/01_setupnetworking.sh create mode 100755 sources/ls.in/firstboot/02_settimezone.sh create mode 100755 sources/ls.in/firstboot/03_setupldap.sh create mode 100755 sources/ls.in/firstboot/99_cleanup.sh create mode 100755 sources/ls.in/postinstall/01_setownership.sh create mode 100755 sources/ls.in/postinstall/02_setpermissions.sh create mode 100755 sources/ls.in/postinstall/03_installfiles.sh create mode 100755 sources/ls.in/postinstall/10_setupservices.sh create mode 100755 sources/ls.in/postinstall/20_setuprsyslog.sh create mode 100755 sources/ls.in/postinstall/99_cleanup.sh diff --git a/sources/ls.in/config b/sources/ls.in/config new file mode 100644 index 0000000..b4ee723 --- /dev/null +++ b/sources/ls.in/config @@ -0,0 +1,22 @@ +lxc.include = /usr/share/lxc/config/common.conf + +lxc.arch = x86_64 +lxc.uts.name = ls.in.useribm.hu +lxc.rootfs.path = __CONTAINER_PATH__/rootfs +lxc.mount.auto = proc:rw sys:ro +lxc.mount.entry = __CONTAINER_FILESYSTEMS_PATH__ var/log/remote none bind,create=dir 0 0 + +lxc.net.0.type = veth +lxc.net.0.flags = up +lxc.net.0.link = bri-dev +lxc.net.0.hwaddr = 02:0c:18:03:6d:8b + +lxc.autodev = 1 + +lxc.cgroup2.devices.allow = a + +lxc.signal.halt = SIGRTMIN+4 + +lxc.start.auto = 1 +lxc.start.order = 22 +lxc.start.delay = 3 diff --git a/sources/ls.in/envvars b/sources/ls.in/envvars new file mode 100644 index 0000000..912a0d5 --- /dev/null +++ b/sources/ls.in/envvars @@ -0,0 +1,5 @@ +DISTRIBUTION=Fedora +DISTRIBUTION_VERSION=35 +ROOT_PACKAGES="hostname initscripts iproute rootfiles systemd-udev" +BASE_PACKAGES="NetworkManager iputils logrotate rsyslog tar vim-minimal" +SPEC_PACKAGES="rsyslog-doc" diff --git a/sources/ls.in/firstboot/01_setupnetworking.sh b/sources/ls.in/firstboot/01_setupnetworking.sh new file mode 100755 index 0000000..442a9cf --- /dev/null +++ b/sources/ls.in/firstboot/01_setupnetworking.sh @@ -0,0 +1,59 @@ +#!/bin/sh + + +sleep 1 +systemctl --quiet is-active NetworkManager.service +NM_RC=$? +WAITED=0 +while [ $NM_RC -ne 0 ] +do + echo -n . + sleep 1 + WAITED=1 + systemctl --quiet is-active NetworkManager.service + NM_RC=$? +done +[ $WAITED -eq 1 ] && echo + +CONNECTIONS=$(nmcli --terse connection show | wc -l) +while [ $CONNECTIONS -ne 1 ] +do + echo "Number of connections: $CONNECTIONS" >&2 + sleep 1 + CONNECTIONS=$(nmcli --terse connection show | wc -l) +done + +nmcli --terse connection show | grep ':$' >/dev/null +ALL_CONNECTION_DEVICES_KNOWN=$? +while [ $ALL_CONNECTION_DEVICES_KNOWN -eq 0 ] +do + echo "Not all connection devices are known yet" >&2 + sleep 1 + nmcli --terse connection show | grep ':$' >/dev/null + ALL_CONNECTION_DEVICES_KNOWN=$? +done + +CONNECTION_LINE=$(nmcli --terse connection show) +CONNECTION_UUID=$(echo $CONNECTION_LINE | cut -f 2 -d ':') +CONNECTION_DEVICE=$(echo $CONNECTION_LINE | cut -f 4 -d ':') + +nmcli connection delete uuid "$CONNECTION_UUID" + +nmcli connection add \ + connection.autoconnect yes \ + connection.id internal \ + connection.interface-name $CONNECTION_DEVICE \ + connection.type 802-3-ethernet \ + ipv4.addresses "10.228.109.139/16" \ + ipv4.dns "10.228.109.104, 10.228.109.253" \ + ipv4.dns-search "in.useribm.hu" \ + ipv4.gateway "10.228.109.254" \ + ipv4.method "manual" \ + ipv6.addresses "2a02:d400:0000:f268:000c:18ff:fe03:6d8b/64" \ + ipv6.dns "2a02:d400:0000:f268:000c:18ff:fe03:6dfd, 2a02:d400:0000:f268:000c:18ff:fe03:6d68" \ + ipv6.dns-search "in.useribm.hu" \ + ipv6.gateway "2a02:d400:0000:f268:000c:18ff:fe03:6dfe" \ + ipv6.method "manual" \ + save yes + +nmcli connection show diff --git a/sources/ls.in/firstboot/02_settimezone.sh b/sources/ls.in/firstboot/02_settimezone.sh new file mode 100755 index 0000000..20b2a71 --- /dev/null +++ b/sources/ls.in/firstboot/02_settimezone.sh @@ -0,0 +1,21 @@ +#!/bin/sh + + +sleep 1 +systemctl --quiet is-active dbus.service +DBUS_RC=$? +WAITED=0 +while [ $DBUS_RC -ne 0 ] +do + if [ $WAITED -eq 0 ] + then + echo -n "Waiting for dbus.service" + fi + echo -n . + sleep 1 + WAITED=1 + systemctl --quiet is-active dbus.service + DBUS_RC=$? +done +[ $WAITED -ne 0 ] && echo +timedatectl set-timezone Europe/Budapest diff --git a/sources/ls.in/firstboot/03_setupldap.sh b/sources/ls.in/firstboot/03_setupldap.sh new file mode 100755 index 0000000..4b58626 --- /dev/null +++ b/sources/ls.in/firstboot/03_setupldap.sh @@ -0,0 +1,10 @@ +#!/bin/sh + + +exit 0 +authselect select sssd with-mkhomedir --force + +cat >>/etc/openldap/ldap.conf </etc/rsyslog.conf diff --git a/sources/ls.in/postinstall/99_cleanup.sh b/sources/ls.in/postinstall/99_cleanup.sh new file mode 100755 index 0000000..b87f2f4 --- /dev/null +++ b/sources/ls.in/postinstall/99_cleanup.sh @@ -0,0 +1,6 @@ +#!/bin/sh + + +REAL_PATH=$(dirname $(realpath $0)) + +echo rm -Rf $REAL_PATH -- 2.54.0