(1行)証明書バンドルを2つのファイルに分割

(1行)証明書バンドルを2つのファイルに分割

RSA秘密鍵と証明書は1行にあり、それを.keyファイルと.crtファイルに分割する必要があります。

sedまたは/およびawkは動作できますか?

EDI1:はい(ご覧のとおり、実際には1行です)

-----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAoigkOEwqD/d5VsRgCZx8ZjTG+2lMZ+q1QyRaOXZ0OXIFWoKq JlFKI2BauRYl83pM1CLcwrdmnPGGyU9ld5JkWgj9zwI5O7kvyl0sW9ekiDGRdyT+ AEGV5E5aCiki9hgrj61CyvGV4audP3jG+dNi07yFnm40uC1HkrKtFDgiTYMDb2L4 m/UP8pszFiar9rBY0AEhL55gLREX4a/QDxbmP5puUvTErgt0mfbe444+ke5fxxTZ BKhZbVhaPEVVcUVgPlw1EH9wmgj4fTnlNDZBPVqvej8CEt4y/RcEOZ6nPddjBZm+ inr3QbOHc9bvUy5El8RlkqCU/kWkgj1sZlkMGwIDAQABAoIBAG3c6H1EDRN4Rbtl nPOmFBpjE5VuiBe3y0tMK9zWxnPNLpdeA82mMaa6N31C5j+J0te/Lva1r04RzZJC uqpCgr8FbIB+LyypkRl3+v/WoGCtxLKGW5js1pMyCorryAYX5huX9bLt7vBQh19j gtvsPf7asWTfodROyTk42U7joUoFr4TiqBftjVGl3gLB1AidLMHukbiCgRoqGC3v H80VAmc8bt8S46MOvfw1p1Wj/hfyz57pwrU/8/+FHFExzjtkA5Kd8KidzcBc6OnA 3dfsdfsdfdghhhrdfghgfhfghfghhNR0ze6qvlQc6+QQcVIuKxOhmObtBsagnAHJ eqr7FXECgYEAzy881viDqAmsbFC5BN/4GRdUK5nKWFbjD8bo8PbCFMh8Mb+K/GKc dHhUZSMKGQ4u2NNI8fcnh3M0F2zdoaVqZndwr9GxMWyPoB+KBeelDFIWHcY7z55c N2r4CRyWAOMU4lkvBn5RQz1Qxv2de/Tbr3VdxT1tkbWIruIl+wisfwUCgYEAyFz2 xJRugSIBH89haeoHs4JqIKiuHm7+UHkawtfGqrg9jeJDfs7N4hlha5Wf7SDaXMAb Rc8MJGpU/fH5bz/DgSi0ruRjaOs/Yglik4VcnLosM6mgVh5cGa96al2SbEEBck/Q PFiKWbOI3J1npb5sy/0SNGZG8KzRvwkG2NqmCJ8CgYEAydrBEMSBKPd7yPAAwxIe 2vtSo0Qr01Ob16Q5EYOoZa1K6wEuPWUp/4O43ex8ixq5Y8C+ghgFqD8CkowbhsDt 4DUgUfwgAgI+EIiJ5eThdhaHu6yGW2pzd/6898ulDeowT7MKUO5C6BrWF3nCtKFE ZDcaC/AkT2EpcRGeZWz2+q0Cgfhfght454564Sgt7j6k0TnYUzXZzQZWJuwYds1l +RjhiGWCrQDdNml6FhltHq/miWkDwbDPaSUjaD6Hh/aJ2d50kXgv3Z7diQZ2G5wD dlG5DmyKkDRe5oyUfkdvK09UkOmp8IkQpOSgfJ0s5kOS/dEPgcns1JNoo1s6N4dF cY6e0QKBgQDNm1nhfPHzkLlYqvpa6k8dF+iHBz2vne3EZ9B6mXIJXTsCc0OwEusX 8zin8oMEBLcJCcH3kdLTnjdtiN7nxukUjaR48g/EiOtiQAxqT69bEiNzRB3o0pAC f9NOiPKEnob2xeQYTptm4AlY/WblAyXbn6ZmzyIMf6mOTRdh2K07QQ== -----END RSA PRIVATE KEY----- -----BEGIN CERTIFICATE----- MIID5DCCAsygAwIBAgIUNoBfD4EQB61SOlUZautwaZWeedQwDQYJKoZIhvcNAQEL BQAwETEPMA0GA1UEAxMGbWljYWRvMB4XDTE5MDEyNTE2MjAzMloXDTIwMDEyNTE2 MjEwMlowHDEaMBgGA1UEAxMRd29ya2Vybm9kZS5taWNhZG8wggEiMA0GCSqGSIb3 DQEBAQUAA4IBDwAwggEKAoIBAQCiKCQ4sdfsdfdsfsdfsfsmNMb7aUxn6rVDJFo5 dnQ5cgVagqomUUojYFq5FiXzekzUItzCt2ac8YbJT2V3kmRaCP3PAjk7uS/KXSxb 16SIMZF3JP4AQZXkTloKKSL2GCuPrULK8ZXhq50/eMb502LTvIWebjS4LUeSsq0U OCJNgwNvYvib9Q/ymzMWJqv2sFjQASEvnmAtERfhr9APFuY/mm5S9MSuC3SZ9t7j jj6R7l/HFNkEqFltWFo8RVVxRWA+XDUQf3CaCPh9OeU0NkE9Wq96PwIS3jL9FwQ5 nqc912MFmb6KevgdfgdfgdfggddgdgWSoJT+RaSCPWxmWQwbAgMBAAGjggEnMIIB IzAOBgNVHQ8BAf8EBAMCA6gwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC MB0GA1UdDgQWBBTkq4+xrl/ODW8rrp3BdTRw849a9jAfBgNVHSMEGDAWgBRbQpEM sHkbVhoSNGSHqhu+gJBgWTBRBggrBgEFBQcBAQRFMEMwQQYIKwYBBQUHMAKGNWh0 dHA6Ly9zZWN1cml0eV9wb2xpY3lfbWFuYWdlcjo1MDAzL3YxLjAvbm9kZWNlcnRz L2NhMBwGdsfsdfsdfBOCEXdvcmtlcm5vZGUubWljYWRvMEEGA1UdHwQ6MDgwNqA0 oDKGMGh0dHA6Ly9zZWN1cml0eV9wb2xpY3lfbWFuYWdlcjo1MDAzL3YxLjAvbm9k ZWNybDANBgkqhkiG9w0BAQsFAAOCAQEAtnBFseEJBzMGMuqRYeXa0rFGcZUXK4S8 HXvpGU95IX9ztzkjhjkhjkhjkhjkhrqdSk2Q3+GVy3mAGhRpdwwpY5fwlG6wBlOk 4iQOzMVzjYSwuXHlCwDlWEuNx3Kn9gBggtz+6Bc+Rs3o2y9L82O14fYBeDPKKh/1 /VBDvVnGlXjXy8FJWgp4ZFO4mtauq4SaQgC/77N/JOXh/cBwt84fgMM0UKplawwP V9Jh+Rujsdfsdfsdffsdfsfsdfsdf439Tgy9/7FID378ZoWRAHYkMljow+ZSt9pF +p7GR/BLA+vfcWV2482KeYmxJmaelGOghrdf+83I3tVpBsqXz2Or3Q== -----END CERTIFICATE-----

