version 1.1, 2005/03/22 08:57:42
|
version 1.13, 2008/12/02 09:00:03
|
|
|
|
#//%LICENSE//////////////////////////////////////////////////////////////// |
# Create OpenSSL Configuration File (ssl.cnf) |
#// |
|
#// Licensed to The Open Group (TOG) under one or more contributor license |
|
#// agreements. Refer to the OpenPegasusNOTICE.txt file distributed with |
|
#// this work for additional information regarding copyright ownership. |
|
#// Each contributor licenses this file to you under the OpenPegasus Open |
|
#// Source License; you may not use this file except in compliance with the |
|
#// License. |
|
#// |
|
#// Permission is hereby granted, free of charge, to any person obtaining a |
|
#// copy of this software and associated documentation files (the "Software"), |
|
#// to deal in the Software without restriction, including without limitation |
|
#// the rights to use, copy, modify, merge, publish, distribute, sublicense, |
|
#// and/or sell copies of the Software, and to permit persons to whom the |
|
#// Software is furnished to do so, subject to the following conditions: |
|
#// |
|
#// The above copyright notice and this permission notice shall be included |
|
#// in all copies or substantial portions of the Software. |
|
#// |
|
#// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS |
|
#// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
|
#// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
|
#// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY |
|
#// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
|
#// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
|
#// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
|
#// |
|
#////////////////////////////////////////////////////////////////////////// |
|
# Start of section pegasus/rpm/tog-specfiles/tog-pegasus-post.spec |
# | # |
if [ -f %PEGASUS_CONFIG_DIR/ssl.cnf ] |
# install remove upgrade reinstall |
then |
# %post 1 - 2 2 |
echo "WARNING: %PEGASUS_CONFIG_DIR/ssl.cnf already exists." |
# |
else |
export PEGASUS_ARCH_LIB=%PEGASUS_ARCH_LIB |
echo " Generating SSL Certificate..." |
|
echo "[ req ]" >> %PEGASUS_CONFIG_DIR/ssl.cnf |
|
echo "distinguished_name = req_distinguished_name" >> %PEGASUS_CONFIG_DIR/ssl.cnf |
|
echo "prompt = no" >> %PEGASUS_CONFIG_DIR/ssl.cnf |
|
echo "[ req_distinguished_name ]" >> %PEGASUS_CONFIG_DIR/ssl.cnf |
|
echo "C = UK" >> %PEGASUS_CONFIG_DIR/ssl.cnf |
|
echo "ST = Berkshire" >> %PEGASUS_CONFIG_DIR/ssl.cnf |
|
echo "L = Reading" >> %PEGASUS_CONFIG_DIR/ssl.cnf |
|
echo "O = The Open Group" >> %PEGASUS_CONFIG_DIR/ssl.cnf |
|
echo "OU = The OpenPegasus Project" >> %PEGASUS_CONFIG_DIR/ssl.cnf |
|
echo "CN = `uname -n`" >> %PEGASUS_CONFIG_DIR/ssl.cnf |
|
chmod 400 %PEGASUS_CONFIG_DIR/ssl.cnf |
|
chown root %PEGASUS_CONFIG_DIR/ssl.cnf |
|
fi |
|
|
|
%OPENSSL_BIN/openssl req -x509 -days 356 -newkey rsa:2048 \ |
|
-nodes -config %PEGASUS_CONFIG_DIR/ssl.cnf \ |
|
-keyout %PEGASUS_PEM_DIR/key.pem -out %PEGASUS_PEM_DIR/cert.pem \ |
|
2>>%INSTALL_LOG |
|
|
|
cat %PEGASUS_PEM_DIR/key.pem > %PEGASUS_PEM_DIR/key-2048.pem |
|
chmod 400 %PEGASUS_PEM_DIR/key-2048.pem |
|
cat %PEGASUS_PEM_DIR/cert.pem > %PEGASUS_PEM_DIR/cert-2048.pem |
|
chmod 400 %PEGASUS_PEM_DIR/cert-2048.pem |
|
cat %PEGASUS_PEM_DIR/cert.pem > %PEGASUS_PEM_DIR/truststore-2048.pem |
|
chmod 400 %PEGASUS_PEM_DIR/truststore-2048.pem |
|
rm -f %PEGASUS_PEM_DIR/key.pem %PEGASUS_PEM_DIR/cert.pem |
|
|
|
if [ -f %PEGASUS_PEM_DIR/%PEGASUS_SSL_CERT_FILE ] |
|
then |
|
echo "WARNING: %PEGASUS_PEM_DIR/%PEGASUS_SSL_CERT_FILE SSL Certificate file already exists." |
|
else |
|
cp %PEGASUS_PEM_DIR/cert-2048.pem %PEGASUS_PEM_DIR/%PEGASUS_SSL_CERT_FILE |
|
chmod 444 %PEGASUS_PEM_DIR/%PEGASUS_SSL_CERT_FILE |
|
cp %PEGASUS_PEM_DIR/key-2048.pem %PEGASUS_PEM_DIR/%PEGASUS_SSL_KEY_FILE |
|
chmod 400 %PEGASUS_PEM_DIR/%PEGASUS_SSL_KEY_FILE |
|
fi |
|
| |
if [ -f %PEGASUS_PEM_DIR/%PEGASUS_SSL_TRUSTSTORE ] |
if [ $1 -eq 1 ]; then |
then |
%if %{AUTOSTART} |
echo "WARNING: %PEGASUS_PEM_DIR/%PEGASUS_SSL_TRUSTSTORE SSL Certificate trust store already exists." |
/sbin/chkconfig --add tog-pegasus |
else |
%endif |
cp %PEGASUS_PEM_DIR/truststore-2048.pem %PEGASUS_PEM_DIR/%PEGASUS_SSL_TRUSTSTORE |
:; |
chmod 444 %PEGASUS_PEM_DIR/%PEGASUS_SSL_TRUSTSTORE |
elif [ $1 -gt 0 ]; then |
|
/etc/init.d/tog-pegasus condrestart |
|
:; |
fi | fi |
|
# |
echo " To start Pegasus manually:" |
# End of section pegasus/rpm/tog-specfiles/tog-pegasus-post.spec |
echo " /etc/init.d/tog-pegasus start" |
|
echo " Stop it:" |
|
echo " /etc/init.d/tog-pegasus stop" |
|
echo " To set up PATH and MANPATH in /etc/profile" |
|
echo " run /opt/tog-pegasus/sbin/settogpath." |
|