Redirect server

From Hobbynet Admin Wiki
Revision as of 19:07, 13 February 2018 by Hans (talk | contribs)
Jump to navigation Jump to search

doel

Deze servers redirect-lb1 en redirect-lb2 zorgen er voor dat sites op zowel http als https geredirect worden naar de opgegeven URL.
Hiervoor maakt hij gebruik van de gratis SSL certificaten van Let's Encrypt, die 3 maanden geldig zijn.

hoe

redirect toevoegen

stap 1

Pas DNS records aan, zodat ze naar vip100.network.hobby.nl verwijzen of naar de IP adressen van die vip.
Wacht met de vervolg stappen totdat op ns1, ns2, ns3 en ns4 deze wijziging actief is.

stap 2

Op dbclus01-int is database genaamd 'redirect' met hierin een tabel 'redirects'.
Om een record toe te voegen is er een script op redirect-lb1-int aanwezig:

php /usr/local/hobbynet/bin/addredirect.php

Gebruik: add-redirect.php <DomeinNaam> <DomeinPeriode>
Geef de nieuwe domeinnaam die geredirect moet worden en url waarnaar hij geredirect moet worden

stap 3

Draai op redirect-lb1-int het script /usr/local/hobbynet/bin/updatenieuwecerts.sh als root.
Hier wordt het certificaat aangevraagd, en de redirect actief gemaakt.
Deze stap kan je bewaren tot het laatst als je meerdere domeinen hebt.

redirect aanpassen

stap 1

Op dbclus01-int is database genaamd 'redirect' met hierin een tabel 'redirects'.
Pas hier voor het desbetreffende domein de redirect URL aan.

stap 2

Draai op redirect-lb1-int het script /usr/local/hobbynet/bin/updatenieuwecerts.sh als root.
De Apache config wordt aangepast en herladen.

redirect verwijderen

stap 1

Op dbclus01-int is database genaamd 'redirect' met hierin een tabel 'redirects'.
Verwijder het desbetrefende domein uit de tabel.

stap 2

Draai op redirect-lb1-int het script /usr/local/hobbynet/bin/updatenieuwecerts.sh als root.
De Apache config wordt aangepast en herladen.
Bestaande certificaten verlopen vanzelf binnen 3 maanden.

stap 3

Het certificaat moet worden opgeheven anders blijft het systeem hem proberen te verlengen let op volledige pad gebruiken
Draai op redirect-lb1-int het volgende script om het certificaat te revoken:

/usr/local/letsencrypt/letsencrypt-auto revoke --cert-path /etc/letsencrypt/live/www.gouda.hccnet.nl/cert.pem

scripts

Alle scripts draaien op redirect-lb1-int.

updatenieuwecerts.sh

Dit script zet Apache op de beide loadbalanced servers uit, roept het script maakcert.php om nieuwe certificaten aan te vragen en start hierna weer Apache op beide loadbalanced servers.

maakcert.php

Dit script kijkt in de database of er nog domeinen zijn waarvoor een certificaat aangevraagd moet worden. Zo ja, maakt hij deze aan.

maakapacheconf.php

Dit script maakt aan de hand van de database de Apache configuratie voor de redirects.

renewcerts.sh

Dit script verlengt elke nacht automatisch waar nodig de certificaten.

Loadbalancer

De loadbalancer configuratie is iets anders dan standaard.
Op lb1 wordt niet getest of Apache draait ivm het aanvragen / updaten van Let's Encrypt certificaten (dat script neemt tijdelijk poort 80 of 443 over). Daarom wordt ook bij toevoegen van redirects eerst Apache gestopt.
Dit is ook de reden waarom je niet in productie sites Let's Encrypt gebruikt.