• Let’s Encrypt i mamy darmowego SSL-a

    dodany przez Przemysław Sikora

    Coraz częściej mówi się, że wszystko co przesyłamy przez sieć, czy to Internet, czy LAN, powinno być szyfrowane. Wiele w tym prawdy, ponieważ bezpieczeństwo danych to chyba rzecz najważniejsza w biznesie. Najprostszą metodą zapewnienia bezpieczeństwa/prywatności transmisji danych, jest zastosowanie certyfikatu SSL. Nie jest to drogie, a dzięki Let-s Encrypt nawet darmowe.

    Poniżej krok po kroku jak zdobyć nasz pierwszy darmowy certyfikat w systemie CentOS 6, korzystając z Apache.

    wget https://dl.eff.org/certbot-auto
    chmod a+x certbot-auto
    ./certbot-auto

    Efekt poniżej:
    Bootstrapping dependencies for RedHat-based OSes...
    yum jest /usr/bin/yum
    Wczytane wtyczki: fastestmirror
    Ustawianie procesu instalacji
    Loading mirror speeds from cached hostfile
    * base: centos2.hti.pl
    * epel: ftp.icm.edu.pl
    * extras: mirror.onet.pl
    * updates: ftp.icm.edu.pl
    Pakiet gcc-4.4.7-17.el6.x86_64 jest już zainstalowany w najnowszej wersji
    Pakiet openssl-1.0.1e-48.el6_8.3.x86_64 jest już zainstalowany w najnowszej wersji
    Pakiet openssl-devel-1.0.1e-48.el6_8.3.x86_64 jest już zainstalowany w najnowszej wersji
    Pakiet redhat-rpm-config-9.0.3-51.el6.centos.noarch jest już zainstalowany w najnowszej wersji
    Pakiet ca-certificates-2015.2.6-65.0.1.el6_7.noarch jest już zainstalowany w najnowszej wersji
    Pakiet python-2.6.6-66.el6_8.x86_64 jest już zainstalowany w najnowszej wersji
    Rozwiązywanie zależności
    --> Wykonywanie sprawdzania transakcji
    ---> Package augeas-libs.x86_64 0:1.0.0-10.el6 will be zainstalowany
    ---> Package dialog.x86_64 0:1.1-9.20080819.1.el6 will be zainstalowany
    ---> Package libffi-devel.x86_64 0:3.0.5-3.2.el6 will be zainstalowany
    ---> Package mod_ssl.x86_64 1:2.2.15-55.el6.centos.2 will be zainstalowany
    --> Przetwarzanie zależności: httpd = 2.2.15-55.el6.centos.2 dla pakietu: 1:mod_ssl-2.2.15-55.el6.centos.2.x86_64
    ---> Package python-devel.x86_64 0:2.6.6-66.el6_8 will be zainstalowany
    ---> Package python-pip.noarch 0:7.1.0-1.el6 will be zainstalowany
    --> Przetwarzanie zależności: python-setuptools dla pakietu: python-pip-7.1.0-1.el6.noarch
    ---> Package python-tools.x86_64 0:2.6.6-66.el6_8 will be zainstalowany
    --> Przetwarzanie zależności: tkinter = 2.6.6-66.el6_8 dla pakietu: python-tools-2.6.6-66.el6_8.x86_64
    ---> Package python-virtualenv.noarch 0:1.10.1-1.el6 will be zainstalowany
    --> Wykonywanie sprawdzania transakcji
    ---> Package httpd.x86_64 0:2.2.15-54.el6.centos will be zaktualizowany
    ---> Package httpd.x86_64 0:2.2.15-55.el6.centos.2 will be an update
    --> Przetwarzanie zależności: httpd-tools = 2.2.15-55.el6.centos.2 dla pakietu: httpd-2.2.15-55.el6.centos.2.x86_64
    ---> Package python-setuptools.noarch 0:0.6.10-3.el6 will be zainstalowany
    ---> Package tkinter.x86_64 0:2.6.6-66.el6_8 will be zainstalowany
    --> Przetwarzanie zależności: libTix.so()(64bit) dla pakietu: tkinter-2.6.6-66.el6_8.x86_64
    --> Wykonywanie sprawdzania transakcji
    ---> Package httpd-tools.x86_64 0:2.2.15-54.el6.centos will be zaktualizowany
    ---> Package httpd-tools.x86_64 0:2.2.15-55.el6.centos.2 will be an update
    ---> Package tix.x86_64 1:8.4.3-5.el6 will be zainstalowany
    --> Ukończono rozwiązywanie zależności

    Rozwiązano zależności

    ======================================================================================================================================================================================================================
    Pakiet Architektura Wersja Repozytorium Rozmiar
    ======================================================================================================================================================================================================================
    Instalowanie:
    augeas-libs x86_64 1.0.0-10.el6 base 314 k
    dialog x86_64 1.1-9.20080819.1.el6 base 197 k
    libffi-devel x86_64 3.0.5-3.2.el6 base 18 k
    mod_ssl x86_64 1:2.2.15-55.el6.centos.2 updates 97 k
    python-devel x86_64 2.6.6-66.el6_8 updates 173 k
    python-pip noarch 7.1.0-1.el6 epel 1.5 M
    python-tools x86_64 2.6.6-66.el6_8 updates 871 k
    python-virtualenv noarch 1.10.1-1.el6 epel 1.3 M
    Instalowanie, aby rozwiązać zależności:
    python-setuptools noarch 0.6.10-3.el6 base 336 k
    tix x86_64 1:8.4.3-5.el6 base 252 k
    tkinter x86_64 2.6.6-66.el6_8 updates 258 k
    Aktualizowanie, aby rozwiązać zależności:
    httpd x86_64 2.2.15-55.el6.centos.2 updates 834 k
    httpd-tools x86_64 2.2.15-55.el6.centos.2 updates 79 k

    Podsumowanie transakcji
    ======================================================================================================================================================================================================================
    Instalacja 11 pakiet(y)
    Aktualizacja 2 pakiet(y)

    Całkowity rozmiar pobierania: 6.1 M
    W porządku? [t/N]:t

    Ukończono.
    Creating virtual environment…
    Installing Python packages…
    Installation succeeded.
    Saving debug log to /var/log/letsencrypt/letsencrypt.log

    Instalator potrafi wykryć jakie mamy vhosty i powinien dać nam wybór dla którego chcemy wygenerować certyfikat.

    Which names would you like to activate HTTPS for?
    -------------------------------------------------------------------------------
    1: centos.com.pl
    -------------------------------------------------------------------------------
    Select the appropriate numbers separated by commas and/or spaces, or leave input
    blank to select all options shown (Enter 'c' to cancel):

    Możemy ustawić, czy ma być aktywne bezwzględne przekierowanie na https.
    Please choose whether HTTPS access is required or optional.
    -------------------------------------------------------------------------------
    1: Easy - Allow both HTTP and HTTPS access to these sites
    2: Secure - Make all requests redirect to secure HTTPS access

    Congratulations! You have successfully enabled https://centos.com.pl

    You should test your configuration at:
    https://www.ssllabs.com/ssltest/analyze.html?d=mail.specadmin.net
    ——————————————————————————-

    IMPORTANT NOTES:
    – Congratulations! Your certificate and chain have been saved at
    /etc/letsencrypt/live/centos.com.pl/fullchain.pem. Your cert
    will expire on 2017-05-17. To obtain a new or tweaked version of
    this certificate in the future, simply run certbot-auto again with
    the „certonly” option. 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

    Tutaj mamy nasz certyfikat SSL oraz RootCA -> /etc/letsencrypt/live/centos.com.pl/fullchain.pem
    Tutaj zaś nasz klucz -> /etc/letsencrypt/live/centos.com.pl/privkey.pem

     

    Teraz czas na CentOS 7 i nginx

     

    W przypadku konkurencyjnego webservera dla Apache, tj, Nginx, musimy dodać poniższy wpis dla naszego vhosta w sekcji server.
    location ~ /.well-known {
    allow all;
    }

    i zrestartować nginx-a oczywiście.

    systemctl restart nginx

    a następnie przystępujemy do instalacji certbot-a.

    yum install python-certbot certbot

    i generowania certyfikatu

    letsencrypt certonly -a webroot --webroot-path=/var/www/html -d nasza-domena.pl

    Saving debug log to /var/log/letsencrypt/letsencrypt.log
    Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
    Obtaining a new certificate
    Performing the following challenges: http-01 challenge for nasza-domena.pl

    Using the webroot path /var/www/html for all unmatched domains. │
    Waiting for verification…
    Cleaning up challenges
    Generating key (2048 bits): /etc/letsencrypt/keys/0002_key-certbot.pem
    Creating CSR: /etc/letsencrypt/csr/0002_csr-certbot.pem

    IMPORTANT NOTES:
    – Congratulations! Your certificate and chain have been saved at
    /etc/letsencrypt/live/nasza-domena.pl/fullchain.pem. Your
    cert will expire on 2017-03-23. To obtain a new or tweaked version
    of this certificate in the future, simply run certbot again. To
    non-interactively renew *all* of your certificates, run „certbot
    renew”
    – If you lose your account credentials, you can recover through
    e-mails sent to kontakt@centos.com.pl.
    – Your account credentials have been saved in your Certbot
    configuration directory at /etc/letsencrypt. You should make a
    secure backup of this folder now. This configuration directory will
    also contain certificates and private keys obtained by Certbot so
    making regular backups of this folder is ideal.
    – 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

    Tutaj mamy nasz certyfikat SSL oraz RootCA -> /etc/letsencrypt/live/nasza-domena.pl/fullchain.pem
    Tutaj zaś nasz klucz -> /etc/letsencrypt/live/nasza-domena.pl/privkey.pem

    Pamiętajmy, że wygenerowane certyfikat są ważne przez trzy miesiące, a nie rok jak zazwyczaj. Co do przedłużenia, to …… ciąg dalszy nastąpi 🙂

Dodaj komentarz

Warto odwiedzić
Valid XHTML 1.0 Transitional centos.com.pl- mapa strony