Ако сте прочели много статии относно съветите за поверителност, със сигурност ще намерите среща, която ви моли да инсталирате разширението "HTTPS навсякъде", така че автоматично да ви пренасочва към версията HTTPS на уебсайта, когато е възможно . Лошото е, че разширението HTTPS навсякъде работи само когато уебсайтът, който посещавате, е внедрил SSL и за повечето уеб администратори това може да бъде трудна (и скъпа) задача само по себе си. За щастие, благодарение на функцията "Нека да шифроваме", е по-лесно за уеб администраторите да добавят SSL сертификати към своите сайтове сега.

В миналото (и понастоящем), създаването на сертификат за SSL изисква първо да генерирате частен ключ на сървъра си, след това да закупите сертификат за SSL от сертифициращия орган (който може да бъде скъп) и накрая да го настроите на сървъра, Има много технически проблеми, свързани с този процес, а не правилното правилно, ще направи SSL сертификата безполезен. С проекта Let's Encrypt, може бързо да добавите SSL сертификат към техните сайтове без никакви разходи. И подкрепяни от големи играчи като Mozilla, Akamai, Cisco, EFFIи вие и Google, той се поддържа от повечето браузъри и операционни системи.

В този урок ще преминем през стъпките за настройване на SSL сертификата Нека да се шири на сървъра Nginx. Използваме сървър на Ubuntu 14.04 за този урок и предполагаме, че използвате работещ сървър на Nginx Ubuntu. Инструкцията може да се различава за сървъра на Ubuntu 16.04.

Инсталирайте Нека да шифроваме

Първо, за да инсталирате Let's Encrypt, ще трябва git да го клонирате от git хранилището. Инсталирайте git със следната команда:

 sudo apt-get инсталирате git bc 

След като инсталирате, клонирайте хранилището на Let's Encrypt's:

 ксенонът sudo git https://github.com/letsencrypt/letsencrypt/ opt / letsencrypt 

Настройване на средата

Преди да продължим да инсталираме и настройваме SSL сертификата, е важно да позволим достъп до .well-known папка в основната директория на уеб. По подразбиране всички файлове и папки с "." Пред името на файла са скрити и не са достъпни за обществеността. В този случай обаче ще трябва да предоставим разрешение на обществеността да има достъп до добре .well-known папка, тъй като тук Let's Encrypt ще съхранява специален файл за валидиране.

Преминете към папката за конфигуриране на сайта на Nginx и я отворете (ако имате персонализиран конфигурационен файл за вашия сайт) или използвайте по подразбиране:

 cd / etc / nginx / сайтове - достъпни sudo nano по подразбиране 

Добавете следните редове в сървърния блок:

 location ~ /\.well-known {allow all; } 

Запазете (Ctrl + O) и затворете (Ctrl + x) конфигурационния файл.

Проверете конфигурацията си Nginx:

 sudo nginx-t 

Ако цялата конфигурация работи добре, презаредете конфигурацията:

 sudo услуга nginx презареждане 

Генериране на SSL сертификат

След като сте готови с конфигурацията Nginx, следващото нещо е да инсталирате SSL сертификата.

Отидете в папката Задаване на шифроване:

 cd / opt / letsencrypt 

Изпълнете следната команда, за да генерирате сертификата:

 ./letsencrypt-auto certonly - webroot --webroot-path = / usr / share / nginx / html -d example.com 

Има няколко неща, които да промените тук:

  • Променете webroot-path на webroot-path към коренния път на вашия сайт. По подразбиране е "/ user / share / nginx / html", но конфигурацията ви може да се различава.
  • Променете "example.com" на собственото си име на домейн. Имайте предвид, че "example.com" и "www.example.com" са два различни домейна. Ако искате сертификатът да поддържа няколко домейна, просто добавете -d example1.com до края на командата. Например, за да настроите SSL сертификат за домейните "example.com", "www.example.com", "example1.com" и "www.example1.com", използвайте следната команда:
 ./letsencrypt-auto certonly -a webroot -webroot-path = / usr / share / nginx / html -d example.com -d www.example.com -d example1.com -d www.example1.com 

