Skip to content

Commit b2f9f70

Browse files
committed
Add script to generate a local root CA
1 parent 6be7146 commit b2f9f70

File tree

9 files changed

+158
-0
lines changed

9 files changed

+158
-0
lines changed

crt/rootCA.key

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
-----BEGIN RSA PRIVATE KEY-----
2+
Proc-Type: 4,ENCRYPTED
3+
DEK-Info: DES-EDE3-CBC,9AD937C7F68374EE
4+
5+
uwzN0kioEHHROiQ1aTm6v2yYo0sXQ6V7g95U9v9fSUqCrSlxSpmQ00FaEM1+RuUb
6+
MptbmoQ8QdEuaGhBbuFnS2tsWVQune0vAKRYMbGhGvK34BajN59jfJn7gJu2eB3j
7+
+AWnaoXyxQ2pkEcQuiLeShkvylwLzn3vCCvGm9Mov0NmkUbRMK8wuPvUlbvc/QhF
8+
7xJhR5wM6HDRBl+nnMlqp/gxw9rlP9rFPqSn7RU2jDXkdd+nTxb0u4+tyhIc5WEK
9+
sFaCpXR76TXe1mYvTKS3C68c7Gq+rLxgeQNsMdVnQpAvyIwLCNh5+bk0Uop2SK33
10+
Sm3q3FtRDW9OvftU41hGgquT5pw5RVaYAofcdyj5Bt/myuQD3C6X30jFlY0G/0Ne
11+
dMHSCLE2mwu9XCuVXoI4U0KhfmCvK+72qLTuBiYWQZHGCBUibxAHnnViEf24q2kS
12+
KccvYn9Tg9O8ff/3KB45pOTK1V4EY1dhqop1jOkm+exc7IZBihTwOnotNrYmR1I1
13+
FifUXaabVq+5Y9QIGIfkAtug64HY509IkolY5C3MnSGvUX6eY4RFgK+Q9KGIR9Tk
14+
dKCTTCSucSDTT0UcXys2zc9jbZ+Vog5qglCZa6G0exc4og1dxomaM05I7+qIBs3D
15+
szeSE2LPATrzplH5m3zKXWkpgZYpiRtmJR+lFvPytNosgcm41cNkBWX2p6s/LfMz
16+
aKMoDrPUhsB5ITelVSOWAX3aaYBShYIJ1SEk0RGyYsI+BiYbO6coZxLEpxInsvZB
17+
bpjIBAlJk2v5iSzDWeuod9fkE3Tp8HZEKj5yAH3jhmof5rgzaB6asxZqqCbRjwHH
18+
ZUyySsHsCy6ngu/vTD7OTe511FTn+f41/xybf92ve9BUgJC55s+9Z4z49n6QV11x
19+
YO6nLEcq7JF/jMwZ8l8Sj5/ZlnWR6LCK2VF7DV/6OunugrkcqEo+1YnXq8C37qvT
20+
eQd3QFOE0jEJ5bodTh+xn5UCPjIC/RGC/FoObfBRgK/DgmVXmkBSFzwFzyxq4s2Y
21+
s6r22XjArMqRmtDu3q0wuPhUQeAHsA/WvJ/CnzftpCWHQXRHIAdACmytPo4YTAkA
22+
r7ptsbdK/+nd6iKa7UY3RehBTorgQf7sgIEX59F7G7ywpeMRyAUWNe5JE6ttVHLa
23+
dD7KFXMWzMXeeYhEZ9vP6ede8822XSgAO9c6PPqG4LdyNj0DS2f0rra0ZBGxPwsF
24+
DTnAP/JSr2GtvZ0ZTyr9qP0/UNI+Llvk2MCewZtS8qBlhVCks2son12z9WjIlzzt
25+
/e6bRoESnPewx6rPOYpVx+IYA3QNzzHfyL9ZJE4ULX1iiQCASH2giVBn7npvbNYb
26+
hVPZjair2Sk0iimDx26vGUlnHYVuAqEy/pkQ4eXDMeu3dGTf+ETDXfC3B7A/E7RW
27+
Ti/qDcZX+u5tNAe4zi5SDZ6Xb2892zXSWtMN3v0r4IEPf1lF9qUT5janEJi7ID+P
28+
Z1Vc64+iSnazRv693EMK0ZXEFnQ5NGIsxkLPD1BT/RvQDuC8AfTAGqW31mi8R2ed
29+
s1UeVWdli1xoGzs9T1tWyoOvLzl2AXBkGszV4VdB71R+kLKQxEzEAA==
30+
-----END RSA PRIVATE KEY-----

