Instalējiet aizstājējzīmju sertifikātus no Lets Encrypt programmā Nginx operētājsistēmā Ubuntu 19.04

2018. gada martā programma Let's Encrypt pievienoja aizstājējzīmju sertifikātu atbalstu. Aizstājējzīmju sertifikāti ļauj aizsargāt visus domēna pirmā līmeņa apakšdomēnus ar vienu sertifikātu. Aizstājējzīmju sertifikātus var iegūt, tikai izmantojot ACMEv2, kas ir atjaunināta ACME protokola versija. Lai izmantotu ACMEv2 sertifikātiem ar aizstājējzīmi vai bez aizstājējzīmes, jums ir nepieciešams klients, kas ir atjaunināts, lai atbalstītu ACMEv2. Viens no šādiem klientiem ir acme.sh, kas ir ACME/ACMEv2 protokola klients, kas rakstīts tikai Shell (Unix apvalka) valodā bez jebkādām atkarībām. Turklāt aizstājējzīmju domēni ir jāvalidē, izmantojot DNS-01 izaicinājuma veidu. Tas nozīmē, ka jums ir jāmaina DNS TXT ieraksti, lai pierādītu kontroli pār domēnu un iegūtu aizstājējzīmes sertifikātu.

Šajā rokasgrāmatā mēs izskaidrojam, kā iegūt un izvietot bezmaksas aizstājējzīmju sertifikātus no Let's Encrypt operētājsistēmā Ubuntu 19.04, izmantojot acme.shklienta Lexicon rīku automātiskai DNS ierakstu manipulācijai, izmantojot Vultr API, un izvietot sertifikātus Nginx tīmekļa serverī.

Prasības

  • Svaigi izvietots Ubuntu 19.04 Vultr mākoņserveris.
  • Jums ir reģistrēts domēna vārds. Šajā rokasgrāmatā tiek izmantots example.comdomēna piemērs.
  • Pārliecinieties, vai esat iestatījis A/AAAA un CNAME DNS ierakstus savam Fully Qualified Domain Name (FQDN). Ja vēlaties iepazīties ar DNS jēdzieniem, iespējams, vēlēsities skatīt Vultr DNS pamācību .
  • Jūsu Vultr konta vadības panelī ir iespējota Vultr API piekļuve.

Pirms tu sāc

Pārbaudiet Ubuntu versiju.

lsb_release -ds
# Ubuntu 19.04

Izveidojiet jaunu lietotāja kontu ar sudopiekļuvi un vēlamo lietotājvārdu un pārslēdzieties uz to. Mēs lietojam johndoe.

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

PIEZĪME . Aizstāt johndoear savu lietotājvārdu.

Iestatiet laika joslu.

sudo dpkg-reconfigure tzdata

Pārliecinieties, vai jūsu Ubuntu sistēma ir atjaunināta.

sudo apt update && sudo apt upgrade -y

Instalējiet nepieciešamās pakotnes.

sudo apt install -y git wget curl socat

Instalējiet Nginx

Instalējiet Nginx tīmekļa serveri.

sudo apt install -y nginx

Pārbaudiet versiju.

sudo nginx -v
# nginx version: nginx/1.15.9 (Ubuntu)

Instalējiet Python un Lexicon

Kā pirmais solis aizstājējzīmju sertifikātu iegūšanas procesā no Let's Encrypt, izmantojot acme.sh un Vultr API, jums ir jāinstalē Python un Lexicon . Lexicon ir Python pakotne, kas nodrošina veidu, kā standartizētā veidā manipulēt ar DNS ierakstiem vairākos DNS pakalpojumu sniedzējos.

Instalējiet Python, ja tas vēl nav instalēts jūsu sistēmā.

sudo apt install -y python3

Apstipriniet instalēšanu, pārbaudot versiju.

python3 --version
# Python 3.7.3

Instalējiet Lexicon rīku. Leksikons ir Python rīks, kas ļauj standartizētā veidā manipulēt ar DNS ierakstiem dažādos DNS pakalpojumu sniedzējos.

sudo apt install -y lexicon

Pārbaudiet Lexicon versiju.

lexicon --version
# lexicon 3.0.8

Instalējiet acme.shklientu

