Voilà un bout de temps que je voulais mettre en place un SSL correct pour crashdump.fr sans trouver le temps, maintenant c’est chose faite ! (J’entend par correct un certificat émanant d’une CA reconnue)
Du coup, j’ai plongé le nez dans la doc de wordpress pour trouver un moyen de forcer les authentifications/cookies en SSL, voici ce que j’y ai trouvé (ces options de configuration doivent êtres ajoutés dans le ./wp-config.php):
Forcer tout post de cookies en SSL:
define(’FORCE_SSL_ADMIN’, true);
Forcer tout post de login en SSL:
define(’FORCE_SSL_LOGIN’, true);
De plus – depuis la version 2.6 – WordPress intègre de nouveaux cookies qui sont signé avec des clés secrètes. Il va donc falloir spécifier ces clés. Pour ça, trois variables à ajouter:
define(’AUTH_KEY’, ‘put your unique phrase here’);
define(’SECURE_AUTH_KEY’, ‘put your unique phrase here’);
define(’LOGGED_IN_KEY’, ‘put your unique phrase here’);
Pour vous donner une idée de clés adaptés, une API est mise a disposition par WP:
http://api.wordpress.org/secret-key/1.1/
(Mon côté parano vous incite a ne pas utiliser ces clés sans les modifier un peu vous même..)
* Ah, oui, j’oubliais.. du coup vous pouvez accéder au site sur https://www.crashdump.fr *
Possibly Related Posts:
- Effacer définitivement les données d’un disque dur sous *nux (dd, zero, random)
- ARP Spoofing (ARP Cache poisoning)
- HackThisSite.org Basic Howto: 1 à 10
- Nouveau design, nouvelle adresse.
- Protocole BGP, l’Internet en danger ?












