Files
openssh/SNAP/usher

79 lines
1.9 KiB
Bash
Executable File

#!/bin/bash
set -e
case $1 in
preinst)
exit 0
;;
postinst)
if [[ ${TARGET} ]]; then
if ! chroot ${TARGET} 'getent group sshd 2>&1' > /dev/null; then
if chroot ${TARGET} 'groupadd -g 50 sshd'; then
echo 'Created group sshd'
else
echo 'Failed to create group sshd!'
exit 1
fi
fi
if ! chroot ${TARGET} 'getent passwd sshd 2>&1 > /dev/null'; then
if chroot ${TARGET} 'useradd -c "sshd PrivSep" \
-d /var/lib/sshd -g sshd -s /bin/false -u 50 sshd'; then
echo 'Created user sshd'
else
echo 'Failed to create user sshd!'
exit 1
fi
fi
if [ ! -f ${TARGET}/etc/ssh/ssh_host_rsa_key ]; then
chroot ${TARGET} 'ssh-keygen -A'
fi
if [ ! -f ${TARGET}/etc/ssh/ssh_config ]; then
cp ${TARGET}/usr/share/openssh/ssh_config ${TARGET}/etc/ssh
fi
if [ ! -f ${TARGET}/etc/ssh/sshd_config ]; then
cp ${TARGET}/usr/share/openssh/sshd_config ${TARGET}/etc/ssh
fi
else
if ! getent group sshd 2>&1 > /dev/null; then
if groupadd -g 50 sshd; then
echo 'Created group sshd'
else
echo 'Failed to create group sshd!'
exit 1
fi
fi
if ! getent passwd sshd 2>&1 > /dev/null; then
if useradd -c 'sshd PrivSep' -d /var/lib/sshd -g sshd \
-s /bin/false -u 50 sshd; then
echo 'Created user sshd'
else
echo 'Failed to create user sshd!'
exit 1
fi
fi
if [ ! -f /etc/ssh/ssh_host_rsa_key ]; then
ssh-keygen -A
fi
if [ ! -f /etc/ssh/ssh_config ]; then
cp /usr/share/openssh/ssh_config /etc/ssh
fi
if [ ! -f /etc/ssh/sshd_config ]; then
cp /usr/share/openssh/sshd_config /etc/ssh
fi
fi
;;
prerm)
exit 0
;;
postrm)
exit 0
;;
esac