Sélectionner une page
Print Friendly, PDF & Email

Dans les 2 articles précédents, on a vu comment utiliser les certificats X509 StartSSL pour sécuriser les mails, les sites Web et les connexions OpenVPN.

Cette fois, je vous propose d’utiliser les certificats X509 StartSSL pour sécuriser votre réseau Wifi en utilisant le standard IEEE 802.1X qui permet de contrôler l’accès de vos différents équipements (PC, tablettes, smartphones…) à votre réseau local (LAN) et à Internet.

Le Wifi utilise un mécanisme de sécurité, le WPA, qui s’appuie sur le standard IEEE 802.11i définissant entre autres le processus d’authentification (PSK ou 802.1X) et la méthode de chiffrement (TKIP, AES/CCMP).

Il existe 2 types de WPA :

  • Le WPA Personal qui utilise une clé secrète partagée (WPA-PSK) entre l’équipement réseau et le point d’accès Wifi sans qu’aucun serveur d’authentification ne soit nécessaire. Le WPA Personal est utilisé par les particuliers et les petites entreprises
  • Le WPA Enterprise qui utilise un serveur d’authentification RADIUS gérant le 802.1X (WPA-802.1X ou WPA-EAP) et le protocole EAP pour le transport des informations d’identification. Le WPA Enterprise est utilisé par les grandes entreprises

Dans notre « Home sweet home » nous allons donc nous prendre pour une grande entreprise et mettre en œuvre le WPA Enterprise grâce au serveur RADIUS du NAS Synology.

Mais pour ça il faut des Points d’Accès (AP Wifi) compatibles avec le WPA Entreprise.

Pour ma part, j’utilise deux AP Cisco WAP371 qui ont, entre autres, les caractéristiques suivantes :

  • Gestion du WPA Enterprise
  • Wifi AC jusqu’à 1300 Mb/s et Wifi N jusqu’à 450 Mb/s
  • Dual band 2,4 GHz et 5 GHz
  • Port Gigabit POE
  • Portail captif
  • Interface Web
  • Management de plusieurs bornes via une seule interface (Single Point Setup)

Le prix de cet AP est élevé (225 € chez Amazon) mais le mode de management qui permet de paramétrer toutes les bornes à la fois en modifiant qu’une seule (Single Point Setup) via un simple accès Web est un plus qui m’avait séduit par rapport à l’AP Wifi TP-Link EAP330 équivalente en termes techniques, qui coûte un peu moins cher (185 €), ou l’AP Ubiquiti UAP-AC-PRO (150 €) qui nécessitent l’installation d’un contrôleur sur un PC.

C’est assez rare de trouver un AP Wifi compatible avec le WPA Enterprise sur des offres grand public. Les 3 modèles cités plus haut font en effet parti des gammes entreprise des constructeurs.

J’ai donc été agréablement surpris en acquérant récemment un « nano routeur de voyage » TP-Link TL-WR902AC qui intègre le WPA Enterprise pour un tout petit prix (36 €). Ce mini routeur gère plusieurs modes et notamment un mode AP Wifi, il comprend une interface Web, il est Dual Band (Wifi AC 5 GHz à 433 Mb/s et Wifi N 2,4 GHz à 300 Mb/s) mais par contre le port RJ45 est Fast Ethernet (100 Mb/s). Suffisant néanmoins pour faire des tests avant d’investir dans des AP Wifi « Pro »…

Les différents équipements qui ont servi pour cet article sont les suivants :

  • NAS Synology :
    • DSM 6.1-15047
    • RADIUS Server 2.2.9-0249
    • Directory Server (LDAP) 2.2.0-2459
  • AP Wifi :
    • Cisco WAP371 firmware version 1.3.0.4
    • TP-Link TL-WR902AC firmware version 1.0
  • PC Portable :
    • Windows 10 Pro
    • Carte Wifi Intel Dual Band Wireless-AC 7265 pilote version 19.40.0.3
  • Tablette : iPad iOS 9.3.5
  • Smartphone : iPhone iOS 10.2.1

 

802.1X

