User Tools

Site Tools


formationsecurite:vpnwindows

Annuaire LDAP améliore la sécurité? Permet le single sign on (SSO). Avant, soit synchronisation par script, soit hacks pas très propres.

Microsoft pousse au single sign on, ce qui induit plus de sécurité.

Si pas de SSO. DC avec AD. member server avec serveur SQL:

  • intégré windows (AD)
  • pas intégré windows (SAM locale)

Je boote, je dois m'authentifier (avec un serveur Windows) → je reçois un token. J'accède aux shares (avec ACLs et mon token). Je dois accéder à une DB (peu importe le protocole). Soit l'auth permet d'y accéder, soit pas → je dois de nouveau m'authentifier → problème: l'admin réseau ou sécurité doit gérer 2 DBs: recréer des users, des groupes, etc. Quand un user part, on l'enlève de la 1ere DB, mais pas de la 2e (on oublie) → sécurité baisse (et c'est le bordel).

Tous les serveurs d'authentification sont Windows: pour les clients (postes de travail).

Ferme: ensemble de serveurs qui fournissent le même type de services. Comment la securiser? Pas à sécuriser. Question: c'est quoi le service? → architecte réseau: DMZ, ségrégation, placer la ferme au bon endroit → OK Ensuite, sécurité = comment les gens s'authentifient au service?

