Hoe maak je een selfsigned SSL certificaat met NGINX

Een selfsigned ssl certificaat is bijvoorbeeld handig achter cloudflare omdat deze niet verlengt hoeft te worden, maar niet geschikt voor publieke sites omdat deze niet door browsers ondersteund wordt. Gebruik daavoor Letsencrypt. Selfsigned SSL certificaten zijn ook handig om te voorkomen dat je het echte domeinnaam bij een IP uitlekt als iemand het ip opzoekt in zijn webbrowser.

Het SSL certificaat aanmaken

Maak het SSL certificaat:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/nginx-selfsigned.key -out /etc/ssl/certs/nginx-selfsigned.crt
De informatie die je hier invult maakt niet uit, dus klik gerust een paar keer op enter.

Vervolgens moet je het ssl certificaat aan je NGINX config toevoegen via de volgende 2 lijnen:

ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;

Als je cloudflare gebruikt: Zorg ervoor dat je SSL op full hebt staan in cloudflare als je daar gebruik van maakt, anders zal je een redirect loop krijgen. Gebruik niet de strict mode optie tenzij je een valide ssl certificaat hebt zoals van letsencrypt of een cloudflare origin certificate.
Je config komt er ongeveer zo uit te zien:

server {
    listen 80;
    server_name tutorial.feroxhosting.nl;
    return 301 https://$server_name$request_uri;
}
server {
    listen 443 ssl http2;
    server_name tutorial.feroxhosting.nl;
    root /var/www/jouwapplicatie;
    index index.php;
    access_log /var/log/nginx/jouwapplicatie.app-access.log;
    error_log  /var/log/nginx/jouwapplicatie.app-error.log error;
    # SSL Configuration
ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;
    location ~ /\.ht {
        deny all;
    }
}

restart nginx met service nginx restart en voilá, jouw web applicatie is online!

Welke poortnummers heb ik nodig voor e-mail?

Om een mailbox te laten werken heb je bij veel e-mail programma’s poort nummers nodig. Hieronder staan de poortnummers die je nodig hebt:

  • IMAP (aangeraden, inkomend)
    • SSL: 993
    • Zonder SSL: 143
  • POP3 (inkomend)
    • SSL: 995
    • zonder SSL: 110
  • SMTP (uitgaande mail)
    • SSL: 465
    • TLS: 587
    • Zonder SSL: 25

Heb ik SSL nodig voor e-mail?

SSL is sterk aangeraden voor je mailbox als je provider dit ondersteund. Dit voegt namelijk een versleutelingslaag toe waardoor anderen op bijvoorbeeld een publiek wifi netwerk je mails niet kunnen meelezen.

Mogelijk krijg je een foutmelding in de trand van: “Onveilige verbinding. Wilt u zich toch aanmelden?”. Probeer in dat geval of het domein van uw webhosting paneel te gebruiken, of een connectie zonder SSL met het daarbij horende poortnummer.

Wat zijn deze afkortingen?

Voor het instellen van een mailbox is het niet belangrijk om te weten wat al deze afkortingen zijn, maar het kan toch handig zijn om de belangrijkste afkortingen te kennen:

SMTP: Simple mail transfer protocol, hiermee kan je e-mails verzenden over het internet.
POP3: Post office protocol, hiermee kan je email op je apparaat ontvangen van je e-mail provider. Na het downloaden worden de e-mails van de provider gewist en kunnen deze dus niet meer vanaf andere apparaten opgehaald worden.
IMAP: Internet message access protocol, dit is de beter manier om emails te ontvangen. De status, bijvoorbeeld of een mail al gelezen is, wordt gesynchroniseerd met de server waardoor je deze mails op elk apparaat kan uitlezen.

SSL: secure socket layer, een beveiligingslaag voor je mails.
TLS: transport layer security, Ook wel bekend als https in het geval van websites. Dit is de moderne variant van SSL en wordt soms ook met de naam SSL aangeduid.

Welk poortnummer heb ik nodig?
Is jouw email veilig?