File: create-certs.sh

package info (click to toggle)
libaws 20.2-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 16,656 kB
  • sloc: ada: 95,505; python: 2,270; ansic: 1,017; makefile: 829; xml: 235; javascript: 202; java: 112; sh: 106
file content (48 lines) | stat: -rwxr-xr-x 1,196 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#! /bin/bash

# To creade test certificates chains, call this script twice, first with -clt
# and second with -srv parameter.

SUBJ="/C=FR/ST=Ile de France/L=Paris/O=AdaCore"
KCA=ca$1.key
SCA=ca$1.crt
DAYS=1460

# Create root CA

openssl req -x509 -batch -newkey rsa:2048 -nodes -keyout $KCA \
  -subj "$SUBJ/OU=CA-office/CN=test$1-CA-root/emailAddress=ca@adacore.com/" \
  -days $DAYS -out $SCA

# Create CA chain

for ((J=1; J<=8; J++))
do KCAJ=ca$1-$J.key
   SCAJ=ca$1-$J.crt
   openssl req -new -batch -newkey rsa:2048 -nodes -keyout $KCAJ \
     -subj "$SUBJ/OU=CA-office/CN=test$1-CA-$J/emailAddress=ca@adacore.com/" \
     -out temp.csr
   openssl x509 -req -days $DAYS -in temp.csr -CA $SCA -CAkey $KCA \
     -extfile CA.conf -set_serial 100$J -out $SCAJ
   rm $KCA
   KCA=$KCAJ
   SCA=$SCAJ
done

openssl req -new -batch -newkey rsa:2048 -nodes -keyout test$1.key \
  -subj "$SUBJ/OU=test/CN=test$1/emailAddress=test$1@adacore.com/" \
  -out temp.csr

openssl x509 -req -days $DAYS -in temp.csr -CA $SCA -CAkey $KCA \
  -set_serial 10010 -out chain$1.crt

rm $KCA

for ((J=8; J>0; J--))
do cat ca$1-$J.crt >> chain$1.crt
   rm ca$1-$J.crt
done

cat ca$1.crt >> chain$1.crt

rm temp.csr