SSL сертификат Let’s Encrypt для https вручную.

Let’s Encrypt – это центр сертификации который предоставляет сертификаты бесплатно. Выданный сертификат действует в течении трех месяцев.

На хостинге SpaceWeb, на котором находится этот сайт, установка сертификата возможна только путем загрузки файлов сертификата, через специальную форму в панели управления.

Чтобы сгенерировать сертификат нужно воспользоваться инструкцией с сайта https://certbot.eff.org/all-instructions/. Как пишут в инструкциях, установка и продление сертификата может происходить в автоматическом режиме. Но для этого нужен shell доступ к серверу. В моем случае такого доступа нет, есть возможность устанавливать сертификат через форму. Поэтому буду генерировать и устанавливать сертификат вручную, каждые три месяца.

Для этого нам нужен линукс.
Устанавливаем certbot.

    wget https://dl.eff.org/certbot-auto

Делаем исполняемым

    chmod a+x certbot-auto

Теперь запускаем

    ./certbot-auto certonly --manual

Вводим пароль

    igy@IGY-COMP:~/goodigy$ ./certbot-auto certonly --manual
    Requesting root privileges to run certbot...
      /home/igy/.local/share/letsencrypt/bin/letsencrypt certonly --manual
    [sudo] password for igy:

Вводим название доменного имени

certbot1

Соглашаемся

certbot2

Далее будет такой вывод

    Make sure your web server displays the following content at
    https://goodigy.ru/.well-known/acme-challenge/Ifo8D9F7lSDUmscn0u9kFluPaL2yRSwZb5VaqHk1S4E before continuing:
    
    Ifo8D9F7lSDUmscn0u9kFluPaL2yRSwZb5VaqHk1S4E.tWHfAVZH3lo0KtswKbFfTFoemZaLFJvU28lAWz_3sFk
    
    If you don''t have HTTP server configured, you can run the following
    command on the target server (as root):
    
    mkdir -p /tmp/certbot/public_html/.well-known/acme-challenge
    cd /tmp/certbot/public_html
    printf "%s" Ifo8D9F7lSDUmscn0u9kFluPaL2yRSwZb5VaqHk1S4E.tWHfAVZH3lo0KtswKbFfTFoemZaLFJvU28lAWz_3sFk > .well-known/acme-challenge/Ifo8D9F7lSDUmscn0u9kFluPaL2yRSwZb5VaqHk1S4E
    # run only once per server:
    $(command -v python2 || command -v python2.7 || command -v python2.6) -c \
    "import BaseHTTPServer, SimpleHTTPServer; \
    s = BaseHTTPServer.HTTPServer(('', 80), SimpleHTTPServer.SimpleHTTPRequestHandler); \
    s.serve_forever()"
    Press ENTER to continue

Поле этого нужно зайти на хостинг и файл, который должен быть доступен по такой ссылке

    https://goodigy.ru/.well-known/acme-challenge/ Ifo8D9F7lSDUmscn0u9kFluPaL2yRSwZb5VaqHk1S4E

Со следующим содержимым:

    Ifo8D9F7lSDUmscn0u9kFluPaL2yRSwZb5VaqHk1S4E.tWHfAVZH3lo0KtswKbFfTFoemZaLFJvU28lAWz_3sFk

Попробовать перейти по ссылке. Если доступа нет, то нужно открыть временный доступ, например, в .htaccess, после можно будет отключить.

Переходим в терминал, нажимаем Enter и ждем.

После того как программа отработает, будет такой вывод

    IMPORTANT NOTES:
     - Congratulations! Your certificate and chain have been saved at
       /etc/letsencrypt/live/goodigy.ru/fullchain.pem. Your cert will
       expire on 2017-03-05. To obtain a new or tweaked version of this
       certificate in the future, simply run certbot-auto again. To
       non-interactively renew *all* of your certificates, run
       "certbot-auto renew"
     - If you like Certbot, please consider supporting our work by:
    
       Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
       Donating to EFF:                    https://eff.org/donate-le

В папке /etc/letsencrypt/live/goodigy.ru/ будут лежать файлы сертификата.

    cert.pem  
    chain.pem  
    fullchain.pem  
    privkey.pem

Для загрузки, на хостинге SpaceWeb мне понадобилось два файла cert.pem и privkey.pem.