SÉCURITÉ DU SI. Mini PKI. Denoun Jérémy De Daniloff Cyril Bettan Michael SUJET (3): Version : 1.0



Documents pareils
Serveur de partage de documents. Étude et proposition d'une solution afin de mettre en place un serveur de partage de documents.

Réaliser un inventaire Documentation utilisateur

Installation d OwnCloud 8.0 sous Debian Avec connexion des utilisateurs active directory et mise en place de HTTPS

Sécurité du Système d Information. Mini PKI

Déploiement d OCS 1.02 RC2 sous Debian Etch 64

NOTE: Pour une meilleure sécurisation, nous vous recommandons de faire l installation des outils web à l intérieur d un serveur virtuel.

Procédure d'installation

TP HTTP. Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A

Installation du serveur WEB Apache ( MySQL, PHP) sous Debian 7.

Serveur Web Apache - SSL - PHP Debian GNU/Linux

Étape 1 : gérer les certificats

Installation GLPI-OCSNG-SSL Linux Debian Sarge

Autorité de certification

Installation UpdatEngine serveur (CentOs apache2 / MySQL)

Fonctionnement et mise en place d un reverse proxy sécurisé avec Apache. Dimitri ségard 8 mai 2011

2013 Installation de GLPI-OCS. Florian MICHEL BTS SIO LYCEE SAINTE URSULE

Gestion d identités PSL Installation IdP Authentic

BTS SIO SISR3 TP 1-I Le service Web [1] Le service Web [1]

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB

Public Key Infrastructure (PKI)

Les serveurs WEBUne introduction

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Installation de la plate-forme Liberacces 2.0 «Intégrale» avec LiberInstall

Perso. SmartCard. Mail distribution. Annuaire LDAP. SmartCard Distribution OCSP. Codes mobiles ActivX Applet. CRLs

WEB-II, Compléments sous la forme de rapport de travaux pratiques. Stève Galeuchet & Florian Seuret. Massimiliano Babino

Projet de mise en œuvre d un serveur ftp sur serveur dédié

Tutoriel compte-rendu Mission 1

PUBLIC KEY INFRASTRUCTURE. Rappels PKI PKI des Impôts PKI de la Carte de Professionnel de Santé

Guide d'installation Application PVe sur poste fixe

Linux et le Shell. Francois BAYART. Atelier du samedi 20 Novembre

Administration Linux - Apache

Installation d OpenVPN

Les infrastructures de clés publiques (PKI, IGC, ICP)

CDS Invenio Installation et configuration de base

Installation du transfert de fichier sécurisé sur le serveur orphanet

LAMP : une nouvelle infrastructure LAMP. Une architecture modulaire. Installation

TP Service HTTP Serveur Apache Linux Debian

GUIDE D INSTALLATION. Portaneo Enterprise Portal version 4.0

L installation du module Webmail nécessite également quelques prérequis, à savoir :

Serveur Linux : FTP. Mise en place d un service FTP sous Linux. Bouron Dimitri 20/04/2014

Installation et utilisation d'un certificat

Différentes installations sur un serveur Windows 2000 ou 2003.

Préparation d un serveur Apache pour Zend Framework

Service de lettre électronique sécurisée de bpost. Spécificités techniques

Installation d un hébergement Web à domicile

CIBLE DE SECURITE CSPN DU PRODUIT PASS. (Product for Advanced SSO)

Matthieu Herrb Octobre Accès distants sécurisés - 18 octobre

Guide Utilisateur pour accès au réseau WiFi sécurisé 802.1X

Utilisation des certificats X.509v3

II- Préparation du serveur et installation d OpenVpn :

BTS SIO Dossier BTS. PURCHLA Romain

E-Remises Paramétrage des navigateurs

Documentation d'installation Plateforme femme actuelle

M2-RADIS Rezo TP13 : VPN

INSTALLATION NG V2.1 D OCS INVENTORY. Procédure d utilisation. Auteur : GALLEGO Cédric 23/10/2014 N version : v1

Oracle Developer Suite 10g. Guide de l installation. Vista & Seven

Authentification centralisée et SSO Sujet. Table des matières. 1 ORGANISATION Mode de rendu Informations complémentaires 1 2 SUJET 2

Accès aux ressources informatiques de l ENSEEIHT à distance

Comment avoir le logiciel? Le serveur web APACHE peut être téléchargé gratuitement du site web de APACHE:

Apache en tant que reverse proxy

Dans l'épisode précédent

Faille dans Internet Explorer 7

Windows Server 2008 Sécurité ADMINISTRATION ET CONFIGURATION DE LA SECURITE OLIVIER D.

CASE-LINUX MAIL - ROUNDCUBE

Version Décembre 2005

Hébergement de sites Web

Vous pouvez à présent à reconfigurer votre messagerie en cliquant ici.

IPS-Firewalls NETASQ SPNEGO

Exemple : vous voulez tester votre site en local avant de l uploader via FTP chez votre hébergeur externe.

SERVEUR HTTP Administration d apache

Serveur Subversion Debian GNU/Linux

Procédure d installation des outils pour la messagerie sécurisée

Ocs Inventory et GLPI s appuie sur un serveur LAMP. Je vais donc commencer par installer les paquets nécessaires.

Côté Labo : le service Web

SSL - TLS. Histoire, fonctionnement Sécurité et failles

Atelier Le gestionnaire de fichier

Se connecter en WiFi à une Freebox

Architectures PKI. Sébastien VARRETTE

Installation et configuration de Vulture Lundi 2 février 2009

Hébergement de site web Damien Nouvel

Middleware eid v2.6 pour Windows

Certificats Electroniques sur Clé USB

Logiciel de connexion sécurisée. M2Me_Secure. NOTICE D'UTILISATION Document référence :

Configuration du FTP Isolé Active Directory

Apache 2.4 Installation et configuration

Guide de démarrage IKEY 2032 / Vigifoncia

Signature électronique sécurisée. Manuel d installation

Faire fonctionner symfony sous wamp et windows avec des vhost. Installation de wamp

TP 7, 8 & 9 : Installation et Gestion de GLPI et Télédéploiement SISR 1 HUBERT JULIEN LABBE RICHARD DAY MICKAEL DOGNY CHRISTOPHE

Module 7 : Configuration du serveur WEB Apache

Le serveur web Apache

EJBCA PKI. Yannick Quenec'hdu Reponsable BU sécurité

INSTALLATION D UN CERTIFICAT FIDUCIO LOGICIEL

titre : CENTOS_CUPS_install&config Système : CentOs 5.7 Technologie : Cups Auteur : Charles-Alban BENEZECH

MANUEL D INSTALLATION D UN PROXY

Système Normalisé de Gestion des Bibliothèques -SYNGEB : version Réseau-

CS REMOTE CARE - WEBDAV

Transcription:

M I N I - P K I SRS Epita Promo 2009 SÉCURITÉ DU SI SUJET (3): Mini PKI Version : 1.0 Denoun Jérémy De Daniloff Cyril Bettan Michael 1 4-1 6 r u e v o l t a i r e 9 4 2 3 0 K r e m l i n B i c ê t r e - S R S

Introduction Objectif Le dossier suivant a pour objectif de décrire la mise en place d une infrastructure de PKI (mini) dans un objectif de sécurisation et d authentification sur un système d information Outils Pour mettre en place le service, nous avons utilisé les outils standard d une distribution *UNIX/BSD : un Shell la librairie OpenSSL. En effet après une analyse de l état de l art en matière de PKI, il apparaît qu une autorité de certification valide peut être mise en place avec OpenSSL en personnalisant le fichier de configuration openssl.cnf et en rédigeant un script enveloppe afin de faciliter l'exécution de tâche courante. Application Dans un second temps nous avons mis en place, une infrastructure Serveur Web / Client basée sur le protocole HTTPs (SSLv3) dans l objectif d identifier un client par son certificat personnel. Dans la suite du document, l on supposera les pré-requis suivant : La disponibilité d un serveur sous Linux / Debian L installation du paquet standard Apache 2 1

