#!/bin/bash
# Script um Standart zertifikate für postfix und dovecot auszutauschen
echo
echo "SSl-Zertifikat für die Mail-Server installieren."
echo "Bitte bei der Eingabe vollständigen Pfad zum Zertifikat und Key angeben!"
echo
read -p "Name des Zertifikates-Files? " -e cert
read -p "Name des Key-Files? " -e key
echo
# Zertifikatsdaten anzeigen Austeller/Zertifikatsangaben/Gültigkeit und prüfen
openssl x509 -noout -issuer -subject -dates -in $cert
echo
echo "Bitte Zertifikatsdaten überprüfen"
echo
read -p "sind die Angaben richtig J/N " ja
echo
if [[ "$ja" != [y,Y,j,J] ]]; then
echo "Abruch!"
exit
fi
echo "Zertifikat wird installiert"
echo
# alter zertifikate sichenern
[COLOR="Red"]test -e /etc/postfix/smtpd.cert && cp /etc/postfix/smtpd.cert /etc/postfix/smtpd.cert.original
test -e /etc/postfix/smtpd.key && cp /etc/postfix/smtpd.key /etc/postfix/smtpd.key.original
test -e /etc/dovecot/private/dovecot.pem && cp /etc/dovecot/dovecot.pem /etc/dovecot/private/dovecot.pem.orginal
test -e /etc/dovecot/private/dovecot.key && cp /etc/dovecot/dovecot.pem /etc/dovecot/private/dovecot.key.orginal
# Zertifikate installieren
test -e /etc/postfix/smtpd.cert && cat $cert >/etc/postfix/smtpd.cert
test -e /etc/dovecot/private/dovecot.pem && cat $cert >/etc/dovecot/private/dovecot.pem
# SSL Key Passphrase entfernen und installieren
openssl rsa -in $key -out /etc/postfix/smtpd.key
test -e /etc/dovecot/private/dovecot.key && cat /etc/postfix/smtpd.key >> /etc/dovecot/private/dovecot.key
[/COLOR]
echo "Ich starte jetzt die Dienste neu!"
echo
service dovecot restart
echo
service postfix restart
# Zertifikate an Ports überprüfen
echo
echo "Zertifikat an Port 993 IMAP-SSL"
echo
echo QUIT | openssl s_client -connect localhost:993 2>/dev/null | sed -ne '/BEGIN CERT/,/END CERT/p' | openssl x509 -noout -issuer -subject -dates
echo
echo "Zertifikat an Port 465 SMTP-SSL"
echo
echo QUIT | openssl s_client -connect localhost:465 2>/dev/null | sed -ne '/BEGIN CERT/,/END CERT/p' | openssl x509 -noout -issuer -subject -dates
echo
echo "Zertifikat an Port 995 POP3-SSL"
echo
echo QUIT | openssl s_client -connect localhost:995 2>/dev/null | sed -ne '/BEGIN CERT/,/END CERT/p' | openssl x509 -noout -issuer -subject -dates