IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tomcat et TomEE Java Discussion :

OpenSSL - Tomcat server


Sujet :

Tomcat et TomEE Java

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 263
    Par défaut OpenSSL - Tomcat server
    Tiens ! Pas de répertoire 'Apache Tomcat' chez ce si complet Developpez.net ? J'ai dû mal voir ...

    J'ai des problèmes pour
    - faire fonctionner mon premier site web utilisant SSL (de préférence APR, sinon JSSE) et https.
    - créer une paire de clés et un certificat autrement qu'avec la commande en ligne 'keytool'.

    Sur mon desktop - AMD Athlon(tm) 64 Processor ..., j'ai installé
    - Apache Tomcat 7.0.11 (NetBeans IDE download bundle 'Java EE' in http://netbeans.org/downloads/ )
    - NetBeans IDE 7.0
    - Java: 1.6.0_22; Java HotSpot(TM) Client VM 17.1-b03 ; et le JRE inclus (C:\Program Files\Java\jdk1.6.0_22\jre)
    - System: Windows XP version 5.1 running on x86; Cp1252; fr_BE (nb)

    J'ai relu plusieurs fois http://tomcat.apache.org/tomcat-7.0-...#Configuration mais cela ne suffit pas.
    Ma configuration Tomcat est de base :
    - Serveur web stand-alone incluant les conteneurs pour Servlet/JSP.
    - mon serveur web n'a qu'une seule interface externe à laquelle n'est associée qu'une seule adresse IP et un seul certificat.
    Dans ce premier stade de fonctionnement, je n'utilise pas encore un certificat acheté chez une authorité, mais seulement un "self-signed Certificate".
    Ma connexion sécurisée n'utilise pas de 'name-based virtual hosts'.

    1) Implémentation JSEE
    '%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA' semble s'être bien exécutée : Elle m'a produit un '.keystore' dans 'C:\Program Files\ApacheSoftwFound\Apache Tomcat 7.0.11' et a dû y mettre un premier "self-signed Certificate" et une première clé (publique ?). J'ai placé une copie de ce fichier '.keystore' dans le répertoire parent de toutes mes applications (C:\Documents and Settings\Papa).
    Je suppose que ce '.keystore' est de format JKS (Java KeyStore) et ne peut donc être utilisé que dans l'implémentation JSSE de SSL, pas dans l'implémentation APR.

    Copie de mon tag 'Connector' pour JSSE (dans 'server.xml') :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    	<!-- Define a non-blocking Java SSL Coyote HTTP/1.1 Connector on port 443 -->
        <Connector protocol="org.apache.coyote.http11.Http11NioProtocol" port="443"
    			   maxThreads="150" scheme="https" secure="true" SSLEnabled="true"
    			   keystoreFile="C:/Documents and Settings/Papa/.keystore" keystorePass="changeit"
                   clientAuth="false" sslProtocol="TLS" />
    A l'exécution : "java.security.NoSuchAlgorithmException: RSA SSLContext not available" (entre autres points)
    Si vous êtes aussi membre de 'Tomcat users List' : J'y ai placé une question : "My web application to use SSL (JSSE - RSA)" on June 8th, 2011. Mais je ne converge pas.
    Je suppose que l'installation du bundle 'Java EE' de NetBeans implique l'installation de la 'Tomcat native library', je présume. Comment le vérifier ? NetBeans IDE 7.0 > tab Projects > répertoire Libraries > Tomcat 7.0 > dans quel fichier .jar ? ('Tomcat native library' --> Je devrais utiliser l'implémentation APR, pas JSSE)


    2) Implémentation APR (OpenSSL)
    Je sais que les keystores au format PKCS11 et PKCS12 sont ceux qui conviennent pour l'implémentation APR et peuvent être manipulés par OpenSSL et Microsoft's Key-Manager. Je ne sais pas où trouver un convertisseur JKS --> PKCS11 ou PKCS12 ou un générateur 'from scratch' de keystore au format PKCS11 ou PKCS12.

    Copie de mon tag 'Connector' essayé pour APR :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    	<!-- Define a APR SSL Coyote HTTP/1.1 Connector on port 8443 -->
    	<Connector protocol="org.apache.coyote.http11.Http11AprProtocol" port="8443" 
    			   maxThreads="200" scheme="https" secure="true" SSLEnabled="true"
    			   SSLCertificateFile="/usr/local/ssl/server.crt" 
    			   SSLCertificateKeyFile="/usr/local/ssl/server.pem"
    			   clientAuth="optional" SSLProtocol="TLSv1" />
        <!-- Default engine to OpenSSL -->
    	<Listener className="org.apache.catalina.core.AprLifecycleListener"
    			SSLEngine="on" SSLRandomSeed="builtin" />
    Application pas encore exécutée car :
    Mon OS est Windows XP; pas Unix. Par quoi dois-je remplacer '/usr/local/ssl/' ?
    Comment générer server.crt et server.pem ?

    L'installation NetBeans IDE 7.0 conjointement à J2EE et Apache Tomcat 7.0.11 ne me donne pas
    - l'icône 'Apache Monitor' (Toolbar - droite) qui m'aurait permis de Starter et Stopper le serveur web et le container de servlets ... Cela m'aurait permis de démarrer et de stopper l'application à l'extérieur de l'IDE (start > cmd > startup.cmd batch)
    - l'application Tomcat 'Administration Manager'
    Que dois-je faire pour installer ces fonctionnalités ?

    Lille, Valenciennes, Courtrai, Tournai :
    - Quel connaisseur en Tomcat servers, JavaEE et e-ID accepterait que je lui rende visite avec mon ordinateur, et m'accorderait un peu de temps pour me débloquer et me conseiller ?
    - Quels sont les organismes de cours pour adultes qui prodiguent des cours centrés sur Tomcat servers, JavaEE ... (pour Septembre prochain)

    Merci de tenter de me dépanner ...

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2004
    Messages : 327
    Par défaut
    Salut

    Citation Envoyé par Chavadam Voir le message
    2) Implémentation APR (OpenSSL)
    Je sais que les keystores au format PKCS11 et PKCS12 sont ceux qui conviennent pour l'implémentation APR et peuvent être manipulés par OpenSSL et Microsoft's Key-Manager. Je ne sais pas où trouver un convertisseur JKS --> PKCS11 ou PKCS12 ou un générateur 'from scratch' de keystore au format PKCS11 ou PKCS12.
    Un fichier PKCS12 contient un certificat (i.e une clef publique signée par une autorité) et une clef privée. Il sert à s'authentifer en tant que client d'une application.

    Utilise la PKI OpenSSL pour créer tes certificats, c'est peut être plus "facile" que keytool. Tu peux facilement créer des p12 avec la commande :

    openssl pkcs12 -export -in ton_certificat.pem -inkey ta_clef_privée.key -out le_fichier_pkcs12.p12 -name "Certificat truc"

    Un bon lien "keytool" : http://www.esup-portail.org/consorti...java_x509.html

    Et OpenSSL : http://httpd.apache.org/docs/trunk/fr/ssl/ssl_faq.html

  3. #3
    Membre très actif
    Profil pro
    Inscrit en
    Février 2010
    Messages
    768
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 768
    Par défaut
    A l'exécution : "java.security.NoSuchAlgorithmException: RSA SSLContext not available" (entre autres points)
    Si vous êtes aussi membre de 'Tomcat users List' : J'y ai placé une question : "My web application to use SSL (JSSE - RSA)" on June 8th, 2011. Mais je ne converge pas.
    Tu utilises quoi comme provider ? Bouncy Castle ?

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 263
    Par défaut
    OK Tesla, je te répondrai bientôt, càd dès que j'aurai pu exécuter ta proposition.

    Jimmy, je ne savais pas que j'aurais dû faire appel à une librairie d'algorythmes de cryptographie. Je m'attendais à ce qu'il y ait tout ce qu'il faut dans l'installation de base de J2EE, soit dans les librairies SSL de JVM (http://www.mail-archive.com/users@to.../msg72226.html). Zut, encore tout un bazar à assimiler et à faire marcher sans pépin. Je te répondrai dès que j'aurai fait le tour de ce point.
    Ce qu'il me faudrait est un mode d'emploi pour implémenter une solution minimale qui fonctionne, quitte à approfondir ensuite.

    N'hésitez pas à nous conseiller des tutoriels à lire, svp
    Tel que 'Cryptographie avec Bouncy Castle (16 p) http://nyal.developpez.com/tutoriel/java/bouncycastle/
    (Je suis plus Java que C#)

    Merci bcp à vous deux

  5. #5
    Membre très actif
    Profil pro
    Inscrit en
    Février 2010
    Messages
    768
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 768
    Par défaut
    Un boût de code pour voir les services offerts par votre provider , vous verrez les limites :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Provider [] providers = Security.getProviders(); 
    String infoProvider;
    for(int i=0;i< providers.length;i++)
    {
         infoProvider = providers[i].getInfo();
         System.out.println(infoProvider);
    }

Discussions similaires

  1. Réponses: 2
    Dernier message: 02/03/2015, 05h20
  2. [Tomcat] Paramètres dans le server.xml
    Par JFDelges dans le forum Tomcat et TomEE
    Réponses: 14
    Dernier message: 22/03/2006, 12h16
  3. [tomcat] différence entre Apache tomcat et http Server
    Par amel666 dans le forum Tomcat et TomEE
    Réponses: 5
    Dernier message: 02/02/2006, 20h07
  4. [Tomcat 4 VS 5] différence dans server.xml
    Par pmartin8 dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 13/10/2005, 14h53
  5. [ Tomcat ] access valeur Docbase server.xml
    Par voodoo_mg dans le forum Tomcat et TomEE
    Réponses: 9
    Dernier message: 27/09/2004, 09h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo