Comme l'indique @ user384706, il est entièrement configurable. Le scénario dont vous parlez est un scénario dans lequel une machine est à la fois un serveur et un client (et le client en ce qui concerne la connexion SSL/TLS).
Vous ne gagnez pas nécessairement beaucoup plus de sécurité en vérifiant que la connexion provient du CN (ou peut-être du nom alternatif du sujet) du certificat qui est présenté.
Il y a quelques problèmes:
Si le protocole SSL/TLS serveur est destiné à être utilisé par les clients qui sont à la fois les utilisateurs finaux et les serveurs eux-mêmes, vous allez avoir deux règles différentes en fonction du type de client que vous attendez d'un certificat particulier. Vous pouvez avoir une base de règles pour savoir si le certificat client a l'extension d'utilisation de clé étendue "server" ou seulement celle du client, mais cela peut devenir un peu complexe (pourquoi pas). Le client (qui est également un serveur) peut provenir d'un proxy, selon le réseau où il se trouve, auquel cas l'adresse IP source ne correspondra pas à ce que vous attendez.
Généralement, l'authentification client-certificat repose sur le fait que les clés privées sont supposées être protégées. Si une clé privée est compromise par un attaquant sur le serveur, l'attaquant peut également avoir la possibilité d'usurper l'adresse IP d'origine lors de la connexion (ou d'établir directement la connexion à partir du serveur compromis). Cela étant dit, les serveurs ont tendance à avoir des clés privées qui ne sont pas protégées par mot de passe, cela peut donc aider un peu au cas où il serait copié discrètement.
Je pense que certains outils sont si strictes qu'ils ne vérifient pas seulement le CN être le FQDN de la connexion entrante: ils vérifient également que c'est l'entrée inverse DNS pour l'adresse IP source. Cela peut entraîner un certain nombre de problèmes dans la pratique, car certains serveurs peuvent avoir plusieurs entrées CNAME dans le DNS, auquel cas le CN serait légitime, mais pas nécessairement le nom de domaine complet principal pour cette adresse IP.
Tout dépend vraiment du protocole global et de l'architecture générale du système.
RFC 6125 (Representation and Verification of Domain-Based Application Service Identity within Internet Public Key Infrastructure Using X.509 (PKIX) Certificates in the Context of Transport Layer Security (TLS)), récemment publié, considère ce scénario hors de portée.
La référence la plus proche que je peux penser est SIP.
[RFC 5246] (http://tools.ietf.org/html/rfc5246) est la spécification, si vous voulez les détails sanglants du protocole lui-même. – Nemo
@Nemo, bon point de liaison à la RFC TLS (pour la liste des étapes). Je voudrais ajouter [RFC 5280 (PKIX)] (http://tools.ietf.org/html/rfc5280) pour la vérification du certificat (en vérifiant qu'il est approuvé) et [RFC 6125] (http://tools.ietf.org/html/rfc6125) pour vérifier que le certificat correspond à l'identité attendue du serveur. Bien que ces RFC aient tendance à être utilisées ensemble dans la plupart des cas, elles sont indépendantes et il peut exister d'autres modèles de vérification en fonction de l'application. – Bruno