Ça dépend de ton apache.
Avec apache 2.4 il faut utiliser Require tout court à la place de
SSLRequire
Du coup le satisfy any + allow from + Require doit correspondre à ce
que tu cherche.
Et ne pas oublier que la renégociation est indispensable pour que ça
marche, ce qui veut dire que les client qui la désactivent (faille ssl
connue -> beaucoup de monde) ne pourront pas se connecter.
Sinon tu peux faire un site avec 2 vhost quasi identiques sans renego,
l'un avec authent, l'autre sans. Et tu redirige ceux qui arrivent sur le
site sans authent mais depuis la mauvaise ip vers le site avec authent.
Benoit
Le 2013-03-14 17:33, Jean-Francois Maeyhieux a écrit :
Vu qu'apparemment ce que je veux faire est impossible au niveau
apache,
du moins sur un seul vhost sans utiliser iptables ou un proxy.
Cette solution est fonctionelle et resoud le problème effectivement.
Par contre cela crée une dépendance entre une règle iptable et apache
et
une autre dépendance entre 2 vhosts.
Un grand merci à toi pour cette solution viable et acceptable ^^
Zentoo
On Thu, 2013-03-14 at 13:00 +0100, Sebastien Caps wrote:
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/
_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/
_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/