9178c3d00c
From: Nikolay Sturm <sturm@sec.informatik.tu-darmstadt.de>
120 lines
2.6 KiB
Plaintext
120 lines
2.6 KiB
Plaintext
#!/bin/sh
|
|
|
|
# $OpenBSD: INSTALL,v 1.3 2002/10/30 15:07:54 naddy Exp $
|
|
#
|
|
# Mixmaster installation script, using many ideas from
|
|
# Adam Shostack's Install-Mix.
|
|
|
|
# use a sane path and install prefix
|
|
PATH=/bin:/usr/bin:/sbin:/usr/sbin
|
|
PREFIX=${PKG_PREFIX:-/usr/local}
|
|
MIXMASTER_BIN=${PREFIX}/sbin/mixmaster
|
|
MIXDIR=${PREFIX}/share/examples/mixmaster
|
|
MIXDEST=${SYSCONFDIR}/mixmaster
|
|
MIXSPOOL=/var/spool/mixmaster
|
|
|
|
# verify proper execution
|
|
#
|
|
if [ $# -ne 2 ]; then
|
|
echo "usage: $0 distname { PRE-INSTALL | POST-INSTALL }" >&2
|
|
exit 1
|
|
fi
|
|
|
|
# Function: set up mixmaster user account.
|
|
#
|
|
do_accts()
|
|
{
|
|
groupinfo -e mixmaster
|
|
if [ $? -eq 0 ]; then
|
|
echo "===> Using existing group 'mixmaster'"
|
|
else
|
|
echo "===> Creating group 'mixmaster'"
|
|
groupadd mixmaster
|
|
fi
|
|
|
|
userinfo -e mixmaster
|
|
if [ $? -eq 0 ]; then
|
|
echo "===> Using existing account 'mixmaster'"
|
|
else
|
|
echo "===> Creating user 'mixmaster'"
|
|
useradd \
|
|
-g mixmaster \
|
|
-c "Anonymous Remailer" \
|
|
-m -d $MIXDEST \
|
|
-s /sbin/nologin \
|
|
-p \* \
|
|
mixmaster
|
|
fi
|
|
}
|
|
|
|
last_message()
|
|
{
|
|
|
|
echo "| Installation of mixmaster client complete."
|
|
echo "|"
|
|
echo "| The binary is suid 'mixmaster' and can only be executed by members of"
|
|
echo "| the group 'mixmaster'. Add all users to that group, that are allowed"
|
|
echo "| sending anonymous mail via the mixmaster network."
|
|
echo "+---------------"
|
|
echo ""
|
|
|
|
exit 0
|
|
}
|
|
|
|
# install client config files
|
|
do_install()
|
|
{
|
|
echo ""
|
|
echo "+---------------"
|
|
if [ ! -d $MIXDEST ]
|
|
then
|
|
install -d -o mixmaster -g mixmaster -m 0710 $MIXDEST
|
|
elif [ -f $MIXDEST/mix.cfg ]
|
|
then
|
|
echo "| $MIXDEST/mix.cfg does already exist. It will not be updated by this"
|
|
echo "| script. If this is not your intention, please deinstall mixmaster,"
|
|
echo "| delete $MIXDEST and reinstall."
|
|
echo "|"
|
|
last_message
|
|
fi
|
|
|
|
if [ ! -d $MIXDEST ]
|
|
then
|
|
echo "Cannot create $MIXDEST"
|
|
exit 1
|
|
fi
|
|
|
|
cd $MIXDIR
|
|
for i in "mix.cfg mlist.txt pubring.mix *.blk"
|
|
do
|
|
install -o mixmaster -g mixmaster -m 0640 $i $MIXDEST
|
|
done
|
|
|
|
if [ ! -d $MIXSPOOL ]
|
|
then
|
|
install -d -o mixmaster -g mixmaster -m 0770 $MIXSPOOL
|
|
fi
|
|
|
|
last_message
|
|
}
|
|
|
|
# Verify/process the command
|
|
#
|
|
case $2 in
|
|
PRE-INSTALL)
|
|
do_accts
|
|
exit 0
|
|
;;
|
|
POST-INSTALL)
|
|
: install config files, see below
|
|
chown mixmaster.mixmaster $MIXMASTER_BIN
|
|
chmod 4550 $MIXMASTER_BIN
|
|
do_install
|
|
exit 0
|
|
;;
|
|
*)
|
|
echo "usage: $0 distname { PRE-INSTALL | POST-INSTALL }" >&2
|
|
exit 1
|
|
;;
|
|
esac
|