Nous sommes le 17 Janvier 2017, 04:01

  •  Disposez les blocs

Navigateur
Liens commerciaux
Last Online
Pour voir la liste des utilisateurs connectés, vous devez être inscrit et connecté.



Nous sommes une communautée
libre et ouverte, tous sont les bienvenues.

Cliquez ici pour vous inscrire

utilisateurs connectés

Au total il y a 78 utilisateurs en ligne :: 4 enregistrés, 0 invisible et 74 invités

Le record du nombre d’utilisateurs en ligne est de 508, le 22 Février 2015, 09:01

Utilisateurs enregistrés: Bing [Bot], Google [Bot], Google Adsense [Bot], Yahoo [Bot] d’après le nombre d’utilisateurs actifs ces 60 dernières minutes

Rechercher

Liens commerciaux

TUTO : Certificats SSL

  • Auteur
  • Message

TUTO : Certificats SSL

Liens commerciaux

Liens commerciaux
 

Hors ligne
Avatar de l’utilisateur

OniK

Administrateur

Administrateur

  • Messages: 4162
  • Inscription: 03 Avril 2013, 18:32
  • A remercié: 266 fois
  • Remercié: 1572 fois

TUTO : Certificats SSL

Message22 Avril 2013, 23:36

salut tout le monde

je vais vous faire un petit tuto rapide avec tout ce qu'il vous faut pour devenir votre propre CA ( Autorité de certification ) et ainsi pouvoir émettre vos propre certificats SSL!

- le SSl etc kesako ??
un peux de lecture :
Transport Layer Security

- pq utiliser un certificat SSL, S/MIME ... ??
tout simplement pour sécuriser vos échanges sur le net ... pour sécuriser un site web, une webif, votre mail ... etc etc

il existe deux type de certificats ... ceux signe par une CA ( officiel ou non ) et les auto signé ... les certificats auto signe étant peu pratique je ne vais pas en parler ici ...

bon revenons en a nos moutons !

Devenir sa propre CA

une petite préparation des dossiers de base :
Code: Tout sélectionner
mkdir ssl
mkdir ssl/CA
mkdir ssl/CA/newcerts

maintenant on va créer une base de données pour référencer les certificats que nous allons signer
Code: Tout sélectionner
cd ssl/CA
echo '01' > serial
touch index.txt

maintenant il vous suffit simplement d’éditer mon script avec vos infos
ds le fichier ca.cnf vous devez editer :
  • countryName_default
  • stateOrProvinceName_default
  • localityName_default
  • 0.organizationName_default
  • organizationalUnitName_default
  • commonName_default
Code: Tout sélectionner
[ req_distinguished_name ]
countryName                     = "1. Country Name             (2 letter code)"
countryName_default             = JP
countryName_min                 = 2
countryName_max                 = 2

stateOrProvinceName            = "1a. Etat ou province        (nom complet)  "
stateOrProvinceName_default    = Kansai

localityName               = "1b. Ville                   (nom complet)  "
localityName_default        = Kyoto


0.organizationName              = "2. Organization Name        (eg, company)  "
0.organizationName_default      = Ltd.
organizationalUnitName          = "3. Organizational Unit Name (eg, section)  "
organizationalUnitName_default  = Secure Digital Certificate Signing
commonName                      = "4. Common Name              (eg, CA name)  "
commonName_max                  = 64
commonName_default              = Certification Authority

emailAddress               = "5. Addresse e-mail                         "
emailAddress_max                = 40

et
Code: Tout sélectionner
crlDistributionPoints = URI:http://www.votresite.com/crl.crl
authorityInfoAccess = 1.3.6.1.5.5.7.48.2;URI:http://www.votresite.com/ca.crt

maintenant vous pouvez lancer ca.sh pour créer une CA valide 10 ans avec clef AES256 a 4096bits
Code: Tout sélectionner
./ca.sh

onik@ubuntu:~$ ./ca.sh

______________________________________________________________________
STEP1: Generating RSA private key for CA (4096 bit) [ca.key]
Generating RSA private key, 4096 bit long modulus
........................................................................................................................................................................++
............++
e is 65537 (0x10001)
Enter pass phrase for ssl/CA/ssl.key/ca.key:
Verifying - Enter pass phrase for ssl/CA/ssl.key/ca.key:

entrez un code secret pour votre clef privée ( ne l'oubliez surtout pas !!!! )
______________________________________________________________________
STEP 2: Generating X.509 certificate for CA signed by itself [ca.crt]
Enter pass phrase for ssl/CA/ssl.key/ca.key:

on vous redemande votre code secret
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
1. Country Name (2 letter code) [JP]:
1a. Etat ou province (nom complet) [Kansai]:
1b. Ville (nom complet) [Kyoto]:
2. Organization Name (eg, company) [Ltd.]:
3. Organizational Unit Name (eg, section) [Secure Digital Certificate Signing]:
4. Common Name (eg, CA name) [Certification Authority]:
5. Addresse e-mail []:

si vous avez bien édité votre fichier de config un simple "enter" par ligne pour confirmer
Verify: matching certificate & key modulus
Enter pass phrase for ssl/CA/ssl.key/ca.key:

on vous redemande votre code secret
Verify: matching certificate signature
ssl/CA/ssl.crt/ca.crt: C = JP, ST = Kansai, L = Kyoto, O = Ltd., OU = Secure Digital Certificate Signing, CN = Certification Authority
error 18 at 0 depth lookup:self signed certificate
OK
______________________________________________________________________
STEP 3: Securing private key
onik@ubuntu:~$

Félicitation vous venez de créer votre propre CA !!!
vous avez au total crée 4 fichiers :
  • la base de donnée : /ssl/CA/index.txt et /ssl/CA/serial
  • votre certificat CA : /ssl/CA/ssl.crt/ca.crt
  • votre clef privée : /ssl/CA/ssl.key/ca.key
Générer et signer vos certificats SSL
maintenant on va passer au certificat ssl pour votre site web ou votre webif ... le but ici et d'avoir un accès HTTPS a votre interface web ... ds l'exemple ici on sécurise une webif OSCam
éditez ssl.cnf de la même façon que ca.cnf
Code: Tout sélectionner
[ req_distinguished_name ]
countryName                     = "1. Country Name             (2 letter code)"
countryName_default             = JP
countryName_min                 = 2
countryName_max                 = 2

stateOrProvinceName            = "1a. Etat ou province        (nom complet)  "
stateOrProvinceName_default    = Kansai

localityName               = "1b. Ville                   (nom complet)  "
localityName_default        = Kyoto


0.organizationName              = "2. Organization Name        (eg, company)  "
0.organizationName_default      = Ltd.
organizationalUnitName          = "3. Organizational Unit Name (eg, section)  "
organizationalUnitName_default  = Oscam
commonName                      = "4. Common Name              (eg, CA name)  "
commonName_max                  = 64
commonName_default              = Oscam

emailAddress               = "5. Addresse e-mail                         "
emailAddress_max                = 40

et
Code: Tout sélectionner
crlDistributionPoints = URI:http://www.votresite.com/crl.crl
authorityInfoAccess = 1.3.6.1.5.5.7.48.2;URI:http://www.votresite.com/ca.crt

et la partie la plus importante :
Code: Tout sélectionner
subjectAltName   = DNS:votre.dns.com, DNS:192.168.1.1, IP:192.168.1.1

maintenant vous pouvez lancer ssl.sh pour créer une certificat valide 1 an avec clef AES256 a 4096bits
Code: Tout sélectionner
./ssl.sh

onik@ubuntu:~$ ./ssl.sh

______________________________________________________________________
STEP 1: Generating private key for SERVER (4096 bit) [ssl.key]
Generating RSA private key, 4096 bit long modulus
........................................++
....................................................................................++
e is 65537 (0x10001)
Enter pass phrase for ssl/server/ssl.key/ssl.key:
Verifying - Enter pass phrase for ssl/server/ssl.key/ssl.key:

entrez un code secret pour votre clef privée ( ne l'oubliez surtout pas !!!! )
______________________________________________________________________
STEP 2: Generating X.509 certificate signing request for SERVER [ssl.csr]
Enter pass phrase for ssl/server/ssl.key/ssl.key:

on vous redemande votre code secret
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
1. Country Name (2 letter code) [JP]:
1a. Etat ou province (nom complet) [Kansai]:
1b. Ville (nom complet) [Kyoto]:
2. Organization Name (eg, company) [Ltd.]:
3. Organizational Unit Name (eg, section) [Oscam]:
4. Common Name (eg, CA name) [Oscam]:
5. Addresse e-mail []:

Please enter the following 'extra' attributes
to be sent with your certificate request
Un mot de passe de challenge []:
Nom optionnel []:

si vous avez bien édité votre fichier de config un simple "enter" par ligne pour confirmer
______________________________________________________________________
STEP 3: Generating X.509 certificate signed by own CA [ssl.crt]
Using configuration from ./ssl.cnf
Enter pass phrase for ./ssl/CA/ssl.key/ca.key:

on vous demande le code secret de votre CA
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName :PRINTABLE:'JP'
stateOrProvinceName :ASN.1 12:'Kansai'
localityName :ASN.1 12:'Kyoto'
organizationName :ASN.1 12:'Ltd.'
organizationalUnitName:ASN.1 12:'Oscam'
commonName :ASN.1 12:'Oscam'
Certificate is to be certified until Apr 22 22:24:06 2014 GMT (365 days)
Sign the certificate? [y/n]:

si tout est OK faite y puis "enter"
Sign the certificate? [y/n]:y


1 out of 1 certificate requests certified, commit? [y/n]

y encore une fois
Write out database with 1 new entries
Data Base Updated
Verify: matching certificate & key modulus
Enter pass phrase for ssl/server/ssl.key/ssl.key:

on vous redemande votre code secret
Verify: matching certificate signature
ssl/server/ssl.crt/ssl.crt: OK
______________________________________________________________________
STEP 4: Generating oscam.pem
Enter pass phrase for ssl/server/ssl.key/ssl.key:

on vous redemande votre code secret
writing RSA key
______________________________________________________________________
STEP 5: Securing private key & oscam.pem

Félicitation vous venez d’émettre votre premier certificat SSL !!!
vous avez au total crée 5 fichiers :
  • votre certificat : /ssl/server/ssl.crt/ssl.crt
  • votre clef privée : /ssl/server/ssl.key/ssl.key
  • votre csr : /ssl/server/ssl.csr/ssl.csr
  • votre certificat pour oscam : /ssl/server/oscam.pem
  • une copie du certificat : /ssl/CA/newcerts/01.pem
鬼に金棒
Hors ligne
Avatar de l’utilisateur

jmichel1204

Donateur

Donateur

  • Messages: 35
  • Inscription: 07 Mai 2013, 18:19
  • A remercié: 11 fois
  • Remercié: 3 fois

Re: TUTO : Certificats SSL

Message07 Mai 2013, 18:32

Bonjour

Merci mais tu le fait depuis un pc sous linux ou sur ta dreambox par exemple ?
Prismcube
Dm800hse clone image Newnigma2 v3.3.2 OSCam Shadow By OniK r9054
Vu+ solo2 original Black Hole OSCam Shadow By OniK r9054
Atlas 100hd A115
Hors ligne
Avatar de l’utilisateur

OniK

Administrateur

Administrateur

  • Messages: 4162
  • Inscription: 03 Avril 2013, 18:32
  • A remercié: 266 fois
  • Remercié: 1572 fois

Re: TUTO : Certificats SSL

Message07 Mai 2013, 20:15

pour tout ce genre de chose j'utilise uniquement ubuntu 12.04 ... mais il marche aussi avec un nas synology par exemple ...

pour ce qui est de le faire tourner sur une dreambox ... ça peux fonctionner mais je n'ai jamais fait le test car enigma est quand même fort limité a ce niveau et on est loin de ce qui est dispo sur un linux complet ... surtout que d'une image a l'autre t'as pas forcement les même lib etc dispo ... faut tester ...

sinon si t'as pas de linux installé chez toi le plus simple c'est d'utiliser vmware player et de virtualiser ton ubuntu avec ...

c gratos, ça s'installe en qq min et ça te permet d'avoir plusieurs os dispo sans devoir te prendre la tête avec du multiboot etc ... tu lances juste le prog ds windows et c parti ^_-
鬼に金棒
Hors ligne
Avatar de l’utilisateur

dodo5874

Donateur

Donateur

  • Messages: 108
  • Inscription: 08 Mai 2013, 21:05
  • A remercié: 33 fois
  • Remercié: 15 fois

Re: TUTO : Certificats SSL

Message09 Mai 2013, 15:09

Salut Onik,

Pour l'édition de ssl.cnf, faut mettre quoi dans le premier DNS puis dans le second ? (le dns du FAI et l'adresse IP du PC ?)

Code: Tout sélectionner
crlDistributionPoints = URI:http://www.votresite.com/crl.crl
authorityInfoAccess = 1.3.6.1.5.5.7.48.2;URI:http://www.votresite.com/ca.crt


A la place de votre site, une adresse dyndns c'est ok ?

Merci. A+.
Hors ligne
Avatar de l’utilisateur

OniK

Administrateur

Administrateur

  • Messages: 4162
  • Inscription: 03 Avril 2013, 18:32
  • A remercié: 266 fois
  • Remercié: 1572 fois

Re: TUTO : Certificats SSL

Message09 Mai 2013, 15:40

salut dodo5874,

Code: Tout sélectionner
subjectAltName   = DNS:votre.dns.com, DNS:192.168.1.1, IP:192.168.1.1

ici en fait tu met ta dns ds le premier (DNS:votre.dns.com) et ds le second (DNS:192.168.1.1) tu mets l'ip interne de ton demo comme pour (IP:192.168.1.1)
c'est pour éviter toutes erreurs de certificats quand tu te connecte en local

Code: Tout sélectionner
crlDistributionPoints = URI:http://www.votresite.com/crl.crl
authorityInfoAccess = 1.3.6.1.5.5.7.48.2;URI:http://www.votresite.com/ca.crt

ici une dns est ok mais pour que cela soit utile il faut que tu puisses y mettre la crl et le crt de ta ca ... sinon laisse comme ça.
c'est surtout utile pour un site web et/ou si tu émets d'autres certifs ssl pour pouvoir gérer les révocations de certificats ...

je vais très bientôt mettre un tuto pour les crl, les certificats S/MIME, certificats efs etc mais je n'ai malheureusement pas encore u le temps ...
鬼に金棒
Hors ligne
Avatar de l’utilisateur

dodo5874

Donateur

Donateur

  • Messages: 108
  • Inscription: 08 Mai 2013, 21:05
  • A remercié: 33 fois
  • Remercié: 15 fois

Re: TUTO : Certificats SSL

Message09 Mai 2013, 16:36

Salut,

la ligne subjectAltName c'est une ligne que t'ajoute dans la rubrique [ v3_ca ] ? La dns c'est celle qui est associé à ton ip ou le dns du fournisseur internet ?)

Merci.
Hors ligne
Avatar de l’utilisateur

OniK

Administrateur

Administrateur

  • Messages: 4162
  • Inscription: 03 Avril 2013, 18:32
  • A remercié: 266 fois
  • Remercié: 1572 fois

Re: TUTO : Certificats SSL

Message09 Mai 2013, 17:19

non non tu ne dois rien ajouter ... pour subjectAltName c'est ici ds ssl.cnf

Code: Tout sélectionner
[ usr_cert ]

subjectAltName   = DNS:ma.dns.com, DNS:192.168.1.1, IP:192.168.1.1
basicConstraints = CA:FALSE
keyUsage          = digitalSignature, keyEncipherment, keyAgreement
....

et pour la dns c'est celle relié a ton ip
鬼に金棒
Hors ligne
Avatar de l’utilisateur

dodo5874

Donateur

Donateur

  • Messages: 108
  • Inscription: 08 Mai 2013, 21:05
  • A remercié: 33 fois
  • Remercié: 15 fois

Re: TUTO : Certificats SSL

Message09 Mai 2013, 22:14

Re,

Quand j'execute le script ssl.sh j'ai les messages suivant :

Code: Tout sélectionner
Using configuration from ./ssl.cnf
Enter pass phrase for ./ssl/CA/ssl.key/ca.key:
I am unable to access the ./ssl/CA/newcerts directory
./ssl/CA/newcerts: No such file or directory
moncertif.sh:Error: Failed to generate X.509 certificate


merci.
Hors ligne
Avatar de l’utilisateur

OniK

Administrateur

Administrateur

  • Messages: 4162
  • Inscription: 03 Avril 2013, 18:32
  • A remercié: 266 fois
  • Remercié: 1572 fois

Re: TUTO : Certificats SSL

Message09 Mai 2013, 22:59

en tout début de procédure as tu bien fais
Code: Tout sélectionner
mkdir ssl/CA/newcerts

le dossier existe ??
鬼に金棒
Hors ligne
Avatar de l’utilisateur

dodo5874

Donateur

Donateur

  • Messages: 108
  • Inscription: 08 Mai 2013, 21:05
  • A remercié: 33 fois
  • Remercié: 15 fois

Re: TUTO : Certificats SSL

Message09 Mai 2013, 23:34

Re,

Oui, j'ai même changer les droits de tous les fichiers et j'ai cette erreur, là jcomprend pas :?: .

A+

Re: TUTO : Certificats SSL

Sujets recommandés

Sujets recommandés
 

Suivante

Retourner vers SSL

Qui est en ligne

Utilisateurs enregistrés: Bing [Bot], Google [Bot], Google Adsense [Bot], Yahoo [Bot]

cron