web-dev-qa-db-fra.com

Adresse IP dans SubjectAltName

Est-il autorisé de spécifier IP comme nom DNS pour le certificat SAN?

5
user3448600

Est-il autorisé de spécifier IP comme nom DNS pour le certificat SAN?

Tout d'abord, vous devez savoir qu'il existe un format de nom alternatif spécifique à iPAddress, conçu pour contenir des quadrillets en pointillés (IPv4) ou 16 octets (IPv6). Si vous souhaitez insérer une adresse IP sur votre certificat, c'est probablement la bonne façon de le faire. Voir RFC 5280 section 4.2.1.6 . La compatibilité navigateur/client varie.

Deuxièmement, oui, il est légal de spécifier un quadruple pointillé dans un champ dNSName du SAN. Pour citer RFC 5280,

Le nom DOIT être dans la "syntaxe du nom préféré", comme spécifié par Section 3.5 de RFC1034 et tel que modifié par Section 2.1 de RFC112

Ce dernier suggère que le logiciel devrait être tolérant de trouver des adresses IP dans les champs "Nom d'hôte":

Chaque fois qu'un utilisateur saisit l'identité d'un hôte Internet, il DEVRAIT être possible de saisir (1) un nom de domaine hôte ou (2) une adresse IP sous forme décimale en pointillés ("#. #. #. #"). L'hôte DEVRAIT vérifier syntaxiquement la chaîne pour un nombre décimal en pointillés avant de la rechercher dans le système de noms de domaine.

Encore une fois, ce ne sont que des RFC, donc votre kilométrage variera selon le client.

Veuillez également noter que, conformément à la RFC 5280:

Étant donné que le nom alternatif sujet est considéré comme étant définitivement lié à la clé publique, toutes les parties du nom alternatif sujet DOIVENT être vérifiées par l'AC.

Donc, si vous soumettez une demande à une autorité de certification publique avec, par exemple, une adresse IP RFC 1918 privée (10.1.2.3), elle doit refuser de signer cette demande. Et comme pour les autorités de certification validant la propriété d'une adresse IP - lorsque la "propriété" d'une adresse IP diffère généralement de l'utilisateur alloué - les choses pourraient devenir intéressantes.

4
gowenfawr

Est-il autorisé de spécifier IP comme nom DNS pour le certificat SAN?

Selon RFC 528 dNSName est une IA5String ce qui signifie en théorie que vous pouvez mettre la chaîne d'une adresse IPv4 ou IPv6 comme chaîne à l'intérieur. Et parfois, cela est également nécessaire même si le type approprié pour les adresses IP dans SAN est iPAddress depuis:

  • MSIE et MS Edge ont tendance à ignorer iPAddress et à attendre la valeur sous forme de chaîne dans dNSName. Même chose Python 2.
  • mais Chrome, Safari, Firefox n'attendent pas une adresse IP comme dNSName mais en ont besoin comme iPAddress. Même chose Python 3.

Ainsi, la meilleure compatibilité peut être atteinte en donnant l'adresse IP à la fois comme iPAddress et dNSName.

4
Steffen Ullrich

Oui, techniquement, il peut aller dans le nom alternatif du sujet (SAN) avec tous les noms de domaine. Les systèmes dans lesquels vous utilisez le certificat peuvent ou non utiliser correctement les informations (en fonction de l'application).

Par conséquent, oui, il est légal de faire ce que vous voulez, mais cela peut ne pas fonctionner.

1
ISMSDEV

Oui, il peut être utilisé de cette façon, mais il n'a généralement de sens que pour l'infrastructure à clé privée privée. Dans ce cas, vous pouvez avoir un serveur privé qui sera utilisé directement avec son adresse IP, il est donc judicieux de l'utiliser dans le champ SAN.

Mais AFAIK est rarement utilisé (s'il l'est) pour les PKI publics et les serveurs publics.

0
Serge Ballesta