crt/rootCA.pem

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIID9DCCAtygAwIBAgIJAMolSx3RAHk8MA0GCSqGSIb3DQEBCwUAMFkxCzAJBgNV
3+
BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX
4+
aWRnaXRzIFB0eSBMdGQxEjAQBgNVBAMTCWxvY2FsaG9zdDAeFw0xNzEyMTIxMTE0
5+
NTdaFw0yMDEwMDExMTE0NTdaMFkxCzAJBgNVBAYTAkFVMRMwEQYDVQQIEwpTb21l
6+
LVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxEjAQBgNV
7+
BAMTCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL8D
8+
k/ldkChPVtLdXj5BD2iz36aS8pxwbAwPv2gm/Ba93ztLSZSSebxd7rQfoWmCDEGj
9+
ZclUBG0zjmc/oJMHjmxEHjM6hUM2ac6wYXR0Pb7A/0/lIiRq10YBa60kb5b8YYWx
10+
G6sW9E+2yMnLRZUieodQYLBYq/y4UZGCO4SiOkYEnhcRtdRnUKOVSbCxPQrIngpv
11+
EnmIFDago8SDwjYIS1X0pWN4KIwPEVje97BzKARC+d47yni1iKxZyE+0WdU6VyGh
12+
irxPiRvcMjK3Iz4kHbRVij0dBtyoaqxyGN9HJ1c3Ga5bz6G12koab4ELU7/95fsi
13+
tmScAhQNHS3YzKNLx58CAwEAAaOBvjCBuzAdBgNVHQ4EFgQU9qnohrUmhzZT4pnW
14+
8Jh9nSN6JtowgYsGA1UdIwSBgzCBgIAU9qnohrUmhzZT4pnW8Jh9nSN6JtqhXaRb
15+
MFkxCzAJBgNVBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJ
16+
bnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxEjAQBgNVBAMTCWxvY2FsaG9zdIIJAMol
17+
Sx3RAHk8MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAH4rEup8noqn
18+
9eRecfxvvrw69O2ztqb4SQG8MPy5fw1Pghe+bl/JHj6qL/hgTMLo0+kA5/6VfWwz
19+
QDs1ocwjQn2BQOgyaq7bqRMGKSyaTzcXHu4LkSikbU9LCXrLp/wz7J3UCaYezOXc
20+
2I0z0k+W4uu1GoxZD8Bmb5LOBtK4CFodYGThW7mTSLCM7a34dwCUQ2UAIKHu6T1d
21+
MdFX5vXfLhzZ+JaCVZLwmIc49vH1tp+Pj6F0gyW798VW4pwGgBciaatBHRUpVprr
22+
dwM92OxmRDZ8bEVdKquSnaeckwmGHmS+hjnqoUBn66VzhHDXpEDzwM5fcmq6HmGN
23+
rjkU+KD74qs=
24+
-----END CERTIFICATE-----

crt/rootCA.srl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
B9EA6EF631A1962B

crt/server.crt

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
-----BEGIN CERTIFICATE-----
2+
MIID8DCCAtigAwIBAgIJALnqbvYxoZYrMA0GCSqGSIb3DQEBCwUAMFkxCzAJBgNV
3+
BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX
4+
aWRnaXRzIFB0eSBMdGQxEjAQBgNVBAMTCWxvY2FsaG9zdDAeFw0xNzEyMTIxMTE1
5+
MDJaFw0xOTA0MjYxMTE1MDJaMIHCMQswCQYDVQQGEwJVUzERMA8GA1UECAwITmV3
6+
IFlvcmsxEjAQBgNVBAcMCVJvY2hlc3RlcjESMBAGA1UECgwJRW5kIFBvaW50MRcw
7+
FQYDVQQLDA5UZXN0aW5nIERvbWFpbjFLMEkGCSqGSIb3DQEJARY8eW91ci1hZG1p
8+
bmlzdHJhdGl2ZS1hZGRyZXNzQHlvdXItYXdlc29tZS1leGlzdGluZy1kb21haW4u
9+
Y29tMRIwEAYDVQQDDAlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
10+
ggEKAoIBAQDoKjPR9RpvrI2F4xcrpGyvCOQOJuyV3WyXU1BpeoqszESVWqlckyE6
11+
6Xr5igA5pk8brMGkXS6v/utdgyGc81cbdoPUP99GK+/d6igwJg08po8JuAS7+0Wd
12+
Lepp3TLa13e2In7mVQ1lBQ5+lsLn/N505lsaJG0ADvExM4qJvOHq+2w3BS4Ko32M
13+
KyjF2zyaeVOSNudVJsA2ooYecQ2Sj2TZjoXd1YPDyS0JWV1VOSvLa2KTbUCjy8PB
14+
zIax2YgeilIz/Bu2QAC1Z3Cm0ZzBA+7IP626rv1FfRlY5WvBmuikySFrZt8iQkRN
15+
/hWDPR425SX+qTjs3nBTqp9sBPhyqLl9AgMBAAGjUTBPMB8GA1UdIwQYMBaAFPap
16+
6Ia1Joc2U+KZ1vCYfZ0jeibaMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgTwMBQGA1Ud
17+
EQQNMAuCCWxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAQEABX00ZO3SouwkDoxQ
18+
Ox/vUTqNcbLD7qNvt8vXUXTp6pviV/ZSHrFLEBEwAdlYw02uANorXb86bHE31VJ3
19+
ORZl6aoSm00OatuF7xDi0fD4x0PCYCgExlQF54ttJi+dqYRP/QyShZrDUJ2l5CbS
20+
5DdK9DCrpTrXNGmSc5pWIo/bosDaDiB/sgTRu8/WzyNzsIPkwAEVWy05Wk6rcdwV
21+
uQGuMGuYPG+3oZyVHYKKHMPF42PGw/Vs6O4h8I1Q2QsfNmm2GzqQVwW26LNsKsti
22+
BdEBYoOldyx+Ul+607hCnDD4qVjuJcbRc5r9Q2w25SNDTXpPtAERkq1Q3M2GT/Of
23+
ERiojg==
24+
-----END CERTIFICATE-----

