Update SSL certificates with SubjectAltNames

A recent update to urllib tightened some checks around SSL [1].
This prompted an update to Devstack in order to work properly [2].

Jobs running into this problem without having a SubjectAltName
provided will see an error that looks like:

    SSLError: hostname '127.0.0.1' doesn't match either of
    '127.0.0.1', 'localhost'

Let's also update the certificates to provide the SubjectAltName
and provide a way to easily update the certificates if required
in the future.

[1]: df9d503a8e/CHANGES.rst (118-2016-09-26)
[2]: https://git.openstack.org/cgit/openstack-dev/devstack/commit/?id=69e3c0aac99981f17c76c22111e5c397824b8428

Change-Id: I94a586b333ba6a99ef831c853a19ab127b502d6f
This commit is contained in:
David Moreau-Simard 2016-09-28 17:15:16 -04:00
parent 421a36ba0b
commit 61ba93a2b0
8 changed files with 199 additions and 92 deletions

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
contrib/*.crt
contrib/*.key

View File

@ -79,6 +79,17 @@ Developer documentation for the entire Puppet OpenStack project:
* http://docs.openstack.org/developer/puppet-openstack-guide/
Note: SSL Certificates
----------------------
puppet-openstack-integration ships it's own SSL keys and certificates in order
to be able to test implementations secured over SSL/TLS.
It doesn't re-generate new ones every time for the sake of simplicity: we're
not testing that we can generate certificates properly, we're testing services.
The configuration as well as the commands used to generate these keys and
certificates are stored in the contrib directory.
All-In-One
----------

42
contrib/ssl-ipv4.conf Normal file
View File

@ -0,0 +1,42 @@
# Generate key and create a self-signed certificate:
# $ openssl req \
# -x509 \
# -config ssl-ipv4.conf \
# -newkey rsa:2048 \
# -keyform PEM \
# -out ipv4.crt \
# -outform PEM \
# -nodes
#
[ req ]
default_bits = 2048
default_keyfile = ipv4.key
default_md = sha256
default_days = 3650
prompt = no
distinguished_name = distinguished_name
req_extensions = v3_req
x509_extensions = v3_ca
[ v3_req ]
subjectAltName = @alt_names
[ v3_ca ]
basicConstraints = CA:TRUE
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer:always
subjectAltName = @alt_names
issuerAltName = @alt_names
[alt_names]
IP.0 = 127.0.0.1
DNS.0 = 127.0.0.1
DNS.1 = localhost
[ distinguished_name ]
commonName = 127.0.0.1
countryName = US
stateOrProvinceName = North Carolina
localityName = Raleigh
organizationName = Red Hat Inc.
organizationalUnitName = OpenStack

42
contrib/ssl-ipv6.conf Normal file
View File

@ -0,0 +1,42 @@
# Generate key and create a self-signed certificate:
# $ openssl req \
# -x509 \
# -config ssl-ipv6.conf \
# -newkey rsa:2048 \
# -keyform PEM \
# -out ipv6.crt \
# -outform PEM \
# -nodes
#
[ req ]
default_bits = 2048
default_keyfile = ipv6.key
default_md = sha256
default_days = 3650
prompt = no
distinguished_name = distinguished_name
req_extensions = v3_req
x509_extensions = v3_ca
[ v3_req ]
subjectAltName = @alt_names
[ v3_ca ]
basicConstraints = CA:TRUE
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer:always
subjectAltName = @alt_names
issuerAltName = @alt_names
[alt_names]
IP.0 = ::1
DNS.0 = ::1
DNS.1 = localhost
[ distinguished_name ]
commonName = ::1
countryName = US
stateOrProvinceName = North Carolina
localityName = Raleigh
organizationName = Red Hat Inc.
organizationalUnitName = OpenStack

View File

@ -1,22 +1,27 @@
-----BEGIN CERTIFICATE-----
MIIDpDCCAoygAwIBAgIJAIAMauXdmpbBMA0GCSqGSIb3DQEBCwUAMFgxCzAJBgNV
BAYTAkNBMQswCQYDVQQIDAJRQzEUMBIGA1UEBwwLUXVlYmVjLUNpdHkxEjAQBgNV
BAoMCU9wZW5TdGFjazESMBAGA1UEAwwJMTI3LjAuMC4xMB4XDTE2MDQxMzAyNTg0
NFoXDTQzMDgzMDAyNTg0NFowWDELMAkGA1UEBhMCQ0ExCzAJBgNVBAgMAlFDMRQw
EgYDVQQHDAtRdWViZWMtQ2l0eTESMBAGA1UECgwJT3BlblN0YWNrMRIwEAYDVQQD
DAkxMjcuMC4wLjEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC4e4sH
9JbpdiTrqQffRpdH8RfgbDEU84s80w4cal/0NlozcBzCa+iF3hk95zmzMGVuheQA
fX9QS77MSrsFZeMQOSOmXJRZ21qZk+CkSueYEJNqY9/5tafRBtBHN/T8w5nC3wqz
v9FR4u9ahn2StpNwIpFFw3Mhw80jn03GauMkvgGFkXeWbB/PWveG7+Jp6FOH12lw
6g5a67gH2FgzUgLtIRHP2uCDw2l8kk83N3PGr44CsJkyVwUcEmHVdU+VbQt46MwY
enZUdb8+vKI9Fwd+VtV+QMn5xKPDD0RtK2iU1xboBmlzYvJADW/kpmlJ2ooGFYZI
LvhKInf/7JOTu3HbAgMBAAGjcTBvMB0GA1UdDgQWBBS8SoW8aNLt3kpfCdiVlaQ9
egJZFjAfBgNVHSMEGDAWgBS8SoW8aNLt3kpfCdiVlaQ9egJZFjAMBgNVHRMEBTAD
AQH/MB8GA1UdEQQYMBaCCTEyNy4wLjAuMYIJbG9jYWxob3N0MA0GCSqGSIb3DQEB
CwUAA4IBAQB9K3uiWcqHtqX8bxqUUDAVXpFTZn2X4emf45U5xTvT5nf61lwAHUep
R8Q4G7lxHV3/Wl5+a5ffeYVAgEcoGnqAKOh4Ii8jD3ZU/DwFayzg4EHgtewS9XfT
IXYuM5yIwAQm/ZThXIeHnxnFcTxW6PdHHoC0Vbw0qC2BsuGdPLSi1HdWldC1cyxb
iOKlFvorBS8cLS8BpYYH4rUZD2l/KiCPOAaHGKYyOkOrAYRTo+CPds0nAxGyy2rZ
qyRP5wl8v0inFtkWExZKeHLQbvEAClohbQ0dw8Ycqpg9CcsDNS4xv026yzGAAI1w
N4BtIaU0sii9Uq/eLf8CHP9uLzS/dbvL
MIIEnjCCA4agAwIBAgIJAJTeK86v/dsnMA0GCSqGSIb3DQEBCwUAMHcxEjAQBgNV
BAMMCTEyNy4wLjAuMTELMAkGA1UEBhMCVVMxFzAVBgNVBAgMDk5vcnRoIENhcm9s
aW5hMRAwDgYDVQQHDAdSYWxlaWdoMRUwEwYDVQQKDAxSZWQgSGF0IEluYy4xEjAQ
BgNVBAsMCU9wZW5TdGFjazAeFw0xNjA5MjkwNDE5MzhaFw0xNjEwMjkwNDE5Mzha
MHcxEjAQBgNVBAMMCTEyNy4wLjAuMTELMAkGA1UEBhMCVVMxFzAVBgNVBAgMDk5v
cnRoIENhcm9saW5hMRAwDgYDVQQHDAdSYWxlaWdoMRUwEwYDVQQKDAxSZWQgSGF0
IEluYy4xEjAQBgNVBAsMCU9wZW5TdGFjazCCASIwDQYJKoZIhvcNAQEBBQADggEP
ADCCAQoCggEBAMHXlERWfb0Lh1nGwSy6flrVZE5729fzBiot4f85tcdUallBBFhD
hUSliGGNDNFk3Q8JwB4Xvnwc90jsON3ShZPZqGUogj38Q6ohO8hEmrwIsFDA3Io6
p+66z/BcqEy0K4ZhZuMfa9SWnWFrvHHFLD68xoD9ZhIYFliJHMQE4Hi8Nn6IK3uu
+eBwJSiqnXtL7GQyibNZ+CDOojZB1qXwPwzY0zJkTisGxaiBbBK+TWA6OIRbcWye
V5WPsxDSTA/LMPCn9kC5WG467ii5KshqWJjGuNqX9U3w3YCoV10tc+6cFEhsjvJA
rp9U+RPvIptMW8Dv20dFvW1ybgB1UdxPLo0CAwEAAaOCASswggEnMAwGA1UdEwQF
MAMBAf8wHQYDVR0OBBYEFK2pxXtb5uPucmSdZo8UYfLbowACMIGpBgNVHSMEgaEw
gZ6AFK2pxXtb5uPucmSdZo8UYfLbowACoXukeTB3MRIwEAYDVQQDDAkxMjcuMC4w
LjExCzAJBgNVBAYTAlVTMRcwFQYDVQQIDA5Ob3J0aCBDYXJvbGluYTEQMA4GA1UE
BwwHUmFsZWlnaDEVMBMGA1UECgwMUmVkIEhhdCBJbmMuMRIwEAYDVQQLDAlPcGVu
U3RhY2uCCQCU3ivOr/3bJzAlBgNVHREEHjAchwR/AAABggkxMjcuMC4wLjGCCWxv
Y2FsaG9zdDAlBgNVHRIEHjAchwR/AAABggkxMjcuMC4wLjGCCWxvY2FsaG9zdDAN
BgkqhkiG9w0BAQsFAAOCAQEAHEcoaOZltvvDPaR0W8SwTQ3rm7jW7vT09aiK9BDY
8rcNp0D5aOYkrkQDLmSziT6EX8Y4MJDAnF+5fCSqiITDF76DYeQ35tC5UV2vzCoJ
A7KQFpmeGkYTsa5cfd806qNmQ9sB7Nn8QCGCEJaWFqgD1Ru16DzFa+TF9DVJ+61D
aWCjiL3mz4SKbcZqzZJ6e4lUprblHMxlaEHmGJfNGxk67wLbfGwD+3Ti9bZJDyhR
o/lVHVkqgVPrQds8Tb24i0Y9R75ooRXAkvmyngR39tPfAbr8Fbt5/onUTWqDfA8m
mGCcL2+l4tb0yhXlhhRFBe8NYOeoHk4tjeClyy8q27jdvQ==
-----END CERTIFICATE-----

View File

@ -1,28 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC4e4sH9JbpdiTr
qQffRpdH8RfgbDEU84s80w4cal/0NlozcBzCa+iF3hk95zmzMGVuheQAfX9QS77M
SrsFZeMQOSOmXJRZ21qZk+CkSueYEJNqY9/5tafRBtBHN/T8w5nC3wqzv9FR4u9a
hn2StpNwIpFFw3Mhw80jn03GauMkvgGFkXeWbB/PWveG7+Jp6FOH12lw6g5a67gH
2FgzUgLtIRHP2uCDw2l8kk83N3PGr44CsJkyVwUcEmHVdU+VbQt46MwYenZUdb8+
vKI9Fwd+VtV+QMn5xKPDD0RtK2iU1xboBmlzYvJADW/kpmlJ2ooGFYZILvhKInf/
7JOTu3HbAgMBAAECggEAYS4bR/6NPMBSpJ1vGyvZZzlWhY8Yr9u3Xjwjs85Ja6Dy
FSSa0cP8QgCENXrHh2AYHoeDWsrBNTAhewZmzGommZYv9GPSdh8586rVbFZU92LL
9QBVrPoHQ/Id51ZPxJLZPbE2twd1oXg08+/i2FU7B5f+BMz3qjK1rm0tkDcgHmre
uYvFl2RcFFdT4unV2zRwcoN4FOboiP4uQlT6DNbTgkZO/ASr6F/9x22A8dDCp/r6
4QVZQ9pYAd55L99atkre6BlbsJ3ICw4pd/db2ZxjMbFerohxuH46SHwpypqcTMzv
DD88X4n1iHC+73EFFK5ImSEQtAQcGKLPGG04yv3feQKBgQDxJWpIwKKw1mWw5nKW
mX01Mj88j00LapoQBFpZaEvX/hfdTMHZorwzZNWxsqTy8QXEZq+1AAkxJKDNdDcn
ZfNFbl/kPJ9RBdOKoKRJjQD8E7VIiCRDDfLUPTlVoxkvtwlrbBHFtHwcoJhharyP
aKKk2KGMC4KNyltx1Zb9znP8lwKBgQDD2JyWz9cRGpVsZh4uY8Yk+pYlgfhjNoHg
XdEWvROlbzvbgNawkkrzCFrx7KQ1Jeow3FR10Uyimd2oad7Iq8ZZtAK0TrlCl3GB
THffTmbpD4WdPwaNsRzXPKSU4y0zKxtNX+xrOF65qf/zW164cjkFMacSCid1QNYw
weMGEw+pXQKBgA/81AwYwXCJ9loBHU3AxV1WhHzGX2xHWAmB0F+nG4gpb3mbkiqU
sHeT0tsiJe95bVF1IWcVpoZckFCuyM1S5AsRY0glgMaFZV4Ggn3h3FPaFqXFaOoN
LbFGkduMoanZL8Wwd4ktCyF2wEONKQ00+buGJUe8p54w8VkduRIAsw3nAoGBAIAq
nOeRYvTdidYjyjKftwdyOpqXQP9kp4A2xWP1HwtQDUMsQNPTGVuNJz9Vl2z0wBtz
xY5JB7cNrOLPTi3TRH5l8LMhJdpvk6eDbJtmCrERKGbs3RQTSYWOOUL6nRT0a+yq
DuVoQY2NtGQFcqqQjcJZaTXEEWiJouLLsA/En6Y9AoGBAM9O74u925BDVc8kLKiR
OEdAlRedgeJYGv/EINhk+lRDK0MQXfhIDG9Wsf8UflrXrBxkphWTMdutBz0zgDFC
7naWMpoLjsifwy2sfZr915j9BnspW+PNO9kbfSHI7waSEOt3mU9A9sJpSzvqOLLl
agLlFX9eVql6GPL9xF/oL7be
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDB15REVn29C4dZ
xsEsun5a1WROe9vX8wYqLeH/ObXHVGpZQQRYQ4VEpYhhjQzRZN0PCcAeF758HPdI
7Djd0oWT2ahlKII9/EOqITvIRJq8CLBQwNyKOqfuus/wXKhMtCuGYWbjH2vUlp1h
a7xxxSw+vMaA/WYSGBZYiRzEBOB4vDZ+iCt7rvngcCUoqp17S+xkMomzWfggzqI2
Qdal8D8M2NMyZE4rBsWogWwSvk1gOjiEW3FsnleVj7MQ0kwPyzDwp/ZAuVhuOu4o
uSrIaliYxrjal/VN8N2AqFddLXPunBRIbI7yQK6fVPkT7yKbTFvA79tHRb1tcm4A
dVHcTy6NAgMBAAECggEAPbXj/d2LKiQBcxNTbGnyz/gfdtz3oEg+Li9tQ1OcC1lU
ghWwzGiyhKguQuAktITn22G/R9VHTzvpfc22TOg4nlkswweibxlgcUkjPx6YJESf
3RWJIHiL/fR7PopBCipRsPZRSv011vgcImeqFo4vB8oRZ/9D/36rnoQIJF9pFwZF
buzkLo/UcbYRFs92e/4Dc3/hqbM5M5T1ln/JckwHuWclaSBlFzgTPAUAsnf6/VrU
Ymp4PoN+2ocODDHOFplkhSVNFd1i8dx6qBo2kZB265EvkbbrqwDvryQK/dO/tBNQ
5n+OwTO9WHcLLqgsOKKzdvR/VBM+N8ph7ZaJKujaAQKBgQD7nZpsnpM4ju3eBHS9
atyMTywCMwgvdYq8AkbawAqgSa9dckadvIALQY8bvmrGZbqnzd0NJyfi3F2/h182
jZZzq3PoGuxbRuszuDD/aPnq5VI3i0lResuSZ1yrE4nW5z31mLefAQcQDY1YqWk1
kgM0Q51ScdpknqwMk9vf2KiehwKBgQDFOEMbMH6pvb9+vPCbmsjnU86D2ZWstUzR
QKzZhEJbKXVA7/JTFjet+9oCsRQlvDGa9ItqDPmhHaNRiKqEISHz3W0oHv9Vs+IH
VyWiMpeWlYPgr2yDNlQVHDHUtNhB1zuBtQB0pQXPG1h3HoGrdK97/Av6l/Cej9jp
YCCgU+ubSwKBgQCR3b8NYyzD6BA72md2/AFZkfhYWg9PvBuufL9ox1YhsDXqvXn0
rbepTttQ4SXzWDxKVYzluCJmYQw0IZ1v+csTyXyLPThyff2SYSB+oPPpWgI80xGx
G7fyatuNDeml3S7NNziUBDt88e5UTPoCJWCYJu6IQhqypE3niLw529d89wKBgFrL
EwHCap2EUFNtciuAr7rndyx2EBTphkrTRoABBndnd6aEkH+1u75qMqyIjyjsIb4f
lMsm3AlTVqujijS3+CSHrMgKtSvkW0tb0GSCfA0EGilnOUKS0VTCnSI6e1CcYLXO
+T259xmokiqMrc+cMWmX2H/uUQT+XjLaYUrON6pPAoGAMn3nvGpTpZ4kLlBNFICy
IdQUNRwLegGCnkQKmo2EcieQNxyaHonEg7IzsUuCR0r/XxzdPpdhpS/FPCmA3de3
BIu7v4UQsYg4Y+rjntR3RecVnFgLBqzDaV2hgLRtK7K82duzAxZ0ad3/rj4p45cP
7129KbQHjN9eWDUkFpdogB8=
-----END PRIVATE KEY-----

View File

@ -1,22 +1,27 @@
-----BEGIN CERTIFICATE-----
MIIDkjCCAnqgAwIBAgIJANyjZ5PlxnnKMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNV
BAYTAkNBMQswCQYDVQQIDAJRQzEUMBIGA1UEBwwLUXVlYmVjLUNpdHkxEjAQBgNV
BAoMCU9wZW5TdGFjazEMMAoGA1UEAwwDOjoxMB4XDTE2MDQxMzAyNTg1NFoXDTQz
MDgzMDAyNTg1NFowUjELMAkGA1UEBhMCQ0ExCzAJBgNVBAgMAlFDMRQwEgYDVQQH
DAtRdWViZWMtQ2l0eTESMBAGA1UECgwJT3BlblN0YWNrMQwwCgYDVQQDDAM6OjEw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC9O1fhy/tPFchUeASvSlxx
sWObuhfqJfw+bMTwTWFYO7UJVQtMnSlU7w7RPIFL+nfpfszdei4a914Z583FJDaG
RrGxpRwJFtk6HcpRXlf59r9qc5tbLrbqjZdeUkctILdcvtvCpcakE3xUrLgjsgUB
NuuXVP2WFKK7Oj6w1zVuAHgpU5e2K6colOTzYqvEr2u0AITuJFK3I7SPWIYMOjtW
SibYZULN4gbXv1FP2QnCbsWYayMKruPCjgcg2fXe5fjsBDuxeTnDbRhsLIO8Sb8x
Uz7MY6IvNQOygYeT8YS29ZRK86J995h9+b/Pg//QR4cIewj/NHbg7WI2v2bBlMHl
AgMBAAGjazBpMB0GA1UdDgQWBBRoiJojhpUae5TIvlq7YUY4LnJhvzAfBgNVHSME
GDAWgBRoiJojhpUae5TIvlq7YUY4LnJhvzAMBgNVHRMEBTADAQH/MBkGA1UdEQQS
MBCCAzo6MYIJbG9jYWxob3N0MA0GCSqGSIb3DQEBCwUAA4IBAQC3LjXWOahzVUGi
chRaFRjdmEEqQT7sLWfFhpnTBIJZoMq7Ew2jCnA7Kt02ARYA2k3Vsw8ncI8RMySJ
EEYs/Pnek4vUyrXjdyANoqcGGdH2sGD9oO8a+/O+1SOe04uhLjQjB9bB/U6eKozi
iJUdWcrSCcKizlZebNN7IgZW+FYoCqhQC/qmi4hMf+mIPkdkYI0j5T+u5R8n3ZJv
UC/R0vNTwYTeYwD9TT9RPIIdXtQYNnDB1T4yDdCt040RwxVlBTrMu3IuEc5rKL6g
LBmBzO4pEqoYHcExrorXdUHDFPWZKZJYmSsG+ZfwrGSD+MpgtG/kEPwWZ6Ksr5hH
CkwADBRp
MIIEmDCCA4CgAwIBAgIJANLSy2RWSlF7MA0GCSqGSIb3DQEBCwUAMHExDDAKBgNV
BAMMAzo6MTELMAkGA1UEBhMCVVMxFzAVBgNVBAgMDk5vcnRoIENhcm9saW5hMRAw
DgYDVQQHDAdSYWxlaWdoMRUwEwYDVQQKDAxSZWQgSGF0IEluYy4xEjAQBgNVBAsM
CU9wZW5TdGFjazAeFw0xNjA5MjkwNDE0NThaFw0xNjEwMjkwNDE0NThaMHExDDAK
BgNVBAMMAzo6MTELMAkGA1UEBhMCVVMxFzAVBgNVBAgMDk5vcnRoIENhcm9saW5h
MRAwDgYDVQQHDAdSYWxlaWdoMRUwEwYDVQQKDAxSZWQgSGF0IEluYy4xEjAQBgNV
BAsMCU9wZW5TdGFjazCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6b
OWjrO7hdOC/DVg6osWg5ZCk7dEUaMq30nOvI0p1nDniXr2+h5FLlQ8tGYTETTv/f
2s+AfeIbPgwQuLS8M4d6PI+brxI7CmIUV3Qk26LxRwt+uiMBLx3lLh6tLVErWndO
Su0FXTLR+caOjtlho2gdU95i3jI/onL2KssE/VXcvMGwjt7BBJeUEKGv2oGEoPVk
7tTaZP1Larg4WMrw6v/NvacLZNrZ9zeOmP04hE3WVHWJ1HHp7T91QcQP1N77Y+sb
XKZPUcsHo9jX9lzEpnbOLLGCBhSoIYWf6P5fhIhTq2gwfyuejrFZFPUXfl8azcLv
Tg2J2zGIdCouVLvfk2UCAwEAAaOCATEwggEtMAwGA1UdEwQFMAMBAf8wHQYDVR0O
BBYEFNjD8JEzK+leJdXe3f/Vv4zpRf1rMIGjBgNVHSMEgZswgZiAFNjD8JEzK+le
JdXe3f/Vv4zpRf1roXWkczBxMQwwCgYDVQQDDAM6OjExCzAJBgNVBAYTAlVTMRcw
FQYDVQQIDA5Ob3J0aCBDYXJvbGluYTEQMA4GA1UEBwwHUmFsZWlnaDEVMBMGA1UE
CgwMUmVkIEhhdCBJbmMuMRIwEAYDVQQLDAlPcGVuU3RhY2uCCQDS0stkVkpRezAr
BgNVHREEJDAihxAAAAAAAAAAAAAAAAAAAAABggM6OjGCCWxvY2FsaG9zdDArBgNV
HRIEJDAihxAAAAAAAAAAAAAAAAAAAAABggM6OjGCCWxvY2FsaG9zdDANBgkqhkiG
9w0BAQsFAAOCAQEAhTPcvDonf4ZYCQQlQoXU/cE78pj1+u3W2+jLQIPtXqYdbPIA
iR6+ph4t/BcrfS4OG1QwUs/p941RIu3REgbxdY8dz9/wUmdF1DyvkoMqJ6Hx2ZVG
HNy7iEl6hO+YgbjkUIUJYojmf0FsWR+M6SvkqMLuYGmA4FyRt5LEMO38dx85Qxrb
jxV5HiPJXblNH4Gt3+rw89FSOLFkgBiNvmU2KfCm4Pj4RergXkrWTISSJSoq+mtf
2EhFSKrII4AqIxzi3ShNdcv6RnBO7cShrxtftsDnySce2LNwxDbOXuIXGyusmCut
SWeJ80og64esPZJyNi/hD1qCLZrweV03c1/oKg==
-----END CERTIFICATE-----

View File

@ -1,28 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC9O1fhy/tPFchU
eASvSlxxsWObuhfqJfw+bMTwTWFYO7UJVQtMnSlU7w7RPIFL+nfpfszdei4a914Z
583FJDaGRrGxpRwJFtk6HcpRXlf59r9qc5tbLrbqjZdeUkctILdcvtvCpcakE3xU
rLgjsgUBNuuXVP2WFKK7Oj6w1zVuAHgpU5e2K6colOTzYqvEr2u0AITuJFK3I7SP
WIYMOjtWSibYZULN4gbXv1FP2QnCbsWYayMKruPCjgcg2fXe5fjsBDuxeTnDbRhs
LIO8Sb8xUz7MY6IvNQOygYeT8YS29ZRK86J995h9+b/Pg//QR4cIewj/NHbg7WI2
v2bBlMHlAgMBAAECggEBAKeIcIfh9j7QRCo0j8E5jprBuDRZD28n7ii+V6WAfJyH
UAJRHs3Xno4pj+7DKJ3BxIQe1PWIhGUveEprJYxSQUukLxHd4fJSHkQLt+FOK4mM
YW+3pmWV+C+057yED6vueShNeXbdGf6NmdfFislfhHrMysuSXWiQIHquWG5sOkuF
7NowUeU5DTF/GPJwKdZjGrS7oMGKYnss1dTrB2nVrTXtoN2RQjvtce6qBqW0Mph2
fCA5bB39Eeunc0FwpzB1XT83UIY8TQnNRchR82pLhtwiaw0+8GSvPpsRpTuGzv5X
4zw+A/9qjxgN9X7nG38wBVp+gdkHLoEqS/HSOrrux4ECgYEA5KP7R8dee57x+7Wt
p/J+IoJp0ZD55nHAZ3CcBo+eNEEgpP0WM9l5gqP6SOj6ksEAp8yzWFkG1yIUBCgm
ONArorlBkpbVq5DeK0h0pkA7/Fperxi16q2rTzxveJWlT0eyQrRr5qQpPP6XOcFe
UAphtTrACqpFYG+7/lz0CKOhgxECgYEA0+AkJtumDygOgMpjFKV+XF6XP//e7nT9
Jb0THYHmMxmGxGLbfz8rK8GjG032mQvtHLvWF7tv8fl2h+VZ19xUiGNTl0x5fBS0
XE8gNoUjePJtqPMSa65U0wttsmwCX8Amn8dtukqal5jGwFgpioHJGmO5uKYYQTq3
pVyEEv256ZUCgYBYN0TOjwfPXqYy3gggkplEK1k0uGETHrSDtJkelu8NbktwHQ4h
9zjAxQ/ebbWwRbNBCuPvpHnVK5rZd7w3k2oioKPCMVxDk+OEg7IuKv56AUwi9r/J
yjQcoE7KEcL0cc8/mWlAVfprRDeI2yjObRMB36cU9llKOhIotCib5LZ+YQKBgQCC
9Xvi+Mj/fUbZnD75uAEOnvjl+gWVZoJCHUf/aRccZp7CLEh3slfAyANFET9nAdQh
eoiuSpC7A/KbtMt/fRRS6PH2BrLgWvvQQqgqisiOLWpSj0vHew27FMlNCy28eUxm
XiIYj5xWL3xJzzR+BBKFWTamRyOezehNMY4BHwsWsQKBgQCT3M1V/fBJn+z6Gw4/
cZvfk+Ans34ItqAQuzeSdwYCqJyZRFx1vb2b+iGFwRWs7PUpQ4+/JDdEZYlUsPZX
gum8xe1rMlGaU1OLbzcPzwmz8od/NNfxSge8PjQpIoHdRfp/G4PyxXeEXncfunn1
4QBg1KuwvLC4uxP2Ilmb9Ilz7g==
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDOmzlo6zu4XTgv
w1YOqLFoOWQpO3RFGjKt9JzryNKdZw54l69voeRS5UPLRmExE07/39rPgH3iGz4M
ELi0vDOHejyPm68SOwpiFFd0JNui8UcLfrojAS8d5S4erS1RK1p3TkrtBV0y0fnG
jo7ZYaNoHVPeYt4yP6Jy9irLBP1V3LzBsI7ewQSXlBChr9qBhKD1ZO7U2mT9S2q4
OFjK8Or/zb2nC2Ta2fc3jpj9OIRN1lR1idRx6e0/dUHED9Te+2PrG1ymT1HLB6PY
1/ZcxKZ2ziyxggYUqCGFn+j+X4SIU6toMH8rno6xWRT1F35fGs3C704NidsxiHQq
LlS735NlAgMBAAECggEAd1xKEIlGGT8RxNZPE2z2AUaWzRNiGsIF4WXeeoGs2+67
94N6gT3AUPvO7NMeN2H2U/EZ0qNjFouyjvniG9hW1MAT2MuSmy+s0fj6hUj98ub9
qnBuTObUN6s9t89IzQoE28RJmSFuNHwGl2WotYGpC+9Vkrb/s3v79/qrwlqBmWZA
rvOFIDIToYdGIr5KBpJx/WQuJc/M9uzsFI5JFkaGw4BR3lg8qK4uk5afC1dHsMfL
WHiCtPT71caJx3gchtzd/G+fnBObOsgOn1Huxa02jUyPP4jOkMLILtZp/AWsVmSk
82vWxKh/DsVdf0vzzQ5/iKVHTF8nApWE3uYEPEX8iQKBgQD5mFdzTdwqbzZ4cfeY
ELHc1/GlOye5yOkMofcd+8urHxKab20aQ0YqGHxpx2xvNORE7lgqCegXyE3dtsBJ
ZBNyE6xtHee8OIKz1/gjbBF/3UjKJi2JufaLwdzOnC3aXqCPTRWpS7JW59vGcn8F
KM2BogqY+mJZ3lWfUp7tBD31pwKBgQDT6HpVKVd/5UzJtO4PwF/tPSx1Tlzf+qtz
kI1u3j1Tm4Ag3Bve6tvJwXjAIllm81QgiblHHKx8dAqFzgnOzbJZHqyPCUTEjENX
rGFRUDmUToCpaqUikNtdM5CFso/xdGEgIp4/qP+EUUhSk3ZVo+3gZe9uaDWq77io
GxZGGQHoEwKBgAdDQpAtXNGzSL96eXzoR3Sop/Rp4z8JtJZUhC9QK14AWnc59M/F
013YNo6RaftWa6oB0Xjvrtw6TOG9tpysF9DC98p5C0wzzMHU7/h/5YZ19u9C6yJN
0fnBG167tq3bAQsKcC3r8PWMa527qSyKQmiaQXqwFnqM+KrZKZy1+eOTAoGAZg5h
1F/7xxnc+IwN10I0MOK0Za6e5jQonJiytQGNkZWjiK/ZMGv1/F4UVJx2aDGqg50w
wUHbBHkylCyd5p6EVY2DV8QD/ZD74d6gY/P6NyXzqyQ0cchIDcQGx40u6/+7wylJ
A6nVnZkz9qkUZbx0lQ0i2g6QQkn/qd6ZxJrIo0cCgYB2jWqqz4jnfyVI8ziX1mRL
xvDvoSYQBk0K5mo9jK32dFEYm7cFgIto2hERWedBF74WaQ5NFw9dbai79o/vBcGi
lBXmjwTWK8MKSKMDIK/5BaC/XnufMCKqEACbzLiZpvI8vDWOTub1XfsMJcGwOdd1
xnyxx2iSMrdbt2DfDY1c1A==
-----END PRIVATE KEY-----