From d324b2b49a542ba380ce7099953a204cb3f7f673 Mon Sep 17 00:00:00 2001 From: Alex Mirski-Fitton Date: Mon, 6 Sep 2021 17:02:21 +0100 Subject: [PATCH] Add common name to SAN list for test cert --- test/tls/client-trust.jks | Bin 748 -> 1094 bytes test/tls/generate-test-cert.sh | 5 ++-- test/tls/server.crt | 30 +++++++++---------- test/tls/server.key | 52 ++++++++++++++++----------------- test/tls/server.p12 | Bin 2285 -> 2309 bytes 5 files changed, 44 insertions(+), 43 deletions(-) diff --git a/test/tls/client-trust.jks b/test/tls/client-trust.jks index 140b71ec48ab5bece0216a7eaa2a5eac1d7d5ece..8865ab7e18e044d4fdf458fca310b72989bfa89e 100644 GIT binary patch literal 1094 zcmXqLVsT<(WHxAGe#6G8)#lOmotKfFaX}OFU6v;1n?T{KKztD)#Ril*1QgoG#K-`o zwj*R14btEoR$hZh0}BL~$3UA!r0mxY?Z`l($;zj6HcipG^n>-Cm=zO~x&RZSf&mX3 z2gGtFPF4m3SvJmuHV?*BW)?;*7J=ZswKGLIcWBMqr*ud>W5S_^CT545c1sw{rp@*` z+VeO6)$xXd+Ad=64SFsX-dka)yD>OHddZo+YN>xFeLV8$;rRlJGMMH#7?Y8yoDNXCkJXVUb+W%hD!F_Hb zLu+}3lgDqF`fCB{I&zLbe-xMZw}GaY{1#Xp4iEHe4q5DJB#g# zzG8TEy+Ue%#ZCJ;s^$HPMHzYN_t!m_mYVfz=4;nhuA&_=vZ<&>X_l@h1BbPpieYM=Sy`Saz9ykAB9S+=^W=99|eHTfC!Qt8&# znkxT9_m_p(x5@QRn=^;izhQsg7j}hz>rNl^NtnQXUO8c}QK)tyd*?~E2R*W Fg#jix-Io9W literal 748 zcmezO_TO6u1_mY|W(3pR#i>PQsYSZUsYN9~vCM_++jALMBlJuSEP={a7&I|0F=%4! zVd7-iwQrK^+;4m@4S3l&wc0$|zVk9Na-=Hw?Q=49j-ml(*2 z^BP(j7#kTHni(3K8b*op8UeY67Emq@T}_Ni$i_3WGB7tW@-qNkz{S+W$jGqn@u{^6 zHfmjhS^bGO?p{l_{o=MCC?%MM8^Pc>i zU~0W#Yl23G+rial7j1olx0fiFU3hL6^Y#Vz`-M-we$y*5u5xqxFl|%0--hXHl8n3B zpWmIeb^F|+roUT@&vNpYo_ySSq3hy#gMFO|$NH z`d1g-KFY8m=efASPN(-?CzsTH$+XD)opfSNc4Ase)1@>+Q9JI?Zxe#f$(^1fm6UVH zMlV;Tnu(c_fe|@`fDr%;Aw~xG)S0Djr_c4rwEoO)OOxgE-Q1)0Zkx@1Q^V<+Ezaj! z<_Dj>Zov1Awf51aPo|GGw^_3ac-ilm;gs~leEO6V>%TU2_U^k`EhP8zcHGWr@scgI zg15egH5m#mJ}dI;)2nUC=S#o)&5*jvGJE-$S3GI@j-y3UmHc+BUSHC?oq?Pm>Tw{72S4Z}};MVwc`1zs9Pv+0L!QIU=F#!M& CSwLF= diff --git a/test/tls/generate-test-cert.sh b/test/tls/generate-test-cert.sh index a49be75..a813aa5 100755 --- a/test/tls/generate-test-cert.sh +++ b/test/tls/generate-test-cert.sh @@ -1,6 +1,6 @@ -#!/bin/bash +#!/bin/bash -ex # -*- mode: sh -*- -# © Copyright IBM Corporation 2018 +# © Copyright IBM Corporation 2018, 2021 # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -23,6 +23,7 @@ PASSWORD=passw0rd openssl req \ -newkey rsa:2048 -nodes -keyout ${KEY} \ -subj "/CN=localhost" \ + -addext "subjectAltName = DNS:localhost" \ -x509 -days 3650 -out ${CERT} # Add the key and certificate to a PKCS #12 key store, for the server to use diff --git a/test/tls/server.crt b/test/tls/server.crt index cba77d6..63532ea 100644 --- a/test/tls/server.crt +++ b/test/tls/server.crt @@ -1,17 +1,17 @@ -----BEGIN CERTIFICATE----- -MIICpDCCAYwCCQC6vpJFnfYO6TANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDDAls -b2NhbGhvc3QwHhcNMTkwMzIxMTYxMzUxWhcNMjkwMzE4MTYxMzUxWjAUMRIwEAYD -VQQDDAlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCu -48qtIDwmihFqj2HY3dZjPfROA1MJ+D0c6aEA08ooOczthLB7XdZBQDapj8LFldyt -4ZMbTkqtF5QtPXmJY0wi39foLYlcGXPL1b7y3mypaFou88BcSM3VmfILKXhNeAlt -rXevnuT5kDU7sLVgKGhGwas20T1MU7d0I3bQ5z5c7egL76Hk9fYucjN6RkbwlrJ3 -TrCXrGIziofn3Zq1t51ygv21c80JD3XJ44YmuCrede4rhOS/4NpwRuZyiwpJ6tlv -0L0QSDGCmt2JT3ty28UAsGznFzC5Qu9KyaR+9Gk4aftiyKxrYWZkgtJmMRU+C1X2 -kFLOHsucGmJswjwubSR7AgMBAAEwDQYJKoZIhvcNAQELBQADggEBAEdlmXVGy86P -XIX5a4ZmHQ5Ns4wm7rY8vzUxlymEQ86En1PN1zAO9gV94tLyNeMptjsFEEo/uJhC -Yvg3l5TIr/WCiY2+2XsSHvnbXrlbF3S0fRHa9VaCMRKjzRT68uq2Y891906YGtUE -m6fCjHqVzX8qaplDf79aVkPydYaYOIZ1a/mCfQcD9XMZ/v5zI9IUDhdoq97bgPhB -gBOzWLI+hkzyU8jxKAFw1Hwi9lD/P6RXL5arNb/+arOgA3vTW+xGWGevgjVK1Ay9 -81beWiQmn0KbeLZxj+WJ9Nntlf1M4EqPYgsSYs/IlJTYS8W1B0mDJEoovPdFTryY -GyIuQEVcjUE= +MIICwzCCAaugAwIBAgIJAKnwG0VGiDelMA0GCSqGSIb3DQEBCwUAMBQxEjAQBgNV +BAMMCWxvY2FsaG9zdDAeFw0yMTA5MDYxNTIyMDlaFw0zMTA5MDQxNTIyMDlaMBQx +EjAQBgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC +ggEBALLmDX3OB/4DlzJzKz/Edc5qVdjdIN/u8pApSQPevT0mAsSK1uw2MObeOo4C +DCBmabYeuvGzZ4t3SiejdsHK+qAYMFW51lxTbulv5kUPvTBOY2JCENkVDFjqcK8S +9ItI/UzTmnBolvZmUKzROHzA/pFb/jkhlzqJO+TqIBXKLF5gdFFTiHHcqfoUyVOV +n+49V8z6W2rokz4QIWa5Dlh6VS1B6VXdihJv5P9HV8P8FOtefhA85yaSVKlFS/AC +XRb5FmtmYHBnghLktHS71s/KcPeX27Q1NcKhmZMvHRH95hqEcP25S6SGu69eiCLk +xpbJKqG3fntfooLUDfR2PHQUJ7UCAwEAAaMYMBYwFAYDVR0RBA0wC4IJbG9jYWxo +b3N0MA0GCSqGSIb3DQEBCwUAA4IBAQBamIH23oDh1XxOeMPUEyPLHm5M8LM8FNhT +GEpf1ICy4TSLipSFhIs3hGzVt22zBBzU59apQ8rXUME5SK+9PLag/t/48rG1SfUA +VyYvaeu/cA5NQMWwuyCLqZL1MWn+BLsdAiNtbNHANesnl0i+vUb0GPzSP8soe3PP +N7Fh8SO3Qq6e9zT3iE2tP2OFxzcpg538Xn3qoVPJwmLIfBtvsiK07zqAWdqBWtt6 +cBXyagnmgKvOyv6sKAlTpwP9HqVem3XxZVrhm1KiPHs4Dnks6e79txmB8lqzvWu5 +tu4h2ePGJjqUy5JkkoDY0j6hALwEe3ZXBvJ6XUQDi9Hou2k+MaQd -----END CERTIFICATE----- diff --git a/test/tls/server.key b/test/tls/server.key index 6945456..feb2a46 100644 --- a/test/tls/server.key +++ b/test/tls/server.key @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCu48qtIDwmihFq -j2HY3dZjPfROA1MJ+D0c6aEA08ooOczthLB7XdZBQDapj8LFldyt4ZMbTkqtF5Qt -PXmJY0wi39foLYlcGXPL1b7y3mypaFou88BcSM3VmfILKXhNeAltrXevnuT5kDU7 -sLVgKGhGwas20T1MU7d0I3bQ5z5c7egL76Hk9fYucjN6RkbwlrJ3TrCXrGIziofn -3Zq1t51ygv21c80JD3XJ44YmuCrede4rhOS/4NpwRuZyiwpJ6tlv0L0QSDGCmt2J -T3ty28UAsGznFzC5Qu9KyaR+9Gk4aftiyKxrYWZkgtJmMRU+C1X2kFLOHsucGmJs -wjwubSR7AgMBAAECggEAH9t6teKjUlngJksMBdcTEGzerb9JRw2jBDtCisYJkx5E -SBfdlftX5fbufiCj2B4eXsYyZ8zxKWqcIUmLdA1Udx3TVIXG+bHhOAYtjEwb+xf5 -JYhdR/IzHG+4eXQKaAIvpXztyl3lU9iC+eaMg4GYzRrGN2wSAG9XgZ5cLF2TLJYU -jPxp7goz9X6V57aL2G/EFlbFsMaI/6cW7+XoRdo0I4N2Z766gz7GgyxtTVwR5Peq -LjOpqSNS0W57KJxReURfySok9CP1DfyigopsYW8O4jGVDDRLdiN3I8+JhWya2E0j -96hHpN04Oz6HnMm7bdZDVtkZCOiu6xIzLJJxZ4o+kQKBgQDYqOA/hSod7s7w4LBE -A6Mp+e0//PYH6/N9SKmSIgQNec9bMGI4yanoblMbg4GM1g7pkvjlC0nTdjnUbLkB -vIvtVh3XwTIlrZ/4lc7VB23/hmKU+lRc+NJP5fgasAQu0W3+qp2cXo0pnHVwBEku -Z7FwDPX0JNDIi/Or2I7dt8JojQKBgQDOpU1AnIXv1/cToYK4nz8BWLxRxwLTxy5A -ucafNKacPlxb5luZRCExiPZwAM8Z3zI9o99rYXOPQmsnknZWJV66Zx0Vo0yTD1CT -DWMUj0ugI1wORNMhwZP6YBYWjAeupyU9a7FyU1Geg4sdQt5rMyAEQOoECc8x8foP -rySHuO/TJwKBgBjMM2ZxymFErQDa5rHSLMGoLmRtgodjlSnYwDfOluIn9/i67/MJ -+d11iyOSCKji8y/+t2gXw6plVLcgfohZWTaf7ah9H006sx2Tn+m4APoHGo9sm21M -uV2Vt7DuRnxJUiqcwo9cLxH9K1/Xzbx299MYWKpJ8G+TvR8FGUz9NE4dAoGAM5gs -KKSsAE1QwFMEG2qPRZvNMTHaL9w8XSbFQ7zWmI4tazihyCutifujZCWfj9sdZSyE -PQBQ5QT1UiUMbMfZ1fqm1V83YERjnsOp6Fk6zZnmgx2GBZiahNn2ydxekqni72nz -HRNWfphjZIPsmqFiLg2zIBz+4X6EK+RT35s6LeMCgYEAwF/9jX8kONW5KKZdoNHa -opkLpa9qkwTGQ9M3AZiRUjM4rtvggYt8FBEP+3BLDLHqfUOkPq82MCRXm+6Cz+sT -gyPnsPlAh/sr3Pys3olJbUDE9H24k1LU0CI/sSwAFkka0+Q7PVTTe/Dcavitrcrm -+fyiT2oSPZeHSjQE9iIW3OY= +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCy5g19zgf+A5cy +cys/xHXOalXY3SDf7vKQKUkD3r09JgLEitbsNjDm3jqOAgwgZmm2Hrrxs2eLd0on +o3bByvqgGDBVudZcU27pb+ZFD70wTmNiQhDZFQxY6nCvEvSLSP1M05pwaJb2ZlCs +0Th8wP6RW/45IZc6iTvk6iAVyixeYHRRU4hx3Kn6FMlTlZ/uPVfM+ltq6JM+ECFm +uQ5YelUtQelV3YoSb+T/R1fD/BTrXn4QPOcmklSpRUvwAl0W+RZrZmBwZ4IS5LR0 +u9bPynD3l9u0NTXCoZmTLx0R/eYahHD9uUukhruvXogi5MaWySqht357X6KC1A30 +djx0FCe1AgMBAAECggEAagD5A49+mtwjzigB+4H80Def8KVuomIi5psgAaQM+9u3 +DiC6ozKlHVeW2KiL6PLmNpzU5v0IINKpZP1uE/yjLxPGKDW6t/BUKww8JLXjw2jf +aMx+0TKwo0sfRA32S0YPmWNVAsBmm1AbA5vhXcK51QXuiInH406H5+d25ZJrYevF +liKWSjx9CM/0XO7t20j18mCa8RjBEdsZoHxHsoWNvFJ6DCR25cFShAhR7s4OtkUk +yELm1tYYrFOffUM0Q/Fp9uSlCHWMSqPtf/6NEfnszfFEtzDh/N+YqC1Bexv0XPsD +dBPOkUZjWA2Sc8Se1t2GLfrRURzj3GvWH1+GssjsAQKBgQDeIdyzQSqce4Kn0opa +vdS5moCiv3pyfNd0nYe0awgVos4kHY7/nBq0eyMZAatRHeD3DunVsw3LmvWyEw53 +app7MTTjVrYaadoBlB6jy2elyF5RcW2jGchZExoNh+0ZQWUiMbYEozPLQTy9ZxMz +t0OcZ1hHPngGgmj5TELZKkwEtQKBgQDOLLh7pdKrdudtim+o4H20jl5yYKl25Iq/ +DKVodwUd94cM7xAIOQJrx2XK/YPCfRkKRN1wxzAhYdIVkaaKDVhI8Jeu+H18QOa6 +5OlzzZcqJCtACpbVqLaDcmq8pRrAYekiwMIKwC95llvktjilvLfoUnQoXAaX8E8B +yCSUvDh3AQKBgQCxa0h04DLho4Da/D3HdmHHERF3bAqoEPCh0wTF5MsjRNLzY6yI +mq11w/hni77C3mOF0SKRrh7xpcZiQfhHBx12EfpVLjfq5uraYe0LFHanol87G6bf +I8Oy6Z/geNW2W1YktqHUGGpRCL0z5nUe1FyrOpv2431Ibbbcj73A6JipFQKBgHdl +vJyWpk73+AQe1JUnFIU4oYd5ZQpeRd9n8m5x5ru4+jPKSi2I3lcOTWvlrqU2Dwc8 +ZEUIhV3/qUsmYxy1p7ft5NnGO912NGhtYqjWmcEk2wsmVr17C99JpniC4OAik4G1 +wWm6bIPsSGFGCb4pcROQlIY+7O6WkxqEDnM4ITcBAoGAHXBKmadFpupUeGSkCwEo +/VjeI4QoKKcWj9K8z8ifCVPz1FiQ1AJ91WMTM7PAmpEDX058Hor9xxJ2bEtQFwUS +QKvjeU+/Ig0TWjsJBgBPvc0xYLaJptAbjvG4a5nBn7hwbRzLTcKx2OVTmdAkz00H +1lq8cwizfwNgt8ldFFDDRvw= -----END PRIVATE KEY----- diff --git a/test/tls/server.p12 b/test/tls/server.p12 index 48ffc16ee4ecaff6daa63c9c22468c6f2d097c05..4d1c0479d25cb02067048534217b58b388dc41b4 100644 GIT binary patch delta 2240 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