El xifratge de connexió de Firebird 3 i la VPN són dues fronteres
Una VPN que funciona no diu res sobre qui pot obrir el listener de Firebird ni què ha negociat el client. Comproveu per separat l'abast, l'autenticació i el xifratge de connexió.
La VPN connecta, el client obre una sessió i tothom assumeix que la connexió a la base de dades està protegida. S'acaben de confondre tres coses diferents. Si el listener és accessible, si el servidor ha acceptat l'usuari i si Firebird ha negociat el xifratge de connexió són mecanismes separats amb proves separades. El túnel només respon a la primera, i només per a les fonts que heu permès.
Dues fronteres que no es solapen
La frontera de la VPN protegeix els paquets entre un client i una passarel·la. El xifratge de connexió de Firebird protegeix el protocol de base de dades entre la biblioteca de client i el procés del servidor. Tots dos poden ser presents i cap no substitueix l'altre.
Si el túnel acaba abans de l'amfitrió de la base de dades, el trànsit més enllà només queda protegit pel que hagi negociat la sessió de base de dades. És en aquest buit on una revisió sol trobar la sorpresa. El diagrama del túnel acaba en una passarel·la, i la connexió que porta la vostra consulta continua més enllà. Qualsevol que llegeixi aquell diagrama després n'hereta la suposició.
Frontera u: qui pot obrir el listener
Identifiqueu l'adreça real del servidor i el port configurat, que és 3050 si no s'ha canviat, i després permeteu només les fonts VPN aprovades als tallafocs de l'amfitrió i de la xarxa. Tingueu en compte qualsevol traducció a la passarel·la VPN i doneu a l'amfitrió de la base de dades una ruta de retorn al conjunt de clients si la passarel·la és separada.
Després demostreu el negatiu. Un camí extern que hauria de ser denegat encara ha de ser denegat, perquè obrir el túnel no restringeix el listener de Firebird per si sol.
Frontera dos: què negocia Firebird
Firebird 3 va introduir un marc de xifratge de connexió amb una política de servidor que es pot desactivar, activar o exigir. La política fixa el mínim. La sessió real encara depèn de la biblioteca de client que carrega l'aplicació i dels connectors que admeten totes dues bandes.
A les notes de la versió de Firebird 3 Arc4 hi apareix com a connector de xifratge de connexió per defecte d'aquella versió. Arc4 és un valor per defecte històric, no una recomanació de xifrat modern, i no és el mateix que la protecció VPN externa.
L'autenticació és una tercera variable en la mateixa negociació. El servidor accepta un conjunt de connectors d'autenticació, la biblioteca de client n'ofereix un subconjunt i tots dos s'han de solapar.
El parany de Legacy_Auth
Donar suport a Legacy_Auth requereix relaxar la política per defecte de xifratge obligatori del servidor. Aquest és el cost de compatibilitat documentat, i per això baixar la política per silenciar un error de connexió és un canvi de seguretat i no una correcció.
Si un client falla de sobte després d'una actualització del servidor, compareu les llistes de connectors abans d'afeblir res. La fallada sol ser un desajust de negociació, i la resposta és un connector admès a totes dues bandes.
Comproveu l'adjunció que importa
En una compilació que proporcioni la variable de context, aquesta consulta informa de l'estat de xifratge de l'adjunció actual:
SELECT RDB$GET_CONTEXT('SYSTEM', 'WIRE_ENCRYPTED')
FROM RDB$DATABASE;
Executeu-la per la connexió pròpia de l'aplicació, no per una sessió d'administrador al mateix servidor. Una adjunció d'administració xifrada no diu res sobre la sessió d'una altra biblioteca de client, i una compilació més antiga que no admet la variable no és prova que el xifratge estigui desactivat.
Anoteu la versió de la biblioteca de client, la compilació del servidor i el resultat junts, perquè cap d'ells per si sol no és llegible.
Permisos i camí d'actualització
Restringir les fonts i xifrar el transport no substitueixen l'autenticació ni els permisos de mínim privilegi. Comproveu els permisos de l'usuari normal de la base de dades sobre els objectes que realment toca.
Finalment, tracteu un desplegament de llarga vida com una qüestió de manteniment. Un túnel no fa segura indefinidament una biblioteca de client obsoleta, i un camí d'actualització admès és més barat que descobrir que el connector que necessita s'ha eliminat.