Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client...
Transcript of Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client...
![Page 1: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/1.jpg)
OSSIR 08/11/2005 http://vulture.opensource.fr
Présentation du relais HTTP Open Source Vulture
Arnaud Desmons <[email protected]>Jérémie Jourdin <[email protected]>
![Page 2: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/2.jpg)
2Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Motivations
Historique
Démonstration
Présentation fonctionnelle
Présentation technique
L'interface d'administration
Roadmap
Présentation
![Page 3: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/3.jpg)
3Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Ouvrir les applications web sur Internet
Contrôler les accès
Centraliser les accès
Ne pas modifier l’existant
Motivations
![Page 4: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/4.jpg)
4Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Historique (1/2)
INTRINsec intègre de nombreux proxy inverse
Utilisation quasi systématique d'Apache
Le client manque souvent de compétences Open Source
Besoin croissant d'authentification forte
Pas de solution simple pour gérer les accès
Chaque client est un cas particulier configuration particulière
Vulture sort en GPLv2 en août 2004
Utilisation d'Apache 2 / Interface d'administration Web
L'interface intègre une gestion simple des ACLs
Vulture = Interface de configuration d'Apache
Les limites de Vulture sont celles d'Apache
![Page 5: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/5.jpg)
5Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Historique (2/2)
Des besoins non couverts par Apache
Nécessité du SSO
Nécessité de s'authentifier sur les applications
Contrôle d'accès unique, et indépendant du protocole
SQL, LDAP, RADIUS, X509...
VultureNG sort en GPLv2 en mars 2005
Utilisation d'Apache 2 / Interface d'administration Web
mod_perl prend en charge l'authentification
Système de plugin pour les méthodes d'authentification
Vulture ≠ Interface de configuration d'Apache
Les limites de Vulture sont celles de Perl
![Page 6: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/6.jpg)
6Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Présentation fonctionnelle
Proxy InverseFiltrage et réécritureAuthentificationSingle Sign OnDémonstrationPropagation de l'authentificationDémonstration
![Page 7: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/7.jpg)
7Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Présentation fonctionnelle
Proxy Inverse
Parefeu applicatif
Point d'accès unique
Filtrage au niveau IP
Répartition de chargepossible
![Page 8: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/8.jpg)
8Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Filtrage et réécriture
Réécriture des URL
Redirection interneRedirection externeRedirection vers un code d'erreur
Réécriture des entêtes permettant de transférer de l'information
IP du clientVariables du certificatConstantes
Présentation fonctionnelle
![Page 9: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/9.jpg)
9Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Authentification
Modules d'authentification intégrésSQLLDAP / Active DirectoryPar certificat numérique
ACL possibles pour chaque moduleConfigurables depuis l'interfacePar utilisateur, par groupe, par champs du certificat
Présentation fonctionnelle
![Page 10: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/10.jpg)
10Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Single Sign On
Si plusieurs applications partagent la même méthode d'authentification, Vulture ne demande le mot de passe qu'une seule fois à la première connexion de l'utilisateur et ce, sans configuration particulière.
Présentation fonctionnelle
![Page 11: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/11.jpg)
11Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Démonstration
![Page 12: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/12.jpg)
12Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Propagation de l'authentification
Permet d'associer un profil applicatifà une authentification
Permet avec le SSO decentraliser l’authentificationdes applications sansmodifications
Présentation fonctionnelle
login = adspasswd = coucou
login = testlang = fr
user = billpasswd = gates
![Page 13: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/13.jpg)
13Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Démonstration
![Page 14: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/14.jpg)
14Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Présentation technique
Architecture
Proxy Inverse
Filtrage et réécriture
Authentification
Single Sign On
Propagation de l'authentification
Packaging et installation
Interface d'administration
![Page 15: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/15.jpg)
15Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
ArchitecturePrésentation technique
Interface d'administrationmod_php (avec support SQLite)
Fichier de configuration VultureFichier de base de données SQLite
Proxy inverse Apachemod_perl + DBD::SQLitemod_proxy
![Page 16: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/16.jpg)
16Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Proxy inverse
Utilisation de mod_proxyRobuste et performantSupporte les protocoles FTP, HTTP et CONNECT (pour le SSL).Accessible depuis mod_perl...
Répartition de chargeVulture choisit aléatoirement une URL privée parmis plusieurs définies pour une application
Présentation technique
![Page 17: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/17.jpg)
17Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Filtrage et réécriture
Utilisation de mod_perl
Permet d’accéder à la plupart des données traitées par ApacheRequêtesRéponsesEntêtesIP du clientAccès au module mod_ssl
Permet de profiter de la puissance des expressions régulières^/redirect=(.*) => http://$1 [R]
^/redirect=(.*) => http://$1 [P]
admin => [403]
^/admin => /enroll.php [NOCERT,P]
Présentation technique
![Page 18: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/18.jpg)
18Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Authentification (1/2)
Authentification LDAP
Authentification SQL
Authentification par certificat
ACL
Stockage en base SQLite des ACLCumul avec l'authentification normalUtilisation de la PKI Rooster
Présentation technique
![Page 19: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/19.jpg)
19Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Authentification (2/2)
Les différentes méthodes d’authentification se basent sur les modules Perl :
Net::LDAP
DBD::SQLite
DBD::Pg
Apache::SSLLookup
Pour la gestion des ACL depuis l’interface PHP :Support LDAP/AD
PEAR
XMLRPC pour l’interrogation de la PKI Rooster
Présentation technique
![Page 20: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/20.jpg)
20Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
SSO (1/2)
GET / HTTP/1.1Host: app1:4242
HTTP/1.x 200 OKSet-Cookie: vulture=5e18a8702397dd0fbf235fea96e6b123; path=/Location: https://secure/?vulture=5e18a8702397dd0fbf235fea96e6b123
GET /?vulture=5e18a8702397dd0fbf235fea96e6b123 HTTP/1.1Host: secure
HTTP/1.x 401 Authorization Required
GET /?vulture=5e18a8702397dd0fbf235fea96e6b123 HTTP/1.1Host: secureAuthorization: Basic YWRtaW46YWRtaW4=
HTTP/1.x 200 OKSet-Cookie: vulture=cccf9f0264cc644faf03ec9c6a79aced; path=/Location: http://app1:4242
GET / HTTP/1.1Host: app1:4242Cookie: vulture=5e18a8702397dd0fbf235fea96e6b123
HTTP/1.x 200 OK...
Présentation technique
![Page 21: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/21.jpg)
21Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
SSO (2/2)
GET / HTTP/1.1Host: app2:4242
HTTP/1.x 200 OKSet-Cookie: vulture=32b61b6e70237dd0f97dd0feaf6b1b69; path=/Location: https://secure/?vulture=32b61b6e70237dd0f97dd0feaf6b1b69
GET /?vulture=32b61b6e70237dd0f97dd0feaf6b1b69 HTTP/1.1Host: secureCookie: vulture=cccf9f0264cc644faf03ec9c6a79aced
GET / HTTP/1.1Host: app2:4242Cookie: vulture=32b61b6e70237dd0f97dd0feaf6b1b69
HTTP/1.x 200 OK...
Présentation technique
![Page 22: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/22.jpg)
22Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
SSO Forward
Les informations sensibles du profil sont chiffrées avec le mots de passe de l'authentification associée (ou un code PIN si par certificat)
Les informations non sensible des profils sont accessibles depuis l'interface
Authentification par formulaire
Utilisation de la libwww dans mod_perl pour poster les informations et récupérer un cookie à la volée
Authentification htaccess
Génération du digest directement dans mod_perl
Présentation technique
![Page 23: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/23.jpg)
23Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Packaging et installation
Gentoo (dans l'arborescence officielle)# emerge vultureng
# echo "apache ALL=NOPASSWD:/usr/sbin/apache2" >> /etc/sudoers
# /etc/init.d/vultureng start
Mandriva (dans les contribs)# urpmi VultureNG
Windows
http://groups.opensource.fr/viewtopic.php?t=25
RPM INTRINseccommon# rpm i INTRINseccommon.rpm VultureNG.rpm
Sources
http://docs.opensource.fr/doku.php?id=vultureng:install
Présentation technique
![Page 24: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/24.jpg)
24Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Interface d'administration
Utilisation de phpmvcPortage en PHP de Struts
Egalement utilisé pour Rooster et Owl
Abstraction de la base de données
Protection contre l'injection SQL
DémonstrationGestion des interfaces réseau
Portail SSO
Méthodes d'authentification
Règles de réécriture
Répartition de charge
Gestion des filtres applicatifs
Gestion des formats de journalisation
![Page 25: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/25.jpg)
25Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Roadmap
Cumul des méthodes d'authentification
Opérateurs logiques entre les méthodes d'authentification (ET, OU)
Haute disponibilité
Combinaison de la répartition de charge et de la détection d'indisponibilité
Module d'apprentissage
Génération de whitelist
Système de plugin pour les modules d'authentification
Authentification Radius et SecureID
![Page 26: Pr sentation du relais HTTP Open Source VultureUtilisation quasi systématique d'Apache Le client manque souvent de compétences Open Source Besoin croissant d'authentification forte](https://reader034.fdocuments.net/reader034/viewer/2022051921/600e2b53f0ce2d5c681ffbec/html5/thumbnails/26.jpg)
26Présentation du relais HTTP Open Source Vulture
OSSIR 08/11/2005 http://vulture.opensource.fr
Questions