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 <b4b1@free.fr mailto:b4b1@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/