Preskočiť na obsah

SSL/TLS certifikáty

Zabezpeč svoje služby pomocou HTTPS. V TUKE Cloud máš dve možnosti.


  • Let's Encrypt


    Automatické bezplatné certifikáty cez DNS-01 validáciu.

    Odporúčané pre väčšinu prípadov.

  • Harika


    Manuálne certifikáty pre interné služby.

    Kontaktuj ssl@helpdesk.tuke.sk


Prečo SSL/TLS?

Šifrovanie

Chráni komunikáciu pred odpočúvaním.

Autentifikácia

Klient vie, že komunikuje so správnym serverom.

HTTPS štandard

Bez certifikátu prehliadače zobrazujú varovania.


Let's Encrypt (DNS-01)

Ako to funguje?

  1. Certbot požiada o TXT záznam _acme-challenge.<domena>
  2. DNS API TUKE ho automaticky pridá
  3. Let's Encrypt overí a vystaví certifikát

DNS API Token

Každá VM dostane jedinečný token v aktivačnom e-maile. Token umožňuje spravovať len TXT záznamy pre tvoju VM.

API email


Predpoklady

Požiadavka Popis
Ubuntu/Linux VM Systém s certbotom
Webserver Apache alebo Nginx
DNS API token Z aktivačného e-mailu VM
Doména *.virtual.cloud.tuke.sk

Vytvorenie hook skriptov

auth-hook.sh - pridanie TXT záznamu

Ulož do /usr/local/bin/auth-hook.sh:

#!/usr/bin/env bash
set -e

TOKEN="TU_ZADAJTE_SVOJ_API_TOKEN"

CHALLENGE_NAME="_acme-challenge.${CERTBOT_DOMAIN}"

echo "Pridávam TXT záznam:"
echo "Domain:     $CERTBOT_DOMAIN"
echo "Validation: $CERTBOT_VALIDATION"
echo "Name:       $CHALLENGE_NAME"

curl -s -L -X POST -H "Content-Type: application/json" \
  -d "{\"token\": \"$TOKEN\", \"domain\": \"$CERTBOT_DOMAIN\", \"name\": \"$CHALLENGE_NAME\", \"value\": \"$CERTBOT_VALIDATION\"}" \
  https://dns-api.plesk.tuke.sk/index.php/dns/proxy/add_txt

sleep 3

cleanup-hook.sh - odstránenie TXT záznamu

Ulož do /usr/local/bin/cleanup-hook.sh:

#!/usr/bin/env bash
set -e

TOKEN="TU_ZADAJTE_SVOJ_API_TOKEN"
DOMAIN="$CERTBOT_DOMAIN"
ZONE_SUFFIX="virtual.cloud.tuke.sk"

if [[ "$DOMAIN" != *".${ZONE_SUFFIX}" ]]; then
  echo "Chyba: doména '$DOMAIN' nekončí na '.$ZONE_SUFFIX'"
  exit 1
fi

HOST="${DOMAIN%.$ZONE_SUFFIX}"
CHALLENGE_NAME="_acme-challenge.${HOST}"

echo "Odstraňujem TXT záznam: $CHALLENGE_NAME"

RESPONSE=$(curl -s -L -X POST \
  https://dns-api.plesk.tuke.sk/index.php/dns/proxy/delete_txt \
  -H "Content-Type: application/json" \
  -d '{
    "token": "'"${TOKEN}"'",
    "domain": "'"${DOMAIN}"'",
    "name": "'"${CHALLENGE_NAME}"'"
  }'
)

if echo "$RESPONSE" | grep -q '"status":"success"'; then
  echo "TXT záznam úspešne odstránený."
else
  echo "Chyba pri mazaní TXT záznamu:"
  echo "$RESPONSE"
  exit 1
fi

Nastav práva:

sudo chmod +x /usr/local/bin/auth-hook.sh
sudo chmod +x /usr/local/bin/cleanup-hook.sh

Vystavenie certifikátu

sudo certbot certonly \
  --non-interactive \
  --manual \
  --preferred-challenges dns \
  --manual-public-ip-logging-ok \
  --manual-auth-hook /usr/local/bin/auth-hook.sh \
  --manual-cleanup-hook /usr/local/bin/cleanup-hook.sh \
  --deploy-hook "systemctl reload apache2" \
  -d vra-ubuntu-server-0531.virtual.cloud.tuke.sk \
  -d www.vra-ubuntu-server-0531.virtual.cloud.tuke.sk \
  --email meno.priezvisko@tuke.sk \
  --agree-tos

Harika (manuálne certifikáty)

Pre interné služby, testovacie prostredia alebo špeciálne požiadavky.

Ako požiadať

  1. Priprav si doménu (FQDN) a účel certifikátu
  2. Pošli e-mail na ssl@helpdesk.tuke.sk
  3. Uveď názov domény a účel použitia
  4. Dostaneš .crt, .key a CA chain

Dôležité upozornenia

Bezpečnosť tokenu

  • DNS API token je jedinečný pre tvoju VM
  • Token nesmie byť zverejnený ani poskytnutý iným
  • Skripty fungujú len v rámci *.virtual.cloud.tuke.sk

Automatické obnovovanie

DNS-01 validácia umožňuje plne automatizovať obnovovanie certifikátov pomocou cron úlohy.


Porovnanie metód

Let's Encrypt Harika
Cena Zadarmo Zadarmo
Obnova Automatická Manuálna
Dôveryhodnosť Verejne dôveryhodný Len TUKE
HTTP prístup Nie je potrebný Nie je potrebný
Vhodné pre Produkčné služby Interné/testovacie