Как да активирате TLS 1.3 в Apache на CentOS 8

TLS 1.3 е версия на протокола за сигурност на транспортния слой (TLS), който беше публикуван през 2018 г. като предложен стандарт в RFC 8446. Той предлага подобрения в сигурността и производителността спрямо своите предшественици.

Това ръководство ще демонстрира как да активирате TLS 1.3 с помощта на уеб сървъра Apache на CentOS 8.

Изисквания

  • Vultr Cloud Compute (VC2) екземпляр, работещ с CentOS 8.
  • Валидно име на домейн и конфигурирани правилно A/ AAAA/ CNAMEDNS записите за домейна.
  • Валиден TLS сертификат. Ще получим такъв от Let's Encrypt.
  • Версия на Apache 2.4.36или по- нова .
  • OpenSSL версия 1.1.1или по- нова .

Преди да започнеш

Проверете версията на CentOS.

cat /etc/centos-release
# CentOS Linux release 8.0.1905 (Core)

Създайте нов non-rootпотребителски акаунт с sudoдостъп и превключете към него.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

ЗАБЕЛЕЖКА: Заменете johndoeс вашето потребителско име.

Настройте часовата зона.

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Уверете се, че вашата система е актуална.

sudo yum update

Инсталирайте необходимите пакети.

sudo yum install -y socat git

Деактивирайте SELinux и защитната стена.

sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld

Инсталирайте acme.shклиента и получете TLS сертификат от Let's Encrypt

Инсталирайте acme.sh.

sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail your_email@example.com
cd ~
source ~/.bashrc

Проверете версията.

/etc/letsencrypt/acme.sh --version
# v2.8.2

Вземете RSA и ECDSA сертификати за вашия домейн.

# RSA
sudo /etc/letsencrypt/acme.sh --issue --standalone -d example.com --ocsp-must-staple --keylength 2048
# ECC/ECDSA
sudo /etc/letsencrypt/acme.sh --issue --standalone -d example.com --ocsp-must-staple --keylength ec-256

ЗАБЕЛЕЖКА: Заменете example.comв командите с името на вашия домейн.

Създайте разумни директории, в които да съхранявате вашите сертификати и ключове. Ние ще използваме /etc/letsencrypt.

sudo mkdir -p /etc/letsencrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

Инсталирайте и копирайте сертификати в /etc/letsencrypt.

# RSA
sudo /etc/letsencrypt/acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem 
# ECC/ECDSA
sudo /etc/letsencrypt/acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem

След като изпълните горните команди, вашите сертификати и ключове ще бъдат на следните места:

  • RSA :/etc/letsencrypt/example.com
  • ECC / ECDSA :/etc/letsencrypt/example.com_ecc

Инсталирайте Apache

Apache добави поддръжка за TLS 1.3 във версия 2.4.36. Системата CentOS 8 идва с Apache и OpenSSL, които поддържат TLS 1.3 от кутията, така че няма нужда да създавате персонализирана версия.

Изтеглете и инсталирайте най-новата версия 2.4 на Apache и неговия модул за SSL чрез yumмениджъра на пакети.

sudo yum install -y httpd mod_ssl

Проверете версията.

sudo httpd -v
# Server version: Apache/2.4.37 (centos)
# Server built:   Jul  30 2019 19:56:12

Стартирайте и активирайте Apache.

sudo systemctl start httpd.service
sudo systemctl enable httpd.service

Конфигурирайте Apache за TLS 1.3

След като успешно инсталирахме Apache, ние сме готови да го конфигурираме да започне да използва TLS 1.3 на нашия сървър.

Изпълнете sudo vim /etc/httpd/conf.d/example.com.confи попълнете файла със следната основна конфигурация.

<IfModule mod_ssl.c>
  <VirtualHost *:443>
    ServerName example.com

    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3

    # RSA
    SSLCertificateFile "/etc/letsencrypt/example.com/fullchain.pem"
    SSLCertificateKeyFile "/etc/letsencrypt/example.com/private.key"
    # ECC
    SSLCertificateFile "/etc/letsencrypt/example.com_ecc/fullchain.pem"
    SSLCertificateKeyFile "/etc/letsencrypt/example.com_ecc/private.key"

  </VirtualHost>
</IfModule>

Запазете файла и излезте с :+ W+ Q.

Проверете конфигурацията.

sudo apachectl configtest

Презаредете Apache, за да активирате новата конфигурация.

sudo systemctl reload httpd.service

Отворете сайта си чрез HTTPS протокол във вашия уеб браузър. За да потвърдите TLS 1.3, можете да използвате инструменти за разработка на браузъра или услугата SSL Labs. Екранните снимки по-долу показват раздела за сигурност на Chrome с TLS 1.3 в действие.

Как да активирате TLS 1.3 в Apache на CentOS 8

Как да активирате TLS 1.3 в Apache на CentOS 8

Успешно активирахте TLS 1.3 в Apache на вашия CentOS 8 сървър. Окончателната версия на TLS 1.3 беше дефинирана през август 2018 г., така че няма по-добър момент да започнете да приемате тази нова технология.

Оставете коментар

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече