Extend OpenSSL expiration dates
[platform/upstream/nodejs.git] / test / fixtures / keys / Makefile
1 all: agent1-cert.pem agent2-cert.pem agent3-cert.pem agent4-cert.pem ca2-crl.pem
2
3
4 #
5 # Create Certificate Authority: ca1
6 # ('password' is used for the CA password.)
7 #
8 ca1-cert.pem: ca1.cnf
9         openssl req -new -x509 -days 9999 -config ca1.cnf -keyout ca1-key.pem -out ca1-cert.pem
10
11 #
12 # Create Certificate Authority: ca2
13 # ('password' is used for the CA password.)
14 #
15 ca2-cert.pem: ca2.cnf
16         openssl req -new -x509 -days 9999 -config ca2.cnf -keyout ca2-key.pem -out ca2-cert.pem
17         echo '01' > ca2-serial
18         touch ca2-database.txt
19
20
21 #
22 # agent1 is signed by ca1.
23 #
24
25 agent1-key.pem:
26         openssl genrsa -out agent1-key.pem
27
28 agent1-csr.pem: agent1.cnf agent1-key.pem
29         openssl req -new -config agent1.cnf -key agent1-key.pem -out agent1-csr.pem
30
31 agent1-cert.pem: agent1-csr.pem ca1-cert.pem ca1-key.pem
32         openssl x509 -req \
33                 -days 9999 \
34                 -passin "pass:password" \
35                 -in agent1-csr.pem \
36                 -CA ca1-cert.pem \
37                 -CAkey ca1-key.pem \
38                 -CAcreateserial \
39                 -out agent1-cert.pem
40
41 agent1-verify: agent1-cert.pem ca1-cert.pem
42         openssl verify -CAfile ca1-cert.pem agent1-cert.pem
43
44
45 #
46 # agent2 has a self signed cert
47 #
48 # Generate new private key
49 agent2-key.pem:
50         openssl genrsa -out agent2-key.pem
51
52 # Create a Certificate Signing Request for the key
53 agent2-csr.pem: agent2-key.pem agent2.cnf
54         openssl req -new -config agent2.cnf -key agent2-key.pem -out agent2-csr.pem
55
56 # Create a Certificate for the agent.
57 agent2-cert.pem: agent2-csr.pem agent2-key.pem
58         openssl x509 -req \
59                 -days 9999 \
60                 -in agent2-csr.pem \
61                 -signkey agent2-key.pem \
62                 -out agent2-cert.pem
63
64 agent2-verify: agent2-cert.pem
65         openssl verify -CAfile agent2-cert.pem agent2-cert.pem
66
67 #
68 # agent3 is signed by ca2.
69 #
70
71 agent3-key.pem:
72         openssl genrsa -out agent3-key.pem
73
74 agent3-csr.pem: agent3.cnf agent3-key.pem
75         openssl req -new -config agent3.cnf -key agent3-key.pem -out agent3-csr.pem
76
77 agent3-cert.pem: agent3-csr.pem ca2-cert.pem ca2-key.pem
78         openssl x509 -req \
79                 -days 9999 \
80                 -passin "pass:password" \
81                 -in agent3-csr.pem \
82                 -CA ca2-cert.pem \
83                 -CAkey ca2-key.pem \
84                 -CAcreateserial \
85                 -out agent3-cert.pem
86
87 agent3-verify: agent3-cert.pem ca2-cert.pem
88         openssl verify -CAfile ca2-cert.pem agent3-cert.pem
89
90
91 #
92 # agent4 is signed by ca2 (client cert)
93 #
94
95 agent4-key.pem:
96         openssl genrsa -out agent4-key.pem
97
98 agent4-csr.pem: agent4.cnf agent4-key.pem
99         openssl req -new -config agent4.cnf -key agent4-key.pem -out agent4-csr.pem
100
101 agent4-cert.pem: agent4-csr.pem ca2-cert.pem ca2-key.pem
102         openssl x509 -req \
103                 -days 9999 \
104                 -passin "pass:password" \
105                 -in agent4-csr.pem \
106                 -CA ca2-cert.pem \
107                 -CAkey ca2-key.pem \
108                 -CAcreateserial \
109                 -extfile agent4.cnf \
110                 -extensions ext_key_usage \
111                 -out agent4-cert.pem
112
113 agent4-verify: agent4-cert.pem ca2-cert.pem
114         openssl verify -CAfile ca2-cert.pem agent4-cert.pem
115
116 #
117 # Make CRL with agent4 being rejected
118 #
119 ca2-crl.pem: ca2-key.pem ca2-cert.pem ca2.cnf
120         openssl ca -revoke agent4-cert.pem \
121                 -keyfile ca2-key.pem \
122                 -cert ca2-cert.pem \
123                 -config ca2.cnf
124         openssl ca \
125                 -keyfile ca2-key.pem \
126                 -cert ca2-cert.pem \
127                 -config ca2.cnf \
128                 -gencrl \
129                 -out ca2-crl.pem
130
131 clean:
132         rm -f *.pem *.srl ca2-database.txt ca2-serial
133
134 test: agent1-verify agent2-verify agent3-verify agent4-verify
135
136
137 .PHONY: all clean test agent1-verify agent2-verify agent3-verify agent4-verify