Oriġinarjament, is-setup tal-blog tiegħi kien ippjanat bħala proġett IPv6 biss permezz ta' WireGuard, peress li kollox qed jaħdem fuq homeserver (indirizzi IPv6 b'xejn tista' ġġibhom minn route64.org). Biex inżid l-aċċessibbiltà, issa żidt proxy IPv4 estern (Grazzi @Larvitz).
Madankollu, kien hemm problemi tal-SSL immedjatament: Peress li oriġinarjament kemm ir-record A kif ukoll ir-record AAAA kienu għaddejjin mill-proxy, il-validazzjoni ta' Let's Encrypt fuq is-server tiegħi falliet.
Is-soluzzjoni: L-„IPv6-Hack“
Is-soluzzjoni kienet li l-entrata AAAA tiġi ppuntata b'mod espliċitu direttament lejn l-IP tal-WireGuard tas-server tiegħi, minflok ma tgħaddi wkoll mill-proxy.
- Dominju:
blog.burningboard.org - A-Record (Proxy):
194.28.98.217 - AAAA-Record (Server):
2a11:6c7:f05:a8::2(WireGuard)
Permezz ta' din l-entrata AAAA diretta lejn l-IP tal-WireGuard tiegħi, Let’s Encrypt xorta jilħaq is-server tiegħi direttament permezz tal-IPv6 (peress li r-record AAAA jingħata prijorità b'mod awtomatiku) u joħroġ iċ-ċertifikat SSL. It-traffiku IPv4 jiġi mgħoddi lili mill-proxy b'mod ikkriptat.
Il-konfigurazzjoni finali
Biex il-komunikazzjoni taħdem bla xkiel, kellna naġġustaw is-servers Caddy:
1. Fuq is-server tiegħi (NixOS, blog.nix)
Biex l-IPs reali tal-viżitaturi jaslu b'mod korrett u ma jiġux miktuba fuqhom bl-IP tal-proxy, dan tal-aħħar irid jiġi mmarkat bħala fdat:
services.caddy.globalConfig = ''
servers {
trusted_proxies static 2a06:9801:1c:1000::10
}
'';
2. Fuq il-proxy estern (Caddy)
Biex il-proxy jikkomunika mas-server tiegħi b'mod korrett permezz tal-HTTPS, irid jibgħat il-hostname (SNI):
reverse_proxy [https://[2a11:6c7:f05:a8::2]:443](https://[2a11:6c7:f05:a8::2]:443) {
header_up Host {host}
transport http {
tls_server_name blog.burningboard.org
}
}
Il-blog issa huwa aċċessibbli permezz tal-IPv4 u l-IPv6, ikkriptat b'mod sigur u l-IP tad-dar tiegħi xorta jibqa' privat! 🚀