Först den enkla delen:klienten behöver ingen inkommande anslutning, eftersom den inte tar emot någon anslutning (det gör dem), så du kan säkert blockera allt inkommande.
Nu till de utgående. Servern själv behöver bara TCP åtkomst i porten den lyssnar på, så om du har en fast port öppnar du bara den (som standard 1433 för en standardinstans) och du är klar.
Men eftersom du använder dynamiska portar är installationen lite svårare. I grund och botten betyder "dynamisk port" att servern lyssnar på en "slumpmässig" port varje gång den startar, och SQL Browser-tjänsten talar om för klienter på vilken port som lyssnar på varje instans (detta är standardinställningen för namngivna instanser).
Så för detta måste du först tillåta utgående anslutningar till SQL Browser, som lyssnar på UDP 1434 . Nu behöver du också den normala serveranslutningen som tidigare, som fortfarande är på TCP , men den här gången är porten okänd (eftersom den är slumpmässig). Så den mest restriktiva regeln du kan göra är att tillåta alla TCP-portar, kanske också filtrerade av klientprogram (ssms.exe till exempel) eller av någon annan parameter som din brandvägg stöder.