Нека шифроваме

Конфигурирайте Let's Encrypt на Digital Ocean Droplet

Конфигурирайте Let's Encrypt на Digital Ocean Droplet
Навремето беше съвсем нормално уебсайтовете да обслужват съдържание по традиционния HTTP протокол, тъй като сигурността не беше голям проблем. В днешно време обаче поради нарастването на киберпрестъпленията като идентифициране на кражби, кражби на кредитни карти, подслушване е наистина важно да се осигури каналът, чрез който комуникира със сървъра. Нека да шифроваме е сертифициращ орган, който предоставя SSL / TLS сертификати безплатно. Издадените от тях сертификати са валидни 3 месеца, което означава 90 дни в сравнение с година или повече от сертифициращите органи с търговски клас. Той обаче предоставя същата защита като платените сертификати; поради което често се избира от много блогъри и собственици на малки уебсайтове срещу киберпрестъпници. Тази статия има за цел да демонстрира как да защитите капчиците DigitalOcean с нека шифроваме.

Изисквания

Това ръководство използва Ubuntu 16.04 като операционна система, на която работи уеб сървърът. Същите стъпки обаче могат да се използват за всякакви други версии на Ubuntu, стига да няма разлика в настройките. Това ръководство предполага, че потребителят вече има инсталиран уеб сървър и това е Nginx. Като SSH клиент се използва Putty, а като файлов редактор се препоръчва Nano.

Решение

  1. Уеб сървърът, създаден на капките, може да бъде достъпен чрез SSH протокол. Изтеглете и инсталирайте Putty от официалния му уебсайт. Приложението е напълно безплатно.
sudo apt-get инсталирайте шпакловка
  1. След като изтеглите Putty, продължете и изтеглете Nano. Целта на Putty е достъп до конзолата на Linux за въвеждане на команди на черупки, докато Nano се използва за редактиране на вътрешни файлове като файла по подразбиране на Nginx.
sudo apt-get install nano
  1. Стартирайте Putty и отидете до раздела Session.
  1. В полето Име на хоста въведете IP адреса на капката DigitalOcean, където е инсталиран уеб сървърът. IP адресът на капките може да бъде намерен в https: // cloud.digitalocean.com / капчици. В полето за порт въведете 22.
  1. След като изпратите всички задължителни полета, както се вижда по-горе, натиснете добре, за да приложите промените и да влезете в капката. Когато влиза в системата, той ще поиска потребителското име и паролата на капката. И потребителското име, и паролата се изпращат по имейл до регистрирания имейл в DigitalOcean при създаването на капката.
  1. Това ръководство използва Certbot, инструмент на трета страна за автоматизиране на целия процес на извличане и подновяване на цифровите сертификати. Certbot има собствен уебсайт, от който командите, които ще се използват, могат да се генерират с лекота. Според Certbot правилните команди за инсталиране на Certbot на Ubuntu са тези. Първо актуализира информацията за пакета в локалното хранилище, след това инсталира общ пакет за свойства на софтуера, който предоставя някои полезни скриптове при обработка на лични пакети (PPA), след това инсталира certbot, след това актуализира отново локалното хранилище, след което накрая инсталира python certbot nginx пакет. Уверете се, че всички тези пакети са инсталирани правилно, преди да преминете към следващата стъпка.
$ sudo apt-get update
$ sudo apt-get инсталиране на софтуер-свойства-общи
$ sudo add-apt-repository ppa: certbot / certbot
$ sudo apt-get update
$ sudo apt-get install python-certbot-nginx
  1. Отидете до уебсайта от мястото, където е закупен домейнът. Това ръководство използва Porkbun като регистратор на домейн, след което добавете записа A към домейна. Типът е Запис, хостът е празен, ако IP е свързан с основния домейн, в противен случай използвайте името на поддомейн без основния домейн, например ако е nucuta.com, просто използвайте www. Като отговор напишете IP адреса на капката.
  1. По същия начин пренасочете WWW трафика към основния домейн, както следва. Типът е „CNAME“, хостът е „WWW“, отговорът е „nucuta.com ”или вашия домейн. Тази стъпка е важна, тъй като пренасочва целия www трафик към основния домейн.
  1. Използвайте следната команда на Putty за достъп до файла по подразбиране на Nginx. Файлът по подразбиране по подразбиране използва един сървърен блок, където се намира основният домейн. Nano Editor е силно препоръчителен, тъй като е доста удобен за използване в сравнение с други.
