Aller au contenu principal

1. Introduction

"Le protocole Terminal Access Controller Access-Control System Plus (TACACS+)" [RFC8907] fournit l'administration des équipements pour les routeurs, les serveurs d'accès réseau et autres dispositifs informatiques en réseau via un ou plusieurs serveurs TACACS+ centralisés. Le protocole fournit des services d'authentification, d'autorisation et de comptabilité (AAA, Authentication, Authorization, and Accounting) pour les clients TACACS+ dans le cas d'usage de l'administration des équipements.

Le contenu du protocole est hautement sensible et nécessite un transport sécurisé pour protéger un déploiement. Cependant, TACACS+ manque de confidentialité, d'intégrité et d'authentification efficaces de la connexion et du trafic réseau entre le serveur et le client TACACS+. Les mécanismes de sécurité décrits dans la section 4.5 de [RFC8907] sont extrêmement faibles.

Pour remédier à ces déficiences, ce document met à jour le protocole TACACS+ pour utiliser l'authentification et le chiffrement TLS 1.3 [RFC8446], et rend obsolète l'utilisation des mécanismes d'obfuscation TACACS+. La maturité de TLS dans la version 1.3 et au-dessus en fait un choix approprié pour le protocole TACACS+.

2. Définitions techniques (Technical Definitions)

Les termes définis dans la section 3 de [RFC8907] sont entièrement applicables ici et ne seront pas répétés. Les termes suivants sont également utilisés dans ce document.

Obfuscation (Obfuscation) : TACACS+ était à l'origine destiné à incorporer un mécanisme pour sécuriser le corps de ses paquets. L'algorithme est catégorisé comme obfuscation dans la section 10.5.2 de [RFC8907]. Le terme est utilisé pour s'assurer que l'algorithme n'est pas confondu avec le chiffrement. Il ne doit pas être considéré comme sûr.

Connexion non-TLS (Non-TLS connection) : Ce terme fait référence à la connexion définie dans [RFC8907]. Il s'agit d'une connexion sans TLS, utilisant l'authentification et l'obfuscation TACACS+ non sécurisées (ou l'option non obfusquée pour les tests). L'utilisation du numéro de port d'hôte TCP/IP bien connu 49 est spécifiée comme valeur par défaut pour les connexions non-TLS.

Connexion TLS (TLS connection) : Une connexion TLS est une connexion TCP/IP avec authentification et chiffrement TLS utilisée par TACACS+ pour le transport. Une connexion TLS pour TACACS+ est toujours entre un client TACACS+ et un serveur TACACS+.

Serveur TLS TACACS+ : Ce document décrit une variante du serveur TACACS+, introduite dans la section 3.2 de [RFC8907], qui utilise TLS pour le transport et effectue certaines optimisations de protocole associées. Les deux variantes de serveur répondent au trafic TACACS+, mais ce document définit spécifiquement un serveur TACACS+ (qu'il soit TLS ou non-TLS) comme étant lié à un numéro de port spécifique sur une adresse IP ou un nom d'hôte particulier. Cette définition est importante dans le contexte de la configuration des clients TACACS+ pour s'assurer qu'ils dirigent leur trafic vers les serveurs TACACS+ corrects.

Pair (Peer) : Le pair d'un client TACACS+ (ou serveur) dans le contexte d'une connexion TACACS+, est un serveur TACACS+ (ou client). Ensemble, les extrémités d'une connexion TACACS+ sont appelées pairs.

2.1. Langage des exigences (Requirements Language)

Les mots-clés "doit (MUST)", "ne doit pas (MUST NOT)", "requis (REQUIRED)", "doit (SHALL)", "ne doit pas (SHALL NOT)", "devrait (SHOULD)", "ne devrait pas (SHOULD NOT)", "recommandé (RECOMMENDED)", "non recommandé (NOT RECOMMENDED)", "peut (MAY)" et "optionnel (OPTIONAL)" dans ce document doivent être interprétés comme décrit dans le BCP 14 [RFC2119] [RFC8174] lorsque, et seulement lorsque, ils apparaissent en majuscules, comme indiqué ici.