Les différents acteurs de la norme 802.1X sont les suivants :

  • Supplicant : on traduit abusivement ce terme par « client » mais qui c’est en réalité un logiciel embarqué dans un équipement comme un PC, un smartphone, un téléphone IP, une caméra de télésurveillance IP, etc. qui fournit les informations d’authentification
  • Authenticator ou NAS (Network Access Server, à ne pas confondre avec le NAS Synology, Network Attached Storage) : le Contrôleur d’accès ou le Client RADIUS qui est un équipement réseau comme un switch ou un AP Wifi
  • Authentication Server : le Serveur d’Authentication qui est le plus souvent un serveur RADIUS

802.1X s’appuie sur le standard IETF EAP (Extensible Authentication Protocol) qui est un protocole de communication réseau embarquant de multiples méthodes d’authentification et le standard IETF RADIUS (Remote Authentification Dial In User Service) qui est un protocole AAA (Authentication Authorization Accounting) véhiculant notamment les informations d’authentification et d’autorisation d’accès entre le client et le serveur RADIUS.

Un schéma pour expliquer le fonctionnement 802.1X avec les protocoles EAP et RADIUS :

  1. Le Client ne peut pas se connecter au réseau tant qu’il n’aura pas fourni les informations d’authentification au Contrôleur d’accès (login et mot de passe ou certificat numérique). Ces informations sont véhiculées par le protocole EAP qui est lui-même encapsulé dans IEEE 802 comme par exemple Ethernet (802.3) sur un réseau filaire ou Wifi (802.11) sur un réseau sans fil. On parle alors d’encapsulation EAPoL ou EAP over LAN
  2. Le Client RADIUS, l’AP Wifi, transmet les informations au Serveur RADIUS pour vérification et validation des informations d’authentification. Le protocole EAP est alors encapsulé dans le protocole RADIUS, on parle alors de EAP over RADIUS
  3. Le serveur RADIUS peut s’appuyer sur un serveur d’annuaire AD ou LDAP par exemple dans le cadre de l’utilisation de la méthode PEAP
  4. Si le serveur RADIUS valide les informations d’authentification, le Client est alors autorisé à se connecter au réseau. Il a alors accès au LAN et à Internet

Pour info, le schéma est inspiré de celui d’Arran Cudbard-Bell qui illustre l’article 802.1X en anglais sur Wikipédia.

Nous allons développer dans la suite de l’article deux méthodes d’authentification EAP qui nous intéressent plus particulièrement car elles sont supportées nativement par les OS Microsoft, Apple, Linux et donc aussi par les NAS Synology :

  • PEAPv0/EAP-MS-CHAPv2 : protocole développé par Cisco, RSA et Microsoft et qui est très largement diffusé sur tous les OS. C’est le protocole par défaut du NAS Synology lorsqu’on utilisera le serveur RADIUS couplé au serveur LDAP. Ce protocole est utilisé de bout en bout du Client jusqu’au serveur LDAP
  • EAP-TLS : c’est le protocole EAP considéré comme le plus sûr car il n’utilise pas comme informations d’authentification le login/MDP comme PEAP mais des certificats X509 qui doivent être présents aussi bien sur le serveur RADIUS que sur le Client

Pour info, l’utilisation de l’annuaire centralisé LDAP du NAS Synology est très intéressante car vous pouvez le coupler aux services suivants :

  • Le Wifi du domicile via le serveur RADIUS du NAS, l’objet de cet article…
  • Les fichiers partagés via le service de fichiers Windows du NAS
  • Le VPN du NAS voire d’autres VPN externes hébergés par exemple sur un VPS situé chez un prestataire
  • Les Clouds ownCloud et Nextcloud ou d’autres services Web
  • Et tous les services fournis nativement par le NAS comme Audio Station, Video Station, Surveillance Station, etc.

 

Prérequis

DDNS

Même si cet article traite d’un service interne qui ne nécessite pas un accès Internet pour assurer le mécanisme d’authentification, il est tout à fait possible d’utiliser par exemple le service LDAP du NAS depuis un service externe.

On va donc en profiter pour aborder de nouveau le sujet DDNS (Dynamic DNS) même si c’était déjà le cas dans les 2 derniers articles où le service DDNS utilisé était payant (DynDNS).

Or chez OVH, le service DDNS est compris dans la gestion du nom de domaine, on va donc déclarer le sous-domaine chez OVH puis l’associer au DNS dynamique pour atteindre le NAS Synology depuis Internet.

Une fois connecté à votre Espace Client OVH, cliquez sur le menu Domaines, l’onglet DynHost puis sur le bouton Ajouter un DynHost.

Complétez le sous-domaine, par exemple dns.monsite.com, et saisissez l’adresse IP de votre accès Internet :

Une fois que vous avez validé, cliquez sur le bouton Gérer les accès puis Créer un identifiant. Saisissez un suffixe pour l’identifiant, par exemple monsite, entrez * pour le sous-domaine afin de gérer l’ensemble des sous-domaines via cet identifiant puis enfin le mot de passe :

Pour tenir à jour le DDNS, il faut activer la prise en charge DDNS dans un équipement de votre infra comme un routeur ou le NAS Synology qui intègre par ailleurs déjà un profil OVH.

Pour le paramétrer, rendez-vous dans le Panneau de configuration, Accès externe puis cliquez sur le bouton Ajouter dans l’onglet DDNS. Choisissez le profil OVH, saisissez le nom d’hôte, dns.monsite.com, puis l’identifiant DynHost précédemment créé, monsite.com-monsite et le mot de passe :

Sous-domaine

Chez OVH, la création d’un sous-domaine passe par l’ajout d’une entrée à la zone DNS (voir les 2 derniers articles pour 1&1).

Cliquez sur l’onglet Zone DNS, sur le bouton Ajouter une entrée puis sur le bouton CNAME. Saisissez le sous-domaine, annuaire.monsite.com, et la cible, le DynHost, avec un point à la fin, dns.monsite.com. :

Cliquez sur le bouton Suivant pour terminer l’opération.

DNSMasq

Si vous utilisez un routeur avec un firmware DD-WRT, Asuswrt-Merlin, etc. vous utilisez peut-être l’option DNSMasq du serveur DHCP.

Cette option est intéressante car vous pourrez alors router vos sous-domaines sur l’adresse LAN du NAS Synology et donc utiliser votre nom de domaine comme URL dans votre navigateur même en local.

Dans les options DNSMasq, il faut indiquer les sous-domaines concernés et l’adresse LAN cible :

address=/annuaire.monsite.com/dsm.monsite.com/mail.monsite.com/music.monsite.com/surveillance.monsite.com/video.monsite.com/vpn.monsite.com/www.monsite.com/192.168.X.X

Emails

Il est nécessaire de créer des Emails qui correspondront au Common Name (CN) des certificats clients qui seront utilisés dans le cadre de la méthode EAP-TLS. En effet, StartSSL vous demandera de valider l’Email lors de la procédure de création du certificat client.

Pour créer une adresse email chez OVH pour un sous-domaine, il faut créer une redirection. Cliquez sur le menu Emails, sur le bouton Gestion des redirections, puis sur le bouton Ajouter une redirection. Ajouter l’adresse Email en précisant le sous-domaine et l’adresse Email de redirection puis choisissez de ne pas conserver de copie de mail chez OVH :

Certificats X509

L’inscription aux services StartSSL, la création des certificats et leurs importations sur le NAS Synology sont détaillés dans les 2 derniers articles NAS Synology : certificats StartSSL et OpenVPN V2 et Outlook : Email signé et chiffré pour les certificats client.

Pour faciliter la configuration RADIUS, le plus simple est de créer un seul sous-domaine et un seul certificat qui sera utilisé à la fois sur les serveurs RADIUS et LDAP, d’autant plus que les certificats clients s’appuieront sur ce certificat SSL.

Dans notre exemple, le sous-domaine ainsi que le CN (Common Name) du certificat serveur SSL se nommera annuaire.monsite.com

Quant aux certificats clients, on reprend le suffixe du certificat serveur ce qui donne par exemple [email protected], ou [email protected], etc.

Importez le certificat client sur le PC Portable, sur l’iPhone/iPad et importez le certificat serveur sur le NAS :

Serveurs RADIUS et LDAP (Authentication Server)

Installez les packages RADIUS Server et Directory Server (LDAP) depuis le Centre de paquets du NAS.

Serveur LDAP

Lancez le serveur LDAP, cliquez sur Paramètres, saisissez le FQDN, annuaire.monsite.com, et un mot de passe :

Cliquez sur Sauvegarder et restaurer pour configurer une sauvegarde de votre annuaire. Cliquez sur le bouton Configurer :

Indiquez une destination (un dossier partagé), cochez la case Activer la sauvegarde programmée en précisant le calendrier :

