@@ -12,42 +12,49 @@ source ${SCRIPT_DIR}/ace_config_logging.sh
1212
1313log " Handling keystore configuration"
1414
15- if [ -f /home/aceuser/ace-server/keystore.jks ]; then
16- OUTPUT=$( rm /home/aceuser/ace-server/keystore.jks 2>&1 )
17- logAndExitIfError $? " ${OUTPUT} "
18- fi
19-
20- IFS=$' \n '
21- for keyfile in ` ls /home/aceuser/initial-config/keystore/* .key` ; do
22- if [ -z " ${ACE_KEYSTORE_PASSWORD} " ]; then
23- log " No keystore password defined"
24- exit 1
25- fi
26-
27- filename=$( basename ${keyfile} )
28- dirname=$( dirname ${keyfile} )
29- alias=$( echo ${filename} | sed -e ' s/\.key$' //)
30- certfile=${dirname} /${alias} .crt
31- passphrasefile=${dirname} /${alias} .pass
15+ if ls /home/aceuser/initial-config/keystore/* .key > /dev/null 2>&1 ; then
3216
33- if [ ! -f ${certfile} ]; then
34- log " Certificate file ${certfile} not found."
35- exit 1
17+ if [ $( cat /home/aceuser/initial-config/keystore/* .key | wc -l) -gt 0 ]; then
18+ if [ -f /home/aceuser/ace-server/keystore.jks ]; then
19+ OUTPUT=$( rm /home/aceuser/ace-server/keystore.jks 2>&1 )
20+ logAndExitIfError $? " ${OUTPUT} "
21+ fi
3622 fi
3723
38- if [ -f ${passphrasefile} ]; then
39- ACE_PRI_KEY_PASS=$( cat ${passphrasefile} )
40- OUTPUT=$( openssl pkcs12 -export -in ${certfile} -inkey ${keyfile} -passin pass:${ACE_PRI_KEY_PASS} -out /home/aceuser/ace-server/keystore.p12 -name ${alias} -password pass:${ACE_KEYSTORE_PASSWORD} 2>&1 )
41- else
42- OUTPUT=$( openssl pkcs12 -export -in ${certfile} -inkey ${keyfile} -out /home/aceuser/ace-server/keystore.p12 -name ${alias} -password pass:${ACE_KEYSTORE_PASSWORD} 2>&1 )
43- fi
44- logAndExitIfError $? " ${OUTPUT} "
45-
46- OUTPUT=$( /opt/ibm/ace-11/common/jdk/jre/bin/keytool -importkeystore -srckeystore /home/aceuser/ace-server/keystore.p12 -destkeystore /home/aceuser/ace-server/keystore.jks -srcstorepass ${ACE_KEYSTORE_PASSWORD} -deststorepass ${ACE_KEYSTORE_PASSWORD} -srcalias ${alias} -destalias ${alias} -srcstoretype PKCS12 -noprompt 2>&1 )
47- logAndExitIfError $? " ${OUTPUT} "
48-
49- OUTPUT=$( rm /home/aceuser/ace-server/keystore.p12 2>&1 )
50- logAndExitIfError $? " ${OUTPUT} "
51- done
24+ IFS=$' \n '
25+ for keyfile in ` ls /home/aceuser/initial-config/keystore/* .key` ; do
26+ if [ -s " ${keyfile} " ]; then
27+ if [ -z " ${ACE_KEYSTORE_PASSWORD} " ]; then
28+ log " No keystore password defined"
29+ exit 1
30+ fi
31+
32+ filename=$( basename ${keyfile} )
33+ dirname=$( dirname ${keyfile} )
34+ alias=$( echo ${filename} | sed -e ' s/\.key$' //)
35+ certfile=${dirname} /${alias} .crt
36+ passphrasefile=${dirname} /${alias} .pass
37+
38+ if [ ! -f ${certfile} ]; then
39+ log " Certificate file ${certfile} not found."
40+ exit 1
41+ fi
42+
43+ if [ -f ${passphrasefile} ]; then
44+ ACE_PRI_KEY_PASS=$( cat ${passphrasefile} )
45+ OUTPUT=$( openssl pkcs12 -export -in ${certfile} -inkey ${keyfile} -passin pass:${ACE_PRI_KEY_PASS} -out /home/aceuser/ace-server/keystore.p12 -name ${alias} -password pass:${ACE_KEYSTORE_PASSWORD} 2>&1 )
46+ else
47+ OUTPUT=$( openssl pkcs12 -export -in ${certfile} -inkey ${keyfile} -out /home/aceuser/ace-server/keystore.p12 -name ${alias} -password pass:${ACE_KEYSTORE_PASSWORD} 2>&1 )
48+ fi
49+ logAndExitIfError $? " ${OUTPUT} "
50+
51+ OUTPUT=$( /opt/ibm/ace-11/common/jdk/jre/bin/keytool -importkeystore -srckeystore /home/aceuser/ace-server/keystore.p12 -destkeystore /home/aceuser/ace-server/keystore.jks -srcstorepass ${ACE_KEYSTORE_PASSWORD} -deststorepass ${ACE_KEYSTORE_PASSWORD} -srcalias ${alias} -destalias ${alias} -srcstoretype PKCS12 -noprompt 2>&1 )
52+ logAndExitIfError $? " ${OUTPUT} "
53+
54+ OUTPUT=$( rm /home/aceuser/ace-server/keystore.p12 2>&1 )
55+ logAndExitIfError $? " ${OUTPUT} "
56+ fi
57+ done
58+ fi
5259
5360log " Keystore configuration complete"
0 commit comments