NOTE that with Let's Encrypt, it's now possible for me to generate a free SSL cert for CarolinaCustom rather than paying for one thru rapidssl. Here is the website that I used to guide me thru this certificate generation: https://www.getssl.in/letsencrypt/ The following were the usual commands that I formerly used to generate a cert thru rapidssl. openssl genrsa -des3 -out carolinacustom.key 2048 openssl req -new -key carolinacustom.key -out carolinacustom.csr But now, here are the commands for the new Let's Encypt certification (4096 bit now instead of 2048) ---------------------------------------------------------------------------------------------------- Step 1: Account Info ---------------------------------------------------------------------------------------------------- How to generate a new account keypair using openssl: Generate an account private key if you don't have one: (KEEP ACCOUNT.KEY SECRET!) openssl genrsa 4096 > account.key Print your public key: openssl rsa -in account.key -pubout Copy and paste the public key into the box below. -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAzZXskdZncVnq2OptqRkr TiUFR58Ql3GW0o+mvLl/HP0/p32X7IUc8H7liC70Bg0WQSB01qtOAnq7KA9LtcIl hRHh4CHcMuoR6F1wUjL4Qd6g6SpjyXZeEAf5zuQwf+mROUqDbSHGRAAq5Yk3ydKb iySaO+SYBXx267/SDEfXfLdNZMlqhIW5lTvi0Ypuo0CGQmyJ565Tsg6aI6hXg1CF 12WdexHP6/xY3lhrJo3ymojCYsTUqQt4hNcIcnVvjc7rqorAEa7IFmpVGalGLump aWFmJqYm+LWnSaJS1mnPy1tuH72ABTatcjhopGs4ScR0fQrXrZmezWUSsV6q2BF3 LG/9J4cW+LsB6KOI0+oKoq5wUzzg8SooLzIcGnsukQs97FX3/cLlg1sfD4mmZLEL CDkYwFyt/TYFqZC6YO/pIhmH0bxQNVU34hT12S/bqkcleOAZbAzPE6ODLQRnNSYg ELXclrVJCiEHb05oITESLntC2Sc7Sk9sg/kPawBMdTV0KdpVsfRBCGJpckXPBC3b BmgFtxfuIjC6NCUNqfSMIApm8XpaVld/Ow3HFvoKqwNozziGJSU3Rlhg0IhOzwtF +A8kgevV6vFvVkLjyfun6RcUqVKbrjkiAjR6Z9ZjR1imsdpB5p3Es29PqGXFs5+g nygV5slyhlVJtu5Zp/lH7LUCAwEAAQ== -----END PUBLIC KEY----- ---------------------------------------------------------------------------------------------------- Step 2: Certificate Signing Request ---------------------------------------------------------------------------------------------------- How to generate a new Certificate Signing Request (CSR): Generate a TLS private key if you don't have one: (KEEP DOMAIN.KEY SECRET!) openssl genrsa 4096 > domain.key Generate a CSR for your the domains you want certs for: (replace "foo.com" with your domain) Linux: #change "/etc/ssl/openssl.cnf" as needed: # Debian: /etc/ssl/openssl.cnf # RHEL and CentOS: /etc/pki/tls/openssl.cnf # Mac OSX: /System/Library/OpenSSL/openssl.cnf openssl req -new -sha256 -key domain.key -subj "/" \ -reqexts SAN -config <(cat /etc/ssl/openssl.cnf \ <(printf "\n[SAN]\nsubjectAltName=DNS:foo.com,DNS:www.foo.com")) Copy and paste the CSR into the box below. -----BEGIN CERTIFICATE REQUEST----- MIIFBjCCAu4CAQAwgacxCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOQzEQMA4GA1UE BwwHQ2xpbnRvbjEfMB0GA1UECgwWd3d3LmNhcm9saW5hY3VzdG9tLmNvbTEUMBIG A1UECwwLZW5naW5lZXJpbmcxHzAdBgNVBAMMFnd3dy5jYXJvbGluYWN1c3RvbS5j b20xITAfBgkqhkiG9w0BCQEWEnNjZGVtYXJjQHlhaG9vLmNvbTCCAiIwDQYJKoZI hvcNAQEBBQADggIPADCCAgoCggIBAK6lVCI0eNx9zLvBp2pxPTmkl0AlPJ0vql3Q aA0J6SdL4BPYYLdI3jf2Tpp+/lg/a4Z+iHY+bT+MRX7q/HAQ/V9OWXfvz4qrrUX1 aSxkLXCqYh/SQ4bk31KONflIGtoIcNwJJI94H8YbyZnYQpmvlSuhf5eidk3mjapH pv9+bdmDQBT1uogs/3iKThtI6eqDirnKf+hlW07U9GUpcB5aSwi3Cv7c/weFw3oB DeMubroEa0x1g+lOukskt9yV8w3jhIdLrpWLFD6UOjYHP6r2CBsCvedOm8qXHq8c KKZmiqpn0dAk+wG3auJU1ME0e4XL6bDCrhiaAAGymJP6RuMpq9HMYjCplGnaH2wk Mo6owl/zRS6Xsln/O82SxkzUc1rkWEvvws5aR17E0z/srz9B8CJtb5FNrz41Voa7 dbSaQ2Kir/TT0a72K2j9ZjWim4YFq3uvZJEv0Tnx5Cs5GmUkEAfw17hYnTlMleyc xm8xWiBGa+QkBkRV6fGh09ZLEg1arHs6T1zycianEDMYJddrS+F0OFyhq8KMaWNS vut6/01dguyg7oax6xNoI+pxStTzkmVi1Ufmay3/4pOIKyWa/HLQIlP4kmoYnBIk mlRIMqSAN/Y1Y9BTHVph3KtFfe7Z88b1L2YQxbu8nw269cMO1oe8XH0SKjFTd0Bg S9oydFk7AgMBAAGgGTAXBgkqhkiG9w0BCQcxCgwIZDBnRVlFJCEwDQYJKoZIhvcN AQELBQADggIBAKsZPP4fcTI4YbK7neXH+ZhDp9rmeYmpyHGLRVxjOcrtA1cF9Qnc 5CI1CmqOeM0kYPM4fCvi3ItlQpcNyktDq1RpvneLBAea5vco6h1B+TNLU+AFFQOP rLpPc8Cjf3zj8EWQiLPKeUboDZwVGW45ZPXoSSZcBx4akELm6AujnTIIcv+J9dDG qybErYh+dR8mE45ha4uBlrJCK3JEgYaNEULk/q1wHND01snhEASSHuHEkJVyPCCG 4pdUUj1i/KPoxXacJdlLQWY/30ma+Z3BJoVFDHAEXt3/4QwVseKROz3gz8+NUOE1 h4mZxlw6uGHOoFqEh4T1YGrpqU+6sCoXDRwJhbVLe7n1HVsL5aRjMiwN0Kb0Nn2q oWY4FuWdyxG67kisnOXxahgncvr69JqjpMINbdzJDHax0m8jENkqxgLHklymWvzD RITZvHDIJhJvMABMbLZvYGmK6JByxCb98wjRKylb8eLkSdJRpJA286KQnGgQRNTh Uxcjlb1AUAb9fZfRh/r/RRzXik83FBJcSaNwpVEBU8uWE+tjxv2ubrc0JxaJ0EMR WFNGoC/zf7V7/XO7VUSlMHAo8dd/zvrQU4hYoyGPDen1rO0ZKbqdrt/toUSNSeWz FieQhkTdaiD2cg0radnlKfCx0FQvTi54ENzWepPIchQyHxBPW2uyNJ+G -----END CERTIFICATE REQUEST----- ---------------------------------------------------------------------------------------------------- Step 3: Sign API Requests (waiting...) ---------------------------------------------------------------------------------------------------- ACCEPT_TERMS: setenv PRIV_KEY ./account.key; echo -n "eyJ1cmwiOiJodHRwczovL2FjbWUtdjAyLmFwaS5sZXRzZW5jcnlwdC5vcmcvYWNtZS9uZXctYWNjdCIsImFsZyI6IlJTMjU2Iiwibm9uY2UiOiJDODc4Q05nS2llWlA1Rmh5bnEwak0xY3ZpNzZhYlZ5ZlhHU01DT2t5TV92bkdJdyIsImp3ayI6eyJlIjoiQVFBQiIsImt0eSI6IlJTQSIsIm4iOiJ6Wlhza2RabmNWbnEyT3B0cVJrclRpVUZSNThRbDNHVzBvLW12TGxfSFAwX3AzMlg3SVVjOEg3bGlDNzBCZzBXUVNCMDFxdE9BbnE3S0E5THRjSWxoUkhoNENIY011b1I2RjF3VWpMNFFkNmc2U3BqeVhaZUVBZjV6dVF3Zi1tUk9VcURiU0hHUkFBcTVZazN5ZEtiaXlTYU8tU1lCWHgyNjdfU0RFZlhmTGROWk1scWhJVzVsVHZpMFlwdW8wQ0dRbXlKNTY1VHNnNmFJNmhYZzFDRjEyV2RleEhQNl94WTNsaHJKbzN5bW9qQ1lzVFVxUXQ0aE5jSWNuVnZqYzdycW9yQUVhN0lGbXBWR2FsR0x1bXBhV0ZtSnFZbS1MV25TYUpTMW1uUHkxdHVINzJBQlRhdGNqaG9wR3M0U2NSMGZRclhyWm1leldVU3NWNnEyQkYzTEdfOUo0Y1ctTHNCNktPSTAtb0tvcTV3VXp6ZzhTb29MekljR25zdWtRczk3RlgzX2NMbGcxc2ZENG1tWkxFTENEa1l3Rnl0X1RZRnFaQzZZT19wSWhtSDBieFFOVlUzNGhUMTJTX2Jxa2NsZU9BWmJBelBFNk9ETFFSbk5TWWdFTFhjbHJWSkNpRUhiMDVvSVRFU0xudEMyU2M3U2s5c2dfa1Bhd0JNZFRWMEtkcFZzZlJCQ0dKcGNrWFBCQzNiQm1nRnR4ZnVJakM2TkNVTnFmU01JQXBtOFhwYVZsZF9PdzNIRnZvS3F3Tm96emlHSlNVM1JsaGcwSWhPend0Ri1BOGtnZXZWNnZGdlZrTGp5ZnVuNlJjVXFWS2JyamtpQWpSNlo5WmpSMWltc2RwQjVwM0VzMjlQcUdYRnM1LWdueWdWNXNseWhsVkp0dTVacF9sSDdMVSJ9fQ.eyJ0ZXJtc09mU2VydmljZUFncmVlZCI6dHJ1ZX0" | openssl dgst -sha256 -hex -sign $PRIV_KEY 240d55301a887f1af27f2673df718f9bc3938827750c509352f44833d7e99d32c0d81186ce8e469057b5cd2d35fd3c79b3a23a7cb55dd3e024e76a96b97a9f6f26b623150879a5613b16e28a6bc98ae9f67b3c6d09c7e65051450a7af866c46d2d7ea9fa63a3297c1eb97d203e0f107a0bdcf7b7f3b21bcfdc5c9ad2faebd61fa0969f62d31fc440f8c27c9f15fdecb97ef50b7e54420fb6406aea61a446140bb7f9fb2b7bd67c7c95449eb44130fbb8fee939a508bc5e44f1ec8602fefa12a2f734d97da497dd440e4e34e12cedddfb197325946c58b4bb7462c9577d0c826a45cc783e77c4fa1c3bed713874e972258f3bd69a3c8cf0307979a8cb56b1366ebd6f9ff8299d5524bde1ff0c836bde5c58baef6c61d27830f2f4fad25cbf988edd51ec1385ba8bcac915677b42b0f9f37987b67facc09f805fc385d8189f7f10ba8dcc31c8c606de63dca335453562f77daf91ce66a34ede3986e87c737b0bfe301c944bed1380f709ceae85642d63e434d81964cd35461727a5ad075fe9801c5fabcca8ca7e8619050d7d8ae18ee02e9e15d27b5b77fdaf2ebb1d79b93abcc1d0a1af2ccfc5f617f9bcf4c14ce95cf98170fe424f0da8eda79d4c951ca650c04eaf3c253e6ba27e8c53bd632441a2f7e5e722c743b04ce9789f8c7cec41cd9fed703f04122a48b3d40a383bf8d3c1612fb09a6ad574ae1e73055e35865e8889 UPDATE_ACCOUNT: echo -n "eyJ1cmwiOiJodHRwczovL2FjbWUtdjAyLmFwaS5sZXRzZW5jcnlwdC5vcmcvYWNtZS9hY2N0Lzg3NjA5NjAzNyIsImFsZyI6IlJTMjU2Iiwibm9uY2UiOiJDODc4aDhVVU1YY01oRlh2Vlhsa2dfVU9WblBwQnlhX3FhUDZENk90ZTUtVjR1YyIsImtpZCI6Imh0dHBzOi8vYWNtZS12MDIuYXBpLmxldHNlbmNyeXB0Lm9yZy9hY21lL2FjY3QvODc2MDk2MDM3In0.eyJjb250YWN0IjpbIm1haWx0bzpzY2RlbWFyY0B5YWhvby5jb20iXX0" | openssl dgst -sha256 -hex -sign $PRIV_KEY c9caf5482c6ad3b93e733d64dbdf0bd303e435914b19d364795e7e21513d631cf0659039a4e4f92ec5eb303bbf263f6c4d8aae6b97b79be922d0df79ab79700dcf572672dfd48dc12e05232a311d521b81f0f2678364a17a4b007970f12a51f9a6aad8a15c410d5a80aab8f92454ae969978fc4e80aabfc7259718067976b66e93994d76456bd25b64bad02b4d49d8e16a03f741aa16b9fcdd08b88dc9809a5dfccac35aa3cd7ce8f3351d71d5e3198eec8a8668a870af945e174d78913b71f514adce7e4f13f018e7b96f90d636404b1f784552b77d65b59277eee21625991ba74c95475951b3d7ce929349d665848660760688fe3931fa6ab438dc0e799a28abf846a094216929ecefc08be0993988a7e79fb7d57eb236f195cb0e7e9982d4cf6958eafebbdad1a2eb110693be25c6023337e158f4e22b60138f7a86745cea27b3d3fe6725e523529100c6118e5a984b55052cfcf81424df35d608cd4fc536802b1e340ceb3460b637c44d700faf57936266c1bd495306af93c0442fa5edf9a358fde647d20a57d469e7d3d405b81a2f8c8f0443d5fa00fc80668fb0604456586bf9c215c078f8893aee7dcbfb8381f2abe83a84e5628ac746f22d2d48ca17772c2aa54ae1057cee67f2d8b1fe4d9a988ba66fd88199866b9e3b8953240b4fd46100bc1751902a5bfc50e0e75d4f6a293aebba0ce4a4bdb89f8393a7c4b5a0 CREATE_ORDER: echo -n "eyJ1cmwiOiJodHRwczovL2FjbWUtdjAyLmFwaS5sZXRzZW5jcnlwdC5vcmcvYWNtZS9uZXctb3JkZXIiLCJhbGciOiJSUzI1NiIsIm5vbmNlIjoiQzg3OGdFQjN2dlZReU8wamc1TERTQWp3TUNEYUtxTXpoNTJGNkZCU3JBY2dsbmsiLCJraWQiOiJodHRwczovL2FjbWUtdjAyLmFwaS5sZXRzZW5jcnlwdC5vcmcvYWNtZS9hY2N0Lzg3NjA5NjAzNyJ9.eyJpZGVudGlmaWVycyI6W3sidHlwZSI6ImRucyIsInZhbHVlIjoid3d3LmNhcm9saW5hY3VzdG9tLmNvbSJ9XX0" | openssl dgst -sha256 -hex -sign $PRIV_KEY 791ec7cacc5e97acbd6415c316da52a92a10a10b429b8eb89f0187d169a6ff26d44adc3180f6616270b16603d71d56b5564da538c55081f964edf3ad7289f6e9e41d00c8bcdcadb2c3f235de73b057f307496eeb01646740dc86222dab2af4dc7a9692bc1569b5b5dd7de4aa6dd37422449432ad8c8e84eae694fe31990878c01ace780f66a4ec8ae12ce3de495f244212318fa82b1f198606c12d456781d44f6549dd614d67bb9bb3eed66e420ee7fd4dddf6e364aeeeb4d49f27bb71f69460949f77a36fc2e858a10df3a50603424ae2dffd4564781ca5e62ad49207bb5aa6937d37a6a7d1a29449fd88d650857513eb855cddd4cd5c41065d61a1aaf40f19540870df2bbf0a4b38de3877f572d55e6ddcd9a86baacc9bcdea82a1348c14466282d4ab8b4aede83f47cf16ca99a7ca850e8a1da7609ad0f4ccb942bf6d9319017187fb2d940e9f9f883b34571034137da21c31374564824b05769ef3ef5f07856ba031726d54c39679fa060fda784f8da7ead2aed5a81a811f57ff2709a3e6007512e02674238457609ccba0110cb583c2fe2289c8f82f8affca085f614af7b32f38cc1f6529af4d090b1f1ec1eb74fc9aede0565e28d26e187226d173578d1bb82a945c55f7ed145ea0579979a5736eb6dcd5c2377918b6798cdf2c30ff18ae7c516e313e57389ebdb88766d37355de1b88665fbb29e49aa92c2fa11f2ee3 ---------------------------------------------------------------------------------------------------- Step 4: Verify Ownership (waiting...) ---------------------------------------------------------------------------------------------------- python -c "import BaseHTTPServer; h = BaseHTTPServer.BaseHTTPRequestHandler; h.do_GET = lambda r: r.send_response(200) or r.end_headers() or r.wfile.write('hHKeEU4B1zluntzkoYg1wSQcIxqXx_vPnstS5kERJ3k.cuw6y89jy_bkaqf0VAsLFxUQiYpfAJYfImqTBNQ0NHU'); s = BaseHTTPServer.HTTPServer(('0.0.0.0', 80), h); s.serve_forever()" SIGN CHALLENGE COMMAND: setenv PRIV_KEY ./account.key; echo -n "eyJ1cmwiOiJodHRwczovL2FjbWUtdjAyLmFwaS5sZXRzZW5jcnlwdC5vcmcvYWNtZS9jaGFsbC12My8xODc4MzE1NjgyOTcvRE1XRkJnIiwiYWxnIjoiUlMyNTYiLCJub25jZSI6IjM3MUNMWkU0MzZYbkVvOHMtOHJ3bVptRWRqczM2YkduSnd2eFh6dzNIX2dzUjVRIiwia2lkIjoiaHR0cHM6Ly9hY21lLXYwMi5hcGkubGV0c2VuY3J5cHQub3JnL2FjbWUvYWNjdC84NzYwOTYwMzcifQ.e30" | openssl dgst -sha256 -hex -sign $PRIV_KEY 37fc9fdc01b0ba0199f948e6e914cc0a934697dde0b36fc7d278f7b6b58567f91889e35af4a65a13c4d14913ec2b17d0f97afb9aa0a8e8bcaf88b98024c7cd4dbd476f26776efdd95917899e83d7daed4f4c5d302313beda888fe5a7a95264e4cb5621764add287e77abf79b2db93d6b28452f1356a2b8b3a18649b9884127fbca7998e877909eb807c66b7a140d05d69454d00fab8674bf4849cb2cd967259a20351c9c740d28814e168434ddababd9a9d73294dbd2a98196550c848fe13bce62c2cd3f9def59a3dcea4306352096d5b0a132c92c2c63d785cff07d82e42b048fa4432880323fa2d58c9562f42b7ed21db0a192b3339b476107db69976ae1e59830ff1fe6b89a597bb5047de12bb740474c20d1465b06f8be1dda0696c4c6722bd9188f81b5c7c34a7ef3527f9a0201b97def73407aff47b5ef9ba70e8f7db0fb5f8175d2af0fc2ec64bde4efeb247084d56d1a5b00ff2a8bcf7bbf1368a323c26a06b9d52951fc066abb782a5ad9d58af812cc5aca34d4ad5536a637c921e0b9ecb997a563fd9080a27e281d77802b1c790bcb8a493fe6d0ee197ce0036c09e95852867618f1c1013fc41a6fe8b21f8386dcdd3a0a64305c0b22f49af5dfe8348d9c3c11954b9ac69716685556b1aa76ca435f5c214ebdb0b4ae8a77035ac0634fe99165b047de69de31e1ce34f6f69fd2c7884ed2987a0eca58a680ea4cbf FINALIZE ORDER: echo -n "eyJ1cmwiOiJodHRwczovL2FjbWUtdjAyLmFwaS5sZXRzZW5jcnlwdC5vcmcvYWNtZS9maW5hbGl6ZS84NzYwOTYwMzcvMTUzMzQwODY2NzA3IiwiYWxnIjoiUlMyNTYiLCJub25jZSI6IkM4NzhJSlRidWE5V1NUVV9jM0ZrY1ZteE1KMVZ6TUVLTkdCbzBsWVBNcEtXYU00Iiwia2lkIjoiaHR0cHM6Ly9hY21lLXYwMi5hcGkubGV0c2VuY3J5cHQub3JnL2FjbWUvYWNjdC84NzYwOTYwMzcifQ.eyJjc3IiOiJNSUlGQmpDQ0F1NENBUUF3Z2FjeEN6QUpCZ05WQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpPUXpFUU1BNEdBMVVFQnd3SFEyeHBiblJ2YmpFZk1CMEdBMVVFQ2d3V2QzZDNMbU5oY205c2FXNWhZM1Z6ZEc5dExtTnZiVEVVTUJJR0ExVUVDd3dMWlc1bmFXNWxaWEpwYm1jeEh6QWRCZ05WQkFNTUZuZDNkeTVqWVhKdmJHbHVZV04xYzNSdmJTNWpiMjB4SVRBZkJna3Foa2lHOXcwQkNRRVdFbk5qWkdWdFlYSmpRSGxoYUc5dkxtTnZiVENDQWlJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dJUEFEQ0NBZ29DZ2dJQkFLNmxWQ0kwZU54OXpMdkJwMnB4UFRta2wwQWxQSjB2cWwzUWFBMEo2U2RMNEJQWVlMZEkzamYyVHBwLV9sZ19hNFotaUhZLWJULU1SWDdxX0hBUV9WOU9XWGZ2ejRxcnJVWDFhU3hrTFhDcVloX1NRNGJrMzFLT05mbElHdG9JY053SkpJOTRIOFlieVpuWVFwbXZsU3VoZjVlaWRrM21qYXBIcHY5LWJkbURRQlQxdW9nc18zaUtUaHRJNmVxRGlybktmLWhsVzA3VTlHVXBjQjVhU3dpM0N2N2Nfd2VGdzNvQkRlTXVicm9FYTB4MWctbE91a3NrdDl5Vjh3M2poSWRMcnBXTEZENlVPallIUDZyMkNCc0N2ZWRPbThxWEhxOGNLS1ptaXFwbjBkQWstd0czYXVKVTFNRTBlNFhMNmJEQ3JoaWFBQUd5bUpQNlJ1TXBxOUhNWWpDcGxHbmFIMndrTW82b3dsX3pSUzZYc2xuX084MlN4a3pVYzFya1dFdnZ3czVhUjE3RTB6X3NyejlCOENKdGI1Rk5yejQxVm9hN2RiU2FRMktpcl9UVDBhNzJLMmo5WmpXaW00WUZxM3V2WkpFdjBUbng1Q3M1R21Va0VBZncxN2hZblRsTWxleWN4bTh4V2lCR2EtUWtCa1JWNmZHaDA5WkxFZzFhckhzNlQxenljaWFuRURNWUpkZHJTLUYwT0Z5aHE4S01hV05TdnV0Nl8wMWRndXlnN29heDZ4Tm9JLXB4U3RUemttVmkxVWZtYXkzXzRwT0lLeVdhX0hMUUlsUDRrbW9ZbkJJa21sUklNcVNBTl9ZMVk5QlRIVnBoM0t0RmZlN1o4OGIxTDJZUXhidThudzI2OWNNTzFvZThYSDBTS2pGVGQwQmdTOW95ZEZrN0FnTUJBQUdnR1RBWEJna3Foa2lHOXcwQkNRY3hDZ3dJWkRCblJWbEZKQ0V3RFFZSktvWklodmNOQVFFTEJRQURnZ0lCQUtzWlBQNGZjVEk0WWJLN25lWEgtWmhEcDlybWVZbXB5SEdMUlZ4ak9jcnRBMWNGOVFuYzVDSTFDbXFPZU0wa1lQTTRmQ3ZpM0l0bFFwY055a3REcTFScHZuZUxCQWVhNXZjbzZoMUItVE5MVS1BRkZRT1ByTHBQYzhDamYzemo4RVdRaUxQS2VVYm9EWndWR1c0NVpQWG9TU1pjQng0YWtFTG02QXVqblRJSWN2LUo5ZERHcXliRXJZaC1kUjhtRTQ1aGE0dUJsckpDSzNKRWdZYU5FVUxrX3Exd0hORDAxc25oRUFTU0h1SEVrSlZ5UENDRzRwZFVVajFpX0tQb3hYYWNKZGxMUVdZXzMwbWEtWjNCSm9WRkRIQUVYdDNfNFF3VnNlS1JPejNnejgtTlVPRTFoNG1aeGx3NnVHSE9vRnFFaDRUMVlHcnBxVS02c0NvWERSd0poYlZMZTduMUhWc0w1YVJqTWl3TjBLYjBObjJxb1dZNEZ1V2R5eEc2N2tpc25PWHhhaGduY3ZyNjlKcWpwTUlOYmR6SkRIYXgwbThqRU5rcXhnTEhrbHltV3Z6RFJJVFp2SERJSmhKdk1BQk1iTFp2WUdtSzZKQnl4Q2I5OHdqUkt5bGI4ZUxrU2RKUnBKQTI4NktRbkdnUVJOVGhVeGNqbGIxQVVBYjlmWmZSaF9yX1JSelhpazgzRkJKY1NhTndwVkVCVTh1V0UtdGp4djJ1YnJjMEp4YUowRU1SV0ZOR29DX3pmN1Y3X1hPN1ZVU2xNSEFvOGRkX3p2clFVNGhZb3lHUERlbjFyTzBaS2JxZHJ0X3RvVVNOU2VXekZpZVFoa1RkYWlEMmNnMHJhZG5sS2ZDeDBGUXZUaTU0RU56V2VwUEljaFF5SHhCUFcydXlOSi1HIn0" | openssl dgst -sha256 -hex -sign $PRIV_KEY 4470850435e70f2f7746cf8da8235e02605857561feb14796377385ddd5a998e1d4ef0cad1df55173ec7a57345911c86cc99bf314b61b1e9cc6790292672ca36b134de1490e1a76129b771f1be6dbb1c2c7af48f4abce7c3967041c6d8caf487b51a80f1178c644657a109b34f3307c15af5324df6ae24b30d078ac76bf8513f4cb58610646a55493c1e51d35f82cc0730dc20ff5ed10c394901090dde3aa088f6e12da1278ffe96cf9857e9dbcb78ec47fa75281dceb2ffe1b89ece90bb99d7dab2d72479ad1b570f594c6c764e6868d952825890fa884d69515723779970d60b99b3ddf8fcf9a6732db89c82309923f582943935f03da718741ce0efbec2903dd57b05ed3ce480124e38386a369bec89c3528ce1a67b708792e4ef80475eb331d089e5155d7923fbd77a91845a93de796c03eabb21496efe63f271eece85d62402ba554696feba20c62b0bfb92a907938be3ef4fd86935f3ee354a0773903aa9ba6c8a8544ef1e2d9798a4c1d43262ebc1e9163371aa7844ee8a03108658421f08588fb1bb017fe46bf2739fef1014c36d181e52ca1b9454a405a9291f57f1cf49e6612f69861cb980248a949a938dec978a14e603382e8a17e15053f51dbbb37493f13b80d68a436a5550d62d8a1c37a72b6d8480f67dc3bb6526e0197f579a6f3fb1580baf2bf3dc23b2606f45356ced9e3c62b787ead795fd896a6eefcf ---------------------------------------------------------------------------------------------------- Step 5: Install Certificate (waiting...) ---------------------------------------------------------------------------------------------------- -----BEGIN CERTIFICATE----- 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 Et8sdBdv -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFFjCCAv6gAwIBAgIRAJErCErPDBinU/bWLiWnX1owDQYJKoZIhvcNAQELBQAw TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjAwOTA0MDAwMDAw WhcNMjUwOTE1MTYwMDAwWjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg RW5jcnlwdDELMAkGA1UEAxMCUjMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK AoIBAQC7AhUozPaglNMPEuyNVZLD+ILxmaZ6QoinXSaqtSu5xUyxr45r+XXIo9cP R5QUVTVXjJ6oojkZ9YI8QqlObvU7wy7bjcCwXPNZOOftz2nwWgsbvsCUJCWH+jdx sxPnHKzhm+/b5DtFUkWWqcFTzjTIUu61ru2P3mBw4qVUq7ZtDpelQDRrK9O8Zutm NHz6a4uPVymZ+DAXXbpyb/uBxa3Shlg9F8fnCbvxK/eG3MHacV3URuPMrSXBiLxg Z3Vms/EY96Jc5lP/Ooi2R6X/ExjqmAl3P51T+c8B5fWmcBcUr2Ok/5mzk53cU6cG /kiFHaFpriV1uxPMUgP17VGhi9sVAgMBAAGjggEIMIIBBDAOBgNVHQ8BAf8EBAMC AYYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMBIGA1UdEwEB/wQIMAYB Af8CAQAwHQYDVR0OBBYEFBQusxe3WFbLrlAJQOYfr52LFMLGMB8GA1UdIwQYMBaA FHm0WeZ7tuXkAXOACIjIGlj26ZtuMDIGCCsGAQUFBwEBBCYwJDAiBggrBgEFBQcw AoYWaHR0cDovL3gxLmkubGVuY3Iub3JnLzAnBgNVHR8EIDAeMBygGqAYhhZodHRw Oi8veDEuYy5sZW5jci5vcmcvMCIGA1UdIAQbMBkwCAYGZ4EMAQIBMA0GCysGAQQB gt8TAQEBMA0GCSqGSIb3DQEBCwUAA4ICAQCFyk5HPqP3hUSFvNVneLKYY611TR6W PTNlclQtgaDqw+34IL9fzLdwALduO/ZelN7kIJ+m74uyA+eitRY8kc607TkC53wl ikfmZW4/RvTZ8M6UK+5UzhK8jCdLuMGYL6KvzXGRSgi3yLgjewQtCPkIVz6D2QQz CkcheAmCJ8MqyJu5zlzyZMjAvnnAT45tRAxekrsu94sQ4egdRCnbWSDtY7kh+BIm lJNXoB1lBMEKIq4QDUOXoRgffuDghje1WrG9ML+Hbisq/yFOGwXD9RiX8F6sw6W4 avAuvDszue5L3sz85K+EC4Y/wFVDNvZo4TYXao6Z0f+lQKc0t8DQYzk1OXVu8rp2 yJMC6alLbBfODALZvYH7n7do1AZls4I9d1P4jnkDrQoxB3UqQ9hVl3LEKQ73xF1O yK5GhDDX8oVfGKF5u+decIsH4YaTw7mP3GFxJSqv3+0lUFJoi5Lc5da149p90Ids hCExroL1+7mryIkXPeFM5TgO9r0rvZaBFOvV2z0gp35Z0+L4WPlbuEjN/lxPFin+ HlUjr8gRsI3qfJOQFy/9rKIJR0Y/8Omwt/8oTWgy1mdeHmmjk7j1nYsvC9JSQ6Zv MldlTTKB3zhThV1+XWYp6rjd5JW1zbVWEkLNxE7GJThEUG3szgBVGP7pSWTUTsqX nLRbwHOoq7hHwg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFYDCCBEigAwIBAgIQQAF3ITfU6UK47naqPGQKtzANBgkqhkiG9w0BAQsFADA/ MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT DkRTVCBSb290IENBIFgzMB4XDTIxMDEyMDE5MTQwM1oXDTI0MDkzMDE4MTQwM1ow TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwggIiMA0GCSqGSIb3DQEB AQUAA4ICDwAwggIKAoICAQCt6CRz9BQ385ueK1coHIe+3LffOJCMbjzmV6B493XC ov71am72AE8o295ohmxEk7axY/0UEmu/H9LqMZshftEzPLpI9d1537O4/xLxIZpL wYqGcWlKZmZsj348cL+tKSIG8+TA5oCu4kuPt5l+lAOf00eXfJlII1PoOK5PCm+D LtFJV4yAdLbaL9A4jXsDcCEbdfIwPPqPrt3aY6vrFk/CjhFLfs8L6P+1dy70sntK 4EwSJQxwjQMpoOFTJOwT2e4ZvxCzSow/iaNhUd6shweU9GNx7C7ib1uYgeGJXDR5 bHbvO5BieebbpJovJsXQEOEO3tkQjhb7t/eo98flAgeYjzYIlefiN5YNNnWe+w5y sR2bvAP5SQXYgd0FtCrWQemsAXaVCg/Y39W9Eh81LygXbNKYwagJZHduRze6zqxZ Xmidf3LWicUGQSk+WT7dJvUkyRGnWqNMQB9GoZm1pzpRboY7nn1ypxIFeFntPlF4 FQsDj43QLwWyPntKHEtzBRL8xurgUBN8Q5N0s8p0544fAQjQMNRbcTa0B7rBMDBc SLeCO5imfWCKoqMpgsy6vYMEG6KDA0Gh1gXxG8K28Kh8hjtGqEgqiNx2mna/H2ql PRmP6zjzZN7IKw0KKP/32+IVQtQi0Cdd4Xn+GOdwiK1O5tmLOsbdJ1Fu/7xk9TND TwIDAQABo4IBRjCCAUIwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYw SwYIKwYBBQUHAQEEPzA9MDsGCCsGAQUFBzAChi9odHRwOi8vYXBwcy5pZGVudHJ1 c3QuY29tL3Jvb3RzL2RzdHJvb3RjYXgzLnA3YzAfBgNVHSMEGDAWgBTEp7Gkeyxx +tvhS5B1/8QVYIWJEDBUBgNVHSAETTBLMAgGBmeBDAECATA/BgsrBgEEAYLfEwEB ATAwMC4GCCsGAQUFBwIBFiJodHRwOi8vY3BzLnJvb3QteDEubGV0c2VuY3J5cHQu b3JnMDwGA1UdHwQ1MDMwMaAvoC2GK2h0dHA6Ly9jcmwuaWRlbnRydXN0LmNvbS9E U1RST09UQ0FYM0NSTC5jcmwwHQYDVR0OBBYEFHm0WeZ7tuXkAXOACIjIGlj26Ztu MA0GCSqGSIb3DQEBCwUAA4IBAQAKcwBslm7/DlLQrt2M51oGrS+o44+/yQoDFVDC 5WxCu2+b9LRPwkSICHXM6webFGJueN7sJ7o5XPWioW5WlHAQU7G75K/QosMrAdSW 9MUgNTP52GE24HGNtLi1qoJFlcDyqSMo59ahy2cI2qBDLKobkx/J3vWraV0T9VuG WCLKTVXkcGdtwlfFRjlBz4pYg1htmf5X6DYO8A4jqv2Il9DjXA6USbW1FzXSLr9O he8Y4IWS6wY7bCkjCWDcRQJMEhg76fsO3txE+FiYruq9RUWhiF1myv4Q6W+CyBFC Dfvp7OOGAN6dEOM4+qR9sdjoSYKEBpsr6GtPAQw4dy753ec5 -----END CERTIFICATE----- ---------------------------------------------------------------------------------------------------- additional FYI for debug ---------------------------------------------------------------------------------------------------- cp -a /home/scdemarc/www/ssl_cert/lets_encrypt/2022_12_17/domain.crt /usr/local/apache/conf/ssl.crt/carolinacustom.crt cp -a /home/scdemarc/www/ssl_cert/lets_encrypt/2022_12_17/domain.key /usr/local/apache/conf/ssl.key/carolinacustom.key If you see the following when you try to restart Apache, then it might be because you forgot to the Python simple server above from step-4 (98)Address already in use: make_sock: could not bind to address [::]:80