Rendez-vous dans les menus Utilisateur et Groupe du serveur LDAP pour créer vos utilisateurs et vos différents groupes d’utilisateurs.

Une fois que s’est fait, il faut activer le client LDAP du NAS pour reconnaitre vos utilisateurs dans les applications Synology et logiciels tiers.

Lancez le Panneau de configuration, puis Domaine/LDAP, cochez la case Activer le client LDAP et indiquez les infos suivantes :

  • Adresse du serveur LDAP : localhost
  • Chiffrement : SSL/TLS
  • Base DN : dc=annuaire,dc=monsite,dc=com
  • Profil : Standard
  • Mettre à jour la liste utilisateur/groupe : 5 mn

Cliquez sur l’onglet Utilisateur LDAP pour retrouver les utilisateurs créés via le serveur LDAP :

Cliquez sur le bouton Accueil utilisateur et activer le service d’accueil pour les utilisateurs LDAP :

Un exemple de l’utilisation de LDAP avec les permissions d’un dossier partagé affectées à des groupes LDAP :

Serveur RADIUS

Lancez le serveur RADIUS, cliquez sur Paramètres et cochez la case Utilisateurs LDAP (laissez le port 1812 par défaut) :

Dans le menu Clients, on va indiquer les clients RADIUS (Authenticator) qui sont dans notre exemple les AP Wifi. Cliquez sur Clients et sur le bouton Ajouter :

Saisissez le nom de l’AP Wifi, le secret partagé, et l’adresse IP. Concernant le secret partagé, je vous conseille d’utiliser une Passphrase en reliant les différents mots par un tiret et en supprimant les accents :

Vous pouvez décider de bloquer l’accès à votre réseau à certains utilisateur ou groupe LDAP. Cliquez sur Liste de blocages et ajouter un utilisateur via l’onglet Utilisateur LDAP ou un groupe via l’onglet Groupe LDAP :

AP Wifi (Authenticator)

Cisco WAP371

Déclarez le serveur RADIUS en cliquant sur le menu System Security puis RADIUS Server. Indiquez l’adresse IP du NAS et le secret partagé définit dans le menu Clients du serveur RADIUS du NAS :

Déclarez un réseau Wifi via le menu Wireless puis Networks et indiquez les paramètres suivants :

  • VLAN ID : 1
  • SSID : par exemple resowifi
  • SSID Broadcast : cochez la case
  • Security : WPA Enterprise
  • MAC Filter : Disabled
  • Channel Isolation : cochez la case
  • WAP versions : WPA2-AES
  • Enable pre-authentication : cochez la case
  • MFP : Capable
  • Use global RADIUS server settings : cochez la case

TP-Link TL-WR902AC

Dans le menu Wireless 5GHz (à reproduire dans le menu Wireless 2.4GHz), cliquez sur Wireless Security, cochez la case WPA/WPA2 Enterprise et indiquez les paramètres suivants :

  • Version : Automatic
  • Encryption : Automatic
  • RADIUS Server IP : l’adresse IP du NAS
  • RADIUS Port : 1812
  • RADIUS Password : le secret partagé définit dans le menu Clients du serveur RADIUS du NAS
  • Group Key Update Period : 0

Clients (Supplicant)

Une fois que vous êtes arrivés à ce chapitre, il n’y a quasiment plus rien à faire car vos différents clients fonctionneront en activant par défaut la méthode PEAPv0/EAP-MS-CHAPv2.

Par contre pour faire fonctionner vos clients avec des certificats via la méthode EAP-TLS, il sera nécessaire d’apporter des modifications au serveur RADIUS du NAS.

Les clients vont donc être traités par méthode EAP pour bien mettre en évidence les différences de paramétrage du serveur RADIUS

PEAP

Serveur RADIUS

Comme indiqué plus haut, rien à modifier sur le serveur RADIUS qui fonctionnera avec le protocole PEAP en relation avec le serveur LDAP pour vérifier l’identité du client qui cherche à se connecter au réseau.

Windows 10

Sur le PC portable sous Windows 10, cliquez sur l’icône Wifi dans la barre des tâches et saisissez votre login + MDP qui correspond à l’utilisateur LDAP créé sur le NAS Synology :

Lors de la première connexion, Windows vous demande si vous voulez vous connecter au réseau Wifi resowifi et vous propose de vérifier l’empreinte du certificat du serveur RADIUS. Cliquez sur le bouton Se connecter :

On va maintenant modifier les propriétés du réseau Wifi resowifi. Cliquez sur l’icône Wifi dans la barre des tâches, puis sur Ouvrir le Centre Réseau et partage et enfin sur le lien Wi-Fi (resowifi) :

Cliquez sur le bouton Propriétés sans fil puis sur l’onglet Sécurité :

Dans l’onglet Sécurité, choisissez la méthode d’authentification réseau, Microsoft PEAP, puis cliquez sur le bouton Paramètres avancés, choisissez alors Authentification utilisateur comme mode d’authentification puis validez :

En revenant dans les Propriétés du réseau sans fil resowifi, cliquez sur le bouton Paramètres et faites les paramétrages suivants :

  • Cochez la case Vérifier l’identité du serveur en validant le certificat. L’objectif est de vérifier qu’on se connecte au bon serveur RADIUS afin d’éviter une attaque de type « man in the middle » (un AP Wifi pirate qui se fait passer pour votre AP afin de vous subtiliser votre login/MDP)
  • Cochez la case Connexion à ces serveurs et saisissez le Common Name du serveur RADIUS soit annuaire.monsite.com
  • Dans la fenêtre Autorités de certification racine de confiance (CA), choisissez dans la liste proposée le certificat StartCom Certification Authority (CA pour les certificats StartSSL), afin de vérifier que le certificat serveur a bien été émis par StartCom
  • Dans la fenêtre déroulante Notifications avant la connexion, choisissez Ne pas demander à l’utilisateur d’autoriser de nouveaux serveurs, ce qui aura pour effet de refuser la connexion si la vérification de l’identité du serveur échoue
  • Dans la fenêtre déroulante Sélectionner la méthode d’authentification, choisissez Mot de passe sécurisé (EAP-MSCHAP version 2) puis cliquez sur le bouton Configurer afin de vérifier que la case Automatically use my Windows logon name and password n’est pas cochée

A la prochaine connexion à ce réseau Wifi, Windows ne vous demandera plus de valider le certificat serveur et vous proposera la fenêtre de connexion suivante :

A noter que vous pouvez exporter ce profil réseau afin de l’importer sur d’autres PC portable devant se connecter à ce même réseau.

Pour lister les profils Wifi en ligne de commande :

netsh wlan show profiles

Pour exporter le profil Wifi resowifi :

netsh wlan export profile name="resowifi" folder="C:\Users\[Votre_Nom]\Desktop"

Pour importer le profil Wifi resowifi :

netsh wlan add profile name="resowifi" folder="C:\Users\[Votre_Nom]\Desktop"

iOS

Pour signer le certificat serveur RADIUS présenté au terminal lors de la première connexion Wifi, il est nécessaire d’importer dans le magasin de certificats du terminal (Réglages – Général – Profils) le nouveau certificat d’autorité racine SSL, StartCom Certification Authority G3.

Retrouvez ce certificat dans le magasin de certificats StartSSL, téléchargez-le et renommez-le en “.crt”.

Pour l’installer, envoyer le certificat racine par mail, ouvrez la pièce jointe et suivez les instructions.

Sur l’iPhone/iPad, cliquez sur l’icône Réglages, puis menu Wifi, active-le et choisissez votre réseau Wifi. Saisissez votre login + MDP qui correspond à l’utilisateur LDAP créé sur le NAS Synology :

L’iPhone/iPad vous demandera à la première connexion de valider le certificat du serveur RADIUS (annuaire.monsite.com). Cliquez sur le bouton Se fier :

EAP-TLS

Serveur RADIUS

Pour activer le protocole EAP-TLS sur le serveur RADIUS du NAS Synology, il va falloir modifier le fichier eap.conf via une console SSH sur le NAS Synology :

sudo vi /volume1/@appstore/RadiusServer/etc/raddb/eap.conf

