Ce script est le résultat de diverses récupérations sur Internet .... le certificat généré (autorité) à charger dans les navigateurs "clients" est le fichier en ".crt"
#!/bin/bash
#
SORTIE()
{
if [ "$1" -eq 0 ]
then
echo 'OK'
else
echo ------- KO ----------;
fi
exit
}
# Partie a personnaliser
RCN=/usr/local/squid/ssl_cert
KNAME='votre_autorite';
PAYS=FR
REGION=Idf
VILLE='Trifouilly les Oies'
NA=le_nom_de_votre_entite
FQDN=votre_nom
MAIL=un_mail_bien_a_vous
PASS='une_phrase_de_passe'
cd $RCN
ret=$?
if [ $ret -ne 0 ]
then
echo 'Erreur cd '$RCN
SORTIE 1
exit $ret
fi
# Generer la clef (2048 bits)
openssl genrsa -out $KNAME'.private' 2048
ret=$?
if [ $ret -ne 0 ]
then
SORTIE 2
fi
# generer certificat
openssl req -new -key $KNAME'.private' -out $KNAME'.csr' <<!FINI
$PAYS
$REGION
$VILLE
$NA
$NA
$FQDN
$MAIL
$PASS
$NA
!FINI
ret=$?
if [ $ret -ne 0 ]
then
SORTIE 3
fi
### signer
openssl x509 -req -days 3652 -in $KNAME'.csr' -signkey $KNAME'.private' -out $KNAME'.crt'
ret=$?
if [ $ret -ne 0 ]
then
SORTIE 4
fi
SORTIE 0