Mise en Place Certification On génère un certificat pour le serveur web à sécuriser. On vérifiera que le nscerttype contient bien server, pour éviter certain warning on pourra donner comme Common Name au certificat serveur, le nom du domaine hébergé. # openssl genrsa -out apache-ssl-key.pem # openssl req -key apache-ssl-key.pem -out apache-ssl.csr -new #./mini-pki user-sign apache-ssl.csr On transfère de manière sécurisé (scp par exemple), les fichiers apache-ssl-key.pem vers /etc/apache2/server.key, apache-ssl.crt vers /etc/apache2/server.crt, on transfère également le certificat de la CA vers /etc/apache2/ca.crt du serveur web enfin on transfère la CRL (vers /etc/apache2/cert.crl). On fera attention au droit à appliquer au différent fichier afin de protéger la lecture des curieux. Configuration Apache Afin de faire fonctionner apache correctement, on active les modules suivant : #a2enmod ssl #a2enmod header On modifie également le fichier ports # cat /etc/apache2/ports.conf Listen 80 Listen 443 # indique à Apache d écouter sur le port 443 2

Pour mettre en place notre application on configure le vhost suivant : # cat /etc/apache2/sites-available/ssl NameVirtualHost *:443 <VirtualHost *:443> ServerName "srs.epita.fr" #de préférence le ServerName doit correspondre au DocumentRoot /data/web/ssl/ # CommonName du certificat serveur SSLEngine on SSLOptions +StrictRequire +StdEnvVars +ExportCertData SSLProtocol -all +SSLv3 #Autorise uniquement le protocole SSLv3 SSLCertificateFile /etc/apache2/server.crt #Certificat du serveur SSLCertificateKeyFile /etc/apache2/server.key #Clef privée du serveur SSLVerifyClient require #Demande au client de s identifier SSLVerifyDepth 2 #Nombre d intermédiaire maximum SSLCACertificateFile /etc/apache2/ca.crt #Certificat du CA <IfModule mime.c> AddType application/x-x509-ca-cert.crt AddType application/x-pkcs7-crl.crl </IfModule> # A ajouter si le serveur met a disposition des certificats ou crl SSLCARevocationFile /etc/apache2/cert.crl # CRL en cours (a mettre a jour en cas de changement) RequestHeader set SSL_CLIENT_S_DN "%{SSL_CLIENT_S_DN}e" RequestHeader set SSL_CLIENT_M_SERIAL "%{SSL_CLIENT_M_SERIAL}e" RequestHeader set SSL_CLIENT_CERT "%{SSL_CLIENT_CERT}e" RequestHeader set SSL_CLIENT_VERIFY "%{SSL_CLIENT_VERIFY}e" RequestHeader set SSL_CLIENT_M_SERIAL "%{SSL_CLIENT_M_SERIAL}e" #Le mod Header nous permet d'insérer pour php les variables serveurs SSL dans le # header informations auquel PhP pourra accéder. </VirtualHost> On active notre vhost par : #a2ensite ssl enfin on redémarre apache avec #/etc/init.d/apache2 restart Pour finaliser notre application on crée le fichier index.php dans le dossier /data/web/ssl Bonjour M. <?= $_SERVER["SSL_CLIENT_S_DN_CN"]?> <br> Votre numéro de certificat est : <?= $_SERVER["SSL_CLIENT_M_SERIAL"]?><br> Votre adresse email est : <?= $_SERVER["SSL_CLIENT_S_DN_Email"]?> Notre serveur est maintenant prêt à recevoir les connexions. 3

Configuration Client La configuration du client afin d installer les différents certificats pour Internet Explorer se fait très facilement. Tous d abord on récupère sur le poste client (de manière sécurisé de préférence) le certificat de l autorité de certification, et le ou les certificats personnels. Le certificat de la CA au format X509, entraîne l affichage d un avertissement lors de la consultation des pages, nous avons donc privilégier le certificat au format DER (encodage base64) généré par notre script mini-pki (option). Un double clique sur le fichier lance le processus d installation du certificat. A l issue de cette étape notre Autorité de certification apparaît dans les autorités racines de confiance du système 4