Adri says:
Je viens de finir de régler un des plus gros problèmes du passage de WP en https: les plugins ! Il se trouve que pas mal de developpeur n’utilisent pas les variables globales (siteurl, wpurl, url) du cms et implémentent des requêtes du genre http://x.x/truc.css .. ce qui fout un peu en l’air la beauté de la chose.
Après réécriture de quelques uns de ces plugins.. si vous développez des plugins pour wp, ce message est pour vous: « S’il vous plaît, pensez a ça la prochaine fois. »
Petitjean says:
Salut,
je suis étudiant en 2ème année bts info industriel.
J’aime bien consulter ton site, les articles sur la sécu sont vachement intéressant.
Par contre pour cette article, est ce que tu peux expliquer un peu a a quoi sa sert de mettre son site en « https ».
Un ou deux exemple.
Car j’ai déjà entendu parler un peu du SSL mais rien de plus, et sa m’intéresse.
@+
Et bonne continuation
Adri says:
Bonjour petitjean,
L’intérêt (pour un blog comme celui ci) réside dans le chiffrement des données entre le client (toi) et le serveur de telle façon que le contenu de toutes les pages que tu consulte ne sois connu que de toi. Certes, en France et de nos jours l’intérêt est limité mais si l’on pense aux internautes des pays comme la Chine ou la Corée (et j’en passe) l’utilité est avérée.
Pour résumer, ça apporte le chiffrement et l’authentification:
* Login chiffrée (pas de mot de passes/cookies en clair) – la je pense a la protection d’une attaque MITM sur un réseau local/wifi (ndlr: https://www.crashdump.fr/securite/arp-spoofing-arp-cache-poisoning-59/)
* Contenu inconnu pour ton FAI (Les requêtes et les réponses sont chiffrés, ex d’une requête https (http/ssl implicite): 1. La connexion TCP (three-way handshake) 2. le protocole SSL (négociation des clés) 3. requête HTTP dans le canal chiffré établi précédemment.)
* L’authentification du serveur: En vérifiant la validité du certificat on peux très vite savoir si le serveur est vraiment celui attendu par la requête (encore plus évident si le certificat a été signé par une CA reconnue).
Par contre, les inconvénients:
* Il faut avoir son propre serveur (ou alors que l’hébergeur le propose)
* l’Installation est pas toujours évidente.
* Un certificat reconnu.. c’est payant. (voir Gandi.net qui propose en ce moment un certificat offert a chaque nouvel achat/renouvellement de domaine)
* La charge serveur est plus importante (le CPU est bien plus sollicité a chaque requête)
Du coup ta question m’interpelle, je vais peut être écrire un billet sur ce sujet.. en espérant avoir répondu a ta question pour le moment.
Petitjean says:
Okai merci, je vois un peu mieux.
Je me disait bien que les certificats de ce style étaient payant, car il me semble ce sont ceux utiliser pour les paiement en ligne par CB.
C’était assez confus dans mon esprit.
Bonne continuation, et si tu rédige un article sur le sujet il sera le bienvenue je pense ! @+
Mr Xhark says:
Attention tout de même à bien laisser la possibilité de consultation en HTTP, car certains firewall très restrictif (entreprise, cyber, etc.) ne laissent passer que le 80.
Attention également au duplicate content, interdit à Google l’accès en HTTPS, ça évitera au passage la charge CPU :)
Merci pour ton billet !
Adri says:
@Mr Xhark: Tiens, c’est bien vu, je n’avais pas pensé au duplicate content de Google c’est un coup a plonger dans les abimes du pagerank.. J’en profite pour partager une solution a l’utilisation de deux robots.txt (http/https):
Il suffit d’utiliser les RewriteRules de apache (via un .htaccess ou directement dans le fichier de conf du vhost):
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^robots\.txt$ robots_ssl.txt [L]
</IfModule>
Et créer un robot_ssl.txt a la racine du site (c’est ce dernier qui sera servi lors d’une requête SSL.)
Quand au contenu du robot_ssl.txt:
User-agent: *
Disallow: /
Mr Xhark says:
Je ne pense pas qu’en l’interdisant à lire le fichier robot.txt empeche le duplicate.
L’idéal étant je pense de laisser l’accès HTTPS uniquement pour l’auteur du blog pour éviter en wifi quelques soucis.
Mais pour les visiteurs, forcer le HTTP (et pour les bots).
Pour la détection, une règle de rewrite dans le htaccess autorisant uniquement l’auteur. Si ip dynamique créer le fichier .htaccess via php à la volée avec l’ip récupérée en formulaire
Adri says:
En fait – avec cette manipulation – je ne l’empêche pas de lire le robot.txt, j’utilise simplement deux sources différentes pour un seul fichier, ex:
http://www.crashdump.fr/robots.txt donnera
User-agent: *
Allow: /
Sitemap: http://www.crashdump.fr/sitemap.xml.gz
https://www.crashdump.fr/robots.txt donnera
User-agent: *
Disallow: /
Donc le GoogleBot n’indexera pas la ‘partie’ https (puisqu’il consulte ce fichier avant toute chose).
—-
A mon sens, le deuxième intérêt au Https, c’est le filtrage par contenu, ce qui est rendu bien plus difficile. Il serait dommage de perdre cet atout. Nous ne sommes pas encore en Chine… mais quand je vois ce qui se profile pour nous en république populaire de France, je m’inquiète un peu.
Xorax says:
Bien vu pour le https !
Je suis aussi en train de le mettre en place mais je me rend compte qu’il va falloir réécrire à la volée toutes les urls… je pensais à un outputfilter sur apache.
Je suis passé hier aprem sur ta page d’accueil https et il me semblait que t’avais bien changé tout les liens ? mais maintenant ils sont tous redevenu normal… j’ai rêvé ???
Adri says:
Aye, sûrement une mise a jour de plugin qui a provoqué ça… La solution la plus élégante étant d’utiliser des url relatives – ça n’as pas l’air d’avoir traversé l’esprit de certain devs …
Il faut que je me penche sur du rewriting via apache parce que si je dois modifier les plugins a chaque mise à jour, ça risque de devenir gonflant.
Dès que je trouve une solution correcte je la posterais ici ;)
DjinnS says:
Mais, du coup, tu ne gères pas le problème des medias qui sont en HTTP ! Du coup la page n'est pas complétement sécurisée, on n'a pas droit à la superbe barre bleu dans FF … Je sais, je suis confronté au même problème. En pousant plus loin, tout ce que tu vas inclures (images distante, flash sale distant, etc …) devra aussi être en HTTPS.
Il faudrait que les URL sont réécrites, seulement, lorsque le site est en HTTPS.
Peut être un module existe déjà ? (oui j'ai pas encore cherché …)
crashdump says:
Le seul module existant https-for-wordpress est completement outdaté.. j'ai tenté de mettre un peu les mains dedans mais ça ne résout pas tout.. Comme par exemple ce plugin de commentaires qui charge son js/css depuis le site du créateur qui n'as pas jugé interessant de mettre a disposition une version https…