Rechercher

18.3. Configuration d'une connexion Ethernet statique avec authentification réseau 802.1X à l'aide du rôle de système RHEL réseau

download PDF

À l'aide du rôle système network RHEL, vous pouvez automatiser la création d'une connexion Ethernet qui utilise la norme 802.1X pour authentifier le client. Par exemple, ajoutez à distance une connexion Ethernet pour l'interface enp1s0 avec les paramètres suivants en exécutant un script Ansible :

  • Une adresse IPv4 statique - 192.0.2.1 avec un masque de sous-réseau /24
  • Une adresse IPv6 statique - 2001:db8:1::1 avec un masque de sous-réseau /64
  • Une passerelle par défaut IPv4 - 192.0.2.254
  • Une passerelle par défaut IPv6 - 2001:db8:1::fffe
  • Un serveur DNS IPv4 - 192.0.2.200
  • Un serveur DNS IPv6 - 2001:db8:1::ffbb
  • Un domaine de recherche DNS - example.com
  • 802.1X authentification réseau utilisant le protocole d'authentification extensible (EAP) TLS

Effectuez cette procédure sur le nœud de contrôle Ansible.

Conditions préalables

  • Vous avez préparé le nœud de contrôle et les nœuds gérés
  • Vous êtes connecté au nœud de contrôle en tant qu'utilisateur pouvant exécuter des séquences sur les nœuds gérés.
  • Le compte que vous utilisez pour vous connecter aux nœuds gérés dispose des autorisations sudo.
  • Les nœuds gérés ou les groupes de nœuds gérés sur lesquels vous souhaitez exécuter cette séquence sont répertoriés dans le fichier d'inventaire Ansible
  • Le réseau prend en charge l'authentification réseau 802.1X.
  • Les nœuds gérés utilisent NetworkManager.
  • Les fichiers suivants, nécessaires à l'authentification TLS, existent sur le nœud de contrôle :

    • La clé du client est stockée dans le fichier /srv/data/client.key.
    • Le certificat du client est stocké dans le fichier /srv/data/client.crt.
    • Le certificat de l'autorité de certification (CA) est stocké dans le fichier /srv/data/ca.crt.

Procédure

  1. Créez un fichier playbook, par exemple ~/enable-802.1x.ymlavec le contenu suivant :

    ---
    - name: Configure an Ethernet connection with 802.1X authentication
      hosts: managed-node-01.example.com
      tasks:
        - name: Copy client key for 802.1X authentication
          copy:
            src: "/srv/data/client.key"
            dest: "/etc/pki/tls/private/client.key"
            mode: 0600
    
        - name: Copy client certificate for 802.1X authentication
          copy:
            src: "/srv/data/client.crt"
            dest: "/etc/pki/tls/certs/client.crt"
    
        - name: Copy CA certificate for 802.1X authentication
          copy:
            src: "/srv/data/ca.crt"
            dest: "/etc/pki/ca-trust/source/anchors/ca.crt"
    
        - include_role:
            name: rhel-system-roles.network
    
          vars:
            network_connections:
              - name: enp1s0
                type: ethernet
                autoconnect: yes
                ip:
                  address:
                    - 192.0.2.1/24
                    - 2001:db8:1::1/64
                  gateway4: 192.0.2.254
                  gateway6: 2001:db8:1::fffe
                  dns:
                    - 192.0.2.200
                    - 2001:db8:1::ffbb
                  dns_search:
                    - example.com
                ieee802_1x:
                  identity: user_name
                  eap: tls
                  private_key: "/etc/pki/tls/private/client.key"
                  private_key_password: "password"
                  client_cert: "/etc/pki/tls/certs/client.crt"
                  ca_cert: "/etc/pki/ca-trust/source/anchors/ca.crt"
                  domain_suffix_match: example.com
                state: up
  2. Exécutez le manuel de jeu :

    # ansible-playbook ~/enable-802.1x.yml

Ressources supplémentaires

  • /usr/share/ansible/roles/rhel-system-roles.network/README.md fichier
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.