DNS, reverzný proxy, TLS, atď.

Nejasný nadpis veští, že v tomto blogovom článku by som chcel riešiť viac problémov naraz. Už v predošlých článkoch som avizoval, že jediný poskytovateľ ktorý poskytoval ccTLD zdarma (len 5 vybraných) začal mať problémy a 4 z 5 ccTLD prešli pod správu národných poskytovateľov DNS. Jediná ccTLD, ktorá zatiaľ funguje je ccTLD tk, ktorá patrí ostrovnému štátu Tokelau.

Zatiaľ mám 2 domény s ccTLD tk, ktoré chvalabohu fungujú avšak kvôli captcha nedokážem aktualizovať IP adresy na DNS serveroch. Ďalej som ešte využíval ccTLD ml, čo je národná doména pre Africkú krajinu Mali. Na tejto ccTLD som mal postavených aj väčšinu privátnych subdomén .Táto ccTLD prešla pod správu krajiny Mali a pravdepodobne všetky free domény boli zrušené. Na subdoménach mi beží niekoľko lokálnych serverov, ako napr. zabbix, collabora, vaultwarden, portainer a pod. Vzhľadom k tomu, že v lokálnej sieti si riešim DNS vo svojej réžii, tak to stále funguje a TLS od Let’s Encrypt sú prlatné ešte cca 2 mesiace, čiže času je ešte stále dosť.

Používam niekoľko webových serverov z ktorých sú niektoré vystavené do siete internet cez reverzný proxy server Nginx. Dosť som sa spoliehal na freenom, ale nejak sa to zkomplikovalo. Na freenom som mal poriešené všetko v automatike od aktualizácie IP adries, cez získanie TLS pomocou DNS-01 až po renováciu domén pred expiráciou. Bohužiaľ spoločnosť Freenom musela nasadiť na web (re)captchu a všetko sa pokazilo.

Mimochodom tento týždeň som úspešne a dovolím si napísať, veľmi hladko reinštaloval virtulizačné prostredie Proxmox z ver. 7.3-4 na 8.0-2. Nejednalo sa o žiadny upgrade, ale o plne novú inštaláciu. V rámci VE proxmox mám nasadené LXC prevažne postavené na Debian 11 (VM taktiež Debian 11). Čo najskôr budem chcieť migrovať (niektoré LXC sú už poriešené) na Debian 12.

Ak by u spoločnosti Freenom nenastali spomínané problémy, tak by som sa tešil z plne automatizovanej funkčnej služby, ale teraz som nútený riešiť Let’s encrypt s výzvou DNS-01, aktualizáciu IP adresy a pod. Kto čítal predošlý blogový článok, tak určite vie, že som prešiel z freenom na cloudflare a ten ma diametrálne odlišnú administráciu DNS ako mal freenom.

Keďže som spomínal, že na VM a LXC budem nasadzovať Debian 12, tak som si povedal, že si poriešim aj LXC s reverzným proxy serverom. Od začiatku som pre tento druh služby používal Nginx a chcel som aby to tak aj ostalo (funguje to dobre a bez problémov). Najskôr som začal na starom Nginx servery riešiť Certbot (ten je zodpovedný za automatické generovanie certifikátov). Problém je v tom, že Certbot prešiel nedávno na Snap a to sa mi nepáčilo (nie som zástancom snapu). Nuž riešiť to musím, tak som sa rozhodol, že skúsim nainštalovať snap (nakoniec všetky inštrukcie sú popísane na webe Certbot). LXC sa zo Snapom asi neľúbi a dostal som sa do podobných problémov ako niektorí užívatelia Proxmoxu. Mne to nefungovalo ani po zmene konfigurácie.

features: fuse=1,mount=fuse,nesting=1

Zanevrel som na certbot a začal som sa obzerať po inej alternatíve získania TLS certifikátov. Až som zistil, že celkom OK môže byť acme.sh. Lenže skôr ako som sa pustil do acme.sh som našiel projekt caddy. Vyzera výborne, má slušnú dokumentáciu, komunitnú podporu a všetko funguje vraj Out of the box. Predpokladám, že až taký Out of the box to nebude, lebo pri reverznom proxy servery potrebuje človek riešiť viac veci.

Zatiaľ som skúsil test s jednou doménou (nie na cloudflare) a v Caddyfile som použil tento jednoduchý zápis

example.com {
    redir https://www.example.com{uri}
}
 
www.example.com {
    reverse_proxy 192.168.20.11:80
}

Tento zápis hovorí, že presmeruj example.com na www.example.com. Druhá direktíva len smeruje na backendový server. Do niekoľkých sekúnd som získal certifikát Let’s encrypt a bez akejkoľvek práce. Údajne stači do Caddyfile pridať novú doménu a caddy sa o všetko postará.

Záver

Nechcene som sa dostal od Nginx servera nastaveného v roli reverzného proxy k caddy serveru. Teraz mi ostáva naštudovať aspoň nevyhnutné minimum ako správne nakonfigurovať caddy v roli reverzného proxy a postupne môžem migrovať. V ďalšom blogovom článku by som sa chcel venovať čisto nasadeniu caddy servera (resp. prechodu z nginx na caddy).

Leave a Reply

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *