====== 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
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
SSLEngine on
SSLCertificateFile /etc/apache2/apache.pem
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
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
ServerAdmin webmaster@localhost
DocumentRoot /var/www/openca
SSLEngine on
SSLOptions +StrictRequire +StdEnvVars +ExportCertData
SSLCertificateFile /etc/apache2/apache.pem
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