Outils pour utilisateurs

Outils du site


braveo:openca

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

braveo:openca [2016/07/19 15:36] (Version actuelle)
Ligne 1: Ligne 1:
 +====== LA PAGE EST EN CONSTRUCTION=====
  
 +====== Braveo : OpenCa======
 +
 +Nous avons essayer d'​utiliser openca qui avec openldap nous donnaient un platreforme open :) mais sans resultats l'​installation est ok mais il ya un truc a faire et nous n'​avons trouvé. Voici ce qu'on a fait:
 + 
 +
 +je suit la [[http://​mm.cs.dartmouth.edu/​wiki/​index.php/​Installing_OpenCA|doc officiel ]]
 +
 +
 +Le produit que nous allons utiliser est OpenCA ​
 +prés requis: une debian(lenny) toute fraiche ​
 +
 +====installation de mysql====
 +  aptitude install mysql-server
 +
 +Se connecter au DBMS:
 +  mysql -u root -p -h localhost
 +
 +ensuite créer la base de donnée:
 +  CREATE DATABASE openca;
 +
 +et maintenant selection la base de donnée
 +  use openca;
 +
 +Donner les droits a l'​utilisateur openca
 +  GRANT ALL PRIVILEGES ON *.* TO '​openca'​@'​localhost'​ IDENTIFIED BY '​password';​
 +
 +et sortir
 +  exit
 +
 +l'​utilisateur est créé on peut le tester en se c onnectant avec:
 +  mysql -u openca -p -h localhost openca
 +
 +
 +
 +
 +====Apache====
 +maintenant nous allons configurer apache pour qu'il fasse du SSL 
 +je pars de cette doc 
 +http://​cloudservers.mosso.com/​index.php/​Debian_Lenny_-_Apache,​_SSL_and_Virtual_Hosts
 +
 +nous allons l'​installer ​
 +  aptitude install apache2
 +
 +Nous créons le certificats auto-signé
 +  openssl req $@ -new -x509 -days 365 -nodes -out /​etc/​apache2/​apache.pem -keyout /​etc/​apache2/​apache.pem
 +
 +on répond aux questions
 +  Country Name (2 letter code) [AU]:FR
 +  State or Province Name (full name) [Some-State]:​FRANCE
 +  Locality Name (eg, city) []:BREST
 +  Organization Name (eg, company) [Internet Widgits Pty Ltd]:Maison du libre
 +  Organizational Unit Name (eg, section) []:
 +  Common Name (eg, YOUR name) []: openca.braveo.net ​    
 +  Email Address []:
 +
 +on change les droits sur ce fichier
 +  chmod 600 /​etc/​apache2/​apache.pem
 +
 +ensuite on verifie que dans le fichier /​etc/​apache2/​ports.conf ​
 +  vi /​etc/​apache2/​ports.conf
 +qu'il y a bien la ligne 
 +  Listen 443
 +et toujours dans ce fichier on ajoute ​
 +  NameVirtualHost *:443
 +
 +  ​
 +
 +on active le module ssl 
 +  a2enmod ssl
 +
 +ensuite on va modifier le virtualhost défault pour qu'il fasse du ssl 
 +  vi /​etc/​apache2/​sites-available/​default
 +on lui ajoute ​
 +  <​VirtualHost *:443>
 +  ​
 +        ServerAdmin webmaster@localhost
 +  ​
 +        DocumentRoot /var/www/
 +  SSLEngine on
 +  SSLCertificateFile /​etc/​apache2/​apache.pem
 +  </​VirtualHost>​
 +
 +et on redemarre apache
 +  /​etc/​init.d/​apache restart
 +
 +on verifie que cela fonctionne avec un navigateur sur l'​adresse
 +  https://​adresseip/​
 +
 +maintenant que cela fonctionne nous allons configurer un site web que nous allons appeller openca.braveo.net
 +
 +nous allons créer un fichier /​etc/​apache2/​site-available/​openca
 +  vi /​etc/​apache2/​site-available/​openca
 +
 +et nous allons le remplir de tout ça 
 +  <​VirtualHost openca.braveo.net:​80>​
 +        ServerAdmin webmaster@localhost
 +        DocumentRoot /​var/​www/​openca
 +        ScriptAlias /cgi-bin/ /​usr/​lib/​cgi-bin/​
 +        ErrorLog /​var/​log/​apache2/​error.log
 +        # Possible values include: debug, info, notice, warn, error, crit,
 +        # alert, emerg.
 +        LogLevel debug
 +        CustomLog /​var/​log/​apache2/​access.log combined
 +        Alias /doc/ "/​usr/​share/​doc/"​
 +        Redirect / https:/​openca.braveo.net
 +  ​
 +  </​VirtualHost>​
 +  <​VirtualHost openca.braveo.net:​443>​
 +  ​
 +        ServerAdmin webmaster@localhost
 +  ​
 +        DocumentRoot /​var/​www/​openca
 +        SSLEngine on
 +        SSLOptions +StrictRequire +StdEnvVars +ExportCertData
 +        SSLCertificateFile /​etc/​apache2/​apache.pem
 +  </​VirtualHost>​
 +
 +ensuite on active le site 
 +  a2ensite openca
 +
 +et on reload apache ​
 +  /​etc/​init.d/​apache2 reload
 +
 +heu n'​oubliez pas de créer l'​entrée DNS ou de modifier le fichier host 
 +
 +on teste avec un navigateur ​
 +  https://​openca.braveo.net
 +
 +====OpenCA tools====
 +
 +On installer les dépendances ​
 +  aptitude install build-essential perl  libnet-ldap-perl \
 +  libcgi-session-perl libconvert-asn1-perl libdigest-hmac-perl libdigest-md5-perl \
 +  libdigest-sha-perl libdigest-sha1-perl libio-socket-ssl-perl libio-stringy-perl \
 +  libmime-base64-perl libmime-lite-perl libmime-tools-perl libmailtools-perl \
 +  libnet-server-perl ​ libparse-recdescent-perl ​ liburi-perl libx500-dn-perl \
 +  libintl-perl libssl-dev ​ libxml-twig-perl libxml-sax-expat-perl libexpat1-dev \
 +  libnet-ldap-perl ​
 +
 +il ya des dependances que je n'ai pu resoudre avec les paquets debain du coup je les install depuis le CPAN 
 +  perl -MCPAN -e shell
 +et ensuite installer les depandances ​
 +  install YAML
 +  install Encode::​Unicode
 +  install DB_File
 +le dernier plante a l'​install ​
 +alors j'ai essayé différent truc 
 +  aptitude install libdb4.5-dev  ​
 +marche pas mieux 
 +
 +j'ai essayer de le compiler a la main 
 +  cd /​root/​.cpan/​build/​DB_FIlexxxxx
 +  make test
 +
 +il plante sur Test:Pod
 +alors retour sous cpan 
 +  perl -MCPAN -e shell
 +et 
 +  install Test:Pod
 +il a un max de depandence j'​accepte ....
 +je retourne le repertoire DB_File
 +  cd /​root/​.cpan/​build/​DB_FIlexxxxx
 +je refait le make test 
 +  make test
 +il replante
 +ça me gonfle
 +  rm -rf DB*
 +
 +et re cpan 
 +  perl -MCPAN -e shell
 +et a nouveau un
 +  install DB_File
 +et la il est passé....J'​ai rien compris  ​
 +
 +open ldap ??
 +
 +ensuite telecharger [[http://​ftp.openca.org/​openca-tools/​releases/​|openca-tools]] ​
 +
 +decompresser le 
 +et faire le traditionnel ​
 +  ./​configure ​
 +  make clean
 +  make
 +  make install
 +
 +
 +====openCA====
 +
 +ensuite faire de même pour le [[http://​ftp.openca.org/​openca-base/​releases/​|openca-base]]
 +le télécharger et le décompresser
 +le configurer avec les options de compilation:​
 +  ./configure --prefix=/​opt/​openca-1.1.0 \
 +                 ​--with-ca-organization="​Braveo"​ \
 +                 ​--with-httpd-fs-prefix=/​var/​www \
 +                 ​--with-httpd-main-dir=pki \
 +                 ​--with-db-name=openca \
 +                 ​--with-db-host=localhost \
 +                 ​--with-db-user=openca \
 +                 ​--with-db-passwd=password \
 +                 ​--with-db-type=mysql \
 +                 ​--with-service-mail-account="​support@pki.braveo.net"​
 +
 +
 +  ​
 +  make 
 +  make install-offline install-online
 +
 +====openldap====
 +maintenant nous allons récupérer le schéma d'​openca pour le mettre dans l'open ldap
 +  scp  /​opt/​openca-1.1.0/​etc/​openca/​contrib/​openldap/​openca.schema root@ldaphost:/​etc/​ldap/​schema/​
 +
 +et éditer le fichier slapd.conf sur le ldaphost ​
 +  vi /​etc/​ldap/​slap.conf
 +
 +et ajouter aux lignes ​
 +  include ​        /​etc/​ldap/​schema/​core.schema
 +  include ​        /​etc/​ldap/​schema/​cosine.schema
 +  include ​        /​etc/​ldap/​schema/​nis.schema
 +  include ​        /​etc/​ldap/​schema/​dyngroup.schema
 +  include ​        /​etc/​ldap/​schema/​inetorgperson.schema
 +  include ​        /​etc/​ldap/​schema/​qmail.schema
 +la ligne
 +  include ​        /​etc/​ldap/​schema/​openca.schema
 +
 +Maintenant nous allons modifier le schéma d'​openldap car il declare un deuxieme fois la class pkiuser ​ et la class pkiCA
 +Donc sur ldaphost
 +  vi /​etc/​ldap/​schema/​openca.schema
 +ensuite aller à la ligne 122
 +et commentez le bloc
 +  objectclass ( 2.5.6.21 NAME '​pkiUser'​ SUP top AUXILIARY
 +        MAY ( userCertificate )
 +        )
 +  ​
 +  objectclass ( 2.5.6.22 NAME '​pkiCA'​ SUP top AUXILIARY
 +          MAY ( cACertificate $ certificateRevocationList $ authorityRevocationList $ crossCertificatePair )
 +          )
 +et redemarrer le ldap
 +  /​etc/​init.d/​slapd restart
braveo/openca.txt · Dernière modification: 2016/07/19 15:36 (modification externe)