Pare-feu PKI : ports indispensables à la SubCA

Flux nécessaires entre la CA subordonnée, Active Directory, les clients et le serveur IIS de publication CRL/AIA.

⚠ Point critique découvert dans le lab

Une SubCA d’entreprise ne fonctionne pas uniquement avec DNS, LDAP et Kerberos. Elle utilise aussi RPC pour contacter Active Directory et réaliser certaines opérations d’inscription. Si le port TCP 135 est ouvert mais que la plage RPC dynamique TCP 49152–65535 est bloquée, l’installation ou l’utilisation de la CA peut échouer alors que les tests réseau de base semblent corrects.

Dans le lab, la SubCA a fonctionné après ouverture des ports AD complets, notamment 9389, 3268, 3269 et surtout de la plage 49152–65535/TCP.

1. Flux SubCA → contrôleurs de domaine

Ces règles sont nécessaires lorsqu’une CA subordonnée d’entreprise est jointe au domaine et séparée des contrôleurs de domaine par un pare-feu ou un VLAN.

PortProtoRôlePourquoi la SubCA en a besoin
53TCP/UDPDNSRésoudre les noms des DC, du domaine, de la Root CA et du serveur IIS.
88TCP/UDPKerberosAuthentifier le compte ordinateur de la SubCA et les administrateurs auprès du domaine.
123UDPNTPSynchroniser l’heure. Kerberos échoue si l’écart est trop important.
135TCPRPC Endpoint MapperIndiquer au client RPC sur quel port dynamique joindre le service demandé.
389TCP/UDPLDAPLire et publier les objets PKI dans Active Directory : modèles, autorités, AIA, CDP et configuration.
445TCPSMBAccéder à SYSVOL, NETLOGON et appliquer certaines stratégies de groupe.
464TCP/UDPKerberos PasswordGestion et changement de mot de passe Kerberos ; utile au fonctionnement complet du domaine.
636TCPLDAPSLDAP chiffré, uniquement si l’environnement utilise explicitement LDAPS.
3268TCPGlobal CatalogRechercher des objets dans toute la forêt Active Directory.
3269TCPGlobal Catalog SSLVersion TLS du Global Catalog, si utilisée.
9389TCPActive Directory Web ServicesUtilisé par les outils d’administration Active Directory et certaines commandes PowerShell.
49152–65535TCPRPC dynamiques WindowsTransport réel des appels RPC après négociation sur le port 135. Port indispensable dans ton cas.
Sens conseillé : autoriser la SubCA vers les IP des contrôleurs de domaine uniquement. Éviter une règle vers tout le réseau.

2. Pourquoi le port 135 seul ne suffit pas

  1. La SubCA contacte le DC sur TCP 135.
  2. Le DC lui indique un port RPC dynamique disponible.
  3. La communication continue sur un port compris entre 49152 et 65535/TCP.
  4. Si cette plage est bloquée, la connexion démarre mais l’opération échoue ensuite.

Les symptômes possibles sont : erreur RPC, droits d’installation apparemment absents, échec de détection de la CA d’entreprise, erreur lors de l’inscription ou fonctionnement immédiat dès que le pare-feu est désactivé.

3. Flux clients / serveurs → SubCA

PortProtoRôleUsage
135TCPRPC Endpoint MapperDécouverte du service d’inscription de certificats.
49152–65535TCPRPC dynamiquesInscription et renouvellement de certificats via DCOM/RPC.
80 ou 443TCPWeb Enrollment / CESSeulement si ces services web AD CS ont été installés et configurés.
L’autoenrollment classique d’une CA Microsoft d’entreprise utilise RPC/DCOM. Ouvrir uniquement le port 443 ne remplace pas les ports RPC, sauf architecture spécifique avec Certificate Enrollment Web Services.

4. Si la SubCA publie CRL et AIA sur IIS

La CA peut copier ses fichiers vers IIS par un partage réseau, puis les clients les téléchargent en HTTP.