Apportez les modifications suivantes dans le fichier eap.conf :

	eap {
		default_eap_type = tls
		timer_expire     = 60
		ignore_unknown_eap_types = no
		cisco_accounting_username_bug = no
		max_sessions = 4096

#		md5 {
#		}

#		leap {
#		}

#		gtc {
#			auth_type = PAP
#		}

        tls {
            certdir = ${confdir}/certs
            cadir = ${certdir}/ca
 
            #private_key_password = 12345
            private_key_file = /usr/local/etc/certificate/RadiusServer/radiusd/privkey.pem
            certificate_file = /usr/local/etc/certificate/RadiusServer/radiusd/fullchain.pem
            #$INCLUDE /usr/local/synoradius/rad_ca_cert
            check_cert_cn = %{User-Name}
            check_cert_issuer = "/C=ES/O=StartCom CA/OU=StartCom Certification Authority/CN=StartCom CC2 ICA"
            #check_crl = yes
            #virtual_server = check-eap-tls
            CA_file = ${cadir}/ca_client_bundle_newstartssl.pem
            CA_path = ${cadir}
 
            dh_file = ${certdir}/dh
            random_file = ${certdir}/random
 
            cipher_list = "ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS"

            verify {
                tmpdir = /tmp
                client = "/usr/bin/openssl verify -CAfile ${..CA_file} %{TLS-Client-Cert-Filename}"
            }
        }

#		ttls {
#			default_eap_type = mschapv2
#			copy_request_to_tunnel = no
#			use_tunneled_reply = no
#			virtual_server = "inner-tunnel"
#		}

#		peap {
#			default_eap_type = mschapv2
#			copy_request_to_tunnel = no
#			use_tunneled_reply = no
#			virtual_server = "inner-tunnel"
#		}

#		mschapv2 {
#		}

	}

Les modifications sont les suivantes :

  • Dans la section EAP, modifiez le type d’EAP par default, default_eap_type, par tls
  • En dehors des sections EAP et TLS, commentez toutes les autres pour les désactiver sinon vous permettrez à l’utilisateur de se connecter toujours en PEAP, voire avec une autre méthode EAP, en plus de EAP-TLS. Or l’objectif est de renforcer la sécurité en autorisant uniquement le protocole EAP-TLS et l’utilisation des certificats sur le client et le serveur
  • Dans la section TLS, décommentez la variable cadir en modifiant la cible ${confdir}/certs/ca. Créez le dossier ca depuis le répertoire /volume1/@appstore/RadiusServer/etc/raddb/certs. Puis copiez le certificat suivant dans le dossier ca :
  • Commentez la variable private_key_password
  • Pas de changements pour les variables private_key_file et certificate_file qui représentent le certificat installé pour le serveur RADIUS au chapitre Certificats X509
  • Commentez la ligne $INCLUDE…
  • Ajoutez la directive check_cert_cn qui va vérifier que le nom d’utilisateur correspond bien au Common Name du certificat client qui doit être sous la forme [nom]@annuaire.monsite.com
  • Ajoutez la directive check_cert_issuer qui vérifiera que l’émetteur du certificat (issuer) est bien StartCom (StartSSL)
  • Je n’ai pas réussi à faire fonctionner les 2 directives suivantes, check_crl et virtual_server, et notamment le script check-eap-tls (à placer dans le dossier sites-available). Il n’y a pas d’incidence sur la sécurité vu les autres directives utilisées (check_cert_cn, check_cert_issuer et verify)
  • Décommentez la variable CA_file en modifiant la cible ${cadir}/ca_client_bundle_newstartssl.pem
  • Modifiez la cible de la variable CA_path par ${cadir}
  • Pas de changement pour les variables dh_file et random_file
  • Pas de changement pour la variable cipher_list
  • Ajoutez une vérification supplémentaire dans la directive verify avec une commande openssl verify -CAfile qui va vérifier le lien entre le CA, ${..CA_file}, et le certificat client, %{TLS-Client-Cert-Filename}. Ce dernier est copié temporairement dans le dossier /tmp du serveur RADIUS du NAS

Une fois que vous avez réalisé toutes ces modifications, relancez le serveur RADIUS :

sudo /volume1/@appstore/RadiusServer/syno_bin/RadiusServer.sh restart

Windows 10

Sur le PC portable sous Windows 10, cliquez sur l’icône Wifi dans la barre des tâches pour vous connecter. Si vous êtes passé par la méthode PEAP, vous obtiendrez le message suivant après avoir saisi votre login/MDP, ce qui est normal puisque le serveur RADIUS n’accepte plus que le protocole EAP-TLS :

Le plus simple dans ce cas et « d’oublier le réseau Wifi ». Cliquez sur le bouton Windows dans la barre des tâches puis sur Paramètres :

Cliquez sur le menu Wi-Fi puis sur le lien Gérer les réseaux connus :

