summaryrefslogtreecommitdiffstats
path: root/satellit_installer
diff options
context:
space:
mode:
authorSimon Rettberg2020-12-17 15:08:14 +0100
committerSimon Rettberg2020-12-17 15:08:14 +0100
commitb5c3eb9e01b09367935f558a57633b68a65a1a21 (patch)
treeb6c322f3089192124779b9d7a29c8365eb39533f /satellit_installer
parent[SSPS] slx-cert: Put hostname in SAN too, chromium requires this (diff)
downloadsetup-scripts-b5c3eb9e01b09367935f558a57633b68a65a1a21.tar.gz
setup-scripts-b5c3eb9e01b09367935f558a57633b68a65a1a21.tar.xz
setup-scripts-b5c3eb9e01b09367935f558a57633b68a65a1a21.zip
[SSPS] Refactor static_files: Submodules with tree
Add submodules (aka directories) to static_files, named according to what component they are for. Add function "install_files" to copy the contents of one of those modules to the root directory. This should make the resulting setup more obvious and require less manual copying of files everywhere.
Diffstat (limited to 'satellit_installer')
-rw-r--r--satellit_installer/includes/10-configurations.inc108
-rw-r--r--satellit_installer/includes/10-install_packages.inc10
-rw-r--r--satellit_installer/includes/10-script_dropper.inc4
-rw-r--r--satellit_installer/includes/10-sudo_config.inc22
-rw-r--r--satellit_installer/includes/20-setup_samba.inc35
-rw-r--r--satellit_installer/includes/50-copyscripts.inc35
-rw-r--r--satellit_installer/includes/50-install_dnbd3-server.inc30
-rw-r--r--satellit_installer/includes/50-install_ldadp.inc13
-rw-r--r--satellit_installer/includes/50-install_taskmanager.inc18
-rw-r--r--satellit_installer/includes/60-setup_logging.inc6
-rw-r--r--satellit_installer/includes/90-patch_slxadmin.inc34
-rw-r--r--satellit_installer/includes/90-set_directory_permissions.inc13
-rwxr-xr-xsatellit_installer/satellit_installer22
-rw-r--r--satellit_installer/static_files/dnbd3/etc/dnbd3-server/alt-servers (renamed from satellit_installer/static_files/dnbd3/alt-servers)0
-rw-r--r--satellit_installer/static_files/dnbd3/etc/dnbd3-server/rpc.acl (renamed from satellit_installer/static_files/dnbd3/rpc.acl)0
-rw-r--r--satellit_installer/static_files/dnbd3/etc/dnbd3-server/server.conf (renamed from satellit_installer/static_files/dnbd3/server.conf)0
-rw-r--r--satellit_installer/static_files/dnbd3/etc/systemd/system/dnbd3-master-proxy.service (renamed from satellit_installer/static_files/dnbd3/dnbd3-master-proxy.service)0
-rw-r--r--satellit_installer/static_files/dnbd3/etc/systemd/system/dnbd3-server.service (renamed from satellit_installer/static_files/dnbd3/dnbd3-server.service)0
l---------satellit_installer/static_files/dnbd3/etc/systemd/system/multi-user.target.wants/dnbd3-master-proxy.service1
l---------satellit_installer/static_files/dnbd3/etc/systemd/system/multi-user.target.wants/dnbd3-server.service1
-rw-r--r--satellit_installer/static_files/finish_setup_public_key.pem14
-rw-r--r--satellit_installer/static_files/ldadp/etc/systemd/system/ldadp@.service10
-rw-r--r--satellit_installer/static_files/lighttpd/etc/lighttpd/lighttpd.conf (renamed from satellit_installer/static_files/lighttpd.conf)0
-rw-r--r--satellit_installer/static_files/lighttpd/etc/systemd/system/lighttpd.service.d/10-dynamic_php_children.conf2
-rwxr-xr-xsatellit_installer/static_files/lighttpd/opt/openslx/slx-cert (renamed from satellit_installer/static_files/slx-cert)0
-rwxr-xr-xsatellit_installer/static_files/lighttpd/usr/local/sbin/patch_lighttpd_phpchildren (renamed from satellit_installer/static_files/patch_lighttpd_phpchildren)0
-rwxr-xr-xsatellit_installer/static_files/lighttpd/usr/share/lighttpd/auto-ssl.sh (renamed from satellit_installer/static_files/lighttpd-auto-ssl.sh)0
-rwxr-xr-xsatellit_installer/static_files/lighttpd/usr/share/lighttpd/include-conf-d.sh (renamed from satellit_installer/static_files/lighttpd-include-conf-d.sh)0
-rw-r--r--satellit_installer/static_files/logging/80-dmsd.conf2
-rw-r--r--satellit_installer/static_files/logging/90-taskmanager.conf2
-rw-r--r--satellit_installer/static_files/logging/satellite-logrotate14
-rw-r--r--satellit_installer/static_files/slxadmin/etc/cron.d/slx-admin (renamed from satellit_installer/static_files/slxadmin-crontab)0
l---------satellit_installer/static_files/slxadmin/etc/systemd/system/multi-user.target.wants/slxadmin-boot.service1
-rw-r--r--satellit_installer/static_files/slxadmin/etc/systemd/system/slxadmin-boot.service (renamed from satellit_installer/static_files/slxadmin-boot.service)0
-rw-r--r--satellit_installer/static_files/slxadmin/opt/openslx/restore.d/slxadmin-init/gpg-key.asc (renamed from satellit_installer/static_files/slxadmin-init/gpg-key.asc)0
-rwxr-xr-xsatellit_installer/static_files/slxadmin/opt/openslx/restore.d/slxadmin-init/init.sh (renamed from satellit_installer/static_files/slxadmin-init/init.sh)0
-rw-r--r--satellit_installer/static_files/slxadmin/opt/openslx/restore.d/slxadmin-init/slxadmin-init.php (renamed from satellit_installer/static_files/slxadmin-init/slxadmin-init.php)0
-rwxr-xr-xsatellit_installer/static_files/slxadmin/opt/openslx/slxadmin-bootscript (renamed from satellit_installer/static_files/slxadmin-bootscript)0
-rwxr-xr-xsatellit_installer/static_files/slxadmin/opt/openslx/slxadmin-cronscript (renamed from satellit_installer/static_files/slxadmin-cronscript)0
-rw-r--r--satellit_installer/static_files/slxadmin/srv/openslx/www/index.php3
-rw-r--r--satellit_installer/static_files/slxadmin/srv/openslx/www/slx-admin/config.php (renamed from satellit_installer/static_files/slxadmin-config.php)0
-rw-r--r--satellit_installer/static_files/system/etc/apt/apt.conf.d/02periodic (renamed from satellit_installer/static_files/system/apt-upgrade-conf)0
-rwxr-xr-xsatellit_installer/static_files/system/etc/cron.daily/tmpdelete.sh (renamed from satellit_installer/static_files/tmpdelete.sh)0
-rwxr-xr-x[-rw-r--r--]satellit_installer/static_files/system/root/installer/firstrun_script.sh (renamed from satellit_installer/static_files/firstrun_script.sh)0
-rwxr-xr-x[-rw-r--r--]satellit_installer/static_files/system/root/installer/rclocal_script.sh (renamed from satellit_installer/static_files/rclocal_script.sh)0
-rwxr-xr-xsatellit_installer/static_files/system/usr/local/bin/finalize (renamed from satellit_installer/static_files/finalize)0
-rwxr-xr-xsatellit_installer/static_files/system/usr/local/bin/slxlog (renamed from satellit_installer/static_files/slxlog)0
-rwxr-xr-xsatellit_installer/static_files/system/usr/local/sbin/netsetup (renamed from satellit_installer/static_files/netsetup)0
-rw-r--r--satellit_installer/static_files/taskmanager/etc/sudoers.d/taskmanager12
l---------satellit_installer/static_files/taskmanager/etc/systemd/system/multi-user.target.wants/taskmanager.service1
-rw-r--r--satellit_installer/static_files/taskmanager/etc/systemd/system/taskmanager.service (renamed from satellit_installer/static_files/taskmanager/taskmanager.service)0
-rw-r--r--satellit_installer/static_files/taskmanager/opt/taskmanager/config/config (renamed from satellit_installer/static_files/taskmanager/config)0
-rw-r--r--satellit_installer/static_files/taskmanager/opt/taskmanager/config/environment (renamed from satellit_installer/static_files/taskmanager/environment)0
l---------satellit_installer/static_files/tftpd/etc/systemd/system/multi-user.target.wants/tftpd-hpa.service1
-rw-r--r--satellit_installer/static_files/tftpd/etc/systemd/system/tftpd-hpa.service (renamed from satellit_installer/static_files/tftpd/tftpd-hpa.service)0
-rw-r--r--satellit_installer/static_files/tftpd/opt/openslx/tftpd-remap (renamed from satellit_installer/static_files/tftpd/tftpd-remap)0
-rw-r--r--satellit_installer/static_files/tftpd/tftpd-hpa6
l---------satellit_installer/static_files/timesync/etc/systemd/system/network-online.target.wants/redneck-timesync.service1
-rw-r--r--satellit_installer/static_files/timesync/etc/systemd/system/redneck-timesync.service (renamed from satellit_installer/static_files/timesync/redneck-timesync.service)0
-rwxr-xr-xsatellit_installer/static_files/timesync/usr/local/sbin/redneck-timesync.sh (renamed from satellit_installer/static_files/timesync/redneck-timesync.sh)0
60 files changed, 110 insertions, 311 deletions
diff --git a/satellit_installer/includes/10-configurations.inc b/satellit_installer/includes/10-configurations.inc
index 5f9312a..19052dc 100644
--- a/satellit_installer/includes/10-configurations.inc
+++ b/satellit_installer/includes/10-configurations.inc
@@ -1,112 +1,62 @@
-patch_tftpd-hpa_config() {
- echo "# Stopping tftpd-hpa server in case it's not managed by inetd... "
- systemctl stop tftpd-hpa || perror "Failed"
- # No sense in patching, we will drop this little entry.
- echo "# Copying tftpd-hpa configuration... "
- cp -p "$BASEDIR/static_files/tftpd/tftpd-hpa" "/etc/default/tftpd-hpa" || perror "failed"
- echo "# Copying remap file... "
- mkdir -p "/opt/openslx"
- cp -p "$BASEDIR/static_files/tftpd/tftpd-remap" "/opt/openslx/tftpd-remap" || perror "failed"
- # sometimes a tftp stating line remains in /etc/inetd.conf. Let's have a look and kill this interesting line:
- echo -n "# Checking /etc/inetd.conf for a tftp entry... "
+write_tftpd_config() {
+ install_files "tftpd"
+ echo "# Removing any tftpd config from (x)inetd... "
+ # sometimes a tftp stating line remains in /etc/inetd.conf
if [ -f /etc/inetd.conf ]; then
- if [ "$(grep -c "^tftp.*dgram.*udp4" /etc/inetd.conf)" -gt 0 ]; then
- echo -n " found. Deleting... "
+ if grep -q "^tftp.*dgram.*udp4" /etc/inetd.conf; then
+ echo "Deleting /etc/inetd.conf entry for tftpd"
sed -i '/^tftp.*dgram.*udp4/d' /etc/inetd.conf
- echo " ok."
- else
- echo " no entry found."
fi
- else
- echo " no /etc/inetd.conf found."
- fi
-}
-
-copy_tftpd-hpa_service() {
- echo "# Copying tftpd-hpa service file... "
- cp -p "$BASEDIR/static_files/tftpd/tftpd-hpa.service" "/etc/systemd/system/tftpd-hpa.service" || perror "failed"
- echo -n "# Linking tftpd-hpa service file into (/etc/systemd/system/)multi-user.target.wants... "
- ln -s ../tftpd-hpa.service /etc/systemd/system/multi-user.target.wants/tftpd-hpa.service \
- && echo "ok." || perror "Could not link tftpd-hpa service file into multiuser target!"
+ fi
+ for i in /etc/xinetd.d/*; do
+ [ -f "$i" ] || continue
+ grep -q 'service.*tftp' "$i" || continue
+ echo "Deleting $i"
+ rm -f -- "$i"
+ done
}
patch_lighttpd_config() {
local mod file
echo "# Customizing lighttpd config"
- cp -p "$BASEDIR/static_files/lighttpd.conf" /etc/lighttpd/lighttpd.conf || perror "failed."
- cp -p "$BASEDIR/static_files/lighttpd-auto-ssl.sh" /usr/share/lighttpd/auto-ssl.sh || perror "failed."
- cp -p "$BASEDIR/static_files/lighttpd-include-conf-d.sh" /usr/share/lighttpd/include-conf-d.sh || perror "failed."
- cp -a "$BASEDIR/static_files/patch_lighttpd_phpchildren" /usr/local/sbin/patch_lighttpd_phpchildren || perror "failed."
- mkdir -p /opt/openslx
- cp -a "$BASEDIR/static_files/slx-cert" /opt/openslx/slx-cert || perror "failed."
- chmod +x /usr/share/lighttpd/auto-ssl.sh || perror "failed"
- chmod +x /usr/share/lighttpd/include-conf-d.sh || perror "failed"
- chmod +x /usr/local/sbin/patch_lighttpd_phpchildren || perror "failed"
for mod in fastcgi fastcgi-php; do
file=$(echo /etc/lighttpd/conf-available/??-${mod}.conf) # expand ??
[ -f "$file" ] || perror "Could not find path for $mod"
file=$(basename "$file")
ln -sf "../conf-available/$file" "/etc/lighttpd/conf-enabled/$file" || perror "Could not enable module $mod"
done
-
- # Increase php threads (set dynamically)
- mkdir -p /etc/systemd/system/lighttpd.service.d || perror "Could not create /etc/systemd/system/lighttpd.service.d"
- cat > "/etc/systemd/system/lighttpd.service.d/10-dynamic_php_children.conf" <<-HDOC
- [Service]
- ExecStartPre=/usr/local/sbin/patch_lighttpd_phpchildren
- HDOC
mkdir -p "$WWWDIR" || perror "Could not create www-dir ($WWWDIR)"
+ install_files "lighttpd"
}
patch_php_config() {
- echo -n "# Patching php configuration... "
-
- if [ $(ls -d /etc/php/*/|wc -l) -eq 1 ]; then
- local PHPINIFILE="$(ls -d /etc/php/*/)/cgi/php.ini"
- else
- pwarning "No php ini file dir found - or more than one."
- fi
-
- if [ -f "$PHPINIFILE" ]; then
- grep -E "^\s*upload_max_filesize" "$PHPINIFILE" # 2>/dev/null 1>&2
-
- if [ "$?" -eq 0 ]; then
- echo -n "upload_max_filesize entry found; patching to 100M... "
- sed -i.sik -e '/^\s*upload_max_filesize/c\upload_max_filesize = 100M' "$PHPINIFILE"
+ local PHPINIFILE
+ echo "# Patching php configuration... "
+ # TODO Throw snippet into conf.d/ instead
+ for PHPINIFILE in /etc/php*/cgi/php.ini /etc/php/*/cgi/php.ini; do
+ [ -f "$PHPINIFILE" ] || continue
+ if grep -q -E "^\s*upload_max_filesize" "$PHPINIFILE"; then
+ sed -i -e '/^\s*upload_max_filesize/c\upload_max_filesize = 100M' "$PHPINIFILE" || pwarning "Could not increase PHP upload limit"
else
- echo -n "no upload_max_filesize entry found; appending 100M entry... "
- echo "upload_max_filesize = 100M" >> "$PHPINIFILE"
+ echo "upload_max_filesize = 100M" >> "$PHPINIFILE" || pwarning "Could not increase PHP upload limit"
fi
if grep -q -E '^\s*post_max_size' "$PHPINIFILE"; then
- sed -i -e '/^\s*post_max_size/c\post_max_size = 100M' "$PHPINIFILE" || pwarning "Could not increase PHP upload limit"
+ sed -i -e '/^\s*post_max_size/c\post_max_size = 100M' "$PHPINIFILE" || pwarning "Could not increase PHP POST limit"
else
- echo "post_max_size = 100M" >> "$PHPINIFILE" || pwarning "Could not increase PHP upload limit"
+ echo "post_max_size = 100M" >> "$PHPINIFILE" || pwarning "Could not increase PHP POST limit"
fi
-
- echo "ok."
- service lighttpd reload
- else
- echo "php ini file (${PHPINIFILE}) not found."
- pwarning "Could not patch php ini file. Please check manually and make sure upload_max_filesize is appropriately set (50-100MB)."
- fi
+ done
}
config_nfs() {
- echo -n "# Patching /etc/exports for NFS... "
- if [ $(grep -c "/srv/openslx/nfs" /etc/exports) -gt 0 ]; then
- echo -n "NFS entry already there; doing nothing."
+ echo "# Patching /etc/exports for NFS and creating directories... "
+ if grep -q "/srv/openslx/nfs" /etc/exports; then
+ echo "NFS entry already there; doing nothing."
else
echo '/srv/openslx/nfs *(ro,async,insecure,no_root_squash,no_subtree_check)' >> /etc/exports
- echo "ok."
fi
mkdir -p /srv/openslx/nfs 2>/dev/null
- chown dmsd:images /srv/openslx/nfs
+ chown dmsd:images /srv/openslx/nfs || perror "Setting owner of /srv/openslx/nfs failed"
chmod 775 /srv/openslx/nfs
}
-
-write_apt_config() {
- echo -n "# Configuring apt unattended/periodic updates... "
- cp "$BASEDIR/static_files/system/apt-upgrade-conf" "/etc/apt/apt.conf.d/02periodic" && echo " done." || pwarning "failed."
-}
-
diff --git a/satellit_installer/includes/10-install_packages.inc b/satellit_installer/includes/10-install_packages.inc
index 5a64b0e..1892ec2 100644
--- a/satellit_installer/includes/10-install_packages.inc
+++ b/satellit_installer/includes/10-install_packages.inc
@@ -51,3 +51,13 @@ install_packages() {
esac
}
+# install_files <module_name>
+install_files() {
+ local dir="${BASEDIR}/static_files/${1}"
+ [ -d "$dir" ] || perror "static files for module $1 not found"
+ tar -cpP --owner=root --group=root --transform "s,^\(./\)*${dir}/*,," "$dir" | tar -xp -C /
+ local ps=( ${PIPESTATUS[*]} )
+ [ "${ps[0]}" != 0 ] && perror "tarcopy: Read failed"
+ [ "${ps[1]}" != 0 ] && perror "tarcopy: Write failed"
+ return 0
+}
diff --git a/satellit_installer/includes/10-script_dropper.inc b/satellit_installer/includes/10-script_dropper.inc
index 512b4cf..efae442 100644
--- a/satellit_installer/includes/10-script_dropper.inc
+++ b/satellit_installer/includes/10-script_dropper.inc
@@ -12,9 +12,6 @@ drop_script() {
# So we know all the paths and the mysql password
cat "${BASEDIR}/includes/00-dirs.inc" "${CONFIGDIR}/config" > "/root/installer/config"
chmod 0600 /root/installer/config
- cp "${BASEDIR}/static_files/firstrun_script.sh" "${BASEDIR}/static_files/rclocal_script.sh" /root/installer/
- chmod u+x /root/installer/firstrun_script.sh /root/installer/rclocal_script.sh
-
}
drop_keychanger_rclocal() {
@@ -33,6 +30,7 @@ drop_keychanger_rclocal() {
HIERDOK
chmod +x /etc/rc.local
fi
+ # WTF? Why forking?
cat > /etc/systemd/system/rc-local.service <<-DORTDOK
[Unit]
Description=/etc/rc.local Compatibility
diff --git a/satellit_installer/includes/10-sudo_config.inc b/satellit_installer/includes/10-sudo_config.inc
deleted file mode 100644
index 8b3b369..0000000
--- a/satellit_installer/includes/10-sudo_config.inc
+++ /dev/null
@@ -1,22 +0,0 @@
-sudo_config() {
-
- local TM_SUDO_CONF="/etc/sudoers.d/taskmanager"
- [ -n "$1" ] && TM_SUDO_CONF="$1"
-
- cat > "${TM_SUDO_CONF}" <<-EOF
- # Sudoers configuration for user 'taskmanager'
- # Auto-generated on: $(date)
- taskmanager ALL=(ldadp) NOPASSWD: /opt/taskmanager/scripts/ldadp-launcher
- taskmanager ALL=(root) NOPASSWD: /sbin/reboot
- taskmanager ALL=(root) NOPASSWD: /bin/netstat
- taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/systemctl
- taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/mount-store
- taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/system-backup
- taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/system-restore
- taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/install-https
- taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/ldadp-setperms
- ALL ALL=(www-data) NOPASSWD: /usr/local/bin/slxlog
- Defaults env_keep += "TM_*"
- EOF
- chmod 0440 "${TM_SUDO_CONF}" || perror "# Could not set perms of '${TM_SUDO_CONF}' to 0440!"
-}
diff --git a/satellit_installer/includes/20-setup_samba.inc b/satellit_installer/includes/20-setup_samba.inc
deleted file mode 100644
index 13a143d..0000000
--- a/satellit_installer/includes/20-setup_samba.inc
+++ /dev/null
@@ -1,35 +0,0 @@
-setup_sambauser() {
- echo -n "# Setting up samba user $1..."
- echo -ne "$2\n$2\n" | smbpasswd -a -s -U "$1" 2>/dev/null # $1: User, $2: Password
- ERR=$?
- if [ "$ERR" -ne 0 ]; then
- echo
- echo "# WARNING: Could not enter password for samba user $1."
- echo "# Please remember to set a password for user $1 by hand."
- else
- echo " ok."
- fi
-}
-
-setup_sambaconfig() {
-
- echo -n "# Writing samba config..."
- if [ $(grep -c "\[imageshare\]" /etc/samba/smb.conf) -gt 0 ]; then
- echo " config already written; doing nothing."
- else
- cat >>/etc/samba/smb.conf<<-EOF
-
- [imageshare]
- path = /srv/openslx/nfs
- comment = VM image share
- writable = yes
- valid users = vmware
- EOF
- echo "ok."
- fi
-}
-
-setup_samba() {
- setup_sambauser vmware openslx-ng
- setup_sambaconfig
-}
diff --git a/satellit_installer/includes/50-copyscripts.inc b/satellit_installer/includes/50-copyscripts.inc
index 687b1a2..aee3944 100644
--- a/satellit_installer/includes/50-copyscripts.inc
+++ b/satellit_installer/includes/50-copyscripts.inc
@@ -1,36 +1,9 @@
-install_tmpdelete() {
- echo "# Copying tmpdelete.sh to /etc/cron.daily... "
- cp "$BASEDIR/static_files/tmpdelete.sh" /etc/cron.daily/tmpdelete
- chmod +x /etc/cron.daily/tmpdelete
-}
-
-install_config_static_ip() {
- echo -n "# Copying config_static_ip to /usr/local/sbin... "
- mkdir -p /usr/local/sbin 2>/dev/null # Just for being on the safe side.
- cp "$BASEDIR/static_files/netsetup" /usr/local/sbin
- echo "ok."
-}
-
-install_slxlog() {
- mkdir -p "/usr/local/bin"
- cp -a "$BASEDIR/static_files/slxlog" "/usr/local/bin/" || perror "Could not install slxlog"
- chown root:root "/usr/local/bin/slxlog"
-}
-
-install_finalize() {
- mkdir -p "/usr/local/bin"
- cp -a "$BASEDIR/static_files/finalize" "/usr/local/bin/" || perror "Could not install finalize script"
- chown root:root "/usr/local/bin/finalize"
+install_system_scripts() {
+ # Different stuff like slxlog, finalize, firstrun, netsetup
+ install_files "system"
}
install_timesync() {
- mkdir -p "/usr/local/sbin" "/etc/systemd/system/network.target.wants" \
- || perror "install_timesync: mkdir failed"
- install -m 0755 -o root "$BASEDIR/static_files/timesync/redneck-timesync.sh" "/usr/local/sbin/" \
- || perror "Could not copy redneck-timesync.sh"
- install -m 0644 -o root "$BASEDIR/static_files/timesync/redneck-timesync.service" "/etc/systemd/system/" \
- || perror "Could not copy redneck-timesync.service"
- ln -sf "../redneck-timesync.service" "/etc/systemd/system/network.target.wants/redneck-timesync.service" \
- || perror "Could not symlink redneck-timesync.service from /etc/systemd/system/network.target.wants/redneck-timesync.service"
+ install_files "timesync"
}
diff --git a/satellit_installer/includes/50-install_dnbd3-server.inc b/satellit_installer/includes/50-install_dnbd3-server.inc
index 8e69db2..2b8e8fa 100644
--- a/satellit_installer/includes/50-install_dnbd3-server.inc
+++ b/satellit_installer/includes/50-install_dnbd3-server.inc
@@ -1,17 +1,3 @@
-install_dnbd3-server_service() {
- echo "# copying dnbd3-server service file..."
- cp -p "$BASEDIR/static_files/dnbd3/dnbd3-server.service" /etc/systemd/system/dnbd3-server.service || perror "failed."
- echo "# Linking dnbd3-server service file into (/etc/systemd/system/)multi-user.target.wants..."
- ln -s /etc/systemd/system/dnbd3-server.service /etc/systemd/system/multi-user.target.wants/dnbd3-server.service \
- || perror "Could not link dnbd3-server service file into multiuser target!"
- # For accessing stage4 on master server via SSL tunnel
- echo "# copying dnbd3-master-proxy service file..."
- cp -p "$BASEDIR/static_files/dnbd3/dnbd3-master-proxy.service" /etc/systemd/system/dnbd3-master-proxy.service || perror "failed."
- echo "# Linking dnbd3-master-proxy service file into (/etc/systemd/system/)multi-user.target.wants..."
- ln -s /etc/systemd/system/dnbd3-master-proxy.service /etc/systemd/system/multi-user.target.wants/dnbd3-master-proxy.service \
- || perror "Could not link dnbd3-master-proxy service file into multiuser target!"
-}
-
install_dnbd3-server() {
# $1: directory to install dnbd3-server to
echo "# Installing dnbd3 server... "
@@ -21,21 +7,13 @@ install_dnbd3-server() {
git clone https://git.openslx.org/dnbd3.git "$BASEDIR/tmp/dnbd3" || perror "Could not clone dnbd3"
mkdir "$BASEDIR/tmp/dnbd3/build"
cd "$BASEDIR/tmp/dnbd3/build" || perror "Build dir == where?"
- cmake -DBUILD_FUSE_CLIENT=OFF -DBUILD_KERNEL_MODULE=OFF -DBUILD_STRESSTEST=OFF -DBUILD_SERVER=ON -DCMAKE_BUILD_TYPE=Release .. || perror "cmake failed"
+ cmake -DDNBD3_CLIENT_FUSE=OFF -DDNBD3_KERNEL_MODULE=OFF -DDNBD3_SERVER=ON -DCMAKE_BUILD_TYPE=Release .. || perror "cmake failed"
make dnbd3-server || perror "Building dnbd3-server failed"
- cp dnbd3-server "$1/" || perror "Could not copy dnbd3-server binary to $1"
+ cp src/server/dnbd3-server "$1/" || perror "Could not copy dnbd3-server binary to $1"
cd - &>/dev/null
- # Copy config files
- mkdir -p /etc/dnbd3-server || perror "mkdir /etc/dnbd3-server failed"
- for i in rpc.acl server.conf alt-servers; do
- cp -p "$BASEDIR/static_files/dnbd3/$i" "/etc/dnbd3-server/$i" \
- || perror "Could not copy $i to /etc/dnbd3-server"
- chmod 644 "/etc/dnbd3-server/$i"
- done
- chown -R root:root "$1"
-
- install_dnbd3-server_service "/etc/systemd/system/"
+ # Install static files
+ install_files "dnbd3"
echo "# dnbd3-server ok."
}
diff --git a/satellit_installer/includes/50-install_ldadp.inc b/satellit_installer/includes/50-install_ldadp.inc
index 9dc4847..6fe1e69 100644
--- a/satellit_installer/includes/50-install_ldadp.inc
+++ b/satellit_installer/includes/50-install_ldadp.inc
@@ -10,6 +10,19 @@ install_ldadp() {
cp ldadp "$DIR" || perror "Could not copy ldadp binary to $DIR"
cd .. || perror "Could not cd .."
rm -r ldadptmp # Should we care if fail?
+
+ # Static files
+ install_files "ldadp"
+
+ # ldadp dirs
+ mkdir -p "$LDADPDIR" "$LDADPDIR/configs" || perror "Creating ldadp directories failed"
+ chmod 755 "$LDADPDIR"
+ chown root:root "$LDADPDIR" # Prob. unnecessary, but to be sure.
+ chmod 750 "$LDADPDIR/configs"
+ chown -R taskmanager:ldadp "$LDADPDIR/configs"
+ # Make sure we spare the binary
+ chown root:root "$LDADPDIR/ldadp" # ... not the binary.
+
return 0
}
diff --git a/satellit_installer/includes/50-install_taskmanager.inc b/satellit_installer/includes/50-install_taskmanager.inc
index b02cb6b..0c6b70c 100644
--- a/satellit_installer/includes/50-install_taskmanager.inc
+++ b/satellit_installer/includes/50-install_taskmanager.inc
@@ -3,14 +3,12 @@ install_taskmanager() {
echo "# Installing taskmanager... "
mkdir -p "$1"
unpack_tar_gz "$BASEDIR/static_files/taskmanager.tar.gz" "-C $1"
- chown -R root:root "$1"
- install -o root "$BASEDIR/static_files/taskmanager/taskmanager.service" "/etc/systemd/system/taskmanager.service" || perror "Could not install systemd service"
- systemctl daemon-reload
- systemctl enable taskmanager.service || perror "Could not enable taskmanager.service"
- mkdir -m 0750 -p "$TASKMANDIR/config"
- chown root:taskmanager "$TASKMANDIR/config"
- install -o root -g taskmanager -m 0640 \
- "$BASEDIR/static_files/taskmanager/config" \
- "$BASEDIR/static_files/taskmanager/environment" \
- "$TASKMANDIR/config/" || perror "Could not install taskmanager config"
+ chown -R root:root "$1" || perror "chown $1 failed"
+ install_files "taskmanager"
+ chown -R root:taskmanager "$TASKMANDIR/config"
+ chmod 0750 "$TASKMANDIR/config"
+ chmod 0640 \
+ "$TASKMANDIR/config/config" \
+ "$TASKMANDIR/config/environment" \
+ || perror "chmod of taskmanager config failed"
}
diff --git a/satellit_installer/includes/60-setup_logging.inc b/satellit_installer/includes/60-setup_logging.inc
deleted file mode 100644
index 746dd14..0000000
--- a/satellit_installer/includes/60-setup_logging.inc
+++ /dev/null
@@ -1,6 +0,0 @@
-setup_logging() {
- echo "# Setting up rsyslog logging for dmsd, and taskmanager (to /var/log/xxxx)... "
- cp "$BASEDIR/static_files/logging/80-dmsd.conf" \
- "$BASEDIR/static_files/logging/90-taskmanager.conf" /etc/rsyslog.d/ || perror "Could not add rsyslog rules"
- cp "$BASEDIR/static_files/logging/satellite-logrotate" /etc/logrotate.d/ || perror "Could not add logrotate rules"
-}
diff --git a/satellit_installer/includes/90-patch_slxadmin.inc b/satellit_installer/includes/90-patch_slxadmin.inc
index f254ae7..69afbcb 100644
--- a/satellit_installer/includes/90-patch_slxadmin.inc
+++ b/satellit_installer/includes/90-patch_slxadmin.inc
@@ -1,19 +1,5 @@
-copy_slxadmin_config () {
- # Install config
- cp -p "${BASEDIR}/static_files/slxadmin-config.php" "$WWWDIR/slx-admin/config.php" || perror "slxadmin config.php not found"
- chmod 640 "$WWWDIR/slx-admin/config.php"
- chown root:www-data "$WWWDIR/slx-admin/config.php"
-}
-
# Prepare files and symlinks in slx-admin www dir
patch_slxadmin_dir () {
- # Create redirect for /
- cat > "$WWWDIR/index.php" <<-HIERDOCK
- <?php
- Header('Location: /slx-admin/?do=Main');
- Header('HTTP/1.1 301 Moved permanently');
- HIERDOCK
-
# Create modules directory and link modules from modules-available according to slxadmin module list (SLXADMIN_MODULES):
mkdir -p "$WWWDIR/slx-admin/modules"
cd "$WWWDIR/slx-admin/modules" || perror "Cannot cd to slxadmin/modules"
@@ -22,32 +8,24 @@ patch_slxadmin_dir () {
ln -s "../modules-available/$MOD" "$NAME" || perror "Could not activate module '$MOD' (alias '$NAME')"
done
cd - 1>/dev/null
- # Add system cronjob to execute slx-admin cronjob
- cp "$BASEDIR/static_files/slxadmin-crontab" "/etc/cron.d/slx-admin" || perror "could not install slxadmin crontab"
- cp "$BASEDIR/static_files/slxadmin-cronscript" "/opt/openslx/slxadmin-cronscript" || perror "could not install slxadmin cronscript"
- # Add script and service to trigger init hook
- cp "$BASEDIR/static_files/slxadmin-bootscript" "/opt/openslx/slxadmin-bootscript" || perror "could not install slxadmin bootscript"
- cp "$BASEDIR/static_files/slxadmin-boot.service" "/etc/systemd/system/slxadmin-boot.service" || perror "could not install slxadmin boot service"
- ln -nfs "../slxadmin-boot.service" "/etc/systemd/system/multi-user.target.wants/slxadmin-boot.service" || perror "Could not enable slxadmin boot service"
}
# This needs to be called after mysql users have been created
install_slxadmin_db () {
# Prepare temporary config
- copy_slxadmin_config
- sed -i "s/%MYSQL_OPENSLX_PASS%/${MYSQL_OPENSLX_PASS}/" "$WWWDIR/slx-admin/config.php"
+ install_files "slxadmin"
+ sed -i "s/%MYSQL_OPENSLX_PASS%/${MYSQL_OPENSLX_PASS}/" "$WWWDIR/slx-admin/config.php" || perror "Could not write temporary DB password to config.php"
# Install slx-admin DB
cd "$WWWDIR/slx-admin" || perror "Cannot cd to $WWWDIR"
echo "# Installing slx-admin database"
sudo -n -u www-data ./install-all || perror "Could not install slx-admin database"
cd - 1>/dev/null
- # Copy init script for later use (restoring backup)
- mkdir -p "/opt/openslx/restore.d"
- cp -a "${BASEDIR}/static_files/slxadmin-init" "/opt/openslx/restore.d/" || perror "Could not copy slxadmin-init"
- # Fill database with data we need
+ # Fill database with data we need (run as root)
/opt/openslx/restore.d/slxadmin-init/init.sh || perror "Filling tables with required data failed"
# Reset with original template for firstboot script
- copy_slxadmin_config
+ install_files "slxadmin"
+ chmod 640 "$WWWDIR/slx-admin/config.php"
+ chown root:www-data "$WWWDIR/slx-admin/config.php"
# appending a variable with satellite server build date/time to slx-admin config:
echo "define('CONFIG_FOOTER', 'Build time: $(date "+%Y-%m-%d %H:%m:%S"), $VERSION');" >> "$WWWDIR/slx-admin/config.php"
}
diff --git a/satellit_installer/includes/90-set_directory_permissions.inc b/satellit_installer/includes/90-set_directory_permissions.inc
index 72f3f05..fc211da 100644
--- a/satellit_installer/includes/90-set_directory_permissions.inc
+++ b/satellit_installer/includes/90-set_directory_permissions.inc
@@ -35,19 +35,6 @@ set_directory_permissions() {
chown -R taskmanager "$TFTPDIR"
- # ldadp dirs
- mkdir -p "$LDADPDIR" "$LDADPDIR/configs" "$LDADPDIR/pid" "/var/log/ldadp"
- chmod 755 "$LDADPDIR"
- chown root:root "$LDADPDIR" # Prob. unnecessary, but to be sure.
- chmod 750 "$LDADPDIR/configs"
- chown -R taskmanager:ldadp "$LDADPDIR/configs"
- chmod 755 "$LDADPDIR/pid" 2>/dev/null # if already there
- chown -R ldadp:root "$LDADPDIR/pid"
- chmod 750 "/var/log/ldadp"
- chown -R ldadp:adm "/var/log/ldadp"
- # Make sure we spare the binary
- chown root:root "$LDADPDIR/ldadp" # ... not the binary.
-
mkdir -p -m 755 "$OPENSLXDIR"/proxy 2>/dev/null
chmod 755 "$OPENSLXDIR"/proxy 2>/dev/null # if already there
chown www-data "$OPENSLXDIR"/proxy 2>/dev/null
diff --git a/satellit_installer/satellit_installer b/satellit_installer/satellit_installer
index c113680..d56039b 100755
--- a/satellit_installer/satellit_installer
+++ b/satellit_installer/satellit_installer
@@ -105,16 +105,13 @@ check_users # Meet interesting users with uid>=1000 and kill them.
# user 65534/sync will be ignored.
add_users_groups # Adding necessary users and groups
-sudo_config # Adding sudo config for user taskmanager
-
install_ipxe "$IPXEDIR"
compile_ipxe "$IPXEDIR" &>/tmp/ipxesuccess &
add_mysql_dbs_users # mysql stuff; adding databases and users
patch_mysql_config # adding utf8 entries to /etc/mysql/my.cnf
-patch_tftpd-hpa_config
-copy_tftpd-hpa_service
+write_tftpd_config
patch_lighttpd_config
patch_php_config # This takes a lot of time, so any background stuff before this.
@@ -125,8 +122,6 @@ patch_ldapsearch
patch_java
-write_apt_config
-
install_bwSuite_server "$DMSDDIR"
install_dnbd3-server "$DNBD3DIR"
@@ -144,16 +139,7 @@ install_ldadp "$LDADPDIR" || perror "Could not install ldadp"
# NFS server configuration:
config_nfs
-# Samba configuration: User and share
-# This is out-commented, as not needed recently
-# setup_samba
-
-# Copying a script to configure a static IP
-install_config_static_ip
-
-# Set a cronjob to cron.daily which cleans bwlp-* stuff from /tmp if older than 2 days
-# and images from /srv/openslx/nfs/temp
-install_tmpdelete
+install_system_scripts
# Sometimes a low device timeout has lead to problems. So we set a rule to increase the
# block device timeout (sd*) from 30 to 180 using an udev rule.
@@ -164,14 +150,10 @@ patch_bashrc
# vim config
patch_vim
-setup_logging
-
# This part drops a script and anchors it's execution within root's .profile:
drop_firstrun_script
-install_slxlog
install_timesync # cheap HTTP based timesync on boot
-install_finalize # Script for cleaning some stuff after installation
# Remove translation from menu etc., enable required modules
patch_slxadmin_dir
diff --git a/satellit_installer/static_files/dnbd3/alt-servers b/satellit_installer/static_files/dnbd3/etc/dnbd3-server/alt-servers
index 4bf5a12..4bf5a12 100644
--- a/satellit_installer/static_files/dnbd3/alt-servers
+++ b/satellit_installer/static_files/dnbd3/etc/dnbd3-server/alt-servers
diff --git a/satellit_installer/static_files/dnbd3/rpc.acl b/satellit_installer/static_files/dnbd3/etc/dnbd3-server/rpc.acl
index 576757c..576757c 100644
--- a/satellit_installer/static_files/dnbd3/rpc.acl
+++ b/satellit_installer/static_files/dnbd3/etc/dnbd3-server/rpc.acl
diff --git a/satellit_installer/static_files/dnbd3/server.conf b/satellit_installer/static_files/dnbd3/etc/dnbd3-server/server.conf
index c2327d6..c2327d6 100644
--- a/satellit_installer/static_files/dnbd3/server.conf
+++ b/satellit_installer/static_files/dnbd3/etc/dnbd3-server/server.conf
diff --git a/satellit_installer/static_files/dnbd3/dnbd3-master-proxy.service b/satellit_installer/static_files/dnbd3/etc/systemd/system/dnbd3-master-proxy.service
index 332f64d..332f64d 100644
--- a/satellit_installer/static_files/dnbd3/dnbd3-master-proxy.service
+++ b/satellit_installer/static_files/dnbd3/etc/systemd/system/dnbd3-master-proxy.service
diff --git a/satellit_installer/static_files/dnbd3/dnbd3-server.service b/satellit_installer/static_files/dnbd3/etc/systemd/system/dnbd3-server.service
index c062609..c062609 100644
--- a/satellit_installer/static_files/dnbd3/dnbd3-server.service
+++ b/satellit_installer/static_files/dnbd3/etc/systemd/system/dnbd3-server.service
diff --git a/satellit_installer/static_files/dnbd3/etc/systemd/system/multi-user.target.wants/dnbd3-master-proxy.service b/satellit_installer/static_files/dnbd3/etc/systemd/system/multi-user.target.wants/dnbd3-master-proxy.service
new file mode 120000
index 0000000..013e595
--- /dev/null
+++ b/satellit_installer/static_files/dnbd3/etc/systemd/system/multi-user.target.wants/dnbd3-master-proxy.service
@@ -0,0 +1 @@
+../dnbd3-master-proxy.service \ No newline at end of file
diff --git a/satellit_installer/static_files/dnbd3/etc/systemd/system/multi-user.target.wants/dnbd3-server.service b/satellit_installer/static_files/dnbd3/etc/systemd/system/multi-user.target.wants/dnbd3-server.service
new file mode 120000
index 0000000..b7ffd5b
--- /dev/null
+++ b/satellit_installer/static_files/dnbd3/etc/systemd/system/multi-user.target.wants/dnbd3-server.service
@@ -0,0 +1 @@
+../dnbd3-server.service \ No newline at end of file
diff --git a/satellit_installer/static_files/finish_setup_public_key.pem b/satellit_installer/static_files/finish_setup_public_key.pem
deleted file mode 100644
index bc67f08..0000000
--- a/satellit_installer/static_files/finish_setup_public_key.pem
+++ /dev/null
@@ -1,14 +0,0 @@
------BEGIN PUBLIC KEY-----
-MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtfNz/RzI8XfNPhOlvSGU
-retnk8ShsItLNVDqtWf1GOfOG88S0d+wQtH6+GAuZTstfnPukWEsa1WWxUus0/PQ
-9KXKNfy3qpxTmPjHyBQgSlu7Q1hCh20q9IMySf43SmlkKPYtqO66XjtpzJBg0lQD
-lTP0PERJrKlwNhBxkrsyt2YPXzQpKEQrS7QQSRZqJigr/MjWsCe//2uk9a74do6D
-60X26+WXL8XGIeU/Rt8RLqG9i7woD1FummtQTmWhO3tQbok19iSn3MEKhPSMCA5S
-1cAveXxDZBnnVsAbsxwz9NufyWDqcRKtCe3YOWMsNKsuQPu+0elG59deeN0YYo5G
-lGKHgG/R6jXO0NDb3rB6tQCkNAtdwU5NROwH8An6XYH8ORa6rkD+nJRpWA+eD+mr
-Pn28XT4Qs6/BTNROfhT9VIVKXlux03yEgRTubxzLfGOza6T7KBvq30vqZ+oQiC7k
-uHG2SwO3IoxNvWe2e8UiK6OUiOI3hfqiWsyLuf4jsy6k8FtMj6usJXCaM2Ugm3r3
-Lkd64I/yqbSiScJnacHAL2c7JY0yPwxHs8Wsv35WzoDSrXvdjGpro9Eaho7F/45j
-FDov3wP89WyUxRkDZyZ+CCbSoO2Kp0bUR1qyOcAeKWVHf8qV6wAfGOe0SXfhPW6v
-efQQsHnImME3N5Rv4NSFTsMCAwEAAQ==
------END PUBLIC KEY-----
diff --git a/satellit_installer/static_files/ldadp/etc/systemd/system/ldadp@.service b/satellit_installer/static_files/ldadp/etc/systemd/system/ldadp@.service
new file mode 100644
index 0000000..b04118f
--- /dev/null
+++ b/satellit_installer/static_files/ldadp/etc/systemd/system/ldadp@.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=LDAP-Proxy for AD/LDAP communication #%i
+ConditionFileNotEmpty=/opt/ldadp/configs/%i.cfg
+
+[Service]
+ExecStart=/opt/ldadp/ldadp -n /opt/ldadp/configs/%i.cfg
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/satellit_installer/static_files/lighttpd.conf b/satellit_installer/static_files/lighttpd/etc/lighttpd/lighttpd.conf
index 0ae7c9d..0ae7c9d 100644
--- a/satellit_installer/static_files/lighttpd.conf
+++ b/satellit_installer/static_files/lighttpd/etc/lighttpd/lighttpd.conf
diff --git a/satellit_installer/static_files/lighttpd/etc/systemd/system/lighttpd.service.d/10-dynamic_php_children.conf b/satellit_installer/static_files/lighttpd/etc/systemd/system/lighttpd.service.d/10-dynamic_php_children.conf
new file mode 100644
index 0000000..ab7d5f4
--- /dev/null
+++ b/satellit_installer/static_files/lighttpd/etc/systemd/system/lighttpd.service.d/10-dynamic_php_children.conf
@@ -0,0 +1,2 @@
+[Service]
+ExecStartPre=/usr/local/sbin/patch_lighttpd_phpchildren
diff --git a/satellit_installer/static_files/slx-cert b/satellit_installer/static_files/lighttpd/opt/openslx/slx-cert
index 3f5cc3e..3f5cc3e 100755
--- a/satellit_installer/static_files/slx-cert
+++ b/satellit_installer/static_files/lighttpd/opt/openslx/slx-cert
diff --git a/satellit_installer/static_files/patch_lighttpd_phpchildren b/satellit_installer/static_files/lighttpd/usr/local/sbin/patch_lighttpd_phpchildren
index a8e44e5..a8e44e5 100755
--- a/satellit_installer/static_files/patch_lighttpd_phpchildren
+++ b/satellit_installer/static_files/lighttpd/usr/local/sbin/patch_lighttpd_phpchildren
diff --git a/satellit_installer/static_files/lighttpd-auto-ssl.sh b/satellit_installer/static_files/lighttpd/usr/share/lighttpd/auto-ssl.sh
index 0f88864..0f88864 100755
--- a/satellit_installer/static_files/lighttpd-auto-ssl.sh
+++ b/satellit_installer/static_files/lighttpd/usr/share/lighttpd/auto-ssl.sh
diff --git a/satellit_installer/static_files/lighttpd-include-conf-d.sh b/satellit_installer/static_files/lighttpd/usr/share/lighttpd/include-conf-d.sh
index a54ed3f..a54ed3f 100755
--- a/satellit_installer/static_files/lighttpd-include-conf-d.sh
+++ b/satellit_installer/static_files/lighttpd/usr/share/lighttpd/include-conf-d.sh
diff --git a/satellit_installer/static_files/logging/80-dmsd.conf b/satellit_installer/static_files/logging/80-dmsd.conf
deleted file mode 100644
index 3554f43..0000000
--- a/satellit_installer/static_files/logging/80-dmsd.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-:app-name, isequal, "dmsd" -/var/log/dmsd.log
-& ~
diff --git a/satellit_installer/static_files/logging/90-taskmanager.conf b/satellit_installer/static_files/logging/90-taskmanager.conf
deleted file mode 100644
index 578d905..0000000
--- a/satellit_installer/static_files/logging/90-taskmanager.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-:app-name, isequal, "taskmanager" -/var/log/taskmanager.log
-& ~
diff --git a/satellit_installer/static_files/logging/satellite-logrotate b/satellit_installer/static_files/logging/satellite-logrotate
deleted file mode 100644
index 2d1d946..0000000
--- a/satellit_installer/static_files/logging/satellite-logrotate
+++ /dev/null
@@ -1,14 +0,0 @@
-/var/log/dmsd.log
-/var/log/taskmanager.log
-{
- rotate 7
- daily
- missingok
- notifempty
- delaycompress
- compress
- postrotate
- invoke-rc.d rsyslog rotate > /dev/null
- endscript
-}
-
diff --git a/satellit_installer/static_files/slxadmin-crontab b/satellit_installer/static_files/slxadmin/etc/cron.d/slx-admin
index c6ae537..c6ae537 100644
--- a/satellit_installer/static_files/slxadmin-crontab
+++ b/satellit_installer/static_files/slxadmin/etc/cron.d/slx-admin
diff --git a/satellit_installer/static_files/slxadmin/etc/systemd/system/multi-user.target.wants/slxadmin-boot.service b/satellit_installer/static_files/slxadmin/etc/systemd/system/multi-user.target.wants/slxadmin-boot.service
new file mode 120000
index 0000000..052f93e
--- /dev/null
+++ b/satellit_installer/static_files/slxadmin/etc/systemd/system/multi-user.target.wants/slxadmin-boot.service
@@ -0,0 +1 @@
+../slxadmin-boot.service \ No newline at end of file
diff --git a/satellit_installer/static_files/slxadmin-boot.service b/satellit_installer/static_files/slxadmin/etc/systemd/system/slxadmin-boot.service
index 21bdf51..21bdf51 100644
--- a/satellit_installer/static_files/slxadmin-boot.service
+++ b/satellit_installer/static_files/slxadmin/etc/systemd/system/slxadmin-boot.service
diff --git a/satellit_installer/static_files/slxadmin-init/gpg-key.asc b/satellit_installer/static_files/slxadmin/opt/openslx/restore.d/slxadmin-init/gpg-key.asc
index abbe024..abbe024 100644
--- a/satellit_installer/static_files/slxadmin-init/gpg-key.asc
+++ b/satellit_installer/static_files/slxadmin/opt/openslx/restore.d/slxadmin-init/gpg-key.asc
diff --git a/satellit_installer/static_files/slxadmin-init/init.sh b/satellit_installer/static_files/slxadmin/opt/openslx/restore.d/slxadmin-init/init.sh
index b48a1bf..b48a1bf 100755
--- a/satellit_installer/static_files/slxadmin-init/init.sh
+++ b/satellit_installer/static_files/slxadmin/opt/openslx/restore.d/slxadmin-init/init.sh
diff --git a/satellit_installer/static_files/slxadmin-init/slxadmin-init.php b/satellit_installer/static_files/slxadmin/opt/openslx/restore.d/slxadmin-init/slxadmin-init.php
index ef3f0bd..ef3f0bd 100644
--- a/satellit_installer/static_files/slxadmin-init/slxadmin-init.php
+++ b/satellit_installer/static_files/slxadmin/opt/openslx/restore.d/slxadmin-init/slxadmin-init.php
diff --git a/satellit_installer/static_files/slxadmin-bootscript b/satellit_installer/static_files/slxadmin/opt/openslx/slxadmin-bootscript
index a959dfd..a959dfd 100755
--- a/satellit_installer/static_files/slxadmin-bootscript
+++ b/satellit_installer/static_files/slxadmin/opt/openslx/slxadmin-bootscript
diff --git a/satellit_installer/static_files/slxadmin-cronscript b/satellit_installer/static_files/slxadmin/opt/openslx/slxadmin-cronscript
index 4ab7a21..4ab7a21 100755
--- a/satellit_installer/static_files/slxadmin-cronscript
+++ b/satellit_installer/static_files/slxadmin/opt/openslx/slxadmin-cronscript
diff --git a/satellit_installer/static_files/slxadmin/srv/openslx/www/index.php b/satellit_installer/static_files/slxadmin/srv/openslx/www/index.php
new file mode 100644
index 0000000..9f21f0b
--- /dev/null
+++ b/satellit_installer/static_files/slxadmin/srv/openslx/www/index.php
@@ -0,0 +1,3 @@
+<?php
+Header('Location: /slx-admin/?do=main');
+Header('HTTP/1.1 301 Moved permanently');
diff --git a/satellit_installer/static_files/slxadmin-config.php b/satellit_installer/static_files/slxadmin/srv/openslx/www/slx-admin/config.php
index a239fef..a239fef 100644
--- a/satellit_installer/static_files/slxadmin-config.php
+++ b/satellit_installer/static_files/slxadmin/srv/openslx/www/slx-admin/config.php
diff --git a/satellit_installer/static_files/system/apt-upgrade-conf b/satellit_installer/static_files/system/etc/apt/apt.conf.d/02periodic
index 8d6d7c8..8d6d7c8 100644
--- a/satellit_installer/static_files/system/apt-upgrade-conf
+++ b/satellit_installer/static_files/system/etc/apt/apt.conf.d/02periodic
diff --git a/satellit_installer/static_files/tmpdelete.sh b/satellit_installer/static_files/system/etc/cron.daily/tmpdelete.sh
index 9e68658..9e68658 100755
--- a/satellit_installer/static_files/tmpdelete.sh
+++ b/satellit_installer/static_files/system/etc/cron.daily/tmpdelete.sh
diff --git a/satellit_installer/static_files/firstrun_script.sh b/satellit_installer/static_files/system/root/installer/firstrun_script.sh
index 343be4d..343be4d 100644..100755
--- a/satellit_installer/static_files/firstrun_script.sh
+++ b/satellit_installer/static_files/system/root/installer/firstrun_script.sh
diff --git a/satellit_installer/static_files/rclocal_script.sh b/satellit_installer/static_files/system/root/installer/rclocal_script.sh
index 07da0ee..07da0ee 100644..100755
--- a/satellit_installer/static_files/rclocal_script.sh
+++ b/satellit_installer/static_files/system/root/installer/rclocal_script.sh
diff --git a/satellit_installer/static_files/finalize b/satellit_installer/static_files/system/usr/local/bin/finalize
index 1be85e2..1be85e2 100755
--- a/satellit_installer/static_files/finalize
+++ b/satellit_installer/static_files/system/usr/local/bin/finalize
diff --git a/satellit_installer/static_files/slxlog b/satellit_installer/static_files/system/usr/local/bin/slxlog
index 55110ae..55110ae 100755
--- a/satellit_installer/static_files/slxlog
+++ b/satellit_installer/static_files/system/usr/local/bin/slxlog
diff --git a/satellit_installer/static_files/netsetup b/satellit_installer/static_files/system/usr/local/sbin/netsetup
index 6616c50..6616c50 100755
--- a/satellit_installer/static_files/netsetup
+++ b/satellit_installer/static_files/system/usr/local/sbin/netsetup
diff --git a/satellit_installer/static_files/taskmanager/etc/sudoers.d/taskmanager b/satellit_installer/static_files/taskmanager/etc/sudoers.d/taskmanager
new file mode 100644
index 0000000..b34bf9f
--- /dev/null
+++ b/satellit_installer/static_files/taskmanager/etc/sudoers.d/taskmanager
@@ -0,0 +1,12 @@
+# Sudoers configuration for user 'taskmanager'
+taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/ldadp-launcher
+taskmanager ALL=(root) NOPASSWD: /sbin/reboot
+taskmanager ALL=(root) NOPASSWD: /bin/netstat
+taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/systemctl
+taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/mount-store
+taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/system-backup
+taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/system-restore
+taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/install-https
+taskmanager ALL=(root) NOPASSWD: /opt/taskmanager/scripts/ldadp-setperms
+ALL ALL=(www-data) NOPASSWD: /usr/local/bin/slxlog
+Defaults env_keep += "TM_*"
diff --git a/satellit_installer/static_files/taskmanager/etc/systemd/system/multi-user.target.wants/taskmanager.service b/satellit_installer/static_files/taskmanager/etc/systemd/system/multi-user.target.wants/taskmanager.service
new file mode 120000
index 0000000..141a3f2
--- /dev/null
+++ b/satellit_installer/static_files/taskmanager/etc/systemd/system/multi-user.target.wants/taskmanager.service
@@ -0,0 +1 @@
+../taskmanager.service \ No newline at end of file
diff --git a/satellit_installer/static_files/taskmanager/taskmanager.service b/satellit_installer/static_files/taskmanager/etc/systemd/system/taskmanager.service
index 97662cb..97662cb 100644
--- a/satellit_installer/static_files/taskmanager/taskmanager.service
+++ b/satellit_installer/static_files/taskmanager/etc/systemd/system/taskmanager.service
diff --git a/satellit_installer/static_files/taskmanager/config b/satellit_installer/static_files/taskmanager/opt/taskmanager/config/config
index 055dd13..055dd13 100644
--- a/satellit_installer/static_files/taskmanager/config
+++ b/satellit_installer/static_files/taskmanager/opt/taskmanager/config/config
diff --git a/satellit_installer/static_files/taskmanager/environment b/satellit_installer/static_files/taskmanager/opt/taskmanager/config/environment
index 7de812c..7de812c 100644
--- a/satellit_installer/static_files/taskmanager/environment
+++ b/satellit_installer/static_files/taskmanager/opt/taskmanager/config/environment
diff --git a/satellit_installer/static_files/tftpd/etc/systemd/system/multi-user.target.wants/tftpd-hpa.service b/satellit_installer/static_files/tftpd/etc/systemd/system/multi-user.target.wants/tftpd-hpa.service
new file mode 120000
index 0000000..c132ef5
--- /dev/null
+++ b/satellit_installer/static_files/tftpd/etc/systemd/system/multi-user.target.wants/tftpd-hpa.service
@@ -0,0 +1 @@
+../tftpd-hpa.service \ No newline at end of file
diff --git a/satellit_installer/static_files/tftpd/tftpd-hpa.service b/satellit_installer/static_files/tftpd/etc/systemd/system/tftpd-hpa.service
index b92254a..b92254a 100644
--- a/satellit_installer/static_files/tftpd/tftpd-hpa.service
+++ b/satellit_installer/static_files/tftpd/etc/systemd/system/tftpd-hpa.service
diff --git a/satellit_installer/static_files/tftpd/tftpd-remap b/satellit_installer/static_files/tftpd/opt/openslx/tftpd-remap
index 1650e92..1650e92 100644
--- a/satellit_installer/static_files/tftpd/tftpd-remap
+++ b/satellit_installer/static_files/tftpd/opt/openslx/tftpd-remap
diff --git a/satellit_installer/static_files/tftpd/tftpd-hpa b/satellit_installer/static_files/tftpd/tftpd-hpa
deleted file mode 100644
index 1e4589b..0000000
--- a/satellit_installer/static_files/tftpd/tftpd-hpa
+++ /dev/null
@@ -1,6 +0,0 @@
-# /etc/default/tftpd-hpa
-
-TFTP_USERNAME="tftp"
-TFTP_DIRECTORY="/srv/openslx/tftp"
-TFTP_ADDRESS="0.0.0.0:69"
-TFTP_OPTIONS="--secure"
diff --git a/satellit_installer/static_files/timesync/etc/systemd/system/network-online.target.wants/redneck-timesync.service b/satellit_installer/static_files/timesync/etc/systemd/system/network-online.target.wants/redneck-timesync.service
new file mode 120000
index 0000000..9f3e128
--- /dev/null
+++ b/satellit_installer/static_files/timesync/etc/systemd/system/network-online.target.wants/redneck-timesync.service
@@ -0,0 +1 @@
+../redneck-timesync.service \ No newline at end of file
diff --git a/satellit_installer/static_files/timesync/redneck-timesync.service b/satellit_installer/static_files/timesync/etc/systemd/system/redneck-timesync.service
index e019a92..e019a92 100644
--- a/satellit_installer/static_files/timesync/redneck-timesync.service
+++ b/satellit_installer/static_files/timesync/etc/systemd/system/redneck-timesync.service
diff --git a/satellit_installer/static_files/timesync/redneck-timesync.sh b/satellit_installer/static_files/timesync/usr/local/sbin/redneck-timesync.sh
index 0175456..0175456 100755
--- a/satellit_installer/static_files/timesync/redneck-timesync.sh
+++ b/satellit_installer/static_files/timesync/usr/local/sbin/redneck-timesync.sh