PortProtoRôlePrécision
80TCPPublication HTTP CRL/AIAPort généralement recommandé pour rendre les CRL et certificats de CA accessibles, même avant qu’une chaîne TLS soit validée.
443TCPPublication HTTPSOptionnel. Attention au problème circulaire si la vérification du certificat HTTPS dépend elle-même d’une CRL disponible uniquement en HTTPS.
445TCPCopie SMB vers IISNécessaire uniquement si la SubCA publie les fichiers dans un partage du serveur IIS.

Sens des flux :

  • SubCA → IIS : TCP 445 si copie par partage SMB.
  • Postes, serveurs, DC et équipements → IIS : TCP 80, éventuellement 443, pour télécharger AIA et CRL.

5. Si l’administration distante est utilisée

PortProtoRôlePrécision
5985TCPPowerShell Remoting HTTPWinRM avec authentification et chiffrement de session Kerberos, malgré le transport HTTP.
5986TCPPowerShell Remoting HTTPSWinRM encapsulé dans TLS ; nécessite un certificat serveur valide.
Ces ports ne sont pas nécessaires au fonctionnement normal de la PKI. Ils servent uniquement à administrer la SubCA à distance.

6. Règles minimales à créer dans le pare-feu

SourceDestinationPortsUsage
SubCAContrôleurs de domaine53 TCP/UDP, 88 TCP/UDP, 123 UDP, 135 TCP, 389 TCP/UDP, 445 TCP, 464 TCP/UDP, 636 TCP, 3268 TCP, 3269 TCP, 9389 TCP, 49152–65535 TCPIntégration AD et fonctionnement de la CA d’entreprise
Postes et serveurs autorisésSubCA135 TCP + 49152–65535 TCPInscription et autoenrollment
SubCAServeur IIS PKI445 TCPPublication des fichiers CRL/AIA par partage SMB, si utilisée
Tous les clients PKIServeur IIS PKI80 TCP, éventuellement 443 TCPTéléchargement des CRL et certificats AIA
Poste d’administrationSubCA5985 ou 5986 TCPAdministration PowerShell distante, optionnelle

7. Commandes de vérification

Test-NetConnection dc1.warx.home -Port 135Tester RPC Endpoint Mapper
Test-NetConnection dc1.warx.home -Port 9389Tester AD Web Services
nslookup -type=SRV _ldap._tcp.dc._msdcs.warx.homeVérifier la découverte des contrôleurs de domaine
nltest /dsgetdc:warx.homeVérifier qu’un DC est découvert
certutil -config - -pingDétecter et tester les autorités de certification d’entreprise
certutil -enterprise -viewstore NTAuthVérifier le magasin NTAuth de l’entreprise
pkiview.mscVérifier AIA, CDP et CRL
certutil -urlfetch -verify certificat.cerTester la chaîne et le téléchargement des CRL/AIA

8. Pièges fréquents

  • Ouvrir 135/TCP mais oublier 49152–65535/TCP.
  • Tester uniquement un ping : ICMP ne prouve pas que RPC, LDAP ou Kerberos fonctionnent.
  • Autoriser les ports vers tout le VLAN au lieu de cibler les DC et le serveur IIS.
  • Oublier DNS ou utiliser un DNS externe sur la SubCA.
  • Bloquer NTP et provoquer une erreur Kerberos à cause de l’heure.
  • Publier la CRL uniquement en HTTPS et créer une dépendance circulaire.
  • Confondre flux de publication SubCA → IIS et flux de consultation clients → IIS.

🎯 À retenir pour le TSSR

  • Une CA d’entreprise dépend d’Active Directory.
  • RPC utilise le port 135 puis une plage dynamique.
  • CRL et AIA doivent rester accessibles même si la CA est arrêtée.
  • Les règles doivent être limitées par source, destination et usage.
  • Le diagnostic doit comparer le fonctionnement avec et sans pare-feu, puis tester chaque service.