Certificaat handmatig installeren SSL voor website zonder cPanel / VestaCP [NGINX]

Certificaat handmatig installeren SSL voor de website is erg handig wanneer we een gehoste website hebben zonder cPanel / VestaCP. zelfstudie is voor NGINX en 'root'-toegang is vereist om te configureren voor HTTPS.

Ik zei in een het artikel van vorige maand naarmate meer en meer websites zijn overgestapt beveiligde verbindingen HTTPS en dat Firefox Quantum is de eerste browser die red-Flaging HTTP-sites start als onveilig voor gebruikers.
Afgezien van het idee dat in de hoofden van velen wortel begint te schieten, zoals sites zonder HTTPS onveilig en vol virussen zouden zijn, en die met HTTPS ze zijn puur als een traan (een totaal verkeerd idee trouwens), veel administratoren servers en sites worden gedwongen dezelfde overgang te maken van HTTP naar protocol HTTPS.
Verhuizen van HTTP-protocol op HTTPS gaat om het kopen van een certificaat SSL of het gebruik van het certificaat dat kosteloos door het project wordt verstrekt Laten we versleutelen, Na aankoop van het certificaat SSLHet moet geïnstalleerd op de serverdan website geconfigureerd voor de overgang van http: // naar https: //.

Certificaat handmatig installeren SSL (HTTPS verbinding) voor een website die wordt gehost op een NGINX-server zonder cPanel of VestaCP

Laten we stap voor stap bekijken hoe u een certificaat installeert SSL op een server met NGINX.

gebruikers cPanel of VestaCP ze hebben binnen handbereik in de beheerinterface speciale velden waar ze kunnen plaatsen en installeren certificaten SSL. Voor een gebruiker die alleen beschikbaar is opdrachtregel van zijn serverconsole SSH, dingen worden een beetje ingewikkeld. Hij zal het moeten doen upload naar certificaten si NGINX configureren voor overschakelen van HTTP naar HTTPS.

Certificaat handmatig installeren SSL op een server met NGINX
Certificaat handmatig installeren SSL op een server met NGINX

1. Genereer CSR (Certificate Signing Request)

U logt in op de server waarop de website die u wilt activeren wordt gehost HTTPS en voer de volgende opdrachtregel uit. Bij voorkeur in / etc / nginx /ssl.

openssl req -new -newkey rsa:2048 -nodes -keyout numedomeniu.key -out numedomeniu.csr

Het is bij voorkeur de naam van de bestanden .key en .crt om de domeinnaam te vermelden waarvoor u ze gaat gebruiken. Als u er in de loop van de tijd meerdere gaat gebruiken, weet dan welke en waar deze vandaan komt.
Ten slotte krijgt u in de map waarin de opdrachtregel werd uitgevoerd, twee bestanden. domeinnaam.csr en domeinnaam.key,

2. Koop een certificaat SSL en haal de .crt- en .ca-bundelbestanden op.

In ons geval heb ik gekocht PositiefSSL Certificaat voor meerdere domeinen van COMODOVia NAMECHEAP.COM. Na het aankoopproces ontvang je een e-mail waarin je het certificaat moet activeren SSL. Voer in het validatieverzoek de domeinnaam in waarvoor het certificaat wordt gebruikt en andere gegevens die in het formulier zijn opgenomen. Het zal je ook vragen om binnen te komen CSR-code hierboven gegenereerd. U kunt het uiteraard vinden in het bestand "domeinnaam.csr". Rennen "cat numedomeniu.csr”Om de inhoud te kunnen kopiëren.
Aan het einde wordt je gevraagd om het te doen Domeinnaamvalidatie waarvoor het certificaat wordt gebruikt. Je hebt meer validatiemethoden. De eenvoudigste en snelste is op een e-mailadres gemaakt door domeinnaam.
Als u deze stap hebt doorlopen, ontvangt u binnen enkele minuten een e-mail waarin een archief met twee bestanden is bijgevoegd.  certificaat SSL (bijvoorbeeld 113029727.crt) en een bestand als 113029727.ca-bundle.

3. Upload certificaatbestanden naar de server via FTP / SFTP.

Upload de bestanden van punt 2 naar de server op dezelfde plaats als die van punt 1 en combineer de inhoud van de bestanden: domeinnaam.csr en 113029727.ca-bundle in één bestand. bijv. ssl-domein.crt.
Eindelijk, in het nieuw gecreëerde bestand, ssl-domein.crt moet drie certificaatcodes, de eerste in het bestand 113029727.crt.

4. Configureer NGINX voor: HTTPS – Certificaten toevoegen SSL.

De volgende stap is configureer NGINX voor HTTPS.
Ervan uitgaande dat u het al hebt geconfigureerd voor HTTP, hoeft u alleen de volgende regels toe te voegen aan het nginx-configuratiebestand van het domein:

server {
listen 80;
server_name numedomeniu.tld www.numedomeniu.tld;
rewrite ^ https://$server_name$request_uri permanent;
}
server {
 listen 443 ssl;
 server_name numedomeniu.tld www.numedomeniu.tld;
 ssl on;
 ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;
 ssl_certificate /etc/nginx/ssl/ssl-domeniu.crt;
 ssl_certificate_key /etc/nginx/ssl/numedomeniu.key;
 ssl_prefer_server_ciphers on;

Op de lijn "ssl_certificate"En"ssl_certificate_key"Je moet slagen het exacte pad in de server naar de twee bestanden. De lijn "rewrite”Is te doen permanente omleiding van http naar https, dus er is geen risico op een dubbele site op HTTP en HTTPS.

5. NGINX-configuratiecontrole en herstart na handmatige installatie van het certificaat SSL

Voordat je de nginx-service herstart, is het goed om a nginx.conf.

nginx -t

Als alles in orde is met het resultaat van de nginx-test, start u de service opnieuw.

systemctl restart nginx

of

service nginx restart

Afhankelijk van het CMS dat u op de website gebruikt: WordPress, Drupal, Magento, Joomla, Prestashop, etc. CMS, u moet uw database en andere bestanden configureren om een ​​geldige website te hebben HTTPS.
Als we zeggen dat je op een webpagina een afbeelding hebt waarvan het pad begint met "http: //", is die pagina niet geldig HTTPS, en het indicatorslot zal niet aanwezig zijn in de adresbalk van de webbrowser.

Gepassioneerd door technologie, schrijf ik met plezier op StealthSettings.com sinds 2006. Ik heb ruime ervaring met besturingssystemen: macOS, Windows en Linux, evenals met programmeertalen en blogplatformen (WordPress) en voor online winkels (WooCommerce, Magento, PrestaShop).

Hoe werkt het? » web Hosting » Certificaat handmatig installeren SSL voor website zonder cPanel / VestaCP [NGINX]
Laat een bericht achter