sudo nano / etc / nginx / sites-available / default
  1. В файла по подразбиране отидете до сървър и пренасочете HTTP трафика към HTTP, а в другия сървър, където се обработва защитен трафик, променете името на сървъра на име на домейн, например
име на сървър nucuta.com www.нукута.com
  1. Въведете следната команда, за да рестартирате уеб сървъра на Nginx. Всеки път, когато е направена промяна във файла по подразбиране, целият сървър на Nginx трябва да бъде рестартиран, за да има нови промени някакъв ефект.
sudo systemctl презареди nginx
  1. По подразбиране защитната стена блокира целия трафик, освен към портове 80 и 22. HTTPS използва порта 443; следователно трябва да се отваря ръчно за достъп до уеб сървъра от страна на клиента. Отварянето на порта зависи от защитната стена.

    В CSF (конфигурирана сървърна защитна стена)

    1. Отваря CSF конфигурационния файл, като напишете следната команда.
    nano / etc / csf / csf.конф
    1. Добавете следните портове към TCP In and Out.
    TCP_IN = "20,21,22,25,53,80,443"
    TCP_OUT = "20,21,22,25,53,80,443"
    1. Рестартирайте CSF, като напишете csf -r

    В USF (неусложнена защитна стена)

    1. Въведете следните две команди, за да добавите HTTPS към списъка с изключения. Пакетът “Nginx Full” има HTTP и HTTPS портове; следователно добавянето на пълния пакет позволява както трафик, така и навън.
    sudo ufw позволи 'Nginx пълен'
    sudo ufw изтриване позволи "Nginx HTTP"
    1. Въведете следната команда, за да видите състоянието
  2. ufw статус
  1. Проверете порта 443 от външен уебсайт, за да се уверите, че се отваря със сигурност. Ако портът е отворен, той ще каже „443 порт е отворен“
  1. Сега използвайте Certbot, за да извлечете SSL сертификата в домейна. За задаване на домейна се изисква параметър D. Нека шифроваме издаването на един сертификат както за root, така и за поддомейн www. Наличието само на една от двете версии ще издаде предупреждение в браузъра, ако посетителят осъществи достъп до другата версия; следователно е важно да получите сертификата за двете версии. sudo certbot --nginx -d nucuta.com -d www.нукута.com
  1. Certbot ще поиска да пренасочи целия HTTP трафик към HTTPS, но не е задължително, тъй като това вече е направено в една от предишните стъпки.
  1. Сега отидете до уебсайта на SSL Lab и проверете качеството или други проблеми на сертификата и неговата конфигурация. https: // www.ssllabs.com / ssltest /
  1. Ако текущата конфигурация не е достатъчно защитена, отидете до Mozilla SSL конфигурационен генератор и генерирайте настройките за вашия уеб сървър. https: // mozilla.github.io / server-side-tls / ssl-config-generator /. Тъй като тук използва Nginx, не забравяйте да използвате Nginx като уеб сървър. Той предлага три възможности, междинен, стар и модерен. Старата опция прави уебсайта съвместим с почти всеки браузър, включително супер стари браузъри като IE 6, докато междинната опция го прави идеален за обикновените потребители, съвременната опция генерира конфигурация, необходима за максимална сигурност, но тъй като търговията с уебсайта няма да функционира правилно в по-старите браузъри. Така че е силно препоръчително за уебсайтове, където сигурността е основна грижа.
  1. Придвижете се до вашия уебсайт и щракнете с десния бутон върху иконата за заключване, след което опция „Сертификат“, за да видите сертификата.
  1. Ако показва бъдеща дата след TO в валидна от опция, което означава, че процесът на придобиване на сертификат е завършен. Важно е обаче да се пренасочи трафикът към съответната версия на домейна, например HTTP и WWW трафикът може да бъде пренасочен към коренния домейн HTTPS, както се вижда в това ръководство. Сертификатът автоматично ще бъде подновен от certbot; следователно е завинаги безплатно на разположение на собственика на уебсайта.
Най-добрите игри за команден ред за Linux
Командният ред не е само най-големият ви съюзник при използване на Linux - той може да бъде и източник на забавление, защото можете да го използвате, ...
Най-добрите приложения за картографиране на геймпад за Linux
Ако искате да играете игри на Linux с геймпад вместо типична система за въвеждане на клавиатура и мишка, има някои полезни приложения за вас. Много ко...
Полезни инструменти за геймърите на Linux
Ако искате да играете игри на Linux, има вероятност да сте използвали приложения и помощни програми като Wine, Lutris и OBS Studio, за да подобрите иг...