ircu2/tools/makepem/makepem

55 lines
1.3 KiB
Bash
Executable File

#! /bin/sh
#* $Id$
case $# in
0|1) echo 'Usage: makepem /dpath /top_srcdir' 1>&2; exit 2
esac
if test -f $2/config.h
then
grep USE_SSL $2/config.h | awk '{
if ($1 != "#define") {
printf "SSL Disabled, Skipping makepem Generation\n"
system("touch /tmp/ssltempdata")
}
}'
fi
if test -f /tmp/ssltempdata
then
rm -f /tmp/ssltempdata
else
echo 'Generating ircd.pem...'
if test -f $1/ircd.pem
then
echo 'ircd.pem already exists, exiting. Remove ircd.pem and run make install again to create a new one'
exit 0;
fi
echo Press Y if you want to use an SSL certificate that already exists; read sslans
if [ "$sslans" != "Y" ]; then
openssl req -new -x509 -days 365 -nodes -out $1/ircd.pem -newkey rsa:4096 -keyout $1/ircd.pem
test 1 -eq 1 || test ! -f /dev/urandom || openssl gendh -rand $1/ircd.rand 512 >> $1/ircd.pem
test 1 -eq 1 || test -f /dev/urandom || openssl gendh 512 >> $1/ircd.pem
openssl x509 -subject -dates -fingerprint -noout -in $1/ircd.pem
else
FileExist=FALSE
while [ "$FileExist" == "FALSE" ];
do
echo Please enter in the filname of the SSL certificate including the full path; read sslpath
if test -f $sslpath
then
FileExist=TRUE
else
echo File Does Not Exist
fi
done
cp $sslpath $1/ircd.pem
fi
fi