crt/server.csr

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
-----BEGIN CERTIFICATE REQUEST-----
2+
MIIDCDCCAfACAQAwgcIxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazES
3+
MBAGA1UEBwwJUm9jaGVzdGVyMRIwEAYDVQQKDAlFbmQgUG9pbnQxFzAVBgNVBAsM
4+
DlRlc3RpbmcgRG9tYWluMUswSQYJKoZIhvcNAQkBFjx5b3VyLWFkbWluaXN0cmF0
5+
aXZlLWFkZHJlc3NAeW91ci1hd2Vzb21lLWV4aXN0aW5nLWRvbWFpbi5jb20xEjAQ
6+
BgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
7+
AOgqM9H1Gm+sjYXjFyukbK8I5A4m7JXdbJdTUGl6iqzMRJVaqVyTITrpevmKADmm
8+
TxuswaRdLq/+612DIZzzVxt2g9Q/30Yr793qKDAmDTymjwm4BLv7RZ0t6mndMtrX
9+
d7YifuZVDWUFDn6Wwuf83nTmWxokbQAO8TEziom84er7bDcFLgqjfYwrKMXbPJp5
10+
U5I251UmwDaihh5xDZKPZNmOhd3Vg8PJLQlZXVU5K8trYpNtQKPLw8HMhrHZiB6K
11+
UjP8G7ZAALVncKbRnMED7sg/rbqu/UV9GVjla8Ga6KTJIWtm3yJCRE3+FYM9Hjbl
12+
Jf6pOOzecFOqn2wE+HKouX0CAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4IBAQC3t+PQ
13+
JXnxK2Wq2n0aidCay1HPMI+KQ8SetJmWduaelLL4scGM5q6w+tBH61AhZtLN7Y1x
14+
fFIhBq2YUVhtplK3F0Fh29f2IUef+2Rtz2UfQ1yPnJXJVTGDhJ6qiEyZqw7zHYwF
15+
q4QhJP3JbQ1Vr5B5nN+V9RiL91fH8mZQ7DvcLjCtHXmGDTB/hOM1vD6wFAskYkn4
16+
RP89/0oSmxQblk/mwpORpgwIewNAf76imUzPu+zB9tySMJmA0PCtsgkbhTbVLn+Q
17+
puAPyhwSrXtnpn2lqyXvHz68cKs/HHz9cxoVFIrwkRS6V7dpifmqZGQS8F48IE7h
18+
VoqatRbKEJZe90qq
19+
-----END CERTIFICATE REQUEST-----

crt/server.csr.cnf

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
[req]
2+
default_bits = 2048
3+
prompt = no
4+
default_md = sha256
5+
distinguished_name = dn
6+
7+
[dn]
8+
C=US
9+
ST=New York
10+
L=Rochester
11+
O=End Point
12+
OU=Testing Domain
13+
emailAddress[email protected]
14+
CN = localhost
15+

