41 lines
663 B
Bash
41 lines
663 B
Bash
|
#!/bin/sh
|
||
|
|
||
|
set -e
|
||
|
|
||
|
usage() {
|
||
|
echo "Usage: $1 <cabasedir> <reqconf> <caconf>"
|
||
|
exit 1
|
||
|
}
|
||
|
|
||
|
if [ $# -lt 3 ]; then
|
||
|
usage $0
|
||
|
fi
|
||
|
|
||
|
if [ ! -f "$2" ]; then
|
||
|
echo "$2 is no file."
|
||
|
usage $0
|
||
|
fi
|
||
|
REQCONF="$2"
|
||
|
|
||
|
if [ ! -f "$3" ]; then
|
||
|
echo "$2 is no file."
|
||
|
usage $0
|
||
|
fi
|
||
|
CACONF="$3"
|
||
|
|
||
|
if [ -d "$1" ]; then
|
||
|
echo "$1 does already exist. Please specify a new directory."
|
||
|
usage $0
|
||
|
fi
|
||
|
CADIR="$1"
|
||
|
|
||
|
mkdir -p "${CADIR}/certs"
|
||
|
mkdir -p "${CADIR}/crl"
|
||
|
mkdir -p "${CADIR}/newcerts"
|
||
|
mkdir -p "${CADIR}/private"
|
||
|
|
||
|
openssl req -new -x509 -config "${REQCONF}" -out "${CADIR}/ca.crt.pem" -keyout "${CADIR}/private/ca.key.pem"
|
||
|
|
||
|
echo "01" > "${CADIR}/serial"
|
||
|
touch "${CADIR}/index.txt"
|