Sélectionnez le réseau concerné, ici resowifi, et cliquez sur le bouton Oublier :

A partir de là, cliquez sur l’icône Wifi dans la barre des tâches et Windows vous demande alors de choisir un certificat. Choisissiez le certificat attendu par le serveur qui doit être de la forme [nom]@annuaire.monsite.com dans notre exemple :

Lors de la première connexion, Windows vous demande si vous voulez vous connecter au réseau Wifi resowifi et vous propose de vérifier l’empreinte du certificat du serveur RADIUS. Cliquez sur le bouton Se connecter :

On va maintenant modifier les propriétés du réseau Wifi resowifi. Cliquez sur l’icône Wifi dans la barre des tâches, puis sur Ouvrir le Centre Réseau et partage et enfin sur le lien Wi-Fi (resowifi) :

Cliquez sur le bouton Propriétés sans fil puis sur l’onglet Sécurité :

Dans l’onglet Sécurité, choisissez la méthode d’authentification réseau, Microsoft carte à puce ou autre certificat, cliquez sur le bouton Paramètres avancés, choisissez alors Authentification utilisateur comme mode d’authentification puis validez :

En revenant dans les Propriétés du réseau sans fil resowifi, cliquez sur le bouton Paramètres et faites les paramétrages suivants :

  • Cochez Utiliser un certificat sur cet ordinateur et cochez la case Utiliser la sélection de certificat simple
  • Cochez la case Vérifier l’identité du serveur en validant le certificat. L’objectif est de vérifier qu’on se connecte au bon serveur RADIUS
  • Cochez la case Connexion à ces serveurs et saisissez le Common Name du serveur RADIUS soit annuaire.monsite.com
  • Dans la fenêtre Autorités de certification racine de confiance (CA), choisissez dans la liste le certificat StartCom Certification Authority afin de vérifier que le certificat serveur a bien été émis par StartCom
  • Cochez la case Ne pas demander à l’utilisateur d’autoriser de nouveaux serveurs ou des autorités de certification approuvées ce qui aura pour effet de refuser la connexion si la vérification de l’identité du serveur ou du CA échoue

A noter que vous pouvez exporter ce profil réseau afin de l’importer sur d’autres PC portable devant se connecter à ce même réseau.

Pour lister les profils Wifi en ligne de commande :

netsh wlan show profiles

Pour exporter le profil Wifi resowifi :

netsh wlan export profile name="resowifi" folder="C:\Users\[Votre_Nom]\Desktop"

Pour importer le profil Wifi resowifi :

netsh wlan add profile name="resowifi" folder="C:\Users\[Votre_Nom]\Desktop"

iOS

Si vous êtes passé par la méthode PEAP, vous n’arriverez plus vous connecter, ce qui est normal puisque le serveur RADIUS n’accepte plus que le protocole EAP-TLS.

Le plus simple dans ce cas et « d’oublier le réseau Wifi ». Cliquez sur le l’icône Réglages puis sur le menu Wi-Fi. Sélectionnez le réseau Wifi concerné, resowifi, puis sur Oublier ce réseau :

Sélectionnez de nouveau ce réseau et cliquez sur Mode :

Choisissez la méthode EAP-TLS :

En revenant sur l’écran précédent, Mot de passe s’est transformé en Identité. Choisissiez alors le certificat attendu par le serveur qui doit être de la forme [nom]@annuaire.monsite.com dans notre exemple :

Saisissez le Nom d’utilisateur qui doit être de la forme [nom]@annuaire.monsite.com dans notre exemple et appuyez sur Rejoindre :

L’iPhone/iPad vous demandera à la première connexion de valider le certificat du serveur RADIUS (annuaire.monsite.com). Cliquez sur le bouton Se fier, toutefois si vous n’êtes pas passé par la phase PEAP, vous devez au préalable importer le nouveau CA StartSSL, StartCom Certification Authority G3 (voir le chapitre suivant) :

Références

https://en.wikipedia.org/wiki/IEEE_802.1X

https://omri.org.il/2012/06/09/securing-your-wifi-wpa2-enterprise-with-eap-tls-made-easy-with-open-source-tools/

http://reseaux85.fr/index.php?title=FreeRADIUS_-_Serveur_RADIUS_Libre

Droit d’auteur de l’image à la une : happyvector071 / 123RF Banque d’images