sécurité
Backups distants sécurisés
Faire des backups, c’est primordial. Sécuriser le stockage de ses backups l’est autant :
- sur la même machine : si le disque dur crash, on perd les données et les backups… bien joué…
- sur un des nombreux sites web dédié au stockage en ligne : pourquoi pas, mais c’est cher, et il faut avoir confiance dans la société qui gère vos données.
- sur un serveur distant qui vous appartient : ouaip, mais encore faut-il avoir un autre serveur (ou un serveur dédié virtuel pas cher !)
- sur un serveur distant qui ne vous appartient pas : un collègue qui vous prête généreusement un bout de disque. Encore une fois, il faut avoir confiance en lui, vous lui confiez (l’accès à) vos données.
Bref, il n’y a pas vraiment de solution idéale : Vos données devront être stockées ailleurs, sur une machine où vous ne serez probablement pas le seul à avoir accès, et là il faut avoir confiance ! Ou pas…
Voici une solution simple : En prenant un serveur dédié virtuel (voir précédent billet) à pas cher :-), vous disposez de quelques dizaines de Go de sauvegarde pour une poignée de centimes d’euros par mois. En général, ce sera sur un serveur OpenVZ aux USA, géré par on ne sait qui, sécurisé on ne sait comment. Vous pouvez alors utiliser openssl pour chiffrer vos données à l’aide d’un algorithme de chiffrement symétrique sur les jolis .tar.gz que vous générez (par exemple), puis les envoyer en scp vers ce VDS de backup. Dans les grandes lignes, voici la marche à suivre :
1) Générer un mot de passe sûr (secure), fiable et que vous pouvez retenir facilement, ou stocker en lui sûr. Si vous êtes en manque d’inspiration, on peut par exemple faire ceci :
$ cat /dev/urandom | tr -cd '[:graph:]' | head -c 20 > mon_pass$ cat mon_pass; echoV+7*Vde|th"h[=fUXc"=$
ATTENTION : Conservez le fichier mon_pass bien au chaud, évidemment, sinon vos données ne seront pas récupérables le jour où vous en aurez besoin !
2) Générer vos fichiers de sauvegarde (disons un bon gros .tar.gz de derrière les fagots)
3) Encodage du fichier en AES-256-ECB, avec votre password :
openssl enc -aes-256-ecb -in mon_backup.tar.gz -out mon_backup.tar.gz.secure -kfile mon_pass
Le fichier mon_backup.tar.gz.secure contient la version chiffrée de vos backups, que vous pouvez maintenant laisser trainer n’importe où :-)
4) Copie du backup sécurisé vers le serveur pas/peu secure
5) En cas de catastrophe, pour décoder votre fichier de backup et en récupérer le contenu (à l’aide de votre fichier de password, que vous aurez eu l’intelligence de bien sauvegarder au chaud) :
openssl enc -d -aes-256-ecb -in mon_backup.tar.gz.secure -out mon_backup.tar.gz -kfile mon_pass
Et hop !
Sinon, deuxième possibilité, dans le même esprit : Utiliser Duplicity avec GnuPG.
Certifications orientées sécurité
Si vous vous êtes déjà intéressé à la question, peut être avez-vous remarqué que les certifications sur le thème de la sécurité sont de plus en plus nombreuses ces temps-ci, surtout outre-atlantique. En France on trouve plusieurs organismes qui forment à la CEH (Certified Ethical Hacker), une certification portée par l’organisme américain EC-Council, et reconnue par le département de la défense américaine (voir ici). Cette certification est assez généraliste, et brosse la majeure partie des domaines de la sécurité. Sa reconnaissance par le DoD est un sérieux atout, même si je doute que l’on puisse transformer, en cinq jours seulement, un n00b en véritable « hacker » :-)
Toutefois, une petite nouvelle semble pousser assez fort : eCPPT (eLearnSecurity Certified ProfessionalPenetration Tester), proposée par la start-up italienne eLearnSecurity. Il ne s’agit plus d’une formation/certification classique sur site, cette fois-ci tout se fait en ligne (cours) et à distance (certification) : slides, vidéos, labs, forums. Du coup, le prix annoncé est très très abordable ($599) comparé à une formation CEH (3600€) ! Les premiers commentaires des sites spécialisés (ici et là), ainsi que des premiers certifiés (par exemple ici, ou par là), sont très élogieux. Cette formation est divisée en trois grosses parties : système, réseaux, applications web. Apparemment la partie orientée sécurité web est assez pointue, le reste un peu plus « léger » (tout est relatif, les shellcodes en assembleur ne sont pas non plus à la portée du premier codeur Java/waïbdeuzéro venu). De ce que j’ai pu lire, le niveau semble bien au-dessus du niveau requis pour avoir la CEH. Bref, une certif à suivre de très très près, d’autant qu’ils ont le bon goût de proposer un paiement étalé sur trois mois ($250, puis $200, puis $200) si vous n’avez pas la chance de vous la faire financer par votre employeur.
Si quelqu’un a une expérience avec une de ces deux certifications, ou bien une opinion éclairée sur la question, je suis très intéressé !
