Sådan aktiveres TLS 1.3 i Nginx på FreeBSD 12

TLS 1.3 er en version af TLS-protokollen (Transport Layer Security), der blev offentliggjort i 2018 som en foreslået standard i RFC 8446 . Det tilbyder sikkerhed og ydeevneforbedringer i forhold til sine forgængere.

Denne vejledning vil demonstrere, hvordan man aktiverer TLS 1.3 ved hjælp af Nginx-webserveren på FreeBSD 12.

Krav

  • Vultr Cloud Compute (VC2)-instans, der kører FreeBSD 12.
  • Et gyldigt domænenavn og korrekt konfigurerede A/ AAAA/ CNAMEDNS-poster for dit domæne.
  • Et gyldigt TLS-certifikat. Vi får en fra Let's Encrypt.
  • Nginx version 1.13.0eller nyere.
  • OpenSSL version 1.1.1eller nyere.

Før du begynder

Tjek FreeBSD-versionen.

uname -ro
# FreeBSD 12.0-RELEASE

Sørg for, at dit FreeBSD-system er opdateret.

freebsd-update fetch install
pkg update && pkg upgrade -y

Installer nødvendige pakker, hvis de ikke findes på dit system.

pkg install -y sudo vim unzip wget bash socat git

Opret en ny brugerkonto med dit foretrukne brugernavn (vi bruger johndoe).

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Kør visudokommandoen, og fjern kommentering af %wheel ALL=(ALL) ALLlinjen, for at tillade medlemmer af wheelgruppen at udføre enhver kommando.

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

Skift nu til din nyoprettede bruger med su.

su - johndoe

BEMÆRK: Erstat johndoemed dit brugernavn.

Indstil tidszonen.

sudo tzsetup

Installer acme.sh-klienten og få et TLS-certifikat fra Let's Encrypt

Installer acme.sh.

sudo pkg install -y acme.sh

Tjek versionen.

acme.sh --version
# v2.7.9

Få RSA- og ECDSA-certifikater for dit domæne.

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

BEMÆRK: Erstat example.comi kommandoerne med dit domænenavn.

Opret mapper til at gemme dine certifikater og nøgler. Vi vil bruge /etc/letsencrypt.

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

Installer og kopier certifikater til /etc/letsencryptmappe.

# RSA
sudo 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 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

Efter at have kørt ovenstående kommandoer, vil dine certifikater og nøgler være på følgende steder:

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

Installer Nginx

Nginx tilføjede understøttelse af TLS 1.3 i version 1.13.0. FreeBSD 12-systemet leveres med Nginx og OpenSSL, der understøtter TLS 1.3 ud af æsken, så der er ingen grund til at bygge en brugerdefineret version.

Download og installer den seneste hovedversion af Nginx via pkgpakkehåndteringen.

sudo pkg install -y nginx-devel

Tjek versionen.

nginx -v
# nginx version: nginx/1.15.8

Tjek OpenSSL-versionen, som Nginx blev kompileret mod.

nginx -V
# built with OpenSSL 1.1.1a-freebsd  20 Nov 2018

Start og aktiver Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Konfigurer Nginx

Nu hvor vi har installeret Nginx med succes, er vi klar til at konfigurere den med den korrekte konfiguration til at begynde at bruge TLS 1.3 på vores server.

Kør sudo vim /usr/local/etc/nginx/example.com.confkommandoen, og udfyld filen med følgende konfiguration.

server {
  listen 443 ssl http2;
  listen [::]:443 ssl http2;

  server_name example.com;

  # RSA
  ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/example.com/private.key;
  # ECDSA
  ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;

  ssl_protocols TLSv1.2 TLSv1.3;
  ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
  ssl_prefer_server_ciphers on;
}

Gem filen og afslut med :+ W+ Q.

Nu skal vi inkludere example.com.confi hovedfilen nginx.conf.

Kør sudo vim /usr/local/etc/nginx/nginx.confog tilføj følgende linje til http {}blokken.

include example.com.conf;

Læg mærke til den nye TLSv1.3parameter i ssl_protocolsdirektivet. Denne parameter er kun nødvendig for at aktivere TLS 1.3 på Nginx-serveren.

Tjek konfigurationen.

sudo nginx -t

Genindlæs Nginx.

sudo service nginx reload

For at bekræfte TLS 1.3 kan du bruge browserudviklingsværktøjer eller SSL Labs-tjenesten. Skærmbillederne nedenfor viser Chromes sikkerhedsfane.

Sådan aktiveres TLS 1.3 i Nginx på FreeBSD 12

Sådan aktiveres TLS 1.3 i Nginx på FreeBSD 12

Du har med succes aktiveret TLS 1.3 i Nginx på din FreeBSD-server. Den endelige version af TLS 1.3 blev defineret i august 2018, så der er ikke noget bedre tidspunkt at begynde at adoptere denne nye teknologi.

Efterlad en kommentar

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.

DDOS-angreb: et kort overblik

DDOS-angreb: et kort overblik

Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.

Funktioner af Big Data Reference Architecture Layers

Funktioner af Big Data Reference Architecture Layers

Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.

Udvikling af datalagring – Infografik

Udvikling af datalagring – Infografik

Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af ​​dataene. Denne blog dækker udviklingen af ​​datalagring på basis af en infografik.

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af ​​mac-maskiner. Læs denne artikel for at lære mere