Acme.shir ACME protokola klients, kas rakstīts tikai Shell (Unix apvalka) valodā, kas automatizē parakstīta sertifikāta iegūšanas procesu, izmantojot Let's Encrypt. Tas atbalsta ACME v1 un ACME v2, un, pats galvenais, tas atbalsta ACME v2 aizstājējzīmju sertifikātus. Šajā sadaļā mēs instalējam Acme.sh skriptu.

PIEZĪME: Instalēšanai ieteicams izmantot rootlietotāju, lai acme.shgan tam nav nepieciešama root/ sudopiekļuve.

Pārslēdzieties uz rootlietotāju no parastā lietotāja, ja esat to izveidojis.

sudo su - root

Lejupielādējiet un instalējiet acme.sh.

git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --accountemail "your_email@example.com"
source ~/.bashrc
cd

Pārbaudiet versiju.

acme.sh --version
# v2.8.2

Iegūstiet aizstājējzīmju sertifikātus no vietnes Let's Encrypt

Lai iegūtu aizstājējzīmes sertifikātu, mēs varam izmantot tikai DNS validācijas metodi. Mēs izmantojam Lexicon un Vultr DNS API, lai manipulētu ar TXT DNS ierakstiem.

Iegūstiet savam domēnam RSA un ECC aizstājējzīmju sertifikātus.

# Configure your API key and username
export PROVIDER=vultr
export LEXICON_VULTR_USERNAME="your_vultr_email@example.com"
export LEXICON_VULTR_TOKEN="XXXXXXXXXXXXXXX"

# RSA 2048
acme.sh --issue --dns dns_lexicon -d example.com -d '*.example.com' --keylength 2048
# ECC 256
acme.sh --issue --dns dns_lexicon -d example.com -d '*.example.com' --keylength ec-256

PIEZĪME . Neaizmirstiet aizstāt example.comar savu domēna nosaukumu un aizstāt Vultr API viettura vērtības ar savām.

Pēc iepriekšējo komandu palaišanas jūsu sertifikāti un atslēgas atrodas:

  • RSA: ~/.acme.sh/example.comdirektorijs.
  • ECC/ECDSA: ~/.acme.sh/example.com_eccdirektorijs.

PIEZĪME : Cert failus nevajadzētu izmantot ~/.acme.sh/mapē, tie ir paredzēti tikai iekšējai lietošanai, direktoriju struktūra nākotnē var mainīties.

Lai uzskaitītu savus sertifikātus, varat palaist:

acme.sh --list

Izveidojiet mapi ražošanas sertifikātu glabāšanai. Mēs izmantojam /etc/letsencryptdirektoriju.

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

Instalējiet/kopējiet sertifikātus ražošanas vajadzībām savā serverī.

# RSA
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 \
        --reloadcmd "sudo systemctl reload nginx.service"

# ECC/ECDSA
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 \
        --reloadcmd "sudo systemctl reload nginx.service"

Tagad, kad esam veiksmīgi ieguvuši aizstājējzīmju sertifikātus no Let's Encrypt, mums ir jākonfigurē Nginx tīmekļa serveris. Visi sertifikāti tiek automātiski atjaunoti ik pēc 60 dienām.

Pēc sertifikātu iegūšanas un instalēšanas vēlamajā vietā varat atteikties no rootlietotāja uz parastu sudolietotāju un turpināt pārvaldīt savu serveri, izmantojot, sudoja nepieciešams.

exit

Konfigurējiet Nginx tīmekļa serveri

Palaidiet sudo vim /etc/nginx/sites-available/example.com.confun aizpildiet failu ar šādu saturu. Aizstājiet visus gadījumus example.comar savu domēna nosaukumu.

server {

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

  server_name example.com *.example.com;
  root /var/www/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;

}

Aktivizējiet jauno example.com.confkonfigurāciju, saistot failu ar sites-enableddirektoriju.

sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/

Pārbaudiet Nginx konfigurāciju.

sudo nginx -t

Pārlādēt Nginx.

sudo systemctl reload nginx.service

Tieši tā. Mēs izvietojām aizstājējzīmju sertifikātus pakalpojumā Nginx, izmantojot acme.sh, Lexicon un Vultr API. Aizstājējzīmju sertifikāti var būt noderīgi, ja vēlaties nodrošināt vairākus dinamiski ģenerētus pirmā līmeņa apakšdomēnus.

Atstājiet komentāru

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk