Move SSL certificate generation into the systemd service file
This commit is contained in:
parent
d21c1baf70
commit
0946d29648
14
generate-certs
Executable file
14
generate-certs
Executable file
@ -0,0 +1,14 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
cd /etc/Pegasus
|
||||||
|
|
||||||
|
if [ ! -e /etc/Pegasus/ssl.cnf ] || [ ! -e /etc/Pegasus/server.pem ] ||
|
||||||
|
[ ! -e /etc/Pegasus/file.pem ] || [ ! -e /etc/Pegasus/client.pem ]; then
|
||||||
|
if [ -x /usr/share/Pegasus/scripts/genOpenPegasusSSLCerts ]; then
|
||||||
|
# Create self-signed certificates for initial usage
|
||||||
|
/usr/share/Pegasus/scripts/genOpenPegasusSSLCerts
|
||||||
|
# Add the self-signed certificate to the local trust store
|
||||||
|
cp /etc/Pegasus/ca.crt \
|
||||||
|
/etc/pki/ca-trust/source/anchors/localhost-pegasus.pem
|
||||||
|
/usr/bin/update-ca-trust extract
|
||||||
|
fi;
|
||||||
|
fi;
|
@ -4,6 +4,7 @@ After=syslog.target
|
|||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=forking
|
Type=forking
|
||||||
|
ExecStartPre=/usr/share/Pegasus/scripts/generate-certs
|
||||||
ExecStart=/usr/sbin/cimserver
|
ExecStart=/usr/sbin/cimserver
|
||||||
PIDFile=/var/run/tog-pegasus/cimserver.pid
|
PIDFile=/var/run/tog-pegasus/cimserver.pid
|
||||||
|
|
||||||
|
@ -32,6 +32,9 @@ Source7: cimprovagt-wrapper.sh
|
|||||||
Source8: cmpiOSBase_OperatingSystemProvider-cimprovagt.example
|
Source8: cmpiOSBase_OperatingSystemProvider-cimprovagt.example
|
||||||
# 9: DMTF CIM schema
|
# 9: DMTF CIM schema
|
||||||
Source9: cim_schema_2.38.0Experimental-MOFs.zip
|
Source9: cim_schema_2.38.0Experimental-MOFs.zip
|
||||||
|
# 10: Fedora/RHEL script for adding self-signed certificates to the local CA
|
||||||
|
# trust store
|
||||||
|
Source10: generate-certs
|
||||||
|
|
||||||
# 1: http://cvs.rdg.opengroup.org/bugzilla/show_bug.cgi?id=5011
|
# 1: http://cvs.rdg.opengroup.org/bugzilla/show_bug.cgi?id=5011
|
||||||
# Removing insecure -rpath
|
# Removing insecure -rpath
|
||||||
@ -91,10 +94,9 @@ BuildRequires: net-snmp-devel, openslp-devel
|
|||||||
BuildRequires: systemd-units
|
BuildRequires: systemd-units
|
||||||
Requires: net-snmp-libs
|
Requires: net-snmp-libs
|
||||||
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
|
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
|
||||||
|
Requires: openssl
|
||||||
Requires: ca-certificates
|
Requires: ca-certificates
|
||||||
Provides: cim-server = 1
|
Provides: cim-server = 1
|
||||||
Requires(post): /usr/bin/update-ca-trust
|
|
||||||
Requires(post): /usr/bin/openssl
|
|
||||||
Requires(post): /sbin/ldconfig
|
Requires(post): /sbin/ldconfig
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -281,6 +283,10 @@ make -f $PEGASUS_ROOT/Makefile.Release stage \
|
|||||||
install -p -D -m 644 %{SOURCE4} $RPM_BUILD_ROOT/%{_sysconfdir}/tmpfiles.d/tog-pegasus.conf
|
install -p -D -m 644 %{SOURCE4} $RPM_BUILD_ROOT/%{_sysconfdir}/tmpfiles.d/tog-pegasus.conf
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
# Install script to generate SSL certificates at startup
|
||||||
|
mkdir -p $RPM_BUILD_ROOT/usr/share/Pegasus/scripts
|
||||||
|
install -p -m 755 %{SOURCE10} $RPM_BUILD_ROOT/usr/share/Pegasus/scripts/generate-certs
|
||||||
|
|
||||||
# remove SysV initscript, install .service file
|
# remove SysV initscript, install .service file
|
||||||
rm -f $RPM_BUILD_ROOT/etc/init.d/tog-pegasus
|
rm -f $RPM_BUILD_ROOT/etc/init.d/tog-pegasus
|
||||||
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
|
mkdir -p $RPM_BUILD_ROOT%{_unitdir}
|
||||||
@ -409,20 +415,6 @@ restorecon /var/run/tog-pegasus
|
|||||||
%systemd_post tog-pegasus.service
|
%systemd_post tog-pegasus.service
|
||||||
if [ $1 -ge 1 ]; then
|
if [ $1 -ge 1 ]; then
|
||||||
echo `date` >> /var/lib/Pegasus/log/install.log 2>&1 || :;
|
echo `date` >> /var/lib/Pegasus/log/install.log 2>&1 || :;
|
||||||
if [ $1 -eq 1 ] ; then
|
|
||||||
# Initial installation
|
|
||||||
if [ ! -e /etc/Pegasus/ssl.cnf ] || [ ! -e /etc/Pegasus/server.pem ] ||
|
|
||||||
[ ! -e /etc/Pegasus/file.pem ] || [ ! -e /etc/Pegasus/client.pem ]; then
|
|
||||||
if [ -x /usr/share/Pegasus/scripts/genOpenPegasusSSLCerts ]; then
|
|
||||||
# Create self-signed certificates for initial usage
|
|
||||||
/usr/share/Pegasus/scripts/genOpenPegasusSSLCerts
|
|
||||||
# Add the self-signed certificate to the local trust store
|
|
||||||
cp /etc/Pegasus/ca.crt \
|
|
||||||
/etc/pki/ca-trust/source/anchors/localhost-pegasus.pem
|
|
||||||
/usr/bin/update-ca-trust extract
|
|
||||||
fi;
|
|
||||||
fi;
|
|
||||||
fi
|
|
||||||
if [ $1 -gt 1 ]; then
|
if [ $1 -gt 1 ]; then
|
||||||
if [ -d /var/lib/Pegasus/prev_repository ]; then
|
if [ -d /var/lib/Pegasus/prev_repository ]; then
|
||||||
# The user's old repository was moved to /var/lib/Pegasus/prev_repository, which
|
# The user's old repository was moved to /var/lib/Pegasus/prev_repository, which
|
||||||
@ -507,6 +499,7 @@ fi
|
|||||||
* Thu Mar 06 2014 Stephen Gallagher <sgallagh@redhat.com> - 2:2.13.0-8
|
* Thu Mar 06 2014 Stephen Gallagher <sgallagh@redhat.com> - 2:2.13.0-8
|
||||||
- Generate SSL certificates with x509v3 and CA:FALSE
|
- Generate SSL certificates with x509v3 and CA:FALSE
|
||||||
- Automatically import self-signed certificates into local trust-store
|
- Automatically import self-signed certificates into local trust-store
|
||||||
|
- Move SSL certificate generation into the systemd service file
|
||||||
|
|
||||||
* Thu Jan 30 2014 Vitezslav Crhonek <vcrhonek@redhat.com> - 2:2.13.0-7
|
* Thu Jan 30 2014 Vitezslav Crhonek <vcrhonek@redhat.com> - 2:2.13.0-7
|
||||||
- Add Platform_LINUX_XSCALE_GNU.h to -devel because of lmiwbem on arm
|
- Add Platform_LINUX_XSCALE_GNU.h to -devel because of lmiwbem on arm
|
||||||
|
Loading…
Reference in New Issue
Block a user