Comment gérer 200 PCs portables (pas dit qu'ils passent au bureau régulièrement)? → en local (= tu as un problème)

On a vu:

  • réseau
  • sécurité
    • login
    • sécurisation des accès ressources (shares)
    • sécurisation de l'AD

Sécurisation intrinsèque + réseau (sorti). cf. la journée sécurité

Les 3 jours ici: VPN = une forme de réseau. Sécurisation réseau → comment s'intègrent les VPNs?

PKI = public key infrastructure:

  • CA, etc.
  • aller un peu plus loin: on va devoir y faire appel pour le réseau
  • complexe, mais basé sur un principe: les autorités de certification
  • de plus en plus utilisé

Public Key Infrastructure

slide 17 Toute la sécurisation est basée sur la notion de confiance. On fait confiance à l'autorité de certification.

Exemples de vie courante

Est-ce qu'internet est sécure? non. Achat chaussures sur le site de Kickers: paiement par Visa. On doit faire confiance à Kickers puisqu'on leur donne le numéro de carte Visa.

Achat jambon Serrano: plein de vendeurs en ligne. Lequel choisir? Fait confiance qu'à un seul: celui qui a un certificat signé par Verisign (les autres, le formateur connaît pas → pas confiance).

Le formateur veut aller en UK avec “carte d'identité” belge (il est espagnol) → marche pas (pas espace Shengen, il faut un passeport, ou un vraie CI émise par le pays d'origine du formateur, l'Espagne). l'Etat est une autorité de certification. Et on lui fait confiance (personne ne contrôle l'Etat)

L'autorité de certification est une entité à laquelle on va faire confiance.

L'importance dans le PKI: le schéma de confiance: qui fait confiance à qui? Parfois dans un seul sens, parfois réciproque.

Qu'est-ce qu'un certificat? C'est la paire clef publique et clef privée + le fait que c'est associé à quelqu'un (ou quelque chose).

CI ou passeport: c'est rien en soi. Donne des accès, mais lié à qqn: c'est une accréditation. C'est la commune qui délivre les passeports. L'autorité de certification est la commune = pas tout à fait juste (cf. plus bas).

Ces certificats sont stockés dans un endroit (une DB par exemple) = certification publication point. A quoi ça sert de les stocker? Si doute, vérifie que personne existe bien → DB = point de référence

Persona non grata: je peux pas passer la frontière = révocation (dans la certificate revocation list) C'est l'autorité qui gère la certification revocation list.

Le PKI n'est pas utilisable pour tout, que pour les PKI enabled application (application internet).

Internet c'est une chambre à air: il y a plein de trous. Il y a des rustines. PKI en est une.

EFS Windows: il faut un PKI. Rappel: EFS système d'encryption de fichier Encrypte des fichiers sur NTFS. On en encrypte (avec une clef symétrique): résultat = cyphertext On stocke la clef symétrique dans le DDF data decryption field, et on l'encrypte avec la clef asymétrique de l'utilisateur. DRF = data recovery field qu'on ajoute aussi au cyphertext. il contient aussi la clef symétrique, encryptée avec la clef asymétrique du recovery agent

Dans Windows XP, c'est pareil mais il n'y a pas de PKI. Donc, l'autorité de certification c'est soi-même (le PC local).

Donc, la clef est dans le système → si doit récupérer fichier encrypté, il faut aussi le système. Quand on sauvegarde les fichiers encryptés, il faut encrypté le système.

Les password dans l'AD sont encryptés avec une clef, qui elle-même est encryptée par une syskey:

  • syskey dérivée d'un mot de passe (tape au boot)
  • disquette qu'on insère
  • registry dont l'accès est restreint

Certificate template

il y a différents types de certificats. template à un ou à plusieurs buts.

  • pour serveur web
  • pour machine
  • pour exchange

Certificate authorities

Au sommet de la hiérarchie: le root CA (il se fait confiance à lui-même: il crée son propre certificat) En-dessous: les subordinates CA (le CA root leur donne un certificat): plusieurs pour des raisons diverses (ex: géographique).

Il y a des règles pour émettre des certificats.

Ce qui a été émis (ex: un certificat émis à un client) ne remet pas en cause la confiance au-dessus.

Une société crée une hiérachie de confiance. Elle décide de faire un partenariat à une autre société qui a fait pareil. Elles se font confiance mutuellement. Mais si elles ne se font pas confiance, on prend une tierce partie indépendante externe. On construit une nouvelle hiérarchie de confiance basée sur un CA root de la tierce partie. Il faut tout recommencer (redistribuer tous les certificats).

Programme bancaire: qui est l'autorité de certification: la banque. Mais c'est la banque qui doit nous faire confiance: accès à mon compte personnel: la banque me fait confiance: c'est bien moi qui utilise le certificat.

On va chez Amazon: je donne mon compte Visa: c'est moi qui fait confiace à Amazon.

Mettre le root injoignable: pour être sûr du root (vérifier). Si on a distribué le certificat du root, on n'a plus besoin de lui. Sauf que les certificats ont une durée de vie limitée, donc on va devoir faire à nouveau appel au root CA.

Comment obtenir un certificat?

Monde Windows.

Distribution / attribution de certificats

Online (MS uniquement)

l'autorité de certification est joignable → ouvrir MMC et rajouter un objet certificate → clic droit → nouveau certificat on fait une requête de certificat en ligne → la CA accepte la requête (parce qu'on est authentifié dans windows, le jeton) et on a un popup: “voilà ton certificat, veux-tu l'installer?” + la CA stocke dans l'AD le certificat émis → certificat installé (= clefs privée et publique) dans un protected store (sur la machine, une smartcard…)

  distribution des clefs publiques: dans l'AD: je cherche dans l'AD toto et je peux importer sa clef publique

Conclusion: c'est simple d'utilisation.

email: standard basé sur protocole SMTP mail: propriétaire

quand on se connecte à un serveur exchange, on peut choisir SMTP ou exchange

Problème: quelqu'un fait 10 certificats pour la même chose solution: enlever l'accès à la MMC certificate

Distribution des certificats: via GPO.

Certification: c'est pas la panacée.

  • tu sais ce que fait le produit
  • c'est pas pour ça que que tu sais le mettre en oeuvre

Offline

Quand on installe un certificat, il faut que ça marche avec des applications non Microsoft → demande offline. Marche aussi avec des produits MS.

Celui qui génère la requête (FW, routeur, webserver) est le client PKI. Génération d'un fichier texte qui est envoyé à la CA (par exemple via un browser avec authentification) et à la sortie, on a un fichier certificat qu'on peut charger dans l'application.

Le client doit installer le certificat du CA. Il faut indiquer où trouver la CRL ou importer la CRL. Ceci permet au firewall de savoir si le portable qui veut se connecter a un certificat révoqué ou non (= est persona non grata ou non).

Certificats: enterprise (= dans l'AD) ou standalone (= pas dans l'AD). Il faut une bonne raison pour le faire en standalone.

Installation [[Windows]] 2000 Server

Ma machine:

  • member server
  • domaine: domain1.be
  • nom machine: ms11
  • IP: 10.10.3.3

Mettre le DNS du domaine (10.10.3.1) comme domaine.

  • rentrer dans le domaine:

My Computer → click droit → propriétés → onglet Network Properties → Properties → member of domain: domain1.be → OK

  • reboot
  • s'enregister auprès du DNS
ipconfig /registerdns

Pour avoir accès à mon site:

route add 213.189.176.215 mask 255.255.255.255 10.10.3.250

Ajouter dans le fichier E:\WINNT\system32\drivers\etc\hosts:

213.189.176.215	callendor.zongo.be
83.217.68.100	mail.hellea.be		jabber.reseaucitoyen.be
  • installer Certificate Services
  • Créer une MMC avec Certification Authority, ce qui permet de
    • révoquer des certificats émis
    • voir les certificats émis
    • –émettre des certificats–
    • policy settings: templates
      • il n'y en a pas beaucoup
      • on peut en ajouter: policy settings → click droit → new → certificate to issue

17/05/2005

Comment faire un request online et un request offline

Online

Methode [[Windows]]

mmc

add / remove snap-in: certificates snap-in

On trouve déjà des certificats émis par lui-même pour l'administrateur: c'est pour l'EFS (le recovery agent). On peut installe des certificats

Methode traditionnelle

Avec un browser: URL: site web par défaut de la machine ~/certsrv

Exercice

  • root: installer l'autorité de certification: certificat enterprise
  • autres machines: demander un certificat pour un user (faire une requête) et l'installer

Root

D'abord installer IIS: Start → settings → control panel → Add / Remove Programs → Add / Remove Windows Components → IIS (tout) Ensuite, installer les services de certificats: Start → settings → control panel → Add / Remove Programs → Add / Remove Windows Components → cocher certificates services (tout) (on ne peut plus renommer la machine, OK) Wizard: enterprise root CA + cocher advanced options → CSP: MS Base Cryptographic Provider; hash: SHA-1; key length: 1024 → remplir l'information d'identification → sauver ~C:WINNT\system32\CertLog → OK

Start → Programs → Administrative Tools → Certification Authority: pour voir ceux émis

mmc

Add / Remove Snap-in → Certificates

Autres machines

mmc

Add / Remove Snap-in → Certificates → manage certificates for my user account Certificates → Current user → Personal → Certificates → click droit → all tasks → request new certificate Erreur: Windows cannot find a a certification authority that will process the request.

Problème: le root CA du domaine n'est pas dans le certificate store: mmc avec certificates: Trusted Root Certificates Authorities → Certificates (Domain 1 CA n'est pas là) Pourquoi? Il faut s'identifier dans le domaine (j'étais loggué sur la machine). Sinon pas de trust. Ensuite, il faut soit redémarrer, soit réappliquer les security policies (GPO):

secedit /refreshpolicy user_policy /enforce

Quand on a un problème de troubleshooting, il faut chercher la cause, la solution viendra de là (ou ne viendra pas s'il n'y en a pas).

Si pas possible d'avoir le Root CA distribué comme ça, exporter le certificat root, distribuer le root CA par GPO.

Surfer sur ~http://dc11.domain1.be/certsrv/ S'identifier comme administrateur → Request a certificate → User certificate request → key strength: 1024 → rentrer un mot de passe (toto123*) → cliquer sur “install this certificate” Ceci est une requête online.

Smart card Smart card: codage

  • low assurance: carte vierge, auto-codée → mauvaise idée: il faut centraliser
  • high assurance: il faut centraliser le codage des smart cards (machine dédiée) → problème: on doit coder la smart card pour qqn d'autre → donner le pouvoir → enrollment agent (il faut donc un enrollment agent certificate)
    • attention: choix du module crypto: celui du lecteur de cartes (installé avec drivers)
    • activer l'indentification par smart card: AD Users & Computers → user → click droit → tab account → account options → cocher: smart card is required for interactive logon

Pour l'administrateur, on ne peut pas utiliser de smart card. Donc, on doit sécuriser autrement:

  • mot de passe (expiration, complexité)
  • changer le nom de l'administrateur et faire un bête user administrator

Comment retrouver le logon et password de l'administrateur sachant que les serveurs sont enfermés dans la salle des machines?

< 75 machines: outsourcing 75-200: un admin ~> 200: 2 admins

100 machines XP, 4 DC.

cache logon: store

Administrateur local d'une machine: quasi jamais désactivé → on met à blanc le mot de passe on se logge comme admin local, on utilise LCS hash du mot de passe dans ntuser.dat de le profil local de l'utilisateur Pour sécuriser:

  • désactiver l'administrateur local: problème, si on sort la machine du domaine, on doit le faire en tant qu'admin du domaine: on remet en workgroup, et plus personne ne peut se logguer sur la machine (guest disabled par défaut, et admin disabled par moi)
  • désactiver le cache logon

Encryption mail

