Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Mettre ses backups automatiques en
sécurité dans le cloud sur Amazon S3
avec Akeeba Backup
UNE BONNE STRATÉGIE DE BACKUP I...
Table des matières
 Introduction
 Objectif
 Les outils
 Procédure générale
 En super bref (un cas simplifié) | versio...
Introduction
 Marc Dechèvre | marc woluweb.be | www.woluweb.be
 Membre de la Fédération des Métiers du Web
 Membre acti...
Objectif > share a best practice
 L’objectif de cette présentation est de partager une meilleure pratique en matière de B...
Objectif > share Joomla love
 Pourquoi partager mon expérience ?
 En quelques mots-clés : #OpenSource #Joomla #Jpositive...
Objectif > backup… mais aussi sécurisation
 Dernière précision avant de rentrer dans le vif du sujet
 Une bonne stratégi...
Les outils
JOOMLA!
AKEEBA BACKUP PRO
AMAZON S3
7
Vous aurez besoin de…
 Akeeba Backup est plus que probablement le meilleur outil de Backup pour Joomla
 La version gratu...
Vous aurez besoin de…
 Amazon S3 est un service de stockage dans le Cloud, une référence
 L’avantage par rapport à d’aut...
Vous aurez besoin de…
 Alternatives à Amazon S3
 Bien sûr, Akeeba Backup est compatible non
seulement avec Amazon S3, ma...
Procédure
générale
EN SUPER BREF
(UN CAS SIMPLIFIÉ)
VERSION VIDÉO
11
Cas simplifié (si un seul site)
 La vidéo suivante donne un excellent survol de la configuration du Cloud Backup
 https:...
Procédure
générale
EN BREF
(VERSION TEXTE SANS
CAPTURES D'ÉCRAN)
13
1. Configurer Amazon S3
1. Créer un compte sur Amazon Web Services (AWS)
pour Amazon Simple Storage Service (Amazon S3)
2....
2. Configurer Akeeba Backup
 Créer un nouveau profil
1. S’assurer que le profil existant correspond bien à ce que l’on so...
2. Configurer Akeeba Backup
 Configurer le nouveau profil
1. Cliquer sur le bouton Configuration
2. Changer le nom du Pro...
2. Configurer Akeeba Backup
 Enregistrer et fermer la configuration
 Tester en lançant un backup avec ce nouveau profil
...
3. Gestion ultérieure des fichiers sur Amazon S3
 Il est possible aussi d’utiliser des fonctionnalités plus avancées d’Am...
Procédure
détaillée
Configuration
Amazon S3
VERSION LONGUE
(AVEC CAPTURES D’ÉCRAN
ÉTAPE PAR ÉTAPE)
19
Amazon S3 > créer un compte
 Aller sur le site d’Amazon S3
 https://aws.amazon.com/s3 (English)
 https://aws.amazon.com...
Amazon S3 > créer un Bucket
 Dans le menu, sélectionner "Services > S3"
 Cliquer sur le bouton "Create Bucket" ("Créer u...
Amazon S3 > IAM
 Afin de ne pas utiliser son propre compte
racine (“root access keys”, qui donnent donc
tous les pouvoirs...
Amazon S3 > créer un Utilisateur
 Sur la page Services > IAM, cliquer sur le
menu latéral "Users"
 Cliquer sur le bouton...
Amazon S3 > conserver les “Credentials”
 Bien noter (dans un endroit sécurisé *)
 L’Access Key ID
 Le Secret Access Key...
Amazon S3 > créer la Policy
 Cliquer sur le menu latéral "Policies"
 Cliquer sur le bouton “Get Started”
25
Amazon S3 > configurer la Policy
 A l’étape “Set Permissions”, cocher
 Effect > Allow
 AWS Service > Amazon S3
 Action...
Amazon S3 > valider la Policy
 On obtient alors l’écran ci-contre
 Cliquer sur le bouton “Next Step”
27
Amazon S3 > éditer ultérieurement la Policy
On peut voir et éditer une Policy via le menu latéral Policies
Exemple de Poli...
Amazon S3 > créer Groupe + associer Policy
 Toujours sur la page Services > IAM
 Cliquer sur le menu latéral "Groups"
 ...
Configuration
générale
Akeeba
Backup
CAPTURES D’ÉCRAN
ÉTAPE PAR ÉTAPE
30
Akeeba Backup > Cloud Backup (profil)
 Créer un nouveau Profil dans Akeeba Backup permettra d’avoir le choix entre lancer...
Akeeba Backup > Cloud Backup (config)
 Voir ensuite ci-dessus l’explication textuelle de la configuration d’Akeeba Backup...
Akeeba Backup > Cloud Backup (config)
 Concrètement, la configuration ressemble
donc à l’écran ci-contre
33
Akeeba Backup > Cloud Backup (détails)
 Testez si le fichier s’uploade correctement à la fin du
lancement du backup
Si vo...
Akeeba Backup > Cloud Backup (détails)
 Il existe une option plus bas sur la page de
Configuration permettant de gérer le...
Akeeba Backup & Amazon S3 > troubleshooting
 Un souci avec l’envoi de vos backups sur Amazon S3 ?
 Voyez la page suivant...
Cas particulier du Backup OK / Upload NOK
 Si un backup Amazon S3 est exécuté mais pas uploadé (pour une raison ou une au...
Récupérer
le backup
depuis
Amazon S3
avec
Akeeba
REMPLACER LE SITE
LIVE PAR LE BACKUP
SITUÉ DANS
AMAZON S3
38
Récupérer le backup depuis le Cloud
 Besoin de réinstaller
le site à partir d’un
backup situé sur
Amazon S3 ?
 Facile : ...
Récupérer le backup depuis le Cloud
 Cela fait apparaître
une fenêtre modale,
permettant au choix
de
 Rapatrier le backu...
Récupérer le backup depuis le Cloud
 Mais forcément, si on a bien fait les choses, les
“credentials” qu’on a mis dans la ...
Récupérer le backup depuis le Cloud
 Récupérer le backup depuis le Control Panel d’Akeeba
https://www.akeebabackup.com/do...
Encryption
43
Encryption via Akeeba Backup
 Un backup classique réalisé avec Akeeba
Backup est au format “.jpa”
 Le format “.jpa” étan...
Encryption via Akeeba Backup
 Attention, ne pas confondre le format encrypté “.jps” avec
le “ANGIE Password”
 ANGIE est ...
Encryption via Amazon S3
 A noter qu’Amazon S3 offre aussi des possibilités d’encryption
 http://docs.aws.amazon.com/Ama...
Aller plus loin
avec
Amazon S3
INTERFACE
PERMISSIONS
LOGGING
EVENTS
VERSIONING
LIFECYCLE
47
AWS > Personnaliser l’interface
 Amazon Web
Services, c’est
plusieurs dizaines de
Services
 Pour avoir vos
raccourcis ve...
Bucket > Logging, Events, Versioning, Lifecycle
 Une fois le Bucket
ouvert, cliquer sur
Properties
 On peut configurer
...
AS3 > Lifecycle rules
 Très utile : les
Lifecycle Rules
 On peut p.ex.
Spécifier qu’après X
jours, les fichiers sont
aut...
AS3 > rendre public un/des fichier(s)
 Pour donner accès à
un fichier :
 Sélectionner le(s)
fichier(s)
 Aller dans le m...
Aller plus loin
avec
Amazon S3
APPLICATIONS POUR
GÉRER LES FICHIERS
AU QUOTIDIEN
CYBERDUCK
52
Gestion plus efficace des fichiers
 L’interface web d’Amazon S3 est conçue principalement pour configurer les Buckets, ma...
Cyberduck > créer un nouvel utilisateur
 Forcément, si on
utilise une
application, c’est
qu’on va vouloir
lister, ajouter...
Cyberduck > nouvel Utilisateur > credentials
 Bien noter les
credentials
55
Cyberduck > nouvel Utilisateur > Policy
 Aller dans le menu
Services > Users
 Ouvrir l’Utilisateur
créé pour
Cyberduck
...
Cyberduck > nouvel Utilisateur > Policy > détail
 Une (très) longue liste
de Polices standards
sont proposées
 Pour fair...
Cyberduck > configuration
 Dans Cyberduck,
cliquer sur le bouton
Ouvrir une
Connexion
 Choisir S3
 Introduire les
crede...
Cyberduck > création d’un Signet
 La liste des fichiers apparaît
 On peut
 Trier (ce que ne permet pas l’interface
web ...
Cyberduck > accès au Signet
 Grâce au Signet, la connexion sera
directement accessible dans le futur
60
Cyberduck > configuration avancée de S3
 NB : on peut aussi configurer les
Permissions, le Lifecycle etc
directement depu...
Aller plus loin
avec
Amazon S3
CRÉER DES
NOTIFICATIONS
62
Amazon S3 > créer des notifications (SNS)
 Vous souhaitez être alerté p.ex. lorsqu’un de vos sites a effectivement envoyé...
SNS > créer un nouveau topic
 Aller dans
Services > SNS
 Créer un nouveau
Topic
 Lui donner un nom
 Valider
64
SNS > éditer le topic
 Toujours depuis
Services > SNS, on
peut éditer les topics
65
SNS > associer une Topic Policy
 Pour que le Bucket
ait l’autorisation de
poster vers SNS, il faut
créer une Topic
Policy...
SNS > souscrire au Topic
 Inscrivez-vous à votre
Topic (Subscription)
 Choisir Email comme
Protocol
 Indiquer votre ema...
SNS > envoi d’un message de confirmation
 Un message de
confirmation
automatique est
envoyé
68
SNS > message de confirmation
 Exemple de ce
message de
confirmation reçu
par le destinataire
69
SNS > confirmation de souscription validée
 En cliquant sur le lien
de validation, le
destinataire obtient
la confirmatio...
SNS > ajouter une notification
 Retourner dans le
Bucket
 Appuyer sur le
bouton Properties
 Dans Events, cliquer
sur Ad...
SNS > créer un Event pour le Bucket
 Compléter
 Choisir quels
évènements
déclenchent (ici,
seulement “Put”)
 Pour le ch...
SNS > exemple de notification
 Ci-contre, exemple d’email
de notification envoyé
automatiquement lors de
l’upload d’un do...
Sources
74
Sources > Documentation et Support Akeeba
 Explications générales du Cloud Backup
 https://www.akeebabackup.com/document...
Extraits les plus intéressants tirés de ces sources
 That post describes how to give only the PutObject privilege to the ...
Conclusion
77
Une stratégie de backup complète
 Voilà ! Vous êtes maintenant fin prêt pour améliorer la stratégie de backup et donc la ...
Merci
 N’hésitez pas à me contacter
 Marc Dechèvre
 +32 474 37 13 12
 marc woluweb.be
 Skype : woluweb
 woluweb.be
...
Ah oui, encore une chose…
80
Hidden heart in the Joomla!® logo – sources
Joomla! Magazine – august 2014
Upcoming SlideShare
Loading in …5
×

Joomla : Akeeba Backup et Amazon S3

289 views

Published on

Mettre ses backups automatiques en sécurité dans le cloud sur Amazon S3 avec Akeeba Backup

Une bonne Stratégie de backup implique non seulement de lancer des backups automatiques à intervalles réguliers, mais aussi de les mettre à l’abri d’un problème technique, d’une mauvaise manipulation… ou d’un hackeur !

Published in: Internet
  • Be the first to comment

  • Be the first to like this

Joomla : Akeeba Backup et Amazon S3

  1. 1. Mettre ses backups automatiques en sécurité dans le cloud sur Amazon S3 avec Akeeba Backup UNE BONNE STRATÉGIE DE BACKUP IMPLIQUE NON SEULEMENT DE LANCER DES BACKUPS AUTOMATIQUES À INTERVALLES RÉGULIERS, MAIS AUSSI DE LES METTRE À L’ABRI D’UN PROBLÈME TECHNIQUE, D’UNE MAUVAISE MANIPULATION… OU D’UN HACKEUR ! 1 MARC DECHÈVREV 3
  2. 2. Table des matières  Introduction  Objectif  Les outils  Procédure générale  En super bref (un cas simplifié) | version vidéo  En bref | version texte  Procédure détaillée | captures d’écran étape par étape  Configuration Amazon S3  Configuration Akeeba Backup  Récupérer le backup depuis Amazon S3 avec Akeeba  Cryptage  Aller plus loin avec Amazon S3  Interface / Permissions / Logging / Events / Versioning / LifeCycle  Applications pour gérer les fichiers au quotidien > Cyberduck  Créer des notifications  Sources  Conclusion 2
  3. 3. Introduction  Marc Dechèvre | marc woluweb.be | www.woluweb.be  Membre de la Fédération des Métiers du Web  Membre actif de la Communauté Joomla®  1er de la francophonie, 16e au monde à obtenir la Certification Administrateur Joomla!®  Co-organisateur du Joomla User Group (JUG) Wallonie  Fondateur et co-organisateur du Joomla User Group (JUG) Ouagadougou  Membre de l’Association Francophone des Utilisateurs de Joomla!TM  Intervenant régulier  lors des JoomlaDays France et JoomlaDays Pays-Bas  lors des JUG Wallonie et JUG Vlaanderen  Auteur d’articles sur www.cinnk.com et sur slideshare.net/woluweb 3
  4. 4. Objectif > share a best practice  L’objectif de cette présentation est de partager une meilleure pratique en matière de BACKUP  Vous faites des backups réguliers (et vous les testez) ? Super !  Ces backups sont exécutés automatiquement ? Encore mieux !  Mais est-ce suffisant ? NON !  Quid si votre hébergeur connaît un problème technique ?  Quid si la date de renouvellement a été oubliée et que l’hébergeur a supprimé votre compte ?  Quid si vous faites une fausse manœuvre ?  Et surtout : Quid si un hackeur s’introduit sur votre site et y détruit tous vos backups ? Dans tous ces cas, vous perdez non seulement votre site… mais aussi dans le même temps tous ses backups ! Des Backups automatiques et réguliers dans le Cloud sont donc un complément indispensable. Mais encore faut-il bien penser et configurer le tout, pour ne pas risquer de compromettre tous ses sites et d'accroître le risque plutôt que de le diminuer. C’est l’objet de cette présentation. 4
  5. 5. Objectif > share Joomla love  Pourquoi partager mon expérience ?  En quelques mots-clés : #OpenSource #Joomla #Jpositive #JoomlaUserGroups #JoomlaDays #Community Bref, Joomla se caractérise et se différencie précisément d’autres CMS par… sa Communauté active ☺  Tout ce qui peut contribuer à améliorer la qualité globale des sites a une retombée positive sur la Communauté Joomla  Vous aussi, partagez votre expérience ! ☺ NB : Et je n’ai absolument aucun intérêt ni chez Akeeba Backup ni chez Amazon S3 ☺ Simplement, dans leurs domaines respectifs, ce sont des références 5
  6. 6. Objectif > backup… mais aussi sécurisation  Dernière précision avant de rentrer dans le vif du sujet  Une bonne stratégie de backup (sur le serveur ET dans le cloud) est indispensable…  … mais c’est complémentaire avec une stratégie de sécurisation (ça ne la remplace pas !)  En effet, si un site est infecté, votre backup sera lui aussi infecté…  Or, en général, un hackeur aime travailler en deux temps  D’abord s’introduire sur le site  Mais seulement quelque temps plus tard activer l’attaque … si bien que même un backup du mois précédent, que vous pensez a priori « sain », a de fortes chances d’être déjà infecté  NB : comment vérifier que votre site est sain ? Voyez p.ex. la présentation « Est-ce que mon site a été hacké ? Est-il propre ? Comment m’en assurer » donnée lors du JoomlaDay France 2016 https://slides.aesecure.com 6
  7. 7. Les outils JOOMLA! AKEEBA BACKUP PRO AMAZON S3 7
  8. 8. Vous aurez besoin de…  Akeeba Backup est plus que probablement le meilleur outil de Backup pour Joomla  La version gratuite permet déjà de faire beaucoup de choses  Mais pour le Cloud Backup (FTP, Dropbox, Amazon S3, …), la version PRO est nécessaire  Comparaison générale des versions free/pro :  https://www.akeebabackup.com/products/akeeba-backup.html > Feature Comparison 8
  9. 9. Vous aurez besoin de…  Amazon S3 est un service de stockage dans le Cloud, une référence  L’avantage par rapport à d’autres possibilités (FTP ou certaines solutions concurrentes)  Permet la gestion des droits utilisateurs (“write-only”, pour plus de sécurité) et d’autres choses  Est “scalable” à l’infini : absolument aucune limite de volume (on paie en fonction du volume)  Description > https://aws.amazon.com/fr/s3  Compte gratuit > https://aws.amazon.com/fr/free  Tarif > https://aws.amazon.com/fr/s3/pricing  Tarif selon Région, Volume et type de stockage choisis (max. $ 0,03 par Go / mois)  Mais version gratuite (« free tier ») valable 12 mois avec 5G gratuits  Lien direct vers la Console > https://console.aws.amazon.com/s3 9
  10. 10. Vous aurez besoin de…  Alternatives à Amazon S3  Bien sûr, Akeeba Backup est compatible non seulement avec Amazon S3, mais également avec DropBox, Microsoft OneDrive, Google Drive, etc (voir capture d’écran ci-contre)  Si votre service Cloud de prédilection permet également de créer un Utilisateur “write-only”, alors vos backups dans le Cloud seront à l’abri de toute personne ayant gagné (légitimement ou pas) un accès à votre site  Sinon, nous vous recommandons Amazon S3 pour les raisons de sécurité évoquées ci-avant  Dans tous les cas, cette présentation pourra vous servir de référence 10
  11. 11. Procédure générale EN SUPER BREF (UN CAS SIMPLIFIÉ) VERSION VIDÉO 11
  12. 12. Cas simplifié (si un seul site)  La vidéo suivante donne un excellent survol de la configuration du Cloud Backup  https://www.akeebabackup.com/videos/1213-akeeba-backup-for-joomla-pro/1628-abtp07-remote- backup-amazon-s3.html Néanmoins, il s’agit d’un cas simplifié, dans le sens où n’aborde pas la question des droits d’accès  Si on gère un seul site (ou si on crée autant de comptes Amazon S3 que de sites), c’est parfait  Mais si on gère plusieurs sites, il faut absolument éviter qu’un utilisateur (et a fortiori un pirate !) d’un site donné puisse, grâce aux codes d’accès à Amazon S3 mentionnés sur le site*, accéder / lire / télécharger / effacer les backups de tous les autres sites ! * Ce code d’accès est forcément en clair (si pas à l’écran, en tout cas dans la base de données), sinon le site ne pourrait pas accéder à Amazon S3 12
  13. 13. Procédure générale EN BREF (VERSION TEXTE SANS CAPTURES D'ÉCRAN) 13
  14. 14. 1. Configurer Amazon S3 1. Créer un compte sur Amazon Web Services (AWS) pour Amazon Simple Storage Service (Amazon S3) 2. Dans l’interface, créer un « bucket » (un « compartiment » dans la terminologie S3, càd l'équivalent d'un dossier) et lui donner un nom (sans majuscules, de point, ni d’underscore) 3. Choisir la « Amazon S3 Region », par exemple « EU-Frankfurt » 4. Aller dans la « AWS Management Console », dans la rubrique IAM 5. Créer un utilisateur et générer ses clés (Access Key ID et Secret Access Key) 6. Créer un groupe d’utilisateurs (Group) et y assigner l’utilisateur voulu 7. Pour ce groupe, attacher une « Policy » (qui donne à l’utilisateur uniquement le droit d’écrire, pas de télécharger ni d’effacer ni quoi que ce soit d’autre), en utilisant le générateur de Policy ou manuellement en utilisant la Policy reprise plus loin dans cette présentation 14
  15. 15. 2. Configurer Akeeba Backup  Créer un nouveau profil 1. S’assurer que le profil existant correspond bien à ce que l’on souhaite (notamment pour l’exclusion éventuelle de dossiers, …) 2. Cliquer sur « profiles management » 3. Cocher le profil existant et cliquer sur le bouton Copy pour le dupliquer  Cliquer sur le bouton Configuration du profil fraîchement créé 15
  16. 16. 2. Configurer Akeeba Backup  Configurer le nouveau profil 1. Cliquer sur le bouton Configuration 2. Changer le nom du Profil (« Profile Description »), par exemple : Amazon S3 3. Cocher (si on le souhaite) l’option « one-click backup icon » 4. A la rubrique « Post-processing Engine », choisir « Upload to Amazon S3 » 5. Cliquer sur le bouton “Configure” à côté 1. Introduire l’Access Key et la Secret Key de l’utilisateur « en écriture seule » 2. Veiller à ce que l’option « Use SSL » soit cochée (pour plus de sécurité) 3. Indiquer le nom du « Bucket » créé ci-avant 4. Spécifier la « Amazon S3 Region » 5. Si on veut que le backup soit dans un sous-dossier du Bucket, spécifier le « Directory », sinon laisser le champ vide 6. Le cas échéant, cocher « Delete archive after processing » et/ou « Disable Multipart Upload » 6. Le cas échéant, cocher « Archive Integrity Check » comme contrôle qualité supplémentaire 16
  17. 17. 2. Configurer Akeeba Backup  Enregistrer et fermer la configuration  Tester en lançant un backup avec ce nouveau profil  Vérifier dans Akeeba Backup et sur Amazon S3 que le backup a été exécuté et transféré  Comme pour n’importe quel backup : télécharger le backup et faire une installation en local pour vérifier que tout fonctionne bien 17
  18. 18. 3. Gestion ultérieure des fichiers sur Amazon S3  Il est possible aussi d’utiliser des fonctionnalités plus avancées d’Amazon S3 1. Permissions 2. Logging 3. Events 4. Versioning 5. Lifecycle  Si on veut gérer de temps à autre ses backups, … 1. On peut se rendre dans la Console d’Amazon S3 2. Ou installer par exemple Cyberduck pour pouvoir plus facilement trier et manipuler ses fichiers 18
  19. 19. Procédure détaillée Configuration Amazon S3 VERSION LONGUE (AVEC CAPTURES D’ÉCRAN ÉTAPE PAR ÉTAPE) 19
  20. 20. Amazon S3 > créer un compte  Aller sur le site d’Amazon S3  https://aws.amazon.com/s3 (English)  https://aws.amazon.com/fr/s3 (Français)  Cliquer sur le bouton "Créer votre compte" ("Sign In to the Console")  Indiquer l’email et le mot de passe  Conseil : choisissez un mot de passe robuste Pour se convaincre de l’importance d’un mot de passe robuste, jouer quelques instants avec https://howsecureismypassword.net 20
  21. 21. Amazon S3 > créer un Bucket  Dans le menu, sélectionner "Services > S3"  Cliquer sur le bouton "Create Bucket" ("Créer un compartiment")  Indiquer le nom de votre choix  Vu notre stratégie d’un compte “write-only” (voir ci-après), nous faisons le choix de mettre les backups de tous les sites dans le même Bucket… mais vous pouvez choisir une autre organisation  Choisir la Région de votre choix  attention, le tarif peut être très légèrement différent selon la Région. Si vous souhaitez pour des raisons juridiques ou personnelles un serveur au sein de l’Union Européenne, choisissez p.ex. Frankfurt  Cliquer sur "Create" 21
  22. 22. Amazon S3 > IAM  Afin de ne pas utiliser son propre compte racine (“root access keys”, qui donnent donc tous les pouvoirs) lors de la configuration d’Akeeba Backup, on va créer des “sous- comptes”  Dans le vocabulaire Amazon S3, cela s’appelle les IAM Users (IAM = “Identity and Access Management”). Bref, la gestion des droits  Pour y accéder, aller dans Services > IAM (ou comme sur l’écran ci-contre, cliquer sur la suggestion “Get Started with IAM Users”) 22
  23. 23. Amazon S3 > créer un Utilisateur  Sur la page Services > IAM, cliquer sur le menu latéral "Users"  Cliquer sur le bouton "Create New Users"  Introduire le nom de l’Utilisateur et cocher l’option “Generate an access key for each user” (écran ci-contre)  Cliquer sur le bouton "Create" 23
  24. 24. Amazon S3 > conserver les “Credentials”  Bien noter (dans un endroit sécurisé *)  L’Access Key ID  Le Secret Access Key  (ou cliquer sur “Download Credentials” pour télécharger les codes d’accès dans un fichier) * Utiliser par exemple un Gestionnaire de Mots de Passe, tels que https://lastpass.com ou https://1password.com 24
  25. 25. Amazon S3 > créer la Policy  Cliquer sur le menu latéral "Policies"  Cliquer sur le bouton “Get Started” 25
  26. 26. Amazon S3 > configurer la Policy  A l’étape “Set Permissions”, cocher  Effect > Allow  AWS Service > Amazon S3  Action > PutObject  ARN > arn:aws:s3:::mybucket/site-* où vous adaptez l’appellation mybucket (et où site-* suppose que tous nos backups ont un nom qui commence par “site-”)  De la sorte, l’utilisateur créé pourra uniquement ajouter des backups de nos sites internet… et ne pourra donc pas  les lister  les télécharger  ou les effacer ! 26
  27. 27. Amazon S3 > valider la Policy  On obtient alors l’écran ci-contre  Cliquer sur le bouton “Next Step” 27
  28. 28. Amazon S3 > éditer ultérieurement la Policy On peut voir et éditer une Policy via le menu latéral Policies Exemple de Policy « write-only » ci-contre, avec "arn:aws:s3:::mybucket/site-*" où mybucket est le nom du bucket et site-* signifie que seuls des fichiers dont le nom commence par « site-» pourront être uploadés NB : cette “policy” peut être adaptée (même par la suite) selon vos besoins. Par exemple, vous pourriez souhaiter octroyer plus de droits (comme le droit d’effacer si on veut exploiter le système de quota automatique d’Akeeba Backup, qui ne conserve alors p.ex. que les X derniers backups). Mais attention : dans ce cas, un hackeur pourrait très bien accéder à votre Bucket et effacer les fichiers… { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUploadOfMyBackups", "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::mybucket/site-*" ] } ] } 28
  29. 29. Amazon S3 > créer Groupe + associer Policy  Toujours sur la page Services > IAM  Cliquer sur le menu latéral "Groups"  Cliquer sur le bouton "Create New Group"  Poursuivre la création en attachant la Police créée à l’étape précédente  … et bien sûr, associer l’Utilisateur créé à ce Groupe 29
  30. 30. Configuration générale Akeeba Backup CAPTURES D’ÉCRAN ÉTAPE PAR ÉTAPE 30
  31. 31. Akeeba Backup > Cloud Backup (profil)  Créer un nouveau Profil dans Akeeba Backup permettra d’avoir le choix entre lancer  Le backup “traditionnel”, enregistré sur le serveur même  Le backup “dans le nuage”, dans le cas présent vers Amazon S3  Dans l’Administration de votre site, aller dans le menu Composants > Akeeba Backup  Cliquer sur le bouton "Profiles Management" ("Gestion de Profils"). Puis, au choix  Cliquer sur le bouton "New" pour partir d’un profil vierge  Ou sélectionner un Profil de départ et cliquer sur "Copy"  Choisir un nom pour ce Profil 31
  32. 32. Akeeba Backup > Cloud Backup (config)  Voir ensuite ci-dessus l’explication textuelle de la configuration d’Akeeba Backup pour le Cloud Backup  En savoir plus sur le Cloud Backup ? Voyez ci-après le slide “Sources” pour les liens vers les pages générales d’explication de la Configuration sur le site d’Akeeba 32
  33. 33. Akeeba Backup > Cloud Backup (config)  Concrètement, la configuration ressemble donc à l’écran ci-contre 33
  34. 34. Akeeba Backup > Cloud Backup (détails)  Testez si le fichier s’uploade correctement à la fin du lancement du backup Si vous avez un message d’erreur à cette étape, tentez de cocher l’option "Disable Multipart uploads"* dans la Configuration du profil Akeeba Backup  Une option qui peut être intéressante (pour vos backups classiques et a fortiori pour vos backups dans le cloud) : cocher l’option "Archive Integrity Check", qui va consommer de la mémoire et du CPU, mais vous donne une assurance complémentaire que votre fichier est intègre Mais n’oubliez pas : in fine, il vous revient toujours de vérifier régulièrement que vos backups sont fonctionnels (un backup peut être intègre… mais être configuré pour ne prendre que certains dossier et/ou certaines tables !) * Extrait du Manuel : If you get a RequestTimeout warning while Akeeba Solo / Akeeba Backup is trying to upload your backup archive to the cloud, you MUST go to the Configuration engine and enable the "Disable multipart uploads" option of the S3 engine. If you don't do that, the upload will not work. You will also have to use a relatively small part size for archive splitting, around 10-20Mb (depends on the host, your mileage may vary). NB : lors d’un échange personnel, Akeeba me conseille plutôt 50Mb 34
  35. 35. Akeeba Backup > Cloud Backup (détails)  Il existe une option plus bas sur la page de Configuration permettant de gérer les quotas (par exemple de ne garder que les X derniers backups et d’effacer les plus anciens)  Pour vos backups qui restent sur le serveur, cela a tout son sens  Mais pour les backups envoyés sur Amazon S3, cela n’a pas de sens puisque, pour des raisons de sécurité, nous utilisons un User qui peut uniquement envoyer des fichiers… mais pas les télécharger ni les effacer Ainsi, dans notre cas de figure, il faut veiller à ce que l’option "Enable remote file quotas" soit bien désactivée 35
  36. 36. Akeeba Backup & Amazon S3 > troubleshooting  Un souci avec l’envoi de vos backups sur Amazon S3 ?  Voyez la page suivante de la documentation d’Akeeba Backup “My backup files are not being uploaded to Amazon S3” https://www.akeebabackup.com/documentation/troubleshooter/abamazons3.html 36
  37. 37. Cas particulier du Backup OK / Upload NOK  Si un backup Amazon S3 est exécuté mais pas uploadé (pour une raison ou une autre, cf supra), la tâche cron “checkbackup” ne donne pas de message d’erreur, ni le Control Panel. C’est seulement quand on va sur la liste des backups qu’on peut le voir (si on est attentif au texte sur les boutons “upload to (…)”).  Lors d’un échange avec Akeeba, il nous a été confirmé qu’il n’y a pas de tâche CRON qui puisse être mise en place pour détecter un backup qui n’aurait PAS été uploadé https://www.akeebabackup.com/support/akeeba-backup-3x/26190-backups-to-amazon- s3.html  QUESTION : The only question left : could a CRON job be created (probably a new feature I guess) in order to check those sites with - backup OK - but upload to cloud NOK  ANSWER : No. We had very very few reports about this issue (about 2-3) on all the thousands of installation we have. Implementing such script could cause more issues instead of removing them. 37
  38. 38. Récupérer le backup depuis Amazon S3 avec Akeeba REMPLACER LE SITE LIVE PAR LE BACKUP SITUÉ DANS AMAZON S3 38
  39. 39. Récupérer le backup depuis le Cloud  Besoin de réinstaller le site à partir d’un backup situé sur Amazon S3 ?  Facile : sur la page qui liste les backups, il suffit de cliquer sur le bouton bleu “Manage remotely stored files” 39
  40. 40. Récupérer le backup depuis le Cloud  Cela fait apparaître une fenêtre modale, permettant au choix de  Rapatrier le backup sur le serveur  Supprimer le backup  Télécharger sur son ordinateur 40
  41. 41. Récupérer le backup depuis le Cloud  Mais forcément, si on a bien fait les choses, les “credentials” qu’on a mis dans la configuration ont uniquement le droit d’écrire sur Amazon S3  Dès lors, si on clique sur “Fetch back to server”, on aura un message d’erreur (écran ci-contre)  Comment faire ? Voici 3 méthodes : 1. La plus simple et la plus rapide : cliquer sur le bouton “Import Archives from S3” (slide suivant) 2. Simplement changer les “credentials” dans la Configuration du Profil, le temps de la récupération du Backup (puis remettre les credentials « write-only » !) 3. Ou bien télécharger puis uploader manuellement le fichier de backup 41
  42. 42. Récupérer le backup depuis le Cloud  Récupérer le backup depuis le Control Panel d’Akeeba https://www.akeebabackup.com/documentation/akeeba-backup- documentation/ch03s02s05s03.html  Cliquer sur le bouton "Import Archives from S3"  Sur la page qui apparaît, introduire les “credentials” d’un Utilisateur ayant tous les droits  Voir plus loin la section Cyberduck pour voir comment créer un tel Utilisateur  En tout cas, par principe, toujours éviter d’utiliser les “credentials” de l’Utilisateur “root”  Cliquer sur le bouton "Connect to S3"  On peut alors naviguer dans les Buckets et les fichiers (choisir Bucket, puis cliquer sur le bouton "Change bucket")  Cliquer sur le fichier de votre choix pour le rapatrier  Le fichier est alors disponible dans la liste des backups disponibles en local  NB : Comment effacer/réinitialiser les Access Key et Secret Key après utilisation ? Facile : rien à faire : les clés sont sauvegardées dans la Session. Elles sont donc automatiquement effacées dès qu’on se déconnecte… 42
  43. 43. Encryption 43
  44. 44. Encryption via Akeeba Backup  Un backup classique réalisé avec Akeeba Backup est au format “.jpa”  Le format “.jpa” étant non encrypté, tout qui met la main sur votre fichier (qu’il soit sur votre ordinateur, votre serveur ou sur Amazon S3) peut le décompresser, le lire, l’installer  Dès lors, pour aller plus loin dans la sécurité, vous pouvez utiliser le format encrypté “.jps”, qui requiert donc un mot de passe (… qu’il faudra donc avoir sous la main le jour où)  https://www.akeebabackup.com/documentatio n/akeeba-backup/archiver-engines.html  https://www.akeebabackup.com/documentatio n/akeeba-backup-documentation/jps-archive- format.html 44
  45. 45. Encryption via Akeeba Backup  Attention, ne pas confondre le format encrypté “.jps” avec le “ANGIE Password”  ANGIE est le script de restauration d’un backup  https://www.akeebabackup.com/documentation/akeeb a-backup/angie-joomla.html  Si vous êtes p.ex. en train de restaurer un backup en « live » sur un site, ce mot de passe évite qu’un visiteur puisse vous doubler et accéder aux écrans de réinstallation  Le ANGIE Password n’encrypte donc pas votre fichier  D’ailleurs, si vous avez-vous-même oublié votre ANGIE Password requis lors de la restauration, il suffit d’effacer le fichier suivant pour faire sauter la protection !  installationpassword.php 45
  46. 46. Encryption via Amazon S3  A noter qu’Amazon S3 offre aussi des possibilités d’encryption  http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingEncryption.html 46
  47. 47. Aller plus loin avec Amazon S3 INTERFACE PERMISSIONS LOGGING EVENTS VERSIONING LIFECYCLE 47
  48. 48. AWS > Personnaliser l’interface  Amazon Web Services, c’est plusieurs dizaines de Services  Pour avoir vos raccourcis vers vos Services les plus utiles  Cliquer sur le bouton Edit  Faire glisser les icônes dans la barre de menu 48
  49. 49. Bucket > Logging, Events, Versioning, Lifecycle  Une fois le Bucket ouvert, cliquer sur Properties  On peut configurer  Permissions  Logging  Events  Versioning  Lifecycle  Essayez ! 49
  50. 50. AS3 > Lifecycle rules  Très utile : les Lifecycle Rules  On peut p.ex. Spécifier qu’après X jours, les fichiers sont automatiquement effacés  On peut aussi passer par des Stockages intermédiaires (p.ex. Glacier, moins cher mais avec un délai de quelques heures pour y accéder) 50
  51. 51. AS3 > rendre public un/des fichier(s)  Pour donner accès à un fichier :  Sélectionner le(s) fichier(s)  Aller dans le menu Actions > Make Public  A droite, lorsque le bouton Properties est activé, on trouve l’url d’accès direct au fichier 51
  52. 52. Aller plus loin avec Amazon S3 APPLICATIONS POUR GÉRER LES FICHIERS AU QUOTIDIEN CYBERDUCK 52
  53. 53. Gestion plus efficace des fichiers  L’interface web d’Amazon S3 est conçue principalement pour configurer les Buckets, mais pas tellement pour gérer au quotidien les fichiers qui s’y trouvent Par exemple, on ne sait même pas trier les fichiers par date ou par nom…  Pour gérer son Amazon S3 (càd uploader/trier/effacer/changer les droits/…), il est donc préférable d’utiliser des applications adaptées :  Soit des logiciels (FileZilla ou WinSCP, les clients FTP bien connus, ne gèrent en effet pas le protocole S3)  http://cyberduck.io (Mac & Windows)  http://www.cloudberrylab.com/free-amazon-s3-explorer-cloudfront-IAM.aspx (free/pro)  Soit éventuellement des Extensions pour navigateurs FireFox  Sur FireFox, s3fox semble assez connu, mais il faut vérifier s’il est toujours suivi  http://www.s3fox.net  https://www.youtube.com/watch?v=L1cqzEYYUB0 (démo)  Mais dans tous les cas, veillez à créer le cas échéant un IAM User avec les droits appropriés (lecture/écriture/…) selon ce que vous voulez faire avec votre application 53
  54. 54. Cyberduck > créer un nouvel utilisateur  Forcément, si on utilise une application, c’est qu’on va vouloir lister, ajouter, effacer des fichiers  Il faut donc d’abord créer un nouvel utilisateur auquel on donnera les droits voulus 54
  55. 55. Cyberduck > nouvel Utilisateur > credentials  Bien noter les credentials 55
  56. 56. Cyberduck > nouvel Utilisateur > Policy  Aller dans le menu Services > Users  Ouvrir l’Utilisateur créé pour Cyberduck  Cliquer sur l’onglet "Permissions"  Cliquer sur le bouton "Attach Policy" 56
  57. 57. Cyberduck > nouvel Utilisateur > Policy > détail  Une (très) longue liste de Polices standards sont proposées  Pour faire simple, on va cocher AmazonS3FullAccess et valider  Pour le trouver rapidement, utiliser le filtre de recherche 57
  58. 58. Cyberduck > configuration  Dans Cyberduck, cliquer sur le bouton Ouvrir une Connexion  Choisir S3  Introduire les credentials  Connecter 58
  59. 59. Cyberduck > création d’un Signet  La liste des fichiers apparaît  On peut  Trier (ce que ne permet pas l’interface web d’Amazon S3…)  Ajouter  Effacer  Configurer le Bucket  Etc  Aller dans le menu Signet > Nouveau Signet si on veut éviter de devoir remettre les codes à chaque fois 59
  60. 60. Cyberduck > accès au Signet  Grâce au Signet, la connexion sera directement accessible dans le futur 60
  61. 61. Cyberduck > configuration avancée de S3  NB : on peut aussi configurer les Permissions, le Lifecycle etc directement depuis Cyberduck 61
  62. 62. Aller plus loin avec Amazon S3 CRÉER DES NOTIFICATIONS 62
  63. 63. Amazon S3 > créer des notifications (SNS)  Vous souhaitez être alerté p.ex. lorsqu’un de vos sites a effectivement envoyé son backup sur Amazon S3 ?  cela n’a évidemment rien d’obligatoire…  … mais c’est possible  C’est l’objet de ce chapitre, avec un exemple simple de notification par email, que vous pourrez affiner  Mais vous pourriez très bien vouloir aller encore plus loin, en utilisant les API ou en intégrant les notifications dans vos applications 63
  64. 64. SNS > créer un nouveau topic  Aller dans Services > SNS  Créer un nouveau Topic  Lui donner un nom  Valider 64
  65. 65. SNS > éditer le topic  Toujours depuis Services > SNS, on peut éditer les topics 65
  66. 66. SNS > associer une Topic Policy  Pour que le Bucket ait l’autorisation de poster vers SNS, il faut créer une Topic Policy  Pour faire simple, on peut choisir “Everyone” pour les Utilisateurs qui peuvent publier sur ce Topic 66
  67. 67. SNS > souscrire au Topic  Inscrivez-vous à votre Topic (Subscription)  Choisir Email comme Protocol  Indiquer votre email comme Endpoint 67
  68. 68. SNS > envoi d’un message de confirmation  Un message de confirmation automatique est envoyé 68
  69. 69. SNS > message de confirmation  Exemple de ce message de confirmation reçu par le destinataire 69
  70. 70. SNS > confirmation de souscription validée  En cliquant sur le lien de validation, le destinataire obtient la confirmation de la souscription 70
  71. 71. SNS > ajouter une notification  Retourner dans le Bucket  Appuyer sur le bouton Properties  Dans Events, cliquer sur Add Notification 71
  72. 72. SNS > créer un Event pour le Bucket  Compléter  Choisir quels évènements déclenchent (ici, seulement “Put”)  Pour le champ “SNS Topic”, on trouve directement dans le menu déroulant le nom des Topics qu’on a créés (pas besoin d’écrire l’ARN à la main…) 72
  73. 73. SNS > exemple de notification  Ci-contre, exemple d’email de notification envoyé automatiquement lors de l’upload d’un document dans le Bucket  Ceci étant dit, un tas d’autres choses sont aussi possibles avec Amazon Web Services, comme  Une notification via SMS  Une intégration avec d’autres services (SQS, …) 73
  74. 74. Sources 74
  75. 75. Sources > Documentation et Support Akeeba  Explications générales du Cloud Backup  https://www.akeebabackup.com/documentation/akeeba-backup-documentation/step-by-step-guides.html  https://www.akeebabackup.com/documentation/akeeba-solo/how-to-cloud-backup-s3.html  Explications particulières liées à la sécurisation et lorsqu’on gère plusieurs sites  https://www.akeebabackup.com/support/akeeba-backup-3x/8694-is-amazon-s3-secret-key-a-secret.html  https://www.akeebabackup.com/support/akeeba-backup-3x/9084-secure-back-ups-with-amazon-s3.html  https://www.akeebabackup.com/support/akeeba-backup-3x/8835-how-is-amazon-key-info-saved.html  Un « open guide » sur AWS  https://github.com/open-guides/og-aws  + tous les liens mentionnés au fil des slides 75
  76. 76. Extraits les plus intéressants tirés de ces sources  That post describes how to give only the PutObject privilege to the user. You should also add the DeleteObject privilege for quotas to work :)  The other possibility is to create a write-only Amazon S3 user and use that instead. As you observed, that would render the quotas ineffective, as the user would be unable to delete old backups. However this is the most secure option, as a potential hacker can never access your backups (download or delete).  The only thing you can't do is to transfer the backup archives from S3 to your server for easy restoration. But this is easy to work around; just go to the Configuration page and enter your regular access credentials before using the Manage Remote Files feature of Akeeba Backup :) 76
  77. 77. Conclusion 77
  78. 78. Une stratégie de backup complète  Voilà ! Vous êtes maintenant fin prêt pour améliorer la stratégie de backup et donc la sécurité de votre site en disposant de backups qui sont tout à fait indépendants de votre hébergement  Au niveau backups, vous voici donc à l’abri d’un problème technique, d’une mauvaise manipulation… ou d’un hackeur !  Mais n’oubliez pas que la sécurité d’un site comporte aussi beaucoup d’autres dimensions que la stratégie de backup. Voyez par exemple à cet égard https://slides.aesecure.com  Une suggestion, une amélioration, une correction à apporter à cette présentation ? Qu’elle soit majeure ou mineure, n’hésitez pas à me contacter ! 78
  79. 79. Merci  N’hésitez pas à me contacter  Marc Dechèvre  +32 474 37 13 12  marc woluweb.be  Skype : woluweb  woluweb.be  twitter.com/woluweb  facebook.com/marc.dechevre  linkedin.com/in/marc-dechevre-68b8172a 79
  80. 80. Ah oui, encore une chose… 80 Hidden heart in the Joomla!® logo – sources Joomla! Magazine – august 2014

×