cert-cleanup

This commit is contained in:
Max Schmitt 2024-07-10 22:26:00 +02:00
parent 10681d401c
commit 51e938e3e9
10 changed files with 79 additions and 103 deletions

View file

@ -0,0 +1,59 @@
# Client Certificate test-certificates
## Server
```bash
openssl req \
-x509 \
-newkey rsa:4096 \
-keyout server/server_key.pem \
-out server/server_cert.pem \
-nodes \
-days 365 \
-subj "/CN=localhost/O=Client\ Certificate\ Demo"
```
## Trusted client-certificate (server signed/valid)
```
mkdir -p client/trusted
# generate server-signed (valid) certifcate
openssl req \
-newkey rsa:4096 \
-keyout client/trusted/key.pem \
-out client/trusted/csr.pem \
-nodes \
-days 365 \
-subj "/CN=Alice"
# sign with server_cert.pem
openssl x509 \
-req \
-in client/trusted/csr.pem \
-CA server/server_cert.pem \
-CAkey server/server_key.pem \
-out client/trusted/cert.pem \
-set_serial 01 \
-days 365
```
## Self-signed certificate (invalid)
```
mkdir -p client/self-signed
openssl req \
-newkey rsa:4096 \
-keyout client/self-signed/key.pem \
-out client/self-signed/csr.pem \
-nodes \
-days 365 \
-subj "/CN=Bob"
# sign with bob_csr.pem
openssl x509 \
-req \
-in client/self-signed/csr.pem \
-signkey client/self-signed/key.pem \
-out client/self-signed/cert.pem \
-days 365
```

View file

@ -1,31 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIFTTCCAzWgAwIBAgIUTivXxf4wmYQ2SLCYkHRAIa1oI/kwDQYJKoZIhvcNAQEL
BQAwNjESMBAGA1UEAwwJbG9jYWxob3N0MSAwHgYDVQQKDBdDbGllbnQgQ2VydGlm
aWNhdGUgRGVtbzAeFw0yNDA2MjQxMjUyMDlaFw0yNTA2MjQxMjUyMDlaMDYxEjAQ
BgNVBAMMCWxvY2FsaG9zdDEgMB4GA1UECgwXQ2xpZW50IENlcnRpZmljYXRlIERl
bW8wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDHVOjEeKWwo0+X5ZDV
bSVAHUDklVvcCczZWtIc3DOEU84Gc+JP/ug1AhgEAS4LbIMEpyIyzBcm0mMrLT7i
02ci7J3ybIlaIn2gNQ703WaJ2hWQ+GzubFKDCZmiiabCZy/uYyJ9D0EWZ6gK64xx
gWXiiud8Lbje73RwjquKCKDTH8kd4s99taK4UmpXa6ERVUTCbIOCq0rNvJTQYCf6
XDVZeucnW4CceOyIbeYA0hbBA+WF4BuyC0rDYdyQLNPQPEMwo/thLc9VhEMiL0B0
QHXvVNO3T0OSVcdgogjTpbAk6thKHjKjeqrwtFaU4pmyT68yxPk6NCKgVfMQTRt2
5o5kCG3QyoFAWA0jMz+IGtwtjbn0wVFhVfRlX/pUQHrdxn8o+S+ynbM87b7DHEO/
/RiMAropa4jcVWe0PC+1vJm7bXm1aLt0vUrde8lzYNN1C1iEVbF/yPvGBysxbFrh
Ec4Temuj7B9vFieKf5hw7+lEzVteABUUee+zhmR8lunQz4fa09QB59ot2Z//IZyF
+uduZZjYqV6YAzlulXzXJb+LAdpWVWXZzwq+ORhh0cExkZ0R72qrB7cj3qodR03t
yYCddmK2/Iafw7HoN7Wa0aVFw81NSEyFKwL/Mxs+QQy0jkRzBPCTh8NzdWBA40Qo
ZPjrfBZo3bHAzMFJ95MN2p04OQIDAQABo1MwUTAdBgNVHQ4EFgQUpGMrYBCb6V6L
gjM7kN+rcFqcCYcwHwYDVR0jBBgwFoAUpGMrYBCb6V6LgjM7kN+rcFqcCYcwDwYD
VR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAPY42mRjSrkeQBhfINNy+
W2S+1XIkxVcNyczt4xsxErUesrlStHFthv1n4b2RZbbAREQWNm7d06B0FvQ1/XBn
NAvVKCN6gf/jO+BYv8kn/8TniWVmrlEn9Y3sX8H0bqReYKQD9YmroO8vbHFYpDpY
vOiS1J0S5nePXz1VvhQ7VG3V/OP6jGT1NqDZU39AlbA8NN1WiftB6JxK9UvFQnCf
coG8maKoDtlf4bXTbZMbsF80ocDJLWq0BJjnKy7I79qOr66mt+nqB93v/2zTIToP
FD9Uw3lX+Vseyya3G5AqZZJj2suL/TZx3RkicGZyz/5v7dB0YuX/yjvKtdAif9Lj
w/kaLNeICuiolwSia6Ss1V8IGMYyFoRIKcQyA1pWmSYRbP2b2ZVctK/zGgt2ydHG
OUSENBoUykU3z8k+jr6cNKPwZJBITAD1vN2M6GFfET4R1iw55gcc2D5Tm8dkIHSq
WXoLDpofnABkaowaD5Xe6tySCoHWxpkIDSx8mse/sM8S15azDhL7V+IWWequ7i2p
oG5q19E3uy3IoANZdBzCZoYTcjv/CmTSJMOTMk4MaT4JmtGzMGNWwmr6dVOR1c21
FuzKN5liY6qRzYgOisPCUwkYXkJelfwup3nK0g3jBI9S8lB2ucfB15dRmwVjGP1G
ySv953S5j/5ZLvJmGkahPTw=
-----END CERTIFICATE-----

View file

@ -1,52 +0,0 @@
-----BEGIN PRIVATE KEY-----
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
3bsZaDP7F6iGp+Kh73PM8Yxe9Pyc
-----END PRIVATE KEY-----

View file

@ -105,8 +105,8 @@ test.describe('fetch', () => {
clientCertificates: [{
url: server.PREFIX,
certs: [{
certPath: asset('client-certificates/client/alice_cert.pem'),
keyPath: asset('client-certificates/client/alice_key.pem'),
certPath: asset('client-certificates/client/trusted/cert.pem'),
keyPath: asset('client-certificates/client/trusted/key.pem'),
}],
}],
});
@ -122,8 +122,8 @@ test.describe('fetch', () => {
clientCertificates: [{
url: serverURL,
certs: [{
certPath: asset('client-certificates/client/alice_cert.pem'),
keyPath: asset('client-certificates/client/alice_key.pem'),
certPath: asset('client-certificates/client/trusted/cert.pem'),
keyPath: asset('client-certificates/client/trusted/key.pem'),
}],
}],
});
@ -136,8 +136,8 @@ test.describe('fetch', () => {
clientCertificates: [{
url: serverURL,
certs: [{
certPath: asset('client-certificates/client/bob_cert.pem'),
keyPath: asset('client-certificates/client/bob_key.pem'),
certPath: asset('client-certificates/client/self-signed/cert.pem'),
keyPath: asset('client-certificates/client/self-signed/key.pem'),
}],
}],
});
@ -153,8 +153,8 @@ test.describe('fetch', () => {
clientCertificates: [{
url: serverURL,
certs: [{
certPath: asset('client-certificates/client/alice_cert.pem'),
keyPath: asset('client-certificates/client/alice_key.pem'),
certPath: asset('client-certificates/client/trusted/cert.pem'),
keyPath: asset('client-certificates/client/trusted/key.pem'),
}],
}],
ignoreHTTPSErrors: true,
@ -172,8 +172,8 @@ test.describe('fetch', () => {
clientCertificates: [{
url: serverURL,
certs: [{
certPath: asset('client-certificates/client/alice_cert.pem'),
keyPath: asset('client-certificates/client/alice_key.pem'),
certPath: asset('client-certificates/client/trusted/cert.pem'),
keyPath: asset('client-certificates/client/trusted/key.pem'),
}],
}],
});
@ -201,8 +201,8 @@ test.describe('browser', () => {
clientCertificates: [{
url: server.PREFIX,
certs: [{
certPath: asset('client-certificates/client/alice_cert.pem'),
keyPath: asset('client-certificates/client/alice_key.pem'),
certPath: asset('client-certificates/client/trusted/cert.pem'),
keyPath: asset('client-certificates/client/trusted/key.pem'),
}],
}],
});
@ -218,8 +218,8 @@ test.describe('browser', () => {
clientCertificates: [{
url: 'https://not-matching.com',
certs: [{
certPath: asset('client-certificates/client/alice_cert.pem'),
keyPath: asset('client-certificates/client/alice_key.pem'),
certPath: asset('client-certificates/client/trusted/cert.pem'),
keyPath: asset('client-certificates/client/trusted/key.pem'),
}],
}],
});
@ -233,8 +233,8 @@ test.describe('browser', () => {
clientCertificates: [{
url: serverURLRewrittenToLocalhost,
certs: [{
certPath: asset('client-certificates/client/bob_cert.pem'),
keyPath: asset('client-certificates/client/bob_key.pem'),
certPath: asset('client-certificates/client/self-signed/cert.pem'),
keyPath: asset('client-certificates/client/self-signed/key.pem'),
}],
}],
});
@ -249,8 +249,8 @@ test.describe('browser', () => {
clientCertificates: [{
url: serverURLRewrittenToLocalhost,
certs: [{
certPath: asset('client-certificates/client/alice_cert.pem'),
keyPath: asset('client-certificates/client/alice_key.pem'),
certPath: asset('client-certificates/client/trusted/cert.pem'),
keyPath: asset('client-certificates/client/trusted/key.pem'),
}],
}],
});
@ -272,8 +272,8 @@ test.describe('browser', () => {
clientCertificates: [{
url: serverURLRewrittenToLocalhost,
certs: [{
certPath: asset('client-certificates/client/alice_cert.pem'),
keyPath: asset('client-certificates/client/alice_key.pem'),
certPath: asset('client-certificates/client/trusted/cert.pem'),
keyPath: asset('client-certificates/client/trusted/key.pem'),
}],
}],
});