exchange + SP3 à installer sur ma machine (dual boot, pas l'install VPN) avec: user1@domain1.be: password (mailbox: mailbox1) user2@domaine1.be: password (mailbox: mailbox2)

Network Communication Security

~S/MIME: applicatif SSL (pas un standard) / TLS (un standard, pas les mêmes algorithmes d'encryption):

IIS

Propriétés du Default Website

  • méthodes d'authentification niveau serveur (pas niveau applicatif): l'applicatif tourne avec les accréditations de l'utilisateur donné = impersonation

Applications: un ou plusieurs process process: morceau d'application thread: la plus petite unité qu'un process exécute

contexte de sécurité pour un service: en général, tourne sous le system account (moins de pouvoir qu'un utilisateur)

Si IIS ne demande pas d'authentification: anonymous S'il faut s'identifier: lire page = accès partition NTFS: il faut les droits; exécuter un script: soit impersonation soit avoir logon et passwd dans le code (pas bien): c'est le programmeur qui décide.

On émet un certificat dans les propriétés d'IIS.

Accès au site en HTTP ou en HTTPS. Si on veut forcer en HTTPS: on désactive l'HTTP.

Dans une application web: si login et password à rentrer: utiliser HTTPS.

Quand on fait une connexion en HTTPS, on peut voir le certificat du serveur. Mais le client, on sait pas qui c'est. On peut mettre comme configuration dans IIS que l'utilisateur doit présenter un certificat. Conclusion: on se retrouve dans un canal sécurisé avec les 2 bouts qui se sont authentifiés = bon niveau de sécurité

Exchange 2000

Sur l'install SecuriteWindows, installer exchange 2000, créer 2 utilisateurs dans l'AD: user1 et user2 et leur faire une boîte email. Sur une autre machine d'un autre domaine, on génère les certificats user pour user1 et user2 pour permettre l'encryption et la signature.

user1 veut envoyer une email encrypté à user2

  • chercher user2, l'ajouter à l'address book
  • envoyer un email encrypté
  • user2 va voir sa boîte et voir un email encrypté, il est le seul à pouvoir le lire
  • voir le mail encrypté: le copier, le coller sur le bureau et l'ouvrir dans notepad

→ les certificats n'ont rien à voir avec le serveur

Le gros avantage Windows, c'est que c'est super facile de retrouver l'utilisateur et son certificat (clef publique) parce qu'il sont publiés dans l'AD.

Exercice

Exercice 1: Les 2 member serveurs sont utilisés par l'utilisateur admin et ont généré un certificat utilisateur. On a 2 DCs avec IIS:

  • activer SSL
  • require client certificate
    • tester avec le certificat local
    • virer le certificat local et réessayer

Exercice 2:

  • installer IIS sur les member servers
  • faire une requête offline

Exercice 3:

  • créer sur l'unique serveur Exchange de la classe user3, 4 → 8 @domain1.be (mot de passe: password) avec une mailbox
  • écrire des emails encryptés, les envoyer, les réceptionner et les lire

Exercice 1: Je suis member server. Certificat:

mmc

Certificates - Current User → Personal → click droit → all task → request new certificate → wizard → template: user → install → OK.

Ensuite, on peut surfer sur https://dc11.domain1.be/ avec MSIE. Avec Firefox, il faut d'abord importer le client certificate manuellement. Le site par défaut de dc11.domain1.be requiert HTTPS et une authentification windows. Si on supprime le certificat, il n'y a plus moyen de surfer sur le site.

Exercice 2: Installer IIS: Start → Settings → Control Panel → Add / Remove Programs → Add / Remove Windows Components → sélectionner IIS → Details → sélectionner WWW Server (le dernier) Configurer IIS: Start → Programs → Administrative Tools → Internet Information Services ms11 → Default Website → click droit → propriétés onglet Directory Security → bouton Server Certificate → create certificate → prepare the request now, send it later clef 1024 bits sauver la requête: E:\certreq.txt Regénérer un certificat comme au début de l'exercice 1. Aller sur ~https://dc11.domain1.be/certsrv/ (il faut s'être authentifié comme administrator pour pouvoir faire une demande de certificat de type webserver, donc il faut que sur ce site de ce serveur anonymous soit désactivé) Request a certificate → advanced → Submit a certificate request using a base64 encoded PKCS #10 file or a renewal request using a base64 encoded PKCS #7 file → copier le contenu de E:\certreq.txt et le coller dans la text area Saved Request → submit → Download CA Certificate → ne pas double-cliquer sur certnew.cer qu'on vient de sauver Retourner dans les propriétés du Default Website dans IIS: onglet Directory Security → bouton Server Certificate → Process pending request and install the certificate → retrouver certnew.cer (sur le bureau) et l'installer

onglet Directory Security → Secure Communication → Edit → Require Secure Channel (SSL) Ensuite, il faut créer une page default.htm dans ~E:\Inetpub\wwwroot

Exercice 3: Je suis le serveur email, je crée les users user3 à user8 dans l'AD et je leur crée une boîte. Les autres créent les utilisateurs dans leur AD et se connectent avec Outlook Express. Après avoir généré les certificats, ils importent les certificats (les clefs publiques) en ajoutant l'utilisateur dans l'address book. Ensuite, envoi d'emails encrypté et signé et ouverture pas le récipiendaire.

Offline

Exporter le certificat (format texte). Surfer sur http://dc11.domain1.be/certsrv/ Envoyer la requête sur le serveur web Sur le serveur web, installer le certificat dans IIS. …

[[VPN]]

VPN = encrypté FAUX

Faire un réseau privé à travers un tunnel qui passe par un réseau public. Problèmes:

1. confidentialité -> encryption
2. intégrité: si qqn capture, change et envoie: problème
3. non repudiation: l'utilisateur / l'ordinateur qui essaie de rentrer dans le réseau privé: il doit s'authentifier (on doit être sûr que c'est bien lui)

Historique

Dans le temps, les besoins étaient simples: une société veut connecter ses différents sites puisque c'est une seule entité. Problèmes: Internet: 1980. Les besoins des sociétés sont antérieures. Jusqu'au début des années 90, pas le choix: ligne louée chez gros providers. Ligne louée: liaison point à point entre 2 sites. Très coûteux. Internet = les gros providers (colt, AT & T, Belgacom…) Les gros ISP ont construits des backbones; autant les utiliser pour remplacer les lignes louées. VPN des providers = MPLS (frame relay) Plus du point à point, mais une BP garantie, personne ne peut la lire (pas encrypté, passe par le réseau privé des providers) et qu'elle arrivera à bon port, etc. Jusqu'au début des années 2000, c'était comme ça. Scindé: connectivité et l'aspect VPN. Toujours très coûteux. free internet en dialup: 1998 1998-99, début du l'idée du télé-travail. Soit ISDN, soit MPLS avec un accès rapide qui se connecte dessus (ex: chez Belgacom: Bilan). 2000-2002: les providers avaient le monopole des VPNs. Ensuite, arrivé du broadband et du VPN IP: créer un tunnel encrypté sur IP (IP SEC) et donc les providers sous-jacents importent peu. Ca a fait mal aux ISPs: “chez nous, ça marche. Qui garantit qu'en passant n'importe où c'est secure?” En 2002-2003, les ISPs sont passés au VPN IP, ils ont bien dû faire le saut. Le seul dénominateur commun: internet. On crée des tunnels encryptés entre les sites. Avantage:

  • indépendance

Inconvénients:

  • si besoin de qualité de service, bof
    • quand on garanti 2 ~Mb/s, c'est juste sur le backbone du provider; une fois dehors, plus de garantie → si on utilise plusieurs providers, pas de garantie de BP
    • solution: prendre le même ISP: je veux accès backbone entre les différents sites → pareil qu'avant, mais beaucoup moins cher

Actuellement, les ISPs essayent de refourguer le MPLS d'une manière ou d'une autre. Avantage d'MPLS: énormément d'implémentations, et gestion en externe (par le FAI).

Les lignes louées sont appelées disparaître. SDSL: 2 ~Mb/s max

Qu'est-ce qu'un VLAN? 802.1.Q: tagging Quand on a une trame, elle est taggée “VLAN1”. Elle est routée sur un switch. On sécurise en séparant (segmentant) les connexions. Pour les connexions confidentielles, on va devoir sécuriser (encryption): IPSEC. Ex: machine du comptable Chez Microsoft: IPSEC policies

Bien comprendre que VPN et VLAN, c'est différent. VLAN = interne: dans un LAN (dans un réseau privé) VPN = externe: dans un réseau public (ex: internet), tout le trafic passe par un tunnel (tout les applicatifs)

IPSEC

slide 33

  • AH: authentication header: rajoute un header avec signature du paquet
    • le système est intègre (si contenu modifié, le header ne correspond plus)
    • on ne peut rien modifier dans le header: pas de spoofing
    • on ne peut pas relancer (replay) un paquet
    • résolu tous les problèmes de sécurité sauf confidentialité
    • transport mode (traditionnel)
    • tunnel mode (toujours pas encrypté)
  • ESP
    • on rajoute un tag ESP, un header, un trailer, on encrypte et on signe, et on met un nouveau header
    • pas de spoofing (header encrypté)
    • changement entre nouveau header et header encrypté:
    • transport mode (peu utilisé)
    • tunnel mode (le plus courant)
  • NAT fait du PAT (port address translation) → pas utiliser IPSEC
  • 2001 (draft → RFC): IPSEC NAT-T (T pour traversal): tout encapsuler dans paquet UDP
    • on ne peut tranverser qu'un seul NAT, sauf si on mappe port à port entre les 2 NATs (pas de PAT): devices du type NAT-T

MS IPSEC Policies

Chez MS, il y a des policies (machines) pré-existantes. Nous allons les voir.

Machine par machine

TCP / IP → Advanced → Options → IP Security

  • type d'IPSEC
  • façon de s'authentifier
    • certificats
    • pre-shared keys
    • kerberos: choix de MS: toute machine dans un domaine fait partie d'un realm kerberos
      • pas de canal sécurisé qui pas dans le domaine
      • facile d'utilisation (pas de certificat à émettre, pas de clef à partager)
  • client: reçoit une demande de canal sécurisé, pas initiateur
  • serveur: initie une demande de canal sécurisé
  • secure server: demande toujours du sécurisé

Globalement: GPO

On peut créer des GPOs soi-même.

Pour créer un tunnel, on utilise 2 algorithmes: un fort, et un moins fort comme failover.

Problème: on crée une règle IPSEC, on déploie, et puis ça foire: il y a des machines qui ne communiquent plus → il faut aller manuellement sur toutes les machines désactiver ou corriger. Donc, tester avant (de préférence en labo, même si on n'en n'a pas souvent à disposition).

Exercice

Member server (moi): client IPSEC DC (Dimitri): server request

  • MS ping DC
  • accès au share du DC

Pareil avec DC en server require Chacun utilise IPSEC Mon (monitor) pour voir ce qui se passe.

ipsecmon

My Network Places → click droit → properties → Local Area connexion → click droit → properties → ~TCP/IP → Properties → Advanced… → tab Options → IP Security → Properties → use this IP security policy → client

Dimitri fait pareil mais au lieu de client, il met Server (request).

E:\>ping 10.10.3.1

Pinging 10.10.3.1 with 32 bytes of data:

Reply from 10.10.3.1: bytes=32 time<10ms TTL=128
Reply from 10.10.3.1: bytes=32 time<10ms TTL=128
Reply from 10.10.3.1: bytes=32 time<10ms TTL=128
Reply from 10.10.3.1: bytes=32 time<10ms TTL=128

Ping statistics for 10.10.3.1:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum =  0ms, Average =  0ms

Share:

iexplore

path: \\DC11 J'ai accès aux shares.

Dimitri change: il met Server (require)

E:\>ping 10.10.3.1

Pinging 10.10.3.1 with 32 bytes of data:

Reply from 10.10.3.1: bytes=32 time<10ms TTL=128
Reply from 10.10.3.1: bytes=32 time<10ms TTL=128
Request timed out.
Request timed out.

Ping statistics for 10.10.3.1:
    Packets: Sent = 4, Received = 2, Lost = 2 (50% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum =  0ms, Average =  0ms

Share:

iexplore

path: ~\\DC11 J'ai toujours accès aux shares.

Quand on envoie des paquets ICMP (ping), ça ne passe pas dans le tunnel. Donc, avec serveur request, c'est possible; avec server require, ça ne passe pas.

Explication: Start → Programs → Administrative Tools → Group Policies

Il faut être séquentiel dans la manière de mettre en oeuvre.

Exemple: si pas accès au share: ça peut être parce qu'on a plus de ticket Kerberos parce qu'il ne trouve plus le KDC (donné par le DNS = trafic IP).

S'assurer qu'un serveur peut accéder aux ressources dont il a besoin → planifier

La partie VPN de Windows se configure dans le RAS (Remote Access Security).

Routing and Remote Access Security

En 2003, pareil qu'en 2000 (sauf pour NAT-T est natif en 2003). Routing en NT4: IP forwarding. Avec NT4: RAS (Remote Access Security) = dialup dialup et routing: c'est pareil → RAS = Routing and Remote Access Security Dialup: accès distant à travers un lieu permanent = VPN (on ajoute) Routing: inclus le NAT En NT4: dialing oui ou non, ensuite callback ou pas?

Remote Access Permission (Dial-in or VPN): 3 options:

  • allow access
  • deny access
  • Control access through Remote Access Permission → disponible en 2000 natif uniquement (c'est nouveau)
    • conditions (accès par ADSL, appartenance à tel groupe): cherche matching (le premier) et applique le profil correspondant
    • permissions
    • profil

~→ gestion fine du RAS

Comment mettre en place le routage?

Conseil d'ami: utiliser le wizard, puis corriger à la main.

Installer le driver de la carte ethernet

  • chercher sur CD-ROM, cocher en bas à gauche
  • sélectionner le driver pour Windows XP

RAS installé, il faut juste le configurer.

Configurer RAS pour le routage

Start → Program → Administrative Tools → Routing and Remote Access Server → Click droit → Configure and Enable Routing and Remote Access → Wizard → choisir le profil désiré (ici routeur)

Routeur: machine avec plusieurs ports de plusieurs subnet différents qui prend les paquets venant d'un subnet et les envoie sur un autre subnet.

Teaming: cartes qui fonctionnent ensemble (redondance): si une carte tombe, l'autre continue à travailler.

Pour chaque interface réseau, on peut ajouter des règles de filtrage (= ACL chez Cisco): les input / output filters.

NAT est considéré par MS comme un protocole de routage.

On peut aussi rajouter des routes statiques, mais en règle générale, il vaut mieux le faire avec la commande

route

Exercice

Routage

Sur DC11 (+activer le routage):

route add 10.10.3.0 mask 255.255.255.0 10.10.2.2
route add 10.10.4.0 mask 255.255.255.0 10.10.2.4
route add 10.10.5.0 mask 255.255.255.0 10.10.2.4
route add 0.0.0.0 mask 0.0.0.0 10.10.2.2

Sur DC12 (+activer le routage):

route add 10.10.1.0 mask 255.255.255.0 10.10.2.1
route add 10.10.4.0 mask 255.255.255.0 10.10.2.4
route add 10.10.5.0 mask 255.255.255.0 10.10.2.4
route add 0.0.0.0 mask 0.0.0.0 10.10.3.2

Sur DC21 (+activer le routage):

route add 10.10.1.0 mask 255.255.255.0 10.10.2.1
[route add 10.10.3.0 mask 255.255.255.0 10.10.2.2]
route add 10.10.5.0 mask 255.255.255.0 10.10.4.2
route add 0.0.0.0 mask 0.0.0.0 10.10.2.2

Sur DC22 (+activer le routage):

[route add 10.10.1.0 mask 255.255.255.0 10.10.4.1]
[route add 10.10.4.0 mask 255.255.255.0 10.10.4.1]
[route add 10.10.3.0 mask 255.255.255.0 10.10.4.1]
route add 0.0.0.0 mask 0.0.0.0 10.10.4.1

Sur MS11:

route add 0.0.0.0 mask 0.0.0.0 10.10.1.2

Sur MS21:

route add 0.0.0.0 mask 0.0.0.0 10.10.2.2

Sur MS22:

route add 0.0.0.0 mask 0.0.0.0 10.10.5.1

Sur MS12:

route add 10.10.1.0 mask 255.255.255.0 10.10.3.1
route add 10.10.2.0 mask 255.255.255.0 10.10.3.1
route add 10.10.4.0 mask 255.255.255.0 10.10.3.1
route add 10.10.5.0 mask 255.255.255.0 10.10.3.1

Internet

Connecter le switch à la prise murale Sur MS12:

route add 0.0.0.0 mask 0.0.0.0 10.10.3.250

Ca marche pas: il faut du NAT Donc, il faut 2 interfaces réseau (on ne peut pas faire du NAT sur 1 carte avec 2 IP) et 2 subnets différents. Comme on doit garder 10.10.3.0 pour aller vers l'internet (puisqu'on ne peut pas changer 10.10.3.250), il faut changer

10.10.3.0 en 10.10.6.0 dans le réseau interne, et donc changer les routes dans les routeurs.

Sur DC12: Changer l'interface 10.10.3.1 en 10.10.6.1

Sur MS12: Changer l'interface 10.10.3.2 en 10.10.6.2

Effacer les routes avec 10.10.3.0 sur les routeurs: Ex: sur DC11:

route delete 10.10.3.0 mask 255.255.255.0 10.10.2.2

Sur DC11 (+activer le routage):

route add 10.10.6.0 mask 255.255.255.0 10.10.2.2
route add 10.10.4.0 mask 255.255.255.0 10.10.2.4
route add 10.10.5.0 mask 255.255.255.0 10.10.2.4
route add 0.0.0.0 mask 0.0.0.0 10.10.2.2

Sur DC12 (+activer le routage):

route add 10.10.1.0 mask 255.255.255.0 10.10.2.1
route add 10.10.4.0 mask 255.255.255.0 10.10.2.4
route add 10.10.5.0 mask 255.255.255.0 10.10.2.4
route add 0.0.0.0 mask 0.0.0.0 10.10.6.2

Sur DC21 (+activer le routage):

route add 10.10.1.0 mask 255.255.255.0 10.10.2.1
[route add 10.10.6.0 mask 255.255.255.0 10.10.2.2]
route add 10.10.5.0 mask 255.255.255.0 10.10.4.2
route add 0.0.0.0 mask 0.0.0.0 10.10.2.2

Sur DC22 (+activer le routage):

[route add 10.10.1.0 mask 255.255.255.0 10.10.4.1]
[route add 10.10.4.0 mask 255.255.255.0 10.10.4.1]
[route add 10.10.6.0 mask 255.255.255.0 10.10.4.1]
route add 0.0.0.0 mask 0.0.0.0 10.10.4.1

Sur les routeurs, si on change quelque chose dans la configuration de l'adressage IP, il faut arrêter et redémarrer le service RAS.

Sur MS 12, arrêter le routage et redémarrer le RAS, mais choisir NAT (network address translation) plutôt que routage réseau.

Remarques

metric: poids: plus metric est grand, plus la priorité est faible

Quand on active un protocole dynamique, on ne contrôle plus la propagation des routes → les routes internet peuvent sortir à l'extérieur.

Troubleshooting:

  • pas faire essai / erreur
  • quand on a une erreur: s'arrêter et réfléchir: appliquer la logique

[[VPN]]

Topologies:

  • gateway to gateway: 2 réseaux avec chacun une situation géographique. Faire un tunnel avec adressage public, et à l'intérieur, on a les données avec les adresses privées.
  • client to gateway: pour le télétravail: employé se connecte au réseau
  • gateway mesh: 3+ sites interconnectés en nuage

Le gateway ne peut pas être une “bête” machine, ça doit être un firewall.

  • PPTP (couche 2 OSI): point to point tunneling protocol: par Microsoft
    • avantage (avant NAT-T): peut traverser NAT
    • steps
      • PPP connection & communication
      • PPTP control connection
      • PPTP data tunneling / data transmission
    • authentification (faible): login + password
      • ajouter des policies (numéros d'appel, etc.)
  • ~L2TP/IPSec + ajouter NAT-T en 2000
    • configuration que PPTP sauf qu'il y a les certificats en plus
    • origine: PPTP (MS) et L2TF (Cisco)
    • IPSEC ESP (transport mode)
    • basé sur certificats machine → PKI, root CA, etc. mais on peut choisir ce qu'on fait
    • traverse pas NAT (sauf avec NAT-T, un NAT)
    • steps
      • phase 1
        • SA avec 3DES-SHA1-DH2
        • authentification
    • ports:
      • UDP 500 pour IKE
      • UDP 1701 pour L2TP
      • IP protocol 50 pour IPSEC ESP
  • Encryption
    • L2TP: 3DES
    • IKE (Internet Key Exchange) avec algorithmes: 3DES avec SHA-1, DH Group 2 (1024 bits) [DH = Diffie-Hellman]

Interopérabilité possible, mais c'est mieux en général de bosser tout de la même marque (sinon risque de problème matching paramètres client / serveur). Si on choisit Microsoft, il vaut mieux un firewall Microsoft: ISA. Pas recommandé en général car: PPTP trop basse sécurité et sinon il faut IPSEC avec donc PKI. Avec Netscreen, il y a un soft client (pour tous les paramètres), mais il ne tourne que sous Windows. Si on veut un autre OS, il faut trouver un soft pour paramètrer (MCG l'a fait pour un portable MAC).

Avec IPSEC, c'est plus sûr: il faut un certificat. Avec PPTP, login password et c'est bon.

Start → Programs → Administrative Tools → Routing and Remote Access Configure and enable RRAS → VPN serveur → connexion internet (4) → IP internes (privées): soit DHCP, soit range, soit range et serveur distribue (dans ce cas, le serveur prend une IP du range pour lui par tunnel, donc prévoir une en plus) → radius? non si AD (LDAP utilisé pour s'authentifier)

En client to gateway, pour chaque client, il faut 2 IPs privées.

ON peut configurer

  • procédure d'authentification

On peut créer des policies avec un profil (si on est en mode natif). N.B: dans l'AD Users & Computers, il faut que l'utilisateur puisse faire du dial-in.

Client: Créer une nouvelle connexion, choisir connexion VPN, on peut choisir le type d'authentification, le type de VPN (pas laisser en automatic, choisir PPTP ou ~L2TP/IPSEC)

  • creation tunnel
  • authentifie
  • peu commencer à travailler

Problème des VPNs Microsoft: tout le trafic est redirigé dans le tunnel, donc par exemple, plus possible de surfer en local.

Exercice

http://callendor.zongo.be/wiki/images/ex_routage.png

Faire 2 tunnels entre les MS et les DC

PPTP client to gateway

D'abord, les machines clientes (member servers pour l'exercice, soit MS11 et MS12) doivent faire une requête de certificat auprès de

l'autorité de certification du domaine (DC11).

mmc

Add snap-in → certificates → manage certificates for computer Console Root → Certificates → Personal → click droit → All tasks… → request new certificate → template: computer → OK

Ensuite, désactiver le routage sur les DCs et le NAT sur MS12.

Le client peut établir sa connexion VPN.

My Network Places → Properties → make new connection Ça marche pas (Connect to a private network through the internet est en grisé) parce que mon utilisateur n'est pas autorisé à faire de

dial-in.

AD Users & Computers → Users → sélectionner l'utilisateur → click droit → propriétés → onglet dial-in → allow (puisqu'on est dans un

domaine mixte, on ne peut pas faire autre chose que allow ou deny)

Ça marche toujours pas (toujours grisé). En enlevant le DNS secondaire (194.7.1.4), ça marche.

Dans les propriétés de la connexion VPN → onglet Type of VPN server I am calling: PPTP

Si on lance ipsecmon, on voit qu'il n'y a pas de paquets IPSEC qui passent:

ipsecmon

Regarder l'IP reçue:

ipconfig

Faire un ping sur l'IP que l'autre MS a reçu:

E:\>ping 10.10.2.162

Pinging 10.10.2.162 with 32 bytes of data:

Reply from 10.10.2.162: bytes=32 time<10ms TTL=126
Reply from 10.10.2.162: bytes=32 time<10ms TTL=126
Reply from 10.10.2.162: bytes=32 time<10ms TTL=126
Reply from 10.10.2.162: bytes=32 time<10ms TTL=126

Ping statistics for 10.10.2.162:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum =  0ms, Average =  0ms
formationsecurite/vpnwindows.txt · Last modified: 2013/01/30 17:52 (external edit)