Alors si l'IP est connue tu peux éventuellement faire une règle iptables
qui redirige sur un autre port de ton serveur apache
par exemple avec ça
*iptables -t nat -A PREROUTING -s 192.168.1.1 -p tcp --dport 443 -j REDIRECT --to-ports 4443*

et sur ce port tu sert un configuration de vhost differente

comme ça par défaut tout arrive sur le vhost avec les certificats client
et pour l'ip donnée tu mets la config comme tu l'entends

ce serait acceptable ?
Seb.






Le 13 mars 2013 18:08, Jean-Francois Maeyhieux <b...@free.fr <mailto:b...@free.fr>> a écrit :

   Bonjour,

       je rencontre un problème de configuration d'un vhost apache (2.2).

   Mon but est de pouvoir acceder au site web uniquement en SSL soit en
   présentant un certificat client soit en venant d'une IP donnée.

   Mon vhost actuel ne me permet pas d'acceder directement en SSL via l'IP
   sans présenter de certificat. La partie certificat fonctionnant
   parfaitement.

   J'ai bien pensé à un 'Satisfy Any' mais comment y intégrer la notion de
   certificat SSL ?

   J'ai épluché la documentation apache et utiliser google à tout va mais
   je n'ai pas trouvé de configuration par IP ou certificat UNIQUEMENT par
   SSL.

   Note: la directive 'SSLVerifyClient optional' est incompatible avec au
   moins IE 8.


   Voici ç quoi ressemble mon vhost:

   (192.168.1.1 sera remplacé par des IP publiques donc pas de solution
   HTTP/IP+HTTPS/certificat possible)


   <VirtualHost x.x.x.x:443>
            SSLEngine on

            SSLCertificateFile /etc/httpd/conf/my-ca/www.toto.com.crt
            SSLCertificateKeyFile /etc/httpd/conf/my-ca/www.toto.com.key
            SSLCACertificateFile /etc/httpd/conf/my-ca/myCA.crt
            SSLCARevocationFile /etc/httpd/conf/my-ca/myCA-crl.pem

            SSLProtocol -SSLv2 -SSLv3 +TLSv1
            SSLHonorCipherOrder on
            SSLCipherSuite
   
ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDH-RSA-AES256-GCM-SHA384:ECDH-ECDSA-AES256-GCM-SHA384:ECDH-RSA-RC4-SHA:RC4-SHA:TLSv1:!AES128:!3DES:!CAMELLIA:!SSLv2:HIGH:MEDIUM:!MD5:!LOW:!EXP:!NULL:!aNULL
            SSLInsecureRenegotiation ON

            ServerName www.toto.com <http://www.toto.com>
            DocumentRoot /var/www/htdocs

            ErrorLog  /var/logs/ssl_error_log
            CustomLog /var/logs/ssl_access_log combined

            <Location />
                    SSLRequireSSL
                    SSLVerifyClient optional
                    SSLVerifyDepth 5
                    SSLOptions OptRenegotiate
                    SSLRequire %{REMOTE_ADDR} eq "192.168.1.1" or
   ( %{SSL_CLIENT_S_DN_O}  eq "MyCompany" and %{SSL_CLIENT_S_DN_OU} eq
   "MySection" )

            </Location>

   </VirtualHost>


   Une idée ?



   Cordialement,
                    Zentoo





   _______________________________________________
   Liste de diffusion du FRsAG
   http://www.frsag.org/



_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/

Répondre à