1) Сгенерированный самоподписанный сертификат на Centos 7.4 с отличными ответами на Как создать самоподписанный сертификат с OpenSSL .
2) Когда я говорю контейнеру Jenkins использовать их, он перестает работать, говоря, что не может прочитать файл .key.
3) Проверен файл .key с помощью openssl, он действителен, но ключ, отображаемый при этой проверке, НЕ совпадает с ключом .key
4) Копировал отображаемый ключ в новый файл, велел Дженкинсу использовать его. Это работает.
Почему ключ, сгенерированный openssl, не работает, а тот, который отображается при проверке openssl, имеет значение?
Точные шаги:
cd /etc/pki/tls/certs
vim openssl-config.conf
###openssl-config.conf file I created
[ req ]
default_bits = 2048
default_keyfile = server-key.pem
distinguished_name = subject
req_extensions = req_ext
x509_extensions = x509_ext
string_mask = utf8only
prompt = no
[ subject ]
countryName = countryA
localityName = cityB
organizationName = companyC
commonName = server-nameD
emailAddress = emailE
[ x509_ext ]
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid,issuer
basicConstraints = CA:FALSE
keyUsage = digitalSignature, keyEncipherment
subjectAltName = @alternate_names
nsComment = "OpenSSL Generated Certificate"
[ req_ext ]
subjectKeyIdentifier = hash
basicConstraints = CA:FALSE
keyUsage = digitalSignature, keyEncipherment
subjectAltName = @alternate_names
nsComment = "OpenSSL Generated Certificate"
[ alternate_names ]
DNS.1 = DNS-name-1
DNS.2 = DNS-name-2
DNS.3 = DNS-name-3
DNS.4 = DNS-name-4
DNS.5 = DNS-name-5
DNS.6 = DNS-name-6
DNS.7 = DNS-name-7
openssl req -config ./openssl-config.conf -new -x509 -sha256 -newkey rsa:4096 -nodes -keyout certificate.key.pem -days 365 -out certificate.cert.pem
openssl rsa -in certificate.key.pem -check
vim fixed-key.key (paste in the key displayed by above command)
На первый взгляд старый и новый ключи выглядят практически одинаково, первый начинается с
-----BEGIN PRIVATE KEY-----
MIIJQwIBADANBgkqhkiG9w0BAQEFAASCCS0wggkpAgEAAoICAQDEzhA5iBOLImBw
В то время как новый, рабочий начинается с
-----BEGIN RSA PRIVATE KEY-----
MIIJKQIBAAKCAgEAxM4QOYgTiyJgcBv5zg2qZjpLINt6fmub3JbIVmFaHKeC8Xvp
Как видите, у первого нет RSA в первой строке, но добавление RSA в первую и последнюю строку в правильном месте не "исправляет" файл ключа. Старый файл имеет длину 3272 байта, новый - 3243 байта.
Что я делаю не так?
Я ожидал, что ключ будет работать или поврежден файл, но я не могу «исправить» его, снова отобразив через проверку openssl.