Difference between revisions of "PHPki/fr"
Line 1: | Line 1: | ||
{{Languages|PHPki}} | {{Languages|PHPki}} | ||
− | + | {{Note box|type=Note :| pour la v10, nous avons créé une nouvelle version mise à jour de PHPKi appelée PHPKi-ng avec des correctifs et des valeurs par défaut de sécurité plus élevées. Si vous utilisiez la version précédente, vous devrez créer une nouvelle autorité de certification et des certificats. Nous avons importé la version originale dans les contributions si vous avez vraiment besoin de l'utiliser, mais ce n'est pas recommandé et ce ne sera pas généralement publié.}} | |
=== Mainteneur === | === Mainteneur === | ||
+ | Initialement : | ||
[mailto:daniel@firewall-services.com[[User:VIP-ire|Daniel B.]]] de [http://www.firewall-services.com Firewall Services] | [mailto:daniel@firewall-services.com[[User:VIP-ire|Daniel B.]]] de [http://www.firewall-services.com Firewall Services] | ||
− | + | La contribution est maintenant maintenue par Koozali SME. | |
=== Version === | === Version === | ||
+ | Ancienne version avant SME10 : smeserver-phpki and phpki. | ||
+ | Nouvelle version : | ||
+ | {{ #smeversion: smeserver-phpki-ng }} | ||
+ | {{ #smeversion: phpki-ng }} | ||
− | + | Veuillez suivre les instructions d'installation ci-dessous, elles satisferont toutes les dépendances et les dernières versions des 2 paquets qui seront installés automatiquement. | |
− | |||
− | |||
− | Veuillez suivre les instructions d'installation ci-dessous, elles satisferont toutes les dépendances et les dernières versions des 2 | ||
=== Description === | === Description === | ||
− | [http://sourceforge.net/projects/phpki/ PHPki] est une application OpenSource pour gérer une multi-agency PKI conforme HIPAA. Avec ça, vous pouvez gérer de manière centralisée les certificats X.509 utilisés avec S/MIME activé sur les clients e-mail, serveurs SSL, et applications VPN. PHPki est maintenant utilisé pour gérer les certificats avec la dernière version de la | + | [http://sourceforge.net/projects/phpki/ PHPki] est une application OpenSource pour gérer une multi-agency PKI conforme HIPAA. Avec ça, vous pouvez gérer de manière centralisée les certificats X.509 utilisés avec S/MIME activé sur les clients e-mail, serveurs SSL, et applications VPN. PHPki est maintenant utilisé pour gérer les certificats avec la dernière version de la contribution [[OpenVPN_Bridge/fr|SME Server OpenVPN Bridge]]. |
− | Vous pouvez voir la démo d'installation [http://phpki.sourceforge.net/phpki/ ici] | + | Vous pouvez voir la démo d'installation [http://phpki.sourceforge.net/phpki/ ici.] |
=== Pré-requis === | === Pré-requis === | ||
Line 27: | Line 29: | ||
=== Installation === | === Installation === | ||
+ | <tabs container><tab name="SME 10"> | ||
+ | *Installer les paquets | ||
+ | yum --enablerepo=smecontribs install smeserver-phpki-ng | ||
− | + | Aller dans le gestionnaire du serveur au menu de configuration des certificats et commencer la création de votre certificat racine (CA). | |
− | + | Attention à ne cliquer qu'une seule fois et attendre le rafraichissement de la la page ; cela peut être très long de créer un certificat de 4096 bits... | |
− | *Installer les | + | |
− | yum --enablerepo=smecontribs install smeserver-phpki | + | </tab> |
+ | <tab name="SME 9"> | ||
+ | Vous devez activer le dépôt [[epel]]. | ||
+ | *Installer les paquets | ||
+ | yum --enablerepo=smecontribs,epel install smeserver-phpki | ||
− | * | + | *Et redémarrer les services nécessaires : |
expand-template /etc/httpd/conf/httpd.conf | expand-template /etc/httpd/conf/httpd.conf | ||
expand-template /etc/httpd/pki-conf/httpd.conf | expand-template /etc/httpd/pki-conf/httpd.conf | ||
Line 43: | Line 52: | ||
signal-event post-upgrade; signal-event reboot | signal-event post-upgrade; signal-event reboot | ||
− | + | Lors de la mise à jour, vous pouvez exécuter : | |
+ | expand-template /etc/httpd/conf/httpd.conf | ||
+ | expand-template /etc/httpd/pki-conf/httpd.conf | ||
+ | sv t /service/httpd-e-smith | ||
+ | sv t /service/httpd-pki | ||
− | |||
− | |||
− | * | + | </tab> |
+ | <tab name="SME 8"> | ||
+ | Pour sme8 | ||
+ | *Installer les paquets | ||
+ | yum --enablerepo=smecontribs install smeserver-phpki | ||
+ | |||
+ | *Et démarrer/redémarrer les services nécessaires : | ||
expand-template /etc/httpd/conf/httpd.conf | expand-template /etc/httpd/conf/httpd.conf | ||
expand-template /etc/httpd/pki-conf/httpd.conf | expand-template /etc/httpd/pki-conf/httpd.conf | ||
Line 56: | Line 73: | ||
*Sinon, il est aussi possible de redémarrer le serveur : | *Sinon, il est aussi possible de redémarrer le serveur : | ||
signal-event post-upgrade; signal-event reboot | signal-event post-upgrade; signal-event reboot | ||
+ | </tab> | ||
+ | </tabs> | ||
=== Configurer le nouveau PKI === | === Configurer le nouveau PKI === | ||
Line 85: | Line 104: | ||
La configuration par défaut devrait être OK pour la plupart des installations. Vous pouvez juste changer la partie "Help Document Contact Info". | La configuration par défaut devrait être OK pour la plupart des installations. Vous pouvez juste changer la partie "Help Document Contact Info". | ||
− | Une fois ce formulaire rempli (ce qui peut prendre plusieurs minutes), vous devriez avoir quelque chose comme ceci : | + | Une fois ce formulaire rempli (ce qui peut prendre plusieurs minutes, soyez patient, car la génération des paramètres dh peut être assez longue), vous devriez avoir quelque chose comme ceci : |
[[File:Phpki_init_finish.png|768px|thumb|center|Second part of the initiale configuration page]] | [[File:Phpki_init_finish.png|768px|thumb|center|Second part of the initiale configuration page]] | ||
Line 241: | Line 260: | ||
sv t /service/httpd-e-smith | sv t /service/httpd-e-smith | ||
− | {{Note box|type=Note :|Comme beaucoup d'autres | + | {{Note box|type=Note :|Comme pour beaucoup d'autres paquets, supprimer PHPki ne va pas le faire disparaître totalement de votre serveur. Surtout les certificats, ils seront conservés ainsi que certains fichiers PHP. PHPKi-ng tentera de sauvegarder tous les anciens certificats.}} |
Les certificats et fichiers de configuration PKI sont stockés ici : /opt/phpki/phpki-store, Les fichiers PHP sont ici : /opt/phpki/html | Les certificats et fichiers de configuration PKI sont stockés ici : /opt/phpki/phpki-store, Les fichiers PHP sont ici : /opt/phpki/html | ||
Line 267: | Line 286: | ||
chown root:phpki -R html/config.php | chown root:phpki -R html/config.php | ||
− | === | + | === Bogues === |
+ | Merci de signaler tout bug dans la section dédiée sur [http://bugs.contribs.org/enter_bug.cgi bugzilla]. | ||
+ | Pour l'ancienne contribution, sélectionner le composant smeserver-phpki ou utilisez {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-phpki|title= ce lien.}} | ||
+ | |||
+ | {{#bugzilla:columns=id,product,version,status,summary |sort=id |order=desc |component=smeserver-phpki|noresultsmessage="No open bugs found."}} | ||
+ | |||
+ | Pour la nouvelle contribution, sélectionner le composant smeserver-phpki-ng ou utilisez {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-phpki-ng|title= ce lien.}} | ||
+ | |||
+ | {{#bugzilla:columns=id,product,version,status,summary |sort=id |order=desc |component=smeserver-phpki-ng|noresultsmessage="No open bugs found."}} | ||
+ | |||
+ | Utiliser {{BugzillaFileBug|product=SME%20Contribs|component=phpki-ng|title=ce lien}}pour les bogues de phpki-ng seul. | ||
+ | |||
+ | {{#bugzilla:columns=id,product,version,status,summary |sort=id |order=desc |component=phpki-ng|noresultsmessage="No open bugs found."}} | ||
− | |||
− | |||
---- | ---- | ||
[[Category:Contrib/fr]] | [[Category:Contrib/fr]] | ||
[[Category:Administration:Certificates/fr]] | [[Category:Administration:Certificates/fr]] |
Revision as of 09:23, 16 June 2022
Mainteneur
Initialement : Daniel B. de Firewall Services La contribution est maintenant maintenue par Koozali SME.
Version
Ancienne version avant SME10 : smeserver-phpki and phpki. Nouvelle version :
Veuillez suivre les instructions d'installation ci-dessous, elles satisferont toutes les dépendances et les dernières versions des 2 paquets qui seront installés automatiquement.
Description
PHPki est une application OpenSource pour gérer une multi-agency PKI conforme HIPAA. Avec ça, vous pouvez gérer de manière centralisée les certificats X.509 utilisés avec S/MIME activé sur les clients e-mail, serveurs SSL, et applications VPN. PHPki est maintenant utilisé pour gérer les certificats avec la dernière version de la contribution SME Server OpenVPN Bridge.
Vous pouvez voir la démo d'installation ici.
Pré-requis
- SME Server 7.X
Vérifié sur : SME Server 7.4 - RequestedDeletion
Installation
- Installer les paquets
yum --enablerepo=smecontribs install smeserver-phpki-ng
Aller dans le gestionnaire du serveur au menu de configuration des certificats et commencer la création de votre certificat racine (CA).
Attention à ne cliquer qu'une seule fois et attendre le rafraichissement de la la page ; cela peut être très long de créer un certificat de 4096 bits...
Vous devez activer le dépôt epel.
- Installer les paquets
yum --enablerepo=smecontribs,epel install smeserver-phpki
- Et redémarrer les services nécessaires :
expand-template /etc/httpd/conf/httpd.conf expand-template /etc/httpd/pki-conf/httpd.conf sv t /service/httpd-e-smith sv u /service/httpd-pki
- Sinon, il est aussi possible de redémarrer le serveur :
signal-event post-upgrade; signal-event reboot
Lors de la mise à jour, vous pouvez exécuter :
expand-template /etc/httpd/conf/httpd.conf expand-template /etc/httpd/pki-conf/httpd.conf sv t /service/httpd-e-smith sv t /service/httpd-pki
Pour sme8
- Installer les paquets
yum --enablerepo=smecontribs install smeserver-phpki
- Et démarrer/redémarrer les services nécessaires :
expand-template /etc/httpd/conf/httpd.conf expand-template /etc/httpd/pki-conf/httpd.conf sv t /service/httpd-e-smith sv u /service/httpd-pki
- Sinon, il est aussi possible de redémarrer le serveur :
signal-event post-upgrade; signal-event reboot
Configurer le nouveau PKI
Dans le Server-Manager, vous trouverez un nouveau menu "Gestion des certificats". Ou vous pouvez utiliser le lien suivant : https://server.domain.tld/phpki/ca
Vous pouvez entrer les informations suivantes :
- Organisation
- Department
- Common Name of the Master CA
- E-mail (technical contact)
- City
- State
- Country Code
- Password (to protect the private key of the Master CA)
- Validity of the CA
- Keys size
- URL of your PKI (https://my.domain.tld/phpki)
Cette image montre la première (et la plus importante) partie de cette page de configuration :
La seconde partie ressemble à ceci :
La configuration par défaut devrait être OK pour la plupart des installations. Vous pouvez juste changer la partie "Help Document Contact Info".
Une fois ce formulaire rempli (ce qui peut prendre plusieurs minutes, soyez patient, car la génération des paramètres dh peut être assez longue), vous devriez avoir quelque chose comme ceci :
Maintenant, PHPki est prêt. Il est très simple à utiliser.
Il est accessible dans le Server-Manager ou vous pouvez utiliser le lien suivant : https://server.domain.tld/phpki/ca
Il existe aussi une interface publique, disponible uniquement sur les réseaux locaux, mais sans mot de passe, sur https://my.domain.tld/phpki.
Ici, les utilisateurs peuvent télécharger les Certificats Master CA, CRL, ou chercher les certificats des autres utilisateurs (uniquement dans la partie publique bien sûr).
Migration des certificats pour l'installation des versions précédentes de la contribs OpenVPN-Bridge
Si vous avez installé cette contrib PHPki parce que vous avez utilisé OpenVPN_Bridge avant et que vous aviez déjà des certificats, suivez les instructions suivantes. Cependant, si vous avez une installation neuve de OpenVPN_Bridge, ne suivez pas ces instructions, car vous n'avez aucuns « anciens » certificats.
PHPki est maintenant le gestionnaire de certificat recommandé pour OpenVPN_Bridge. Cette partie va vous expliquer comment importer vos certificats créés avec openvpn-bridge dans PHPki.
- Premièrement, vous avez besoin d'installer la contribution expliquée sur cette page (vous pouvez saisir n'importe quoi pour la configuration du CA, tous vos anciens paramètres seront restaurés).
- Deuxièmement, vous avez besoin de copier ce script sur votre serveur (par exemple /root/migrate.sh) et de l'exécuter en root.
#!/bin/bash # Read Openvpn-Bridge DB ORGNAME=$(/sbin/e-smith/db openvpn-bridge getprop default_config organizationName) COUNTRY=$(/sbin/e-smith/db openvpn-bridge getprop default_config countryCode) STATE=$(/sbin/e-smith/db openvpn-bridge getprop default_config countryName) LOC=$(/sbin/e-smith/db openvpn-bridge getprop default_config localityName) DEP=$(/sbin/e-smith/db openvpn-bridge getprop default_config sectionName) KEYSIZE=$(/sbin/e-smith/db openvpn-bridge getprop default_config keySize) EMAIL=$(/sbin/e-smith/db openvpn-bridge getprop default_config mailAddress) OPENSSL=/usr/bin/openssl OLDDIR=/etc/openvpn/easy-rsa/keys/bridge/ NEWDIR=/opt/phpki/phpki-store/CA/ # Store the actual time in $TIME TIME=$(date +%d%m%Y%H%M%S) # Create needed directories prepare_dir(){ mkdir -p $NEWDIR/{certs,newcerts,requests,pfx,private} } # Migrate the certificates to phpki store migrate_certs(){ cd $OLDDIR # Copy the old index.txt and serial cat $OLDDIR/index.txt > $NEWDIR/index.txt cat serial > $NEWDIR/serial # Copy the cacert related files cat ca.crt > $NEWDIR/certs/cacert.pem cat ca.key > $NEWDIR/private/cakey.pem # Now, for each file ending with .crt for CERT in $(ls ./*.crt); do CERT=$(basename $CERT .crt) ISININDEX=$(grep -c "/CN=$CERT/" $NEWDIR/index.txt) # If the current cert isn't referenced in the index, # or the corresponding key or csr file dosn't exists, then skip it # This can happen in some situation where the serial has been corrupted if [ $ISININDEX -gt 0 ]&&[ -s $CERT.key ]&&[ -s $CERT.csr ]; then # Retrieve the serial number as reported by openssl SERIAL=$(openssl x509 -noout -serial -in $CERT.crt | cut -d"=" -f 2) # Create the pem only cert in the new dir $OPENSSL x509 -in $CERT.crt -inform PEM -outform PEM -out $NEWDIR/newcerts/$SERIAL.pem # Create the der formated cert $OPENSSL x509 -in $CERT.crt -inform PEM -outform DER -out $NEWDIR/certs/$SERIAL.der # And the pkcs12 bundle (cert+key+ca) $OPENSSL pkcs12 -export -in $CERT.crt -inkey $CERT.key -certfile ca.crt -caname $ORGNAME -passout pass: -out $NEWDIR/pfx/$SERIAL.pfx # Copy the private key cat $CERT.key > $NEWDIR/private/$SERIAL-key.pem # And the cert request cat $CERT.csr > $NEWDIR/requests/$SERIAL-req.pem fi done } perms(){ # Restrict access chown -R phpki:phpki $NEWDIR chmod -R o-rwx $NEWDIR } phpki_conf(){ # Retrieve the common name of our CA with openssl command CACN=$($OPENSSL x509 -subject -noout -in $OLDDIR/ca.crt | cut -d'=' -f 8 | cut -d'/' -f 1) if [ -e /opt/phpki/phpki-store/config/config.php ]; then # Move the actual phpki configuration file mv /opt/phpki/phpki-store/config/config.php /opt/phpki/phpki-store/config/config.php.$TIME # And use sed to configure it properly sed -e "s/config\['organization'\].*/config\['organization'\] = '$ORGNAME';/" \ -e "s/config\['unit'\].*/config\['unit'\] = '$DEP';/" \ -e "s/config\['contact'\].*/config\['contact'\] = '$EMAIL';/" \ -e "s/config\['locality'\].*/config\['locality'\] = '$LOC';/" \ -e "s/config\['province'\].*/config\['province'\] = '$STATE';/" \ -e "s/config\['country'\].*/config\['country'\] = '$COUNTRY';/" \ -e "s/config\['common_name'\].*/config\['common_name'\] = '$CACN';/" \ -e "s/config\['ca_pwd'\].*/config\['ca_pwd'\] = '';/" \ -e "s/config\['keysize'\].*/config\['keysize'\] = '$KEYSIZE';/" \ /opt/phpki/phpki-store/config/config.php.$TIME \ > /opt/phpki/phpki-store/config/config.php fi } migrate_var(){ # Here, we just migrate dhparam and ta to phpki store if [ -e $OLDDIR/dh.pem ]; then cat $OLDDIR/dh.pem > $NEWDIR/private/dhparam1024.pem fi if [ -e $OLDDIR/ta.key ]; then cat $OLDDIR/ta.key > $NEWDIR/private/takey.pem fi } prepare_dir migrate_certs phpki_conf migrate_var perms
Maintenant, retournez dans le Gestionnaire du serveur, dans la gestion des certificats, et vérifiez que tous vos anciens certificats sont bien présents.
Désintallation
Pour procéder à la désinstallation, exécutez les commandes suivantes :
yum remove smeserver-phpki phpki expand-template /etc/httpd/conf/httpd.conf sv t /service/httpd-e-smith
Les certificats et fichiers de configuration PKI sont stockés ici : /opt/phpki/phpki-store, Les fichiers PHP sont ici : /opt/phpki/html
Réinstallation
Si vous souhaitez réinstaller la contribution, vous avez besoin de suivre ces étapes après avoir réinstallé les paquets :
cd /opt/phpki/html/ rm -f index.php rm -f setup.php ln -s main.php index.php cat config.php.rpmsave > config.php cd ca rm -f index.php ln -s main.php index.php cd /opt/phpki/ chown phpki:phpki -R phpki-store chown root:phpki -R html/config.php
Bogues
Merci de signaler tout bug dans la section dédiée sur bugzilla. Pour l'ancienne contribution, sélectionner le composant smeserver-phpki ou utilisez ce lien.
ID | Product | Version | Status | Summary |
---|---|---|---|---|
12297 | SME Contribs | 10.0 | CONFIRMED | ldap entries need to be sanitize. |
Pour la nouvelle contribution, sélectionner le composant smeserver-phpki-ng ou utilisez ce lien.
ID | Product | Version | Status | Summary (4 tasks) ⇒ |
---|---|---|---|---|
12436 | SME Contribs | 10.0 | CONFIRMED | failure to download crl |
12426 | SME Contribs | 10.0 | CONFIRMED | smeserver-phpki-ng Setting httpd-pki PHPVersion does not alter template |
12228 | SME Contribs | 10.0 | RESOLVED | wrong uid and gid |
10903 | SME Contribs | Futur | CONFIRMED | NFR: Save certificate bundle for ovpn configs |
Utiliser ce lien pour les bogues de phpki-ng seul.
ID | Product | Version | Status | Summary (2 tasks) ⇒ |
---|---|---|---|---|
12420 | SME Contribs | 10.0 | CONFIRMED | phpki-ng Create and download file has no name |
12275 | SME Contribs | 10.0 | CONFIRMED | PHP Warning: Use of undefined constant |