Puncte:3

Instalați certificatul ssl godaddy pe nginx, pem, bundle, crt

drapel cn

Este puțin clar, din instrucțiunile disponibile și postările pe forum, cum să faci față celor trei fișiere pe care le vei primi de la Godaddy atunci când achiziționezi un certificat SSL de la ei. Godaddy nu explică foarte direct. În retrospectivă, acum, când știm cum să o faci, s-ar putea crede că nu este înțelept din partea lor să nu detalieze acest lucru în instrucțiunile atașate achiziției; deoarece nu este banal să-l faci să funcționeze.

Când cumpărați certificat SSL standard (Starfield SHA-2) sau (Godaddy SHA-2) de la GoDaddy. Indicați ce tip de server aveți și descărcați un pachet zip. în acest proces, descărcați și două fișiere txt.

Pentru Nginx, indicați tipul de server „altul” și fișierul dvs. zip conține 3 fișiere (1-3). În acest proces, sunt create și alte două fișiere (4-5) salvate separat:

  1. 3423l4kj23l4j.crt
  2. 3423l4kj23l4j.pem
  3. sf_bundle-g2-g1.crt
  4. generated-private-key.txt
  5. generated-csr.txt

când sunt deschise în notepad, 1 și 2 de mai sus sunt identice

'-----ÎNCEPE CERTIFICAT-----
MM123XXXXXX
XXXXXXXO8 km
-----CERTIFICAT FINAL-----'

sf_bundle-g2-g1.crt de mai sus nu conține 1 sau 2, ci trei intrări separate

'-----ÎNCEPE CERTIFICAT-----
XXXX1
XXXX2
-----CERTIFICAT FINAL-----
-----ÎNCEPE CERTIFICAT-----
XXXX3
XXXX4
-----CERTIFICAT FINAL-----
-----ÎNCEPE CERTIFICAT-----
XXXX5
XXXX6
-----CERTIFICAT FINAL-----'

generated-private-key.txt este unic

'-----BEGIN CHEIE PRIVATĂ-----
XXXX7
XXXX8
-----ÎNCHEIAȚI CHEIA PRIVATĂ-----'

și, în sfârșit, generated-csr.txt, este, de asemenea, unic

'-----ÎNCEPE CEREREA DE CERTIFICAT-----
XXXX9
XXXX0
-----CEREREA CERTIFICAT FINAL-----'

În Nginx:

  1. Am creat un folder, /etc/nginx/ssl
  2. editez /etc/nginx/sites-enabled/default.conf ca mai jos

;

Server {
        asculta 80 default_server ;
        asculta [::]:80 default_server ;

Am schimbat asta in:

Server {
        asculta 443 ssl ;
        asculta [::]:443 ssl ;
        nume_server example.com;

        ssl_certificate /etc/nginx/ssl/ ?????????.crt;
        ssl_certificate_key /etc/nginx/ssl/ ???????.key;

Deoarece nu este puțin clar ce este ce și ce este un pem și un pachet, aș dori să întreb care dintre fișierele dezarhivate merge unde?:

  • certificat_ssl = crt, pem, bundle, gen_crt?
  • cheie_certificat_ssl = pem sau cheie privată?

ACTUALIZAȚI Am făcut așa cum a sugerat @nikita-kipriyanov, a funcționat.

  • combinate/concatenate prin: 3423l4kj23l4j.pem sf_bundle-g2-g1.crt > fullchain.pem Aceasta ar deveni certificat_ssl fişier
  • a redenumit generated-private-key.txt intr-o privkey.pem fișier, apoi modificați codificarea fișierului: sudo iconv -c -f UTF8 -t ASCII privkey.pem >> privkey.pem Aceasta ar deveni cheie_certificat_ssl fişier
Nikita Kipriyanov avatar
drapel za
Toate fișierele dvs. sunt în format PEM. Se pare că * aveți nevoie * să vă concatenați certificatul și pachetul conform răspunsului de mai jos și să îl utilizați pentru `ssl_certificate`. Utilizați fișierul generat-private-key pentru `ssl_certificate_key`. Cred că asta a fost destul de clar dintr-un răspuns, dar editarea dvs. face acest lucru mai explicit.
dave_thompson_085 avatar
drapel jp
Ești sigur că este `sf_bundle-g1-g1`? Nu are sens să înlănțuiți o rădăcină la sine, iar [depozitul GoDaddy](https://certs.godaddy.com/repository) are `sf_bundle-g2-g1` și `sf_bundle-g2`, dar nu `sf_bundle- g1-g1`.
Jaco avatar
drapel cn
bun loc @dave_thompson_085, a fost o greșeală de tipar, am corectat-o
Puncte:3
drapel za

Depinde de ce se află în pachet. Sunt sigur că conține calea de certificare până la CA de încredere, întrebarea este: include și certificatul serverului final (este „lanțul complet” în ceea ce privește Let’s Encrypt) sau nu („lanț”)? De asemenea, ce fișier conține cheia privată?

Puteți verifica asta manual pur și simplu uitându-vă cu un vizualizator de text (notepad etc.) și comparând conținutul, deoarece pachetul în format PEM nu este altceva decât toate certificatele în formă Base64 concatenate începând cu serverul, apoi CA emitentul acestuia, și așa mai departe.

De asemenea, puteți tăia orice certificat începând cu -----ÎNCEPE CERTIFICAT----- pâna la -----CERTIFICAT FINAL-----, inclusiv ambele linii speciale, într-un fișier dedicat și decodificați-l cu openssl x509 -in file.pem -noout -text. În acest fel, veți ști exact ce certificate sunt în pachet.

Dacă fișierul formatat PEM conține ceva de genul -----ÎNCEPE CHEIA PRIVATĂ----, nu-l împărtăși cu nimeni, păstrează-l secret!

Toate fișierele care conțin doar certificate, au doar -----ÎNCEPE CERTIFICAT----- în ele, sunt publice. Le puteți arăta oricui în siguranță (și o veți face, de fapt, deoarece serverul trimite acele certificate clientului în timpul pasului de inițiere a sesiunii SSL).


Dacă pachetul dvs. conține deja un lanț complet (adică începe cu certificatul de server final), atunci toată munca a fost făcută pentru dvs. și săriți peste pasul următor.

Cu toate acestea, dacă nu conține un lanț complet, trebuie să-l concatenați singur (se pare că acesta este cazul dvs.):

cat server.crt bundle.pem > fullchain.pem

Acum, pur și simplu treceți-l în Nginx:

ssl_certificate fullchain.pem;
ssl_certificate_key privkey.pem;

Vedea Manualul Nginx pentru detalii.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.