Selaa lähdekoodia

dovecot ca name alteration

Bob Mottram 10 vuotta sitten
vanhempi
commit
c1afe00074
2 muutettua tiedostoa jossa 20 lisäystä ja 11 poistoa
  1. 5
    5
      src/freedombone
  2. 15
    6
      src/freedombone-addcert

+ 5
- 5
src/freedombone Näytä tiedosto

5683
     echo '}' >> /etc/dovecot/conf.d/10-auth.conf
5683
     echo '}' >> /etc/dovecot/conf.d/10-auth.conf
5684
   fi
5684
   fi
5685
   # make a CA cert
5685
   # make a CA cert
5686
-  if [ ! -f /etc/ssl/private/dovecot-ca.key ]; then
5687
-      freedombone-addcert -h dovecot-ca --ca
5686
+  if [ ! -f /etc/ssl/private/ca-$DEFAULT_DOMAIN_NAME.key ]; then
5687
+      freedombone-addcert -h $DEFAULT_DOMAIN_NAME --ca
5688
   fi
5688
   fi
5689
   # CA configuration
5689
   # CA configuration
5690
   echo '[ ca ]' > /etc/ssl/dovecot-ca.cnf
5690
   echo '[ ca ]' > /etc/ssl/dovecot-ca.cnf
5691
-  echo 'default_ca = dovecot-ca' >> /etc/ssl/dovecot-ca.cnf
5691
+  echo "default_ca = dovecot-ca" >> /etc/ssl/dovecot-ca.cnf
5692
   echo '' >> /etc/ssl/dovecot-ca.cnf
5692
   echo '' >> /etc/ssl/dovecot-ca.cnf
5693
   echo '[ crl_ext ]' >> /etc/ssl/dovecot-ca.cnf
5693
   echo '[ crl_ext ]' >> /etc/ssl/dovecot-ca.cnf
5694
   echo 'authorityKeyIdentifier=keyid:always' >> /etc/ssl/dovecot-ca.cnf
5694
   echo 'authorityKeyIdentifier=keyid:always' >> /etc/ssl/dovecot-ca.cnf
5696
   echo '[ dovecot-ca ]' >> /etc/ssl/dovecot-ca.cnf
5696
   echo '[ dovecot-ca ]' >> /etc/ssl/dovecot-ca.cnf
5697
   echo 'new_certs_dir = .' >> /etc/ssl/dovecot-ca.cnf
5697
   echo 'new_certs_dir = .' >> /etc/ssl/dovecot-ca.cnf
5698
   echo 'unique_subject = no' >> /etc/ssl/dovecot-ca.cnf
5698
   echo 'unique_subject = no' >> /etc/ssl/dovecot-ca.cnf
5699
-  echo 'certificate = /etc/ssl/certs/dovecot-ca.crt' >> /etc/ssl/dovecot-ca.cnf
5699
+  echo "certificate = /etc/ssl/certs/ca-$DEFAULT_DOMAIN_NAME.crt" >> /etc/ssl/dovecot-ca.cnf
5700
   echo 'database = ssldb' >> /etc/ssl/dovecot-ca.cnf
5700
   echo 'database = ssldb' >> /etc/ssl/dovecot-ca.cnf
5701
-  echo 'private_key = /etc/ssl/private/dovecot-ca.key' >> /etc/ssl/dovecot-ca.cnf
5701
+  echo "private_key = /etc/ssl/private/ca-$DEFAULT_DOMAIN_NAME.key" >> /etc/ssl/dovecot-ca.cnf
5702
   echo 'serial = sslserial' >> /etc/ssl/dovecot-ca.cnf
5702
   echo 'serial = sslserial' >> /etc/ssl/dovecot-ca.cnf
5703
   echo 'default_days = 3650' >> /etc/ssl/dovecot-ca.cnf
5703
   echo 'default_days = 3650' >> /etc/ssl/dovecot-ca.cnf
5704
   echo 'default_md = sha256' >> /etc/ssl/dovecot-ca.cnf
5704
   echo 'default_md = sha256' >> /etc/ssl/dovecot-ca.cnf

+ 15
- 6
src/freedombone-addcert Näytä tiedosto

91
     ;;
91
     ;;
92
     --ca)
92
     --ca)
93
     EXTENSIONS="-extensions v3_ca"
93
     EXTENSIONS="-extensions v3_ca"
94
+    ORGANISATION="Freedombone-CA"
94
     ;;
95
     ;;
95
     --nodh)
96
     --nodh)
96
     NODH="true"
97
     NODH="true"
112
     exit 5689
113
     exit 5689
113
 fi
114
 fi
114
 
115
 
115
-openssl req -x509 $EXTENSIONS -nodes -days 3650 -sha256 -subj "/O=$ORGANISATION/OU=$UNIT/C=$COUNTRY_CODE/ST=$AREA/L=$LOCATION/CN=$HOSTNAME" -newkey rsa:4096 -keyout /etc/ssl/private/$HOSTNAME.key -out /etc/ssl/certs/$HOSTNAME.crt
116
+CERTFILE=$HOSTNAME
117
+if [[ $EXTENSIONS != "" ]]; then
118
+	CERTFILE="ca-$HOSTNAME"
119
+fi
120
+
121
+openssl req -x509 $EXTENSIONS -nodes -days 3650 -sha256 \
122
+		-subj "/O=$ORGANISATION/OU=$UNIT/C=$COUNTRY_CODE/ST=$AREA/L=$LOCATION/CN=$HOSTNAME" \
123
+		-newkey rsa:4096 -keyout /etc/ssl/private/$CERTFILE.key \
124
+		-out /etc/ssl/certs/$HOSTNAME.crt
116
 if [ ! $NODH ]; then
125
 if [ ! $NODH ]; then
117
-    openssl dhparam -check -text -5 1024 -out /etc/ssl/certs/$HOSTNAME.dhparam
126
+    openssl dhparam -check -text -5 1024 -out /etc/ssl/certs/$CERTFILE.dhparam
118
 fi
127
 fi
119
-chmod 400 /etc/ssl/private/$HOSTNAME.key
120
-chmod 640 /etc/ssl/certs/$HOSTNAME.crt
121
-chmod 640 /etc/ssl/certs/$HOSTNAME.dhparam
128
+chmod 400 /etc/ssl/private/$CERTFILE.key
129
+chmod 640 /etc/ssl/certs/$CERTFILE.crt
130
+chmod 640 /etc/ssl/certs/$CERTFILE.dhparam
122
 
131
 
123
 if [ -f /etc/init.d/nginx ]; then
132
 if [ -f /etc/init.d/nginx ]; then
124
   /etc/init.d/nginx reload
133
   /etc/init.d/nginx reload
129
 if [ ! -d /etc/ssl/mycerts ]; then
138
 if [ ! -d /etc/ssl/mycerts ]; then
130
   mkdir /etc/ssl/mycerts
139
   mkdir /etc/ssl/mycerts
131
 fi
140
 fi
132
-cp /etc/ssl/certs/$HOSTNAME.crt /etc/ssl/mycerts
141
+cp /etc/ssl/certs/$CERTFILE.crt /etc/ssl/mycerts
133
 
142
 
134
 # Create a bundle of your certificates
143
 # Create a bundle of your certificates
135
 cat /etc/ssl/mycerts/*.crt > /etc/ssl/freedombone-bundle.crt
144
 cat /etc/ssl/mycerts/*.crt > /etc/ssl/freedombone-bundle.crt