Pereiti prie pagrindinio turinio

SSL sertifikato diegimas VPS serveryje

Atnaujinta šią savaitę

Pamoka skirta rankiniam SSL sertifikato raktų diegimui VPS serveryje.

SSL sertifikatą galite įsigyti svetainėje: iv.lt/sertifikatai arba pateikę užsakymą klientų sistemoje (klientams.iv.lt): Paslaugos → Užsakymas → SSL sertifikatas.

Plačiau apie SSL sertifikatus galite skaityti šioje pamokoje. Pagrindiniai failai, kurie jums bus reikalingi sertifikato diegimo metu:

  • SSLCertificateFile - Sertifikato užklausos failas

  • SSLCertificateKeyFile - Sertifikato raktas

  • SSLCertificateChainFile - Leidėjo šakninis failas

Serveryje taip pat turi veikti (būti įdiegta) Apache web serverio tarnyba.

PASTABA: pamokoje vietoje minimo "domenas" naudokite savo domeno pavadinimą pavadinimą (pvz.: jusu-domenas.lt.key, jusu-domenas.lt.csr ir pan.).

CSR užklausos ir privataus rakto generavimas

a) Jeigu SSL sertifikatą užsakėte mūsų sistemoje:

SSL sertifikato paslaugoje galite pažymėti, kad CSR užklausą sugeneruotume už jus (kartu bus sugeneruojamas ir privatus raktas). Toliau atlikite šioje instrukcijos nurodytus veiksmus. Kitu atveju CSR užklausą ir privatų raktą galėsite pateikti sertifikato paslaugoje atlikę b) skiltyje pateikiamus žingsnius:

b) Jei SSL sertifikato užklausą generuojate savarankiškai:

Šie veiksmai tinka visoms operacinėms sistemoms. Inicijuokite šią komandą:

openssl req -new -key domenas.key -out jusu-domenas.lt.csr

SVARBU: vietoje "jusu-domenas.lt" - nurodykite savo domeną.

Toliau užpildykite laukus, pvz.:

  • Country Name - LT

  • State or Province Name - Lietuva

  • Locality Name - Vilnius

  • Organization Name - UAB Mano imone (draudžiami simboliai < > ~ ! @ # $ % ^ * / \ ( ) ?.,& ))

  • Organizational Unit Name - IT

  • Common Name - tikslus domeno pavadinimas (www.jusu-domenas.lt)
    (SVARBU: jei generuojama užklausa WildCard sertifikatui tuomet nurodykite vietoje www žvaigždutės simbolį: *.jusu-domenas.lt)

  • Email Address - el. paštas

Peržiūrėkite CSR turinį:

cat jusu-domenas.lt.csr

Turinį nukopijuokite ir išsisaugokite.

Tuomet sugeneruokite privatų raktą. Rekomenduojamas 2048 arba 4096 bitų raktas:

openssl genrsa -out jusu-domenas.lt.key 4096

SSL sertifikato diegimas

Jeigu OS: AlmaLinux / Rocky Linux

1. Įdiekite mod_ssl

dnf install mod_ssl -y

Įjunkite Apache:

systemctl enable --now httpd

2. Sukurkite saugią vietą sertifikatams

mkdir -p /etc/pki/tls/private
chmod 700 /etc/pki/tls/private

3. Perkelkite failus

mv jusu-domenas.lt.key /etc/pki/tls/private/
mv jusu-domenas.lt.crt /etc/pki/tls/certs/
mv jusu-domenas.lt.ca-bundle /etc/pki/tls/certs/

4. Konfigūruokite Apache. Atidarykite:

nano /etc/httpd/conf.d/ssl.conf

Pakeiskite:

SSLCertificateFile /etc/pki/tls/certs/jusu-domenas.lt.crt
SSLCertificateKeyFile /etc/pki/tls/private/jusu-domenas.lt.key
SSLCertificateChainFile /etc/pki/tls/certs/jusu-domenas.lt.ca-bundle

PASTABA: jei turite fullchain failą, naudokite:

SSLCertificateFile /etc/pki/tls/certs/fullchain.pem
SSLCertificateKeyFile /etc/pki/tls/private/domenas.key

5. Patikrinkite konfigūraciją

httpd -t

Jeigu rodo Syntax OK, perkraukite HTTP tarnybą serveryje su komanda:

systemctl restart httpd

Jeigu OS: Debian / Ubuntu

1. Įjunkite SSL modulį

a2enmod ssl
systemctl restart apache2

2. Sukurkite katalogą sertifikatams

mkdir -p /etc/ssl/private
chmod 700 /etc/ssl/private

3. Perkelkite failus

mv jusu-domenas.lt.key /etc/ssl/private/
mv jusu-domenas.lt.crt /etc/ssl/certs/
mv jusu-domenas.lt.ca-bundle /etc/ssl/certs/

4. Sukonfigūruokite VirtualHost. Atidarykite savo domeno konfigūraciją:

nano /etc/apache2/sites-available/jusu-domenas.lt.conf

Pridėkite HTTPS bloką:

<VirtualHost *:443>
ServerName jusu-domenas.lt
ServerAlias www.jusu-domenas.lt

DocumentRoot /var/www/html

SSLEngine on
SSLCertificateFile /etc/ssl/certs/jusu-domenas.lt.crt
SSLCertificateKeyFile /etc/ssl/private/jusu-domenas.lt.key
SSLCertificateChainFile /etc/ssl/certs/jusu-domenas.lt.ca-bundle
</VirtualHost>

Aktyvuokite svetainę:

a2ensite jusu-domenas.lt.conf

5. Patikrinkite konfigūraciją

apache2ctl -t

Jeigu rodo Syntax OK, perkraukite HTTP tarnybą:

systemctl restart apache2

Papildomi patikrinimai

Patikrinkite ar 443 prievadas atidarytas:

AlmaLinux / Rocky Linux OS:

firewall-cmd --permanent --add-service=https
firewall-cmd --reload

Ubuntu / Debian OS, jei naudojate UFW:

ufw allow 443/tcp

Dažniausios klaidos

Pagrindinės klaidos, dėl kurių nepavyksta įdiegti SSL sertifikato:

  • Netinkamas kelias iki sertifikato failo

  • Blogos failų teisės

  • Privatus raktas su slaptažodžiu

  • Nepaleistas mod_ssl

  • Nepatikrinta sintaksė prieš komandą "restart"

Įdiegtą SSL sertifikatą galima patikrinti su įrankiais:

Ar gavote atsakymą į savo klausimą?