On importe ensuite les certificats dans Internet Explorer.!! Pour assurer une diffusion sécurisé du certificat on peut utiliser le format PKCS12 qui inclut la clef privée et le certificat en son sein et assure une protection par mot de passe lors de son importation! 5

Une fois les certificats personnels importées, lors d un accès sécurisés avec authentification l on obtient une invite de sélection de certificat. On notera que selon les versions d Internet Explorer, le système classe par défaut nos certificats en autres personnes et donc ne propose pas l identification par ce certificat lors de la visite d un site nécessitant une identification. Dans ce cas il faut sélectionner la rubrique certificat personnel. Une fois tous les éléments mis en place on peut visiter la page web qui affiche bien les bonnes informations.! Vérification CRL Afin de vous assurer qu a chaque visite du site Internet Explorer identifie bien la CA, il faut vous assurer que l option : Outils -> Options Internet -> Avancée ->Vérifier la révocation serveur (A VERIFIER) est bien cochée. Du coté serveur l option SSLCARevocationFile nous assure cette vérification. On révoque un certificat pour tester notre système, on obtient bien : 6

! BONUS : vérification par OCSP Tous d abord, notre cahier des charges ne nous permet d assurer une vérification OCSP coté client, car cette fonctionnalité n est implémentée sous Internet Explorer 7 que dans sa version Windows Vista. Nous avons donc utilisée Mozilla Firefox sur Windows XP qui assure cette vérification. 7

Coté serveur, l affaire est plus difficile car le support de cette fonctionnalité n as pas encore été intégré dans la version stable d apache et de son module mod_ssl. Grâce aux différentes explications nous avons réussit a compiler une version qui prend en charges cette fonctionnalités. http://sitola.fi.muni.cz/~tauceti/?howto:apache_ocsp http://hecker.org/mozilla/foundation-activities-2007-08-31 wget http://www.uniontransit.com/apache/httpd/httpd-2.2.3.tar.bz2 wget http://sitola.fi.muni.cz/%7etauceti/?download=ocsp_apache_2.2.patch cd modules/ssl patch < ocsp_apache_2.2.patch aptitude install libssl-dev libssl0.9.8./configure --prefix=/home/bclass/apache2 --enable-ssl=shared --enable-maintainer-mode Une fois la version compilée nous remplaçons SSLCARevocationFile par (dans le vhost) # SSLOCSPEnable on # SSLOCSPDefaultResponder http://sd-1504.dedibox.fr:8888/ # SSLOCSPOverrideResponder on Le serveur ira donc vérifier par l OCSP la validité du certificat. Critiques & Conclusion Les autorités de certification donne des outils de sécurisation pour le système d information, les mécanismes sont certes bien rodés mais au vue des particularités de la génération des certificats, on peut retenir de ce dossier que la difficulté se situe au niveau des processus organisationnel autour de cette PKI plutôt que la difficulté technique des outils. On devra s assurer que les clef privée sont stockés de façon sécurisés et que les problématiques législatives sont respectés, afin de mettre en oeuvre un système stable et conforme. D autre part, la librairie OpenSSL fournit des outils de base pour cette PKI, si la direction informatique souhaite un outil de base cela peut très bien suffire (en particulier grâce au projet OpenCA) cependant des entreprises de sécurités fournissent des infrastructures (souvent dans une solution globale) pour résoudre cette problématique. Cependant on remarque que de nouveaux services apparaissent (tels OCSP) qui résolvent des problématiques différentes (montée en charge, cryptage), il faut donc faire attention que les outils utilisés assure un suivi et une maintenance du support des fonctions SSL. PJ au dossier : mini-pki : Script de gestion de la PKI && openssl.cnf : Configuration d OpenSSL 8

Fiche d identification du document Cycle éditorial Etudiant Denoun Jérémy 1/04/2008-18/04/2008 Etudiant De Daniloff Cyril 1/04/2008-18/04/2008 Etudiant Bettan Michael 1/04/2008-18/04/2008 Professeur Sébastien Bombal 18 avr. 08 Texte(s) de référence Historique des versions Version Date d application Date de retrait Diffusion 9