При първото изпълнение скриптът ще инсталира куп Python файлове във вашата система. След като бъде направено, ще започне процесът на генериране на сертификат. На първо място ще поискате имейл адрес:

След това ще бъдете подканени да прочетете Общите условия в уебсайта Нека да шифроваме. Изберете "Agree."

Ако видите следното съобщение:

 ВАЖНИ БЕЛЕЖКИ: - Поздравления! Вашият сертификат и веригата са запазени в /etc/letsencrypt/live/example.com/fullchain.pem. Вашият сертификат ще изтече на 2016-10-02. За да получите нова или променена версия на този сертификат в бъдеще, просто стартирайте отново letsencrypt-auto. За да не се интерактивно подновите * всички * ваши сертификати, стартирайте "letsencrypt-auto renew" - Ако ви харесва Certbot, моля, помислете за подкрепа на нашата работа: Дарение на ISRG / Да шифроваме: https://letsencrypt.org/donate Дарение EFF: https://eff.org/donate-le 

Това означава, че успешно сте генерирали сертификат за SSL за вашия сайт (и). Ако вместо това видите съобщение за грешка, поправете грешката и опитайте отново.

Активиране на SSL сертификата за вашия сайт

След като генерирате SSL сертификата, е време да го активирате за сайта си.

Върнете се в конфигурационната папка Nginx и отворете конфигурационния файл на сайта:

 cd / etc / nginx / сайтове - достъпни sudo nano по подразбиране 

Създайте нов сървър блок и добавете следната конфигурация в блока:

 сървър {име_на_ сървър example.com www.example.com; слушайте 443 ssl; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; } 

Запазете и затворете файла.

Забележка : Горното е опростена версия на конфигурационния блок Nginx. Трябва да добавите в собствената си персонализирана конфигурация в блока.

Накрая тествайте конфигурацията:

 sudo nginx-t 

Ако всичко е наред, презаредете Nginx:

 sudo услуга nginx презареждане 

Това е. Успешно сте настроили сертификат за SSL за вашите сайтове. Вече можете да заредите версията "https" на URL адреса си, за да я видите в действие.

Автоматично подновяване на Нека да шифроваме SSL сертификат

За разлика от повечето търговски SSL сертификати, които са валидни минимум една година, SSL сертификатът на Let's Encrypt е валиден само за три месеца. След това ще трябва да подновите, за да продължите да го използвате. Нека "Шифроване" идва с опция за renew, за да можете лесно да подновявате сертификатите си, без да минавате през цялата инсталация отново. Следващите указания ви показват как да настроите задание cron, за да възобновите автоматично вашия SSL сертификат.

Все още на сървъра си, отворете crontab:

 sudo crontab -e 

Добавете следните редове:

 00 0 * * 1 / opt / letsencrypt / letsencrypt-auto подмяна >> /var/log/le-renew.log 05 0 * * 1 /etc/init.d/nginx презареждане 

Горните редове ще проверяват датата на изтичане на вашите SSL сертификати всеки понеделник от 12 часа и ще ги подновят, ако те са близо до изтичането им. Също така ще презареди Nginx (в 12.05 часа), за да се увери, че се използва подновения сертификат.

Запазете и затворете crontab.

заключение

Ако работите с малък уеб сайт и искате да добавите SSL към вашия сайт, Let's Encrypt е чудесна възможност да добавите доверие към вашия сайт. Тя (относително) е лесна за настройка и не струва нищо (безплатно, както при бирата), така че няма причина да не се възползва от нея. Тъй като обаче предоставя само сертификат за удостоверяване на домейн (най-основният вид SSL сертификат) за тези компании, които изискват SSL сертификати с OV или Extended Validation (EV), търговски сертификат за SSL е вероятно пътя да вървим.

Интернет2 - HTTPS