次の形式に変換する必要があります。

-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAoigkOEwqD/d5VsRgCZx8ZjTG+2lMZ+q1QyRaOXZ0OXIFWoKq
JlFKI2BauRYl83pM1CLcwrdmnPGGyU9ld5JkWgj9zwI5O7kvyl0sW9ekiDGRdyT+
AEGV5dsfdsfsdfsdfsdfsdfdsfsdf3jG+dNi07yFnm40uC1HkrKtFDgiTYMDb2L4
m/UP8pszFiar9rBY0AEhL55gLREX4a/QDxbmP5puUvTErgt0mfbe444+ke5fxxTZ
BKhZbVhaPEVVcUVgPlw1EH9wmgj4fTnlNDZBPVqvej8CEt4y/RcEOZ6nPddjBZm+
inr3QbOHc9bvUy5El8RlkqCU/kWkgj1sZlkMGwIDAQABAoIBAG3c6H1EDRN4Rbtl
nPOmFBpjE5VuiBsdfsdfsdfsdfsfdsfsdfsdfsdfsdfsdj+J0te/Lva1r04RzZJC
uqpCgr8FbIB+LyypkRl3+v/WoGCtxLKGW5js1pMyCorryAYX5huX9bLt7vBQh19j
gtvsPf7asWTfodROyTk42U7joUoFr4TiqBftjVGl3gLB1AidLMHukbiCgRoqGC3v
H80VAmc8bt8S4dsfsdfdsfsdfsdfsdfsdfsdfsdfsdfsdfsdffKd8KidzcBc6OnA
3OCAX8STj9NVm5a6X8pgWLl/bmnYhNR0ze6qvlQc6+QQcVIuKxOhmObtBsagnAHJ
eqr7FXECgYEAzy881viDqAmsbFC5BN/4GRdUK5nKWFbjD8bo8PbCFMh8Mb+K/GKc
dHhUZSMKGQ4u2NNI8fcnh3M0F2zdoaVqZndwr9GxMWyPoB+KBeelDFIWHcY7z55c
N2r4CRdsfdsfsdfsdfsdfsdfsdsfdsfbr3VdxT1tkbWIruIl+wisfwUCgYEAyFz2
xJRugSIBH89haeoHs4JqIKiuHm7+UHkawtfGqrg9jeJDfs7N4hlha5Wf7SDaXMAb
Rc8MJGpU/fH5bz/DgSi0ruRjaOs/Yglik4VcnLosM6mgVh5cGa96al2SbEEBck/Q
PFiKWbOI3J1npb5sy/0SNGZG8KzRvwkG2NqmCJ8CgYEAydrBEMSBKPd7yPAAwxIe
2vtSo0Qr01Ob16Q5EYOoZa1K6wEuPWUp/4O43ex8ixq5Y8C+ghgFqD8CkowbhsDt
4DUgUfwgAgI+EIiJ5eThdhaHu6yGW2pzd/6898ulDeowT7MKUO5C6BrWF3nCtKFE
ZDcaC/AkT2EpcRGeZWz2+q0CgYAS22z+I1ojHSgt7j6k0TnYUzXZzQZWJuwYds1l
+RjhiGWCrQDdNmsdfsdfsdfsdfsdfdsfdsfsdfsdfsdf2d50kXgv3Z7diQZ2G5wD
dlG5DmyKkDRe5oyUfkdvK09UkOmp8IkQpOSgfJ0s5kOS/dEPgcns1JNoo1s6N4dF
cY6e0QKBgQDNm1nhfPHzkLlYqvpa6k8dF+iHBz2vne3EZ9B6mXIJXTsCc0OwEusX
8zin8oMEBLcJCcH3kdLTnjdtiN7nxukUjaR48g/EiOtiQAxqT69bEiNzRB3o0pAC
f9NOiPKEnob2xeQYTptm4AlY/WblAyXbn6ZmzyIMf6mOTRdh2K07QQ==
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIID5DCCAsygAwIBAgIUNoBfD4EQB61SOlUZautwaZWeedQwDQYJKoZIhvcNAQEL
BQAwETEPMA0GA1UEAxMGbWljYWRvMB4XDTE5MDEyNTE2MjAzMloXDTIwMDEyNTE2
MjEwMlowHDEaMBgGA1UEAxMRd29ya2Vybm9kZS5taWNhZG8wggEiMA0GCSqGSIb3
DQEBAQUAA4IBDwAwggEKAodsfsdfdsfsfdsdfsdfsdfsdfdsfdssaUxn6rVDJFo5
dnQ5cgVagqomUUojYFq5FiXzekzUItzCt2ac8YbJT2V3kmRaCP3PAjk7uS/KXSxb
16SIMZF3JP4AQZXkTloKKSL2GCuPrULK8ZXhq50/eMb502LTvIWebjS4LUeSsq0U
OCJNgwNvYvib9Q/ymzMWJqv2sFjQASEvnmAtERfhr9APFuY/mm5S9MSuC3SZ9t7j
jj6R7l/HFNkEqFltWFo8RVVxRWA+XDUQf3CaCPh9OeU0NkE9Wq96PwIS3jL9FwQ5
nqc912MFmb6KevdBs4dz1u9TLkSXxGWSoJT+RaSCPWxmWQwbAgMBAAGjggEnMIIB
IzAOBgNVHQ8BAf8EBAMCA6gwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMC
MB0GA1UdDgQWBBTkq4+xrl/ODW8rrp3BdTRw849a9jAfBgNVHSMEGDAWgBRbQpEM
sHkbVhoSNGSHqhu+gJBgWTBRBggrBgEFBQcBAQRFMEMwQQYIKwYBBQUHMAKGNWh0
dHA6Ly9zZWN1cml0eV9wb2xpY3lfbWdsfdssdfdsfdsfdsdsfsdfsdffZWNlcnRz
L2NhMBwGA1UdEQQVMBOCEXdvcmtlcm5vZGUubWljYWRvMEEGA1UdHwQ6MDgwNqA0
oDKGMGh0dHA6Ly9zZWN1cml0eV9wb2xpY3lfbWFuYWdlcjo1MDAzL3YxLjAvbm9k
ZWNybDANBgkqhsdfsdfsdfsdfdsffQEAtnBFseEJBzMGMuqRYeXa0rFGcZUXK4S8
HXvpGU95IX988hlv6d4lKc9gEIFBZrqdSk2Q3+GVy3mAGhRpdwwpY5fwlG6wBlOk
4iQOzMVzjYSdsfdsfsdfsfsdfsfsdfdggtz+6Bc+Rs3o2y9L82O14fYBeDPKKh/1
/VBDvVnGlXjXy8FJWgp4Zfsdfdsfdsfsdfsdfsdfdsdsfddfsdsfsdf0UKplawwP
V9Jh+Ruj0Q1MVPjYisNypyZ5F/snO2v9Tgy9/7FID378ZoWRAHYkMljow+ZSt9pF
+p7GR/BLA+vfcWV2482KeYdsfsdfsdfdsfdsfdsfsdfsfd2Or3Q==
-----END CERTIFICATE-----

ベストアンサー1

delimiter='-{5}[^-]+-{5}'
key=1
crt=2

# get the key
grep -o -P "\\${delimiter}.*?${delimiter}" cert | cut -d $'\n' -f $key | fmt -w 64 > the.key

# get the certificate
grep -o -P "\\${delimiter}.*?${delimiter}" cert | cut -d $'\n' -f $crt | fmt -w 64 > the.crt

出力ファイルはthe.keythe.crt

.key私はあなたの意図がファイルを.crt隠すのではなく拡張することだと思います。

また、cert入力ファイルにキーと証明書が1行に含まれていますか?

おすすめ記事