crt/server.key

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
-----BEGIN RSA PRIVATE KEY-----
2+
MIIEpAIBAAKCAQEA6Coz0fUab6yNheMXK6RsrwjkDibsld1sl1NQaXqKrMxElVqp
3+
XJMhOul6+YoAOaZPG6zBpF0ur/7rXYMhnPNXG3aD1D/fRivv3eooMCYNPKaPCbgE
4+
u/tFnS3qad0y2td3tiJ+5lUNZQUOfpbC5/zedOZbGiRtAA7xMTOKibzh6vtsNwUu
5+
CqN9jCsoxds8mnlTkjbnVSbANqKGHnENko9k2Y6F3dWDw8ktCVldVTkry2tik21A
6+
o8vDwcyGsdmIHopSM/wbtkAAtWdwptGcwQPuyD+tuq79RX0ZWOVrwZropMkha2bf
7+
IkJETf4Vgz0eNuUl/qk47N5wU6qfbAT4cqi5fQIDAQABAoIBADcJSh+LqyiuDx6e
8+
JvABmoIj6WwxbgRY6VU2OunGUvmDsv5075Eyj74Xez+Mp2EDO92jpoQAUwEFvWX9
9+
oApE5XFtNvMp8RQBdmt1BvHjE2A9W8tCBF1Lw8TvDZLrDRMz4P0cUFjp8LLx7+2y
10+
b6HvIA02ToJ0ACLzZ9nyDfV5AVVisTQwJwzTiB980lllSYwrJM0VnJcV6yEN5rO+
11+
zhJxr8P1KvgCP5fmI2MjBkFxoYmGThFmO+y6NmVhx0ly2Ee+z4F8Zsk+wQ/Ew1lx
12+
/4ykAwOt/JRCsqG6PIZO05D46KSO4+ztzWlP54FtD9OfpSnEdEForq0IV5xWHT8s
13+
337R20ECgYEA+kpyIQLMHIxXP4CZgCe3kKSXJ48W5MQkwis6tP5D3qY+L7WqlnX7
14+
eS8lVwrEs5eAK9gfhD639CFD34qYdYFDTQ9g514ShSgB472ftaHc4UxFA8Fi9smB
15+
zMmv623TAoYcuXiySxshQ4cFupNxCQi+omegDYf8W6zc4Sa02PH03+cCgYEA7XXp
16+
V22ypo1S9Uu42wHW1k1rY0nX7YYdq6rh8w4acx/8g9BrZRhz4ITwo+CaYqnnIk3R
17+
3dQ8GO1iNy67o7VqfibIakx8aBEfogg3jggoHOmjqBddT/fyXSj9tZZHFNOsh6eJ
18+
sn5XTPLseHQn80dNTXItBiA4N2AvIl50yq4G/vsCgYEA9VdeMk+cpmtG5t93GDFW
19+
dblw1X0kktBVu+NGI76N5sUMdhXchqpV+78kGgNbNzPNlqy+kBIunWayMoCX267+
20+
up3VflYvT0kdORFaaV+ltU7e48R/7qstygD1qZA44+N0arYOByMr4xaKng4DIjjp
21+
LSbos/rVe0OiLC2V3oamY4cCgYEA0DAafk5s3Nz2qJzU2x5Hrud9iTVKnLKC/Oj6
22+
5E+vHNQkXaSzI5VGssea+vKGKI5xWIAFyYizj98/xsWwOR1q2mNCPwAD6nFo3HR7
23+
0IiSMpccptilNOFbmhXAKh4w/699igl3Dgj6nTo13H1qMT6IJag+lSpWXyZy7J0H
24+
pFLjS1UCgYBRyT6iMs2NfqvE1uwrw0sHpaKTE90L+TEfPXxdhjNWmirKKB1Wpllp
25+
irChddOXa9E3mCHnpdZq1JMP833iRjuc89KhBYl/iVbeVLHBBk3GmFyaMBjIQFhL
26+
T3AR3Q7Z9jGM4TGZc3G23FpmGLgOnnSAykm6EziCgxIm6fPyAZTtdQ==
27+
-----END RSA PRIVATE KEY-----

crt/v3.ext

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
authorityKeyIdentifier=keyid,issuer
2+
basicConstraints=CA:FALSE
3+
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
4+
subjectAltName = @alt_names
5+
6+
[alt_names]
7+
DNS.1 = localhost

scripts/create-root-CA.sh

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#!/usr/bin/env bash
2+
3+
DIR=$PWD
4+
5+
rm -f $DIR/crt/*.key $DIR/crt/*.pem $DIR/crt/*.csr
6+
7+
openssl genrsa -des3 -out $DIR/crt/rootCA.key 2048
8+
openssl req -x509 -new -nodes -key $DIR/crt/rootCA.key -sha256 -days 1024 -out $DIR/crt/rootCA.pem
9+
openssl req -new -sha256 -nodes -out $DIR/crt/server.csr -newkey rsa:2048 -keyout $DIR/crt/server.key -config <(cat $DIR/crt/server.csr.cnf)
10+
openssl x509 -req -in $DIR/crt/server.csr -CA $DIR/crt/rootCA.pem -CAkey $DIR/crt/rootCA.key -CAcreateserial -out $DIR/crt/server.crt -days 500 -sha256 -extfile $DIR/crt/v3.ext
11+
openssl x509 -text -in $DIR/crt/server.crt -noout

0 commit comments

Comments
 (0)