Restic: Autoriser les mots de passe vides

CrĂ©Ă© le 18 mai 2018  Â·  67Commentaires  Â·  Source: restic/restic

Sortie de restic version

restic 0.8.3
compilé avec go1.10 sur linux/amd64

Comment avez-vous exécuté restic exactement?

Ă©cho | restic init --repo /srv/restic/
Fatal : un mot de passe vide n'est pas un mot de passe

Quel backend/serveur/service avez-vous utilisé pour stocker le référentiel ?

systĂšme de fichiers

Comportement attendu

Restic devrait autoriser les mots de passe vides.

Comportement réel

N'autorise pas un mot de passe vide.

Étapes pour reproduire le comportement

Ă©cho | restic init --repo /srv/restic/

Avez-vous une idée de ce qui a pu causer cela?

c'est une décision de conception.

Avez-vous une idée de comment résoudre le problÚme?

Supprimez la vérification des mots de passe vides.

Restic vous a-t-il aidé ou rendu heureux d'une maniÚre ou d'une autre ?

Oui, c'est un excellent produit et j'aime qu'il aide tant de gens Ă  faire des sauvegardes.

user interface need implementing feature suggestion

Commentaire le plus utile

@fd0 Que pensez-vous de l'option de ligne de commande --allow-empty-password proposée ? Cela nécessiterait des phrases secrÚtes par défaut, mais permettrait aux utilisateurs de les remplacer si nécessaire.

Et s'il vous plaßt envisager de rouvrir ce problÚme. Les besoins de nombreux utilisateurs incluent la sauvegarde de fichiers non confidentiels sans risque de perdre l'accÚs en raison de mots de passe oubliés ou égarés.

Tous les 67 commentaires

Restic devrait autoriser les mots de passe vides.

Pouvez-vous préciser quel est votre cas d'utilisation ? Pourquoi restic devrait-il autoriser les mots de passe vides ?

c'est une décision de conception.

En effet, ça l'est. Mais je suis curieux de savoir ce que vous essayez de réaliser.

Un problĂšme connexe est peut-ĂȘtre #1018

Je voulais juste sauvegarder temporairement certains rĂ©pertoires sur mon systĂšme local comme filet de sĂ©curitĂ© rapide lors de la modification de fichiers dans un rĂ©pertoire. Je ne voulais pas me souvenir d'une phrase secrĂšte ou ĂȘtre dĂ©rangĂ© pour entrer une phrase secrĂšte Ă  chaque fois que je veux crĂ©er une sauvegarde. Étant donnĂ© que je viens d'utiliser a comme mot de passe, il n'y a aucun avantage rĂ©el en matiĂšre de sĂ©curitĂ© Ă  utiliser ce mot de passe par rapport Ă  ne pas utiliser de mot de passe du tout. Par consĂ©quent, toute faible surcharge Ă  mĂ©moriser ou Ă  saisir un mot de passe inutile rend l'outil moins parfait.

Merci pour l'explication. J'aimerais garder ce contrÎle en place, donc je ferme ce problÚme pour l'instant. N'hésitez pas à ajouter d'autres commentaires. Merci!

Lorsque nous en avons parlé il y a quelque temps, vous avez dit qu'il y aurait une discussion...
Pouvez-vous peut-ĂȘtre expliquer pourquoi vous considĂ©rez ce contrĂŽle comme utile ? Le rĂ©fĂ©rentiel doit toujours ĂȘtre cryptĂ© afin qu'un mot de passe puisse ĂȘtre ajoutĂ© par la suite.

Je considĂšre cette vĂ©rification utile car d'aprĂšs mon expĂ©rience, la plupart des utilisateurs voudront dĂ©finir un mot de passe. Accepter un mot de passe vide, ou mĂȘme avoir un chemin de code qui permet d'accepter des mots de passe vides, peut conduire les utilisateurs Ă  enregistrer accidentellement leurs sauvegardes sur des emplacements distants sans cryptage appropriĂ©. Une situation oĂč cela peut se produire est lorsque la variable d'environnement RESTIC_PASSWORD n'est pas exportĂ©e ou dĂ©finie accidentellement sur la chaĂźne vide.

Donc, dans ce cas, il me semble que protéger les utilisateurs d'une erreur est mieux que de supprimer le petit inconvénient d'avoir à définir un mot de passe :)

Il existe cependant des solutions simples pour cela : utilisez un gestionnaire de mots de passe, utilisez la chaßne test , exportez RESTIC_PASSWORD maniÚre statique via un fichier, par exemple dans /etc/profile.d , utilisez le nom du répertoire que vous 'enregistrez (ou le référentiel) en tant que mot de passe ...

Veuillez noter que la connaissance de votre mot de passe est nécessaire pour accéder au référentiel.
La perte de votre mot de passe signifie que vos données sont irrémédiablement perdues.

Comment puis-je empĂȘcher que cela se produise si je ne veux pas perdre mes donnĂ©es pour toujours ?

@LexSong Utilisez un gestionnaire de mots de passe.

Le mardi 03 juillet 2018 Ă  09:56:56 -0700, Chenfeng Bao a Ă©crit :

@LexSong Utilisez un gestionnaire de mots de passe.

Comment proposez-vous de sauvegarder la base de données du gestionnaire de mots de passe ? Est-ce que tu
propose ici d'utiliser un gestionnaire de mots de passe avec une base de données sans
le mot de passe? Quel gestionnaire de mots de passe prend en charge restic pour obtenir le
mot de passe de ?

La gestion des mots de passe est un sujet Ă©norme que je ne veux pas entrer dans trop de dĂ©tails dans ce fil. Soulignant simplement que si cela est fait correctement, les mots de passe ne devraient pas ĂȘtre un casse-tĂȘte. Il existe de nombreuses ressources en ligne.

La base de donnĂ©es d'un gestionnaire de mots de passe doit dĂ©jĂ  ĂȘtre correctement cryptĂ©e, vous pouvez donc la placer oĂč vous le souhaitez sans autre couche de cryptage. Il existe Ă©galement de nombreux services de gestion de mots de passe basĂ©s sur le cloud, vous n'avez donc pas Ă  vous soucier des sauvegardes vous-mĂȘme.

En ce qui concerne la prise en charge de restic, vous pouvez simplement mettre le mot de passe dans un fichier en texte brut localement et utiliser l'option --password-file . Ensuite, vous n'avez pas besoin d'entrer le mot de passe manuellement. Le mot de passe lui-mĂȘme doit Ă©galement ĂȘtre placĂ© dans le gestionnaire de mots de passe pour enregistrement.

En fin de compte, il y a toujours un mot de passe/phrase de passe complexe que vous devez mémoriser pour garder les choses vraiment sécurisées.

En fait, si vous ne voulez vraiment pas de mot de passe sur un référentiel restic, pourquoi ne pas simplement utiliser un mot de passe factice à un caractÚre ?

L'utilisation de 'a' comme mot de passe Ă©tait en fait ma solution de contournement, mais cela ne semble pas appropriĂ© car je ne suis pas sĂ»r de me souvenir de l'avoir utilisĂ© lorsque je revois ce rĂ©fĂ©rentiel pour une raison quelconque dans quelques annĂ©es au cas oĂč j'oublierais de le supprimer quand Je n'en ai plus besoin. Par consĂ©quent, je devrais peut-ĂȘtre implĂ©menter une sorte de forçage brutal pour le comprendre. C'est tout un travail qui pourrait ĂȘtre Ă©vitĂ©.

Dans le passé, j'utilisais déjà de simples mots de passe temporaires dans des situations qui me laissaient dans cet état lorsque je protégeais temporairement un disque dur externe avec un mot de passe pour faciliter sa suppression par la suite. Cependant, je ne l'ai pas supprimé, donc lorsque je voulais l'utiliser la prochaine fois, je voulais m'assurer qu'il n'y avait rien d'important sur le lecteur. Malheureusement, le mot de passe de mon gestionnaire de mots de passe ne fonctionnait plus car j'avais oublié de le mettre à jour/supprimer à partir de là. Par conséquent, lorsque je pense à mon futur moi, il semble que ce soit une bonne idée de lui faciliter la tùche en ne créant pas de repÚres statiques que je ne peux pas décrypter.

J'ai une autre idée, que diriez-vous de restic essaierait d'utiliser "restic" comme mot de passe par défaut lorsqu'aucun mot de passe pour accéder à un référentiel et reviendrait à un message d'erreur si cela ne fonctionne pas? Ensuite, les utilisateurs pourraient utiliser ce mot de passe pour indiquer qu'ils n'ont pas besoin de cryptage et restic l'ouvrirait sans magie supplémentaire.

Je suis d'accord avec les commentaires précédents pour garder le contrÎle de la protection contre les erreurs de l'utilisateur.

Restic doit prendre en charge les mots de passe vides pour les raisons déjà indiquées. je
spécifiquement je ne veux pas chiffrer mes sauvegardes locales parce que je ne veux pas
d'en perdre l'accĂšs. Je ne veux pas risquer d'oublier le mot de passe et
ne pas pouvoir restaurer les données. Il s'agit d'un risque réel car les utilisateurs
restaurent trÚs rarement et exécutent souvent des sauvegardes sans surveillance pour lesquelles ils ne
besoin d'entrer le mot de passe, le rendant plus susceptible d'ĂȘtre oubliĂ©.

Le stockage du mot de passe dans un fichier ou un script est une solution de contournement sujette aux erreurs pour un
problĂšme qui ne devrait pas exister.

J'accepte que des précautions soient prises pour éviter de télécharger accidentellement
données non cryptées vers des référentiels distants.

Il semble qu'une solution simple serait d'avoir une option de ligne de commande,
--allow-empty-password . Les utilisateurs peuvent définir ce commutateur dans leurs scripts et
la valeur par défaut pourrait rester pour exiger un mot de passe.

Il s'agit d'un risque rĂ©el car les utilisateurs restaurent gĂ©nĂ©ralement trĂšs rarement et exĂ©cutent souvent des sauvegardes sans surveillance pour lesquelles ils n'ont pas besoin d'entrer le mot de passe, ce qui le rend plus susceptible d'ĂȘtre oubliĂ©.

De tels mots de passe de sauvegarde ne sont pas destinĂ©s Ă  ĂȘtre mĂ©morisĂ©s. Le seul mot de passe de cryptage complexe que vous devez retenir est celui de votre gestionnaire de mots de passe, que vous utiliserez souvent. Et vous devriez vraiment utiliser un gestionnaire de mots de passe.

Le stockage du mot de passe dans un fichier ou un script est une solution de contournement sujette aux erreurs pour un problĂšme qui ne devrait pas exister.

DĂ©solĂ©, je ne vois pas en quoi c'est une solution de contournement sujette aux erreurs. Cela me semble ĂȘtre un moyen tout Ă  fait valable d'automatiser le cryptage. Le problĂšme est rĂ©solu, encore une fois, en utilisant un gestionnaire de mots de passe.

Il semble qu'une solution simple serait d'avoir une option de ligne de commande, --allow-empty-password . Les utilisateurs peuvent définir ce commutateur dans leurs scripts et la valeur par défaut peut rester pour exiger un mot de passe.

Cela semble ĂȘtre un moyen raisonnable d'Ă©viter les erreurs de l'utilisateur. Cependant, des inquiĂ©tudes subsistent concernant l'augmentation de la surface d'attaque et doivent ĂȘtre traitĂ©es avec le plus grand soin.

De tels mots de passe de sauvegarde ne sont pas destinĂ©s Ă  ĂȘtre mĂ©morisĂ©s. Le seul mot de passe de cryptage complexe que vous devez retenir est celui de votre gestionnaire de mots de passe, que vous utiliserez souvent. Et vous devriez vraiment utiliser un gestionnaire de mots de passe.

Un gestionnaire de mots de passe n'est absolument pas une solution valable Ă  ce problĂšme. Tout l'intĂ©rĂȘt de faire des sauvegardes est de sauvegarder vos fichiers, ce qui inclut la base de donnĂ©es du gestionnaire de mots de passe ! Comment, alors, rĂ©cupĂ©reriez-vous le mot de passe du jeu de sauvegarde lorsque le mot de passe est stockĂ© dans le jeu de sauvegarde chiffré ?

Lors de la conception d'un systĂšme de sauvegarde, vous devez prĂ©voir le pire des cas, ce qui inclut la restauration lorsque vous n'avez rien d'autre de disponible que votre sauvegarde. Ce que vous faites Ă©videmment est de sauvegarder votre base de donnĂ©es de gestionnaire de mots de passe sĂ©parĂ©ment de vos sauvegardes Restic. C'est bien pour vous , mais ce n'est pas Ă  vous d'imposer ce systĂšme aux autres utilisateurs. Et il est absurde de dire qu'un gestionnaire de mots de passe est nĂ©cessaire pour utiliser Restic, surtout quand il n'est mĂȘme pas conçu pour s'intĂ©grer Ă  un. Si c'est le cas, veuillez me montrer la documentation Ă  cet effet.

Restic, comme beaucoup de logiciels, est destiné à permettre aux utilisateurs de répondre à leurs besoins. Vos besoins n'incluent pas un scénario de restauration sans systÚme d'exploitation, rien d'autre que votre sauvegarde Restic. Les besoins des autres utilisateurs le font. Veuillez ne pas leur dicter les besoins des autres.

Cela semble ĂȘtre un moyen raisonnable d'Ă©viter les erreurs de l'utilisateur. Cependant, des inquiĂ©tudes subsistent concernant l'augmentation de la surface d'attaque et doivent ĂȘtre traitĂ©es avec le plus grand soin.

Quelles préoccupations spécifiques voyez-vous concernant une surface d'attaque accrue causée par l'option --allow-empty-password proposée ?

Cela semble ĂȘtre un moyen raisonnable d'Ă©viter les erreurs de l'utilisateur. Cependant, des inquiĂ©tudes subsistent concernant l'augmentation de la surface d'attaque et doivent ĂȘtre traitĂ©es avec le plus grand soin.

Mon autre idée était que restic utilise un mot de passe par défaut pour accéder à un référentiel lorsqu'aucun mot de passe n'a été spécifié, par exemple restic . Ensuite, l'interface utilisateur pour créer un nouveau référentiel ne change pas et uniquement lorsqu'un utilisateur utilise le mot de passe par défaut, restic pourra automatiquement accéder au référentiel et l'utilisateur n'a pas besoin de se souvenir du mot de passe.

DĂ©solĂ©, je ne vois pas en quoi c'est une solution de contournement sujette aux erreurs. Cela me semble ĂȘtre un moyen tout Ă  fait valable d'automatiser le cryptage. Le problĂšme est rĂ©solu, encore une fois, en utilisant un gestionnaire de mots de passe.

Tant qu'il n'y a pas d'intégration avec le gestionnaire de mots de passe, il existe toujours le risque que la valeur dans le gestionnaire de mots de passe soit erronée, obsolÚte ou supprimée accidentellement car il y aura une copie du mot de passe en dehors du gestionnaire de mots de passe.

J'aimerais Ă©galement voir une option permettant d'autoriser un mot de passe vide (via l'utilisation du drapeau --allow-empty-password , ou peut-ĂȘtre quelque chose de plus dĂ©taillĂ©/unique pour mettre en Ă©vidence le risque, comme le drapeau --dont-blame-nrpe NRPE).

Mes cas d'utilisation :

  • Entreprise : nous avons un rĂ©fĂ©rentiel contenu dans un environnement de confiance dont nous avons besoin de « n'importe qui » ​​pour pouvoir le restaurer en cas d'urgence/de catastrophe sans avoir Ă  avoir de connaissances particuliĂšres (c'est-Ă -dire un mot de passe de rĂ©fĂ©rentiel).
  • Accueil : j'aimerais crĂ©er une sauvegarde restic de choses comme des photos de famille. Celles-ci ne sont pas particuliĂšrement confidentielles, et dans le cas de mon dĂ©cĂšs prĂ©maturĂ©, ma famille doit pouvoir accĂ©der Ă  ces donnĂ©es personnelles importantes avec un minimum de rĂ©sistance (_par exemple, sans avoir Ă  trouver une phrase secrĂšte dans un coffre-fort, c'est peut-ĂȘtre hors de date ou confondu avec un autre_).

Je comprends la nĂ©cessitĂ© d'une phrase secrĂšte pour assurer l'intĂ©gritĂ© des donnĂ©es ainsi que le cryptage. Je vois que le ou les fichiers du rĂ©pertoire keys semblent ĂȘtre un objet JSON. Peut-ĂȘtre qu'une clĂ© pseudo-alĂ©atoire pourrait ĂȘtre gĂ©nĂ©rĂ©e (plutĂŽt qu'aucune clĂ©) et stockĂ©e lĂ -dedans ? Cela n'aide cependant pas les utilisateurs qui essaient d'Ă©viter la surcharge du chiffrement pour des raisons de performances.

@fd0 Que pensez-vous de l'option de ligne de commande --allow-empty-password proposée ? Cela nécessiterait des phrases secrÚtes par défaut, mais permettrait aux utilisateurs de les remplacer si nécessaire.

Et s'il vous plaßt envisager de rouvrir ce problÚme. Les besoins de nombreux utilisateurs incluent la sauvegarde de fichiers non confidentiels sans risque de perdre l'accÚs en raison de mots de passe oubliés ou égarés.

Tout nouvel utilisateur restic ici - je n'ai mĂȘme pas encore crĂ©Ă© mon premier rĂ©fĂ©rentiel - mais des annĂ©es d'expĂ©rience avec d'autres outils - mon prĂ©fĂ©rĂ© Ă©tant le bon vieux "dump". Avec respect, c'est une Ă©vidence - bien sĂ»r, les mots de passe vides devraient ĂȘtre autorisĂ©s. Ajoutez certainement un indicateur pour minimiser le risque d'erreur accidentelle, mais veuillez ne pas dicter de cas d'utilisation Ă  des utilisateurs (potentiels) expĂ©rimentĂ©s qui ont clairement indiquĂ© d'autres besoins.
Tout ce que j'essaie de faire, c'est de faire des sauvegardes locales pour plus de sécurité ; la sécurité n'est pas un problÚme, et je suis beaucoup plus susceptible de perdre la trace du mot de passe que d'avoir besoin de la sauvegarde. Et je déteste les gestionnaires de mots de passe...

L'exigence d'un mot de passe rend difficile l'automatisation des sauvegardes, et le fait de devoir fournir le mot de passe dans un fichier env ou un fichier de script rend l'ensemble de la sécurité inutile en premier lieu.

avoir besoin de fournir le mot de passe dans un fichier env ou un fichier de script rend toute chose de sécurité inutile en premier lieu.

Ce n'est pas nécessairement vrai. Il existe de bonnes façons de le faire.

Ce n'est pas nécessairement vrai. Il existe de bonnes façons de le faire.

Veuillez ne pas ressasser cet argument ici. De nombreux utilisateurs doivent effectuer des sauvegardes non cryptĂ©es ou avec un mot de passe vide. Si vous n'ĂȘtes pas l'un d'entre eux, tant mieux pour vous.

@mholt , des recommandations ? Je serais plus qu'heureux de sauvegarder mes serveurs sans aucune interférence avec une sécurité maximale.

De nombreux utilisateurs doivent effectuer des sauvegardes non cryptées ou avec un mot de passe vide.

Il s'agit généralement d'un problÚme XY .

@mholt , des recommandations ? Je serais plus qu'heureux de sauvegarder mes serveurs sans aucune interférence avec une sécurité maximale.

Cela dépend fortement de votre situation spécifique, du modÚle de menace, de l'environnement, des risques acceptables et des objectifs techniques et de convivialité. Donc non, je n'ai pas d'ensemble général de recommandations pour qui que ce soit.

Il s'agit généralement d'un problÚme XY.

Donc non, je n'ai pas d'ensemble général de recommandations pour qui que ce soit.

Cette attitude condescendante n'est pas utile. Bien pire qu'aprÚs nous avoir dit que nos besoins sont erronés, vous refusez ensuite de donner des conseils. Il s'agit d'un projet FOSS, pas d'Apple, Inc.

Par exemple, je n'ai ni besoin ni envie de crypter mes sauvegardes locales de mes donnĂ©es dĂ©jĂ  non cryptĂ©es. Si mon disque principal tombe en panne et que je dois rĂ©cupĂ©rer mes sauvegardes, la phrase secrĂšte est stockĂ©e dans le rĂ©fĂ©rentiel de sauvegarde avec mes scripts de sauvegarde et mes fichiers de configuration. Ma principale prĂ©occupation n'est pas d'empĂȘcher les autres d'accĂ©der Ă  ces donnĂ©es non sensibles - ma principale prĂ©occupation est une rĂ©cupĂ©ration facile et le fait de ne pas ĂȘtre verrouillĂ© sur mes donnĂ©es.

C'est un cas courant pour de nombreux utilisateurs, et ce n'est pas à vous de décider quels sont les besoins des utilisateurs.

Le logiciel existe pour servir les utilisateurs, pas pour forcer les utilisateurs Ă  acquiescer Ă  ses exigences.

Merci d'avoir expliquĂ© votre (vos) cas d'utilisation et vos inquiĂ©tudes Ă  nouveau. Pour mĂ©moire, je pense qu'ils sont valides, en particulier celui du "mot de passe perdu". Je pense Ă©galement qu'un indicateur spĂ©cial pour restic init comme --allow-empty-password fonctionnerait (j'ai quelques considĂ©rations pour les cas extrĂȘmes, mais je suis convaincu qu'ils peuvent ĂȘtre rĂ©solus). Je vais donc rouvrir ce sujet.

Veuillez noter que le fait d'autoriser les mots de passe vides résoudra le problÚme de sécurité du « mot de passe perdu », mais cryptera toujours toutes les données comme d'habitude.

Sur une note diffĂ©rente, je n'aime pas du tout le ton de ce fil. Vous ĂȘtes libre de ne pas utiliser restic, c'est parfaitement bien. La plupart d'entre nous travaillons sur restic pendant notre temps libre. Certains commentaires de ce fil semblent trĂšs intitulĂ©s, paraphrasĂ©s : "vous devez implĂ©menter cette fonctionnalitĂ©, il y a des utilisateurs qui en ont besoin !". Ce n'est pas le cas. Nous pouvons l'envisager et le mettre en Ɠuvre, mais nous pouvons aussi dĂ©cider de ne rien faire.

Alors, s'il vous plaĂźt, tout le monde, gardons cette discussion productive, mĂȘme si vous n'ĂȘtes pas d'accord. :)

@fd0 Pardonnez-moi de ne pas ĂȘtre clair. Je n'exige ni n'attend quoi que ce soit de vous ou des dĂ©veloppeurs Restic. C'est votre projet et votre temps, et vous pouvez travailler sur ce que vous voulez.

Ce que je demande, c'est que vous considĂ©riez cette fonctionnalitĂ© et ce cas d'utilisation. Si vous n'ĂȘtes pas intĂ©ressĂ© Ă  le mettre en Ɠuvre vous-mĂȘme, c'est trĂšs bien, et je vous demande de laisser le problĂšme ouvert afin que d'autres puissent en discuter, et que vous considĂ©riez tout PR qui pourrait le mettre en Ɠuvre.

Ce à quoi je m'oppose, ce sont les commentaires (pas les vÎtres) qui suggÚrent que les utilisateurs qui souhaitent cette fonctionnalité ne comprennent pas leurs propres besoins, en particulier lorsqu'ils sont suivis d'un refus de proposer des alternatives. C'est un bruit grossier et inutile.

Pour moi, j'utilise git-annex avec une télécommande spéciale bup. Annex prend déjà en charge le cryptage des fichiers (que j'ai désactivé pour utiliser la fonction de déduplication de bup). Et puis je sauvegarde le référentiel bup (qui n'est qu'un référentiel git sophistiqué) sur un serveur distant. Je peux ensuite supprimer le référentiel bup, car il ne s'agit que d'un cache, et effectuer une restauration via restic, si nécessaire.

Donc, en gros, j'assemble un tas d'outils Ă  usage unique, Ă  la maniĂšre Unix (tm), car chacun fait bien son travail. Restic (je passe actuellement de la duplicitĂ©) effectue la dĂ©duplication par blocs Ă  fenĂȘtres coulissantes vers un cloud distant, et c'est tout ce dont j'ai besoin. Le chiffrement et la dĂ©duplication des blocs locaux se produisent Ă  une couche diffĂ©rente. Donc, je ne veux pas avoir de mot de passe spĂ©cifiĂ©, ni de cryptage (qui Ă©conomise en fait sur l'utilisation du processeur).

restic --password-file /dev/null -r s3:http://172.28.0.7:9000/bup2 init

Ce n'est que la moitié de ce que je veux, car il crypte toujours, mais avec un mot de passe vide. J'aimerais récupérer cette utilisation du processeur, si je le pouvais.

Veuillez noter que le fait d'autoriser les mots de passe vides résoudra le problÚme de sécurité du « mot de passe perdu », mais cryptera toujours toutes les données comme d'habitude.

Hm, quelle est la motivation derriÚre le cryptage avec un mot de passe vide ?

Je veux dire, lors de l'exécution de restic sur du matériel de faible puissance, le cryptage ajoute une surcharge notable à l'exécution.

Edit: Ok, https://github.com/restic/restic/issues/1018#issuecomment -307549863 - en particulier le 2Úme point répond à ma question.

restic --password-file /dev/null -r s3:http://172.28.0.7:9000/bup2 init

Le principal problÚme avec cette suggestion est le suivant : cela ne fonctionne tout simplement pas, restic demande un mot de passe de maniÚre interactive puis :

~# restic -r '/tmp/restic/' -p '/dev/null' init
enter password for new repository:

Merci, @fd0 , pour la réouverture du problÚme. Je suis d'accord avec @alphapapa , mon intention n'est pas de pousser les développeurs de temps libre à passer leur temps sur tout ce avec quoi ils ne s'amusent pas.

Nous n'aimons tout simplement pas que les autres nous disent que nous ne comprenons pas nos propres besoins.

À mon avis, la caractĂ©ristique la plus importante d'un outil de sauvegarde est la possibilitĂ© d'effectuer une restauration dans tous les cas. Bien que la sĂ©curitĂ© ait une importance trĂšs, trĂšs Ă©levĂ©e, cela dĂ©pend de la situation spĂ©cifique si la sĂ©curitĂ© des donnĂ©es (capacitĂ© de restauration) ou la sĂ©curitĂ© des donnĂ©es (protection contre les accĂšs non autorisĂ©s) a une prioritĂ© plus Ă©levĂ©e.

Bien sĂ»r, vous pouvez librement dĂ©cider de dĂ©velopper un outil uniquement pour les situations oĂč la sĂ©curitĂ© est plus importante que la sĂ»retĂ©.

Comme @mholt l'a mentionnĂ© "XY-Problem": La demande est de pouvoir effectuer une reprise aprĂšs sinistre sans aucune connaissance au-delĂ  d'une documentation restic gĂ©nĂ©rique disponible au public et bien sĂ»r d'un accĂšs au rĂ©fĂ©rentiel lui-mĂȘme.
"Sans aucune connaissance" exclut le besoin ou l'utilisation de gestionnaires de mots de passe.

La raison pour laquelle j'ai trouvĂ© ce problĂšme est la suivante : _J'aide certaines personnes avec leur PC en privĂ©. Leur gestion des mots de passe est un gĂąchis, essayer de leur apprendre Ă  gĂ©rer correctement les mots de passe lors de la configuration d'une sauvegarde sur des lecteurs USB ne fera que ne pas crĂ©er de sauvegardes du tout ou ne pas avoir de mot de passe disponible en cas de besoin. Ils peuvent obtenir l'aide de quelqu'un d'autre lorsqu'ils ont besoin d'une restauration, donc tout ce que je propose pour attĂ©nuer la situation pourrait ĂȘtre nul._

En ce moment, j'enregistre le mot de passe dans un fichier texte sur la mĂȘme clĂ© USB que le rĂ©fĂ©rentiel de sauvegarde restic, ce qui gĂąche complĂštement la sĂ©curitĂ© d'avoir un mot de passe.
Et je n'aime pas cette solution car l'utilisation d'un mot de passe qui ne donne aucune couche de sécurité supplémentaire donne une trÚs mauvaise idée de la sécurité.

Bien sûr, je ne parle ici que des sauvegardes locales personnelles. Pour les serveurs, je recommande des mots de passe forts copiés dans un stockage hors ligne séparé.

Je pense qu'un autre problÚme est ici ; si certains frameworks/API autorisent les mots de passe vides et d'autres non. Et il faut déchiffrer une entrée qui a été chiffrée par une autre API avec un mot de passe vide. C'est actuellement mon problÚme avec https://github.com/RNCryptor/JNCryptor

Alors, s'il vous plaĂźt, tout le monde, gardons cette discussion productive, mĂȘme si vous n'ĂȘtes pas d'accord. :)

AprÚs avoir lu ce fil, je trouve la conversation productive, car le résultat a été positif.

J'aimerais rappeler Ă  tout le monde qu'il s'agit de Github - si quelque chose vous tient Ă  cƓur et que le mainteneur du projet n'est pas rĂ©ceptif, n'hĂ©sitez pas Ă  faire un fork - cela prend littĂ©ralement quelques secondes. Si vous n'avez pas les compĂ©tences nĂ©cessaires pour effectuer le changement vous-mĂȘme, demandez aux autres de vous aider. Vous constaterez que les responsables peuvent ĂȘtre plus ouverts Ă  accepter un correctif qui implĂ©mente quelque chose qu'ils n'auraient pas Ă©tĂ© motivĂ©s Ă  implĂ©menter eux-mĂȘmes.

Personnellement, dans ce cas, je pense qu'imposer Ă  tout le monde une idĂ©e prĂ©conçue de ce que la sĂ©curitĂ© "devrait" ĂȘtre est une erreur. La premiĂšre rĂšgle de la sĂ©curitĂ© des donnĂ©es est que les donnĂ©es doivent ĂȘtre accessibles Ă  ceux qui ont le droit de les avoir. Toute rĂšgle qui compromet la rĂšgle n° 1 doit ĂȘtre considĂ©rĂ©e avec la plus grande prudence.

La sécurité est un sujet qui regorge de politiques FUD et axées sur la peur, entraßnant des implémentations naïves, hùtives et souvent hypocrites, car peu d'entre nous aiment réellement penser à tout ce qui peut mal tourner. Encore moins envie de faire face à la critique des autres quand on nous voit permettre que les choses tournent mal.

Quelques erreurs courantes que nous voyons tous les jours :

1) Insistant sur le fait que les donnĂ©es Ă©crites sur un support cryptĂ© au repos doivent elles-mĂȘmes ĂȘtre cryptĂ©es, mĂȘme dans un environnement de confiance. OĂč s'arrĂȘte la peur de l'interception ? Par oĂč commencer Ă  croire que l'utilisateur pourrait potentiellement ĂȘtre compĂ©tent et que l'ajout de couches redondantes ne fait qu'augmenter le risque de perte de donnĂ©es ?

2) Insister sur un mot de passe d'un format spĂ©cifique, c'est-Ă -dire 8 caractĂšres avec au moins une lettre majuscule, un chiffre et un non alphanumĂ©rique - c'Ă©tait une pratique courante pendant 20 ans et maintenant dĂ©mystifiĂ©e car la douleur dĂ©passe le gain. Au lieu de cela, nous devrions insister sur des mots de passe Ă  xkcdpassword , ou intĂ©grer Ă  un gestionnaire de mots de passe (ce qui rend efficacement tous les consommateurs clĂ©s dĂ©pendants d'un mot de passe principal SPOF de sĂ©curitĂ© partagĂ© qui peut ĂȘtre harponnĂ© - il suffit de demander Ă  COMMODO) ou d'intĂ©grer 2FA (potentiellement meilleur en fonction de la sĂ©curitĂ© physique du deuxiĂšme facteur, dont la redondance des clĂ©s N+1).

3) Avec un mot de passe principal - ne pas le mettre en cache dans une session de telle sorte que l'utilisateur est obligĂ© de le saisir tellement de fois au cours de la journĂ©e que l'action mĂȘme de le saisir devient un vecteur d'attaque visible.

4) Avec un mot de passe principal - ne pas vĂ©rifier les politiques et demander aveuglĂ©ment le mot de passe principal de telle sorte que l'utilisateur s'habitue Ă  le prĂ©senter alors qu'il ne devrait pas ĂȘtre requis, ce qui l'empĂȘche d'analyser de maniĂšre critique s'il doit ou non le fournir dans cette instance.

5) Appliquer une politique de moindre privilÚge à un point tel que les utilisateurs la détestent et évitent de s'y inscrire, ou trouvent des moyens de la contourner, laissant la porte ouverte beaucoup plus longtemps que s'il existait un schéma plus permissif.

6) L'application d'une politique de moindre privilÚge sans redondance N+1, c'est-à-dire l'absence de considérations de « continuité d'activité / « politique de l'homme clé ». c'est-à-dire qu'au lieu de verrouiller une ressource partagée derriÚre 2 clés privées afin qu'elle ne soit accessible que lorsque les deux sont d'accord (quorum de 2), verrouillez-la derriÚre 2 des 3 clés privées. Personne ne vit éternellement.

Chaque fois que nous, en tant que programmeurs, mettons en Ɠuvre un schĂ©ma de cryptage Ă  clĂ© unique, nous devons considĂ©rer l'importance de l'accessibilitĂ© et entendre les prĂ©occupations de ceux qui sont douloureusement conscients des consĂ©quences de la perte de clĂ© pour un schĂ©ma de cryptage Ă  clĂ© unique.

Essayons également de nous rappeler gentiment que retirer des choses aux utilisateurs uniquement par peur d'une mauvaise utilisation est fondamentalement mauvais - comme presque toutes les décisions prises par peur. Punir tout le monde parce que quelqu'un pourrait faire la mauvaise chose, diminue la société dans son ensemble.

Si vous sentez en ce moment que vous n'ĂȘtes pas d'accord avec ce concept, respirez profondĂ©ment, comptez jusqu'Ă  dix, puis rĂ©flĂ©chissez Ă  ceci : que devrions-nous faire en tant que sociĂ©tĂ© lorsqu'une personne se suicide en mettant sa tĂȘte dans un sac poubelle avec une canette de vaporiser de la crĂšme fouettĂ©e et inhaler toute la boĂźte de protoxyde d'azote ? Devrions-nous retirer la crĂšme fouettĂ©e en spray Ă  tout le monde ? Sacs en plastique? Respiration? Toutes ces choses pourraient ĂȘtre mal utilisĂ©es d'une maniĂšre qui entraĂźne la mort de l'utilisateur.

Au lieu de l'impulsion instinctive de retirer des choses, comme nous le ferions avec un enfant jouant avec des allumettes, nous devrions plutÎt pécher par excÚs d'éducation pour qu'ils utilisent correctement ces choses. Ou élevez la barre d'entrée de telle sorte que seuls ceux qui RTFM le trouveront.

C'est ce qui s'est passé à la fin ici, et la décision d'accepter ce résultat n'est venue que lorsque tous les problÚmes et opinions ont déjà été exprimés. Je recommande de regarder les séances de débat parlementaire sur les chaßnes de télévision publiques pour des exemples de ce à quoi ressemble un débat improductif, lol. Les participants ici étaient exceptionnellement respectueux les uns envers les autres en comparaison.

Rappelez-vous les anciens bons utilitaires d'archivage oĂč le cryptage et la protection par mot de passe Ă©taient disponibles en tant qu'options explicites uniquement, mais pas par dĂ©faut. Et c'est la bonne logique car la sĂ©curitĂ© peut avoir beaucoup de solutions externes hors de cette portĂ©e utilitaire et parce que ce soin appartient Ă  l'utilisateur. Qu'est-ce que vous faites, c'est simplement fournir les outils de sĂ©curitĂ© du choix des utilisateurs. Mais l'auteur prĂ©fĂšre faire attention Ă  ce que l'utilisateur ne demande pas pour Ă©viter les abus.

Et encore pour le ton. C'est habituel pour le monde open-source. Et il est soutenu par un mĂ©canisme psychologique. Les critiques que les auteurs ne partagent pas sont traitĂ©es comme une prĂ©tention Ă  passer leur temps libre. Et Ă  chaque fois, nous devons nous rappeler : nous ne discutons pas ici de votre temps libre, mais nous explorons plutĂŽt votre crĂ©ature de gĂ©nie, ses fonctionnalitĂ©s et la logique qui la sous-tend. Nous n'oublions jamais que vous n'avez aucune obligation de rĂ©pondre Ă  notre demande et que vous avez le droit de ne rien faire du tout. Mais si vous aimez ce que vous faites, c'est peut-ĂȘtre (peut-ĂȘtre) parce que d'autres l'aiment. Il existe donc un espoir que vous soyez intĂ©ressĂ© Ă  rĂ©pondre Ă  la demande au moins de la majoritĂ©.

PS Tout cela ne sont que des discours abstraits et aucune action pratique n'est prévue.

Il y a une chose que je n'ai jamais comprise avec la discussion sur l'interdiction de mot de passe pour un rĂ©fĂ©rentiel (en supposant que le contexte @fd0 a Ă©crit plus tĂŽt, que les donnĂ©es seront toujours cryptĂ©es); Pourquoi ceux qui "ne veulent pas" de mot de passe n'utilisent-ils pas simplement un mot de passe factice comme "1234" ou autre ? Quel est l'intĂ©rĂȘt d'Ă©crire du code en restic qui supprime le mot de passe, alors que si vous ne vous souciez pas d'avoir un mot de passe, vous pouvez simplement utiliser un mot de passe factice ? Il s'agit d'une variable d'environnement ou d'un fichier de mot de passe, si vous pensez qu'il est fastidieux de le saisir sur la ligne de commande lors de l'exĂ©cution de restic.

@rawtaz Cela a été répondu dans les commentaires précédents sur ce fil.

Permettez-moi simplement de dire que restic init -r foo --no-password est probablement un meilleur nom de drapeau que restic init -r foo --allow-empty-password , simplement parce que le premier est plus pertinent et le second est tout simplement trop verbeux.

Je ne vois pas de bons arguments pour lesquels l'utilisation d'un mot de passe factice n'est pas un moyen parfaitement viable de le faire au lieu d'augmenter la base de code restic sur ce sujet. J'ai vu quelqu'un dire qu'il pourrait oublier le mot de passe "a". Bien que cela puisse ĂȘtre vrai, il est sĂ»rement possible d'inventer un simple mot de passe factice et de s'en souvenir, ou du moins de le redĂ©finir en cas de besoin. Mais peu importe, un drapeau fonctionne bien aussi, je suis juste Ă©tonnĂ© de voir Ă  quel point cela semble ĂȘtre un problĂšme :D

Eh bien, voici un exemple. Fait une sauvegarde restic il y a un an. A scénarisé un
mot de passe factice, lu à partir d'un fichier. Je n'ai pas noté le mot de passe
n'importe oĂč ailleurs. AprĂšs un an sans utiliser cette machine, j'ai complĂštement
oublié à la fois le processus et le mot de passe - et j'ai perdu une heure à essayer de
devinez le mot de passe avant de finalement trouver (et reverse engineering)
le scĂ©nario. C'est entiĂšrement de ma faute, mais quand mĂȘme -- je n'ai pas besoin de la sĂ©curitĂ©,
et je ne veux pas ĂȘtre obligĂ© de mĂ©moriser un mot de passe factice. Et si je
n'avais pas eu accÚs aux fichiers originaux, j'aurais été bloqué.

TD

N'est-ce pas une question d'avoir trop compliqué les choses ? L'un des mots de passe les plus courants est 1234. Utilisez-le et vous n'aurez pas à essayer de le trouver quelque part (en supposant que vous ne pensez pas en avoir utilisé un plus complexe) car lorsque vous devez entrer un mot de passe factice, vous savez que c'est 1234. Mais bien sûr, je vois ce que vous voulez dire.

J'aimerais Ă©galement voir une option permettant d'autoriser un mot de passe vide (via l'utilisation du drapeau --allow-empty-password , ou peut-ĂȘtre quelque chose de plus dĂ©taillĂ©/unique pour mettre en Ă©vidence le risque, comme le drapeau --dont-blame-nrpe NRPE).

Mes cas d'utilisation :

* **Business:** we have a repository contained in a trusted environment that we need "anyone" to be able restore from in an emergency/disaster without having to have special knowledge (ie, a repository password).

* **Home:** I would like to create a restic backup of things like family photos. These are not particularly confidential, and in the case of my untimely demise, my family need to be able to access this personally important data with minimum resistance (_for example, without having to find a passphrase in a safe, that's possibly out-of-date or mixed up with another_).

Je comprends la nĂ©cessitĂ© d'une phrase secrĂšte pour assurer l'intĂ©gritĂ© des donnĂ©es ainsi que le cryptage. Je vois que le ou les fichiers du rĂ©pertoire keys semblent ĂȘtre un objet JSON. Peut-ĂȘtre qu'une clĂ© pseudo-alĂ©atoire pourrait ĂȘtre gĂ©nĂ©rĂ©e (plutĂŽt qu'aucune clĂ©) et stockĂ©e lĂ -dedans ? Cela n'aide cependant pas les utilisateurs qui essaient d'Ă©viter la surcharge du chiffrement pour des raisons de performances.

  • Entreprise : nous avons un rĂ©fĂ©rentiel contenu dans un environnement de confiance dont nous avons besoin de « n'importe qui » ​​pour pouvoir le restaurer en cas d'urgence/de catastrophe sans avoir Ă  avoir de connaissances particuliĂšres (c'est-Ă -dire un mot de passe de rĂ©fĂ©rentiel).

Mais ces "n'importe qui" ont dĂ©jĂ  besoin de connaissances/instructions spĂ©ciales. Ils doivent savoir soit comment exĂ©cuter restic pour restaurer les donnĂ©es, y compris quel rĂ©fĂ©rentiel utiliser et d'autres choses, et il serait alors incroyablement facile d'inclure un mot de passe factice dans ces instructions. Ou ils utiliseraient un script ou une automatisation similaire qui effectue la restauration pour eux (auquel cas ils doivent toujours savoir/obtenir des instructions pour savoir oĂč aller pour utiliser cet outil), auquel cas le mot de passe factice serait gĂ©rĂ© par le script . Peu importe comment vous regardez cela, un mot de passe factice n'est pas un problĂšme. Et sĂ©rieusement, si tout le monde l'oubliait soudainement, les gens pourraient simplement deviner 1234 ou le forcer brutalement. Ce n'est pas un problĂšme :P

  • Accueil : j'aimerais crĂ©er une sauvegarde restic de choses comme des photos de famille. Celles-ci ne sont pas particuliĂšrement confidentielles, et dans le cas de mon dĂ©cĂšs prĂ©maturĂ©, ma famille doit pouvoir accĂ©der Ă  ces donnĂ©es personnelles importantes avec un minimum de rĂ©sistance (_par exemple, sans avoir Ă  trouver une phrase secrĂšte dans un coffre-fort, c'est peut-ĂȘtre hors de date ou confondu avec un autre_).

Attends quoi? Pourquoi diable voudriez-vous n'avoir aucun mot de passe, et quand ce n'est pas possible (au moins actuellement), utilisez un mot de passe factice super simple (par exemple 1234), puis mettez ce mot de passe factice super simple dans un coffre -

Enfin, un mot de passe fictif doit ĂȘtre si simple et Ă©vident qu'il ne sera pas obsolĂšte, et il n'est pas nĂ©cessaire d'avoir plus d'un mot de passe fictif. Il ne doit donc pas ĂȘtre pĂ©rimĂ© ou mĂ©langĂ© avec un autre.

Oui, ces suggestions ont déjà été faites, alors nous tournons en rond maintenant. Personnellement, ce ne sont pas des solutions adaptées avec lesquelles je suis à l'aise pour mon environnement et mes cas d'utilisation.

Vous n'avez pas besoin de cette fonctionnalité, c'est trÚs bien. Cela ne signifie pas que les cas d'utilisation de tout le monde sont invalides. Je n'ai pas d'utilité pour le backend Amazon S3, mais je ne le déclare pas inutile, je ne l'utilise tout simplement pas. Si cette fonctionnalité est implémentée, cela ne vous coûte rien de ne pas l'utiliser.

Oui, ces suggestions ont déjà été faites, alors nous tournons en rond maintenant.

Ouais, et honnĂȘtement, je n'ai toujours pas vu d'explication rĂ©elle sur la raison pour laquelle un mot de passe factice est si difficile Ă  gĂ©rer, j'ai l'impression d'en avoir surtout vu des complications excessives.

Personnellement, ce ne sont pas des solutions adaptées avec lesquelles je suis à l'aise pour mon environnement et mes cas d'utilisation.

C'est quelque chose que je respecte totalement. Le cas d'utilisation de chacun est individuel et vous avez votre workflow :)

Je suppose qu'à un moment donné, nous obtiendrons un --no-password ou similaire, j'espÚre que cela résoudra également ce cas d'utilisation. Merci pour votre contribution!

rawtaz a Ă©crit

Permettez-moi simplement de dire que restic init -r foo --no-password est probablement un meilleur nom de drapeau que restic init -r foo --allow-empty-password , simplement parce que le premier est plus pertinent et le second est tout simplement trop verbeux.

Je ne vois pas de bons arguments pour lesquels l'utilisation d'un mot de passe factice n'est pas un moyen parfaitement viable de le faire au lieu d'augmenter la base de code restic sur ce sujet. J'ai vu quelqu'un dire qu'il pourrait oublier le mot de passe "a". Bien que cela puisse ĂȘtre vrai, il est sĂ»rement possible d'inventer un simple mot de passe factice et de s'en souvenir, ou du moins de le redĂ©finir en cas de besoin. Mais peu importe, un drapeau fonctionne bien aussi, je suis juste Ă©tonnĂ© de voir Ă  quel point cela semble ĂȘtre un problĂšme :D

Je ne suis pas préoccupé par l'utilisation/la gestion des mots de passe factices - au lieu de cela, je suis parfois préoccupé par l'utilisation du processeur qui ralentit le processus de sauvegarde par le cryptage obligatoire lorsqu'il s'exécute sur du matériel bas de gamme.

La résolution de #1018 (sauvegardes non cryptées) résoudrait également ce problÚme - c'est-à-dire avec un commutateur --unencrypted au lieu d' --no-password commutateur

J'ai en fait utilisĂ© restic sur du matĂ©riel bas de gamme oĂč le processeur n'avait certainement pas AES-NI (ou une extension similaire) et oĂč la sauvegarde Ă©tait alors liĂ©e au processeur. Dans un autre cas, le processeur Ă©tait un peu plus puissant, mais le seul disque dur externe disponible Ă©tait dĂ©jĂ  chiffrĂ© par LUKS et il Ă©tait donc liĂ© au processeur car il n'Ă©tait pas assez puissant pour gĂ©rer deux processus de chiffrement en parallĂšle.

Voir aussi : https://github.com/restic/restic/issues/1018#issuecomment -307549863

Si vous oubliez comment utiliser restic, vous pouvez lire la doc. Si vous oubliez un emplacement de référentiel, vous pouvez le trouver. Ou vous pouvez rencontrer occasionnellement un référentiel orphelin et vous demander ce qu'il y a de sauvegarde à l'intérieur. Mais si vous avez oublié votre mot de passe, vous perdez vos données pour toujours. Et dans la vraie vie, vous pouvez oublier n'importe quel mot de passe factice le plus simple. Vous pouvez oublier tout ce que vous n'utilisez pas souvent.

Si vous perdez le mot de passe root, vous pouvez dĂ©marrer avec l'option init=/bin/bash et obtenir un accĂšs complet. Bien que ce trou puisse ĂȘtre fermĂ©, il existe toujours dans la plupart des systĂšmes. Pourquoi? Parce que la perte de l'indisponibilitĂ© serait plus que de l'insĂ©curitĂ© dans ces cas. Il s'agit donc d'un compromis entre sĂ©curitĂ© et disponibilitĂ©. Pour les systĂšmes avec des exigences plus Ă©levĂ©es, des solutions spĂ©ciales existent, telles que des clĂ©s redondantes, offrant Ă  la fois sĂ©curitĂ© et disponibilitĂ©.

resitc n'est pas un outil de sĂ©curitĂ©. C'est un outil de sauvegarde. Et en tant que tel, il devrait d'abord fournir lui-mĂȘme une fonctionnalitĂ© de sauvegarde, et ensuite seulement la sĂ©curitĂ©. Ainsi, la protection par mot de passe et le cryptage pourraient ĂȘtre fournis en option uniquement et ne devraient pas ĂȘtre en place par dĂ©faut.

BTW : les valeurs par défaut sont la marque de la qualité du logiciel.

@vstavrinov Veuillez lire l'introduction Ă  restic avant de dire que ce n'est pas un outil de sĂ©curitĂ©. C'est un outil de sauvegarde dont l'une des principales caractĂ©ristiques est qu'il essaie de sĂ©curiser vos sauvegardes. Donc, vous ĂȘtes assez loin quand vous dites qu'il ne s'agit pas de sĂ©curitĂ©.

Mais si vous avez oublié votre mot de passe, vous perdez vos données pour toujours.

Oui, et c'est pourquoi vous (dans ce cas, vous avez la possibilitĂ© simple d') utiliser un mot de passe factice afin que vous puissiez toujours comprendre le mot de passe mĂȘme si vous l'oubliez.

Et dans la vraie vie, vous pouvez oublier n'importe quel mot de passe factice le plus simple.

Si vous le faites, vous avez choisi un mot de passe factice trop complexe, et ce n'est plus vraiment un simple mot de passe factice.

Toute cette discussion devient hilarante, franchement. Je ne peux pas croire que les gens disent qu'un mot de passe comme 1234, qui est l'un des plus courants et des plus Ă©vidents, est quelque chose qu'ils pourraient oublier et ensuite ne pas ĂȘtre en mesure de comprendre trĂšs rapidement (par exemple en essayant juste quelques mots de passe). Je dirais que vous devez faire de gros efforts pour ne pas ĂȘtre en mesure de "deviner" 1234 lorsque vous ĂȘtes dans cette situation, et mĂȘme dans ce cas, vous ne parviendrez probablement pas Ă  ne pas le deviner.

Mais si vous avez oublié votre mot de passe, vous perdez vos données pour toujours.

Wikipedia pourrait vous aider : essayez simplement les mots de passe les plus courants sur https://en.wikipedia.org/wiki/List_of_the_most_common_passwords#List.

Une situation oĂč cela peut se produire est lorsque la variable d'environnement RESTIC_PASSWORD n'est pas exportĂ©e ou dĂ©finie accidentellement sur la chaĂźne vide.

Il est possible pour le code de vérifier si un mot de passe a été défini sur une chaßne vide explicitement ou simplement non défini (aucune option de ligne de commande spécifiée, variable d'environnement non définie -> différente d'une chaßne vide).

Je pense que le choix devrait ĂȘtre donnĂ© Ă  l'utilisateur quel mot de passe il veut choisir.

La résolution de #1018 (sauvegardes non cryptées) résoudrait également ce problÚme - c'est-à-dire avec un commutateur --unencrypted au lieu de --no-password.

Le cryptage devrait toujours ĂȘtre obligatoire pour se protĂ©ger contre la recherche binaire sur un hĂ©bergeur indĂ©pendamment du format, la transmission sur un canal non cryptĂ© avec MITM, etc. Bien que cela vous offre autant de protection qu'un mot de passe vide pour les attaques ciblĂ©es (zĂ©ro), cela Ă©vite toujours les dommages collatĂ©raux sur les attaques non ciblĂ©es.

@rawtaz

C'est un outil de sauvegarde dont l'une des principales caractĂ©ristiques est qu'il essaie de sĂ©curiser vos sauvegardes. Donc, vous ĂȘtes assez loin quand vous dites qu'il ne s'agit pas de sĂ©curitĂ©.

Pas loin. Indiquez-moi oĂč je dis "ce n'est pas concernĂ© par la sĂ©curitĂ©". Je ne. Vous dites la mĂȘme chose : "C'est un outil de sauvegarde". La sauvegarde n'est pas la sĂ©curitĂ©, n'est-ce pas ?. Restic n'est donc pas un outil de sĂ©curitĂ©. Et "... l'une des principales caractĂ©ristiques...". Vous avez encore raison : c'est une caractĂ©ristique. c'est-Ă -dire que la sĂ©curitĂ© est une caractĂ©ristique, tandis qu'une sauvegarde est une dĂ©signation fonctionnelle (cible).

@rawtaz

Toute cette discussion devient hilarante, franchement. Je ne peux pas croire que les gens disent qu'un mot de passe comme 1234 ...

Je ne peux rien faire, mais tu as raison dans ce cas aussi. Ce qui est idiot, c'est une discussion sur un mot de passe factice. Mais je pense que le plus important est de comprendre que la protection par mot de passe et le cryptage devraient ĂȘtre facultatifs. En plus de ne pas imposer aux utilisateurs de fonctionnalitĂ©s indĂ©sirables supplĂ©mentaires, leur laissant le choix de l'utiliser ou de ne pas l'utiliser. Et c'est aussi la marque de la qualitĂ© du logiciel.

Mais je pense que le plus important est de comprendre que la protection par mot de passe et le cryptage devraient ĂȘtre facultatifs.

Pourquoi? Pourquoi « devrait » un outil de sauvegarde ne pas avoir de cryptage par défaut ? Juste parce que c'est un outil de « sauvegarde » ? Tu dis juste ça mais il n'y a aucune raison à tout ça.

Aucune décision de conception ne peut plaire à tout le monde. Restic _choisit_ de mettre fortement l'accent sur la sécurité, et les utilisateurs comme moi _adorent_ que le cryptage fort est la valeur par défaut.

  • Si vous ne vous souciez pas de la sĂ©curitĂ©, vous _ne pouvez pas_ abuser d'un systĂšme sĂ©curisĂ© par dĂ©faut. Au pire, vous voyez des erreurs et rĂ©essayez avec une commande ajustĂ©e.
  • Si vous vous souciez de la sĂ©curitĂ©, il existe de nombreuses façons d'abuser d'un systĂšme non sĂ©curisĂ© par dĂ©faut avec un effet catastrophique. Un indicateur manquant, et vos donnĂ©es sensibles sont divulguĂ©es, peut-ĂȘtre _irrĂ©versiblement_.

C'est une chose de demander un indicateur qui peut omettre le mot de passe, mais plaider pour qu'il n'y ait pas de cryptage par défaut est un dangereux « merde » pour tous les utilisateurs existants qui comptent sur le cryptage de restic. Le potentiel d'erreurs catastrophiques de l'utilisateur est énorme.

@cfbao

Mais je pense que le plus important est de comprendre que la protection par mot de passe et le cryptage devraient ĂȘtre facultatifs.

Pourquoi? Pourquoi « devrait » un outil de sauvegarde ne pas avoir de cryptage par défaut ? Juste parce que c'est un outil de « sauvegarde » ? Tu dis juste ça mais il n'y a aucune raison à tout ça.

"facultatif" n'est pas la mĂȘme chose que "par dĂ©faut". Les valeurs par dĂ©faut en tant que telles peuvent ĂȘtre discutables. Mais avoir des options est plus important. Bien que nous n'ayons pas le choix, il n'y a rien Ă  voir avec les valeurs par dĂ©faut. C'est le but. Fournissez d'abord des options, puis il est logique de discuter des valeurs par dĂ©faut.

Dans ce cas (problÚme), c'est assez simple - il y aura probablement un indicateur --no-password ou similaire à restic init (la valeur par défaut étant toujours que restic demande un mot de passe lors de l'initialisation), mais c'est juste mon avis sur la derniÚre réponse de @fd0 . Et il n'y a pas d'ETA à ce stade, pas besoin de demander à ce sujet :)

Pendant ce temps, utilisez un mot de passe factice :) Je suppose qu'une implémentation appropriée inclut la possibilité de supprimer/désactiver un mot de passe/clé qui a été précédemment utilisé pour initialiser le référentiel, donc on ne devrait pas avoir à recréer l'intégralité du référentiel.

Le cryptage est une autre chose cependant, et suivi dans cet autre problĂšme.

Je ne me soucie pas trop d'une option sans mot de passe, mais vous plaidiez pour un non-chiffrement par défaut :

Ainsi, la protection par mot de passe et le cryptage pourraient ĂȘtre fournis en option uniquement et ne devraient pas ĂȘtre en place par dĂ©faut.

BTW : les valeurs par défaut sont la marque de la qualité du logiciel.

que je trouve dangereux.

Bien que je sois gĂ©nĂ©ralement d'accord avec les points de @rawtaz , si la discussion porte strictement sur une option sans mot de passe (ne changeant pas la valeur par dĂ©faut), je n'y ai pas trop d'intĂ©rĂȘt.

@cfbao

Je ne me soucie pas trop d'une option sans mot de passe, mais vous plaidiez pour un non-chiffrement par défaut :

Ainsi, la protection par mot de passe et le cryptage pourraient ĂȘtre fournis en option uniquement et ne devraient pas ĂȘtre en place par dĂ©faut.

Vous pouvez voir mĂȘme dans cette citation que les "options" sont en premier et "par dĂ©faut" est la suivante. Et c'est encore le point.

Dans ce cas (problÚme), c'est assez simple - il y aura probablement un indicateur --no-password ou similaire à restic init (la valeur par défaut étant toujours que restic demande un mot de passe lors de l'initialisation), mais c'est juste mon avis sur la derniÚre réponse de @fd0 . Et il n'y a pas d'ETA à ce stade, pas besoin de demander à ce sujet :)

Pendant ce temps, utilisez un mot de passe factice :) Je suppose qu'une implémentation appropriée inclut la possibilité de supprimer/désactiver un mot de passe/clé qui a été précédemment utilisé pour initialiser le référentiel, donc on ne devrait pas avoir à recréer l'intégralité du référentiel.

Une solution probablement plus simple serait que restic prenne en charge un mot de passe factice qui essaiera d'ouvrir un référentiel existant si aucun mot de passe n'est spécifié par l'utilisateur.

Concernant la gestion des mots de passe factices : il n'existe pas de meilleur mot de passe factice clair qui fonctionne pour tout le monde. 1234 est un mot de passe factice ennuyeux car il nĂ©cessite quatre doigts pour se dĂ©placer et taper. "asdf" est beaucoup plus rapide Ă  taper par exemple. De plus, certains services restreignent le choix des mots de passe, de sorte que seuls les chiffres ou seulement quatre chiffres peuvent ne pas ĂȘtre possibles. Par consĂ©quent, une solution Ă  l'intĂ©rieur de restic serait la plus conviviale. Ensuite, les utilisateurs n'auraient qu'Ă  taper le mot de passe factice une seule fois.

Du point de vue de la sécurité dÚs la conception, fournir toute sorte de mot de passe factice est une mauvaise idée.

IFF quelqu'un veut vraiment contourner le cryptage ou n'en a pas besoin, fournissez simplement un mot de passe cohérent. Vous n'avez pas à le taper, vous pouvez écrire un script pour y encapsuler du code statique et dur à votre guise. Vraiment, est-ce plus de travail que de fournir l'adresse du référentiel ou d'autres options de configuration ?

Demander à restic d'essayer un ensemble de mots de passe codés en dur faux ou factices ne fait que demander des ennuis. Et si une pauvre ùme venait à choisir l'un de vos mots de passe « magique » ? Les avertissons-nous de choisir nos faux mots de passe de cryptage spéciaux factices ? "Non Ted, tu ne peux pas choisir SPACECHICKEN comme mot de passe de dépÎt, c'est _spécial_." ;)

Je suis d'accord pour fournir une option aux utilisateurs pour se tirer une balle dans le pied avec ("--no-repository-password") mais je ne pense pas que restic devrait aller plus loin que cela pour apaiser le trĂšs petit segment d'utilisateurs qui dĂ©sir de sĂ©curitĂ© RÉDUITE.

Du point de vue de la sécurité dÚs la conception, fournir toute sorte de mot de passe factice est une mauvaise idée.

Pourquoi est-ce pire que de ne pas autoriser de mot de passe ?

IFF quelqu'un veut vraiment contourner le cryptage ou n'en a pas besoin, fournissez simplement un mot de passe cohérent. Vous n'avez pas à le taper, vous pouvez écrire un script pour y encapsuler du code statique et dur à votre guise. Vraiment, est-ce plus de travail que de fournir l'adresse du référentiel ou d'autres options de configuration ?

Oui, c'est plus de travail. Restic serait la solution de sauvegarde et sa sortie serait le rĂ©fĂ©rentiel. Donc, idĂ©alement, le rĂ©fĂ©rentiel contiendrait tout pour restaurer la sauvegarde. Mais lorsque vous utilisez un script wrapper qui code en dur, le mot de passe factice signifie que ce script doit ĂȘtre sauvegardĂ© par autre chose, sinon le rĂ©fĂ©rentiel serait inutile.

Demander à restic d'essayer un ensemble de mots de passe codés en dur faux ou factices ne fait que demander des ennuis. Et si une pauvre ùme venait à choisir l'un de vos mots de passe « magique » ? Les avertissons-nous de choisir nos faux mots de passe de cryptage spéciaux factices ? "Non Ted, tu ne peux pas choisir SPACECHICKEN comme mot de passe de dépÎt, c'est _spécial_." ;)

Quel est le problĂšme exactement? Ted peut toujours choisir ce mot de passe. Cela signifie simplement que restic l'utilisera commodĂ©ment s'il ne le spĂ©cifie pas. Restic crypterait/dĂ©crypterait toujours le rĂ©fĂ©rentiel de la mĂȘme maniĂšre que s'il ne s'agissait pas d'un mot de passe spĂ©cial.

Je suis d'accord pour fournir une option aux utilisateurs pour se tirer une balle dans le pied avec ("--no-repository-password") mais je ne pense pas que restic devrait aller plus loin que cela pour apaiser le trĂšs petit segment d'utilisateurs qui dĂ©sir de sĂ©curitĂ© RÉDUITE.

Appeler cela « se tirer une balle dans le pied » est inutilement critique et n'implique pas non plus une sécurité réduite. La disponibilité et la résilience contre les ransomwares doivent faire partie d'un concept de sécurité. La capacité manquante de restaurer une sauvegarde en raison d'un accÚs manquant au mot de passe de cryptage réduirait la sécurité. Stocker la sauvegarde en toute sécurité sur un systÚme de stockage à ajout uniquement ne diminuerait pas le niveau de sécurité, ici.

Why is it worse than allowing no password?

Je ne sais pas comment je ferais pour convaincre quelqu'un que les mots de passe codés en dur, cachés, secrÚtement essayés contre les référentiels seraient une mauvaise idée. Si vous pensez qu'ils le sont, il n'y a probablement aucun argument axé sur la sécurité qui pourrait vous convaincre.

What exactly is the problem? Ted can still choose this password. It just means that restic conveniently will use it if they do not specify it. Restic would still encrypt/decrypt the repository the same way as if was not a special password.

J'ai choisi un exemple amusant, je n'aurais peut-ĂȘtre pas dĂ». Supposons que votre mot de passe factice que vous souhaitez que restic essaie secrĂštement et automatiquement si le dĂ©chiffrement Ă©choue est : "12345". Un utilisateur naĂŻf pourrait trĂšs bien choisir cela comme mot de passe. Maintenant, ils ont un rĂ©fĂ©rentiel qui, selon eux, est cryptĂ© (et l'est en quelque sorte) mais _n'importe qui_ restic peut dĂ©chiffrer. Cet argument s'applique Ă  tout ensemble de mots de passe que vous choisissez dans votre ensemble codĂ© en dur. C'est une conception de sĂ©curitĂ© fondamentalement mauvaise.

Il y a un terme pour ce que vous proposez. C'est ce qu'on appelle une porte dérobée de cryptage :) Cacher cette porte dérobée dans les documents suppose que tous les lecteurs liront entiÚrement le manuel avant d'utiliser restic. Cela ne servirait-il pas les besoins de plus de gens de leur faire lire les documents pour déterminer comment réduire la sécurité s'ils le désirent étrangement ?

Calling this "shoot themselves in the foot" is unnecessarily judgmental and also it does not imply reduced security. Availability and resilience against ransomware should be part of a security concept. The missing ability to restore a backup because of missing access to the encryption password would lessen the security. Storing the backup securely to an append-only storage system would not decrease the security level, here.

Si vous ne pensez pas que le cryptage au repos est une politique de sĂ©curitĂ© solide et que vous opteriez pour autre chose, vous ĂȘtes certainement dans la grande minoritĂ©. Ce type de dĂ©fauts non sĂ©curisĂ©s ne sert personne et doit ĂȘtre dĂ©couragĂ© Ă  tout moment. Il suffit de consulter N'IMPORTE QUELLE rĂ©fĂ©rence de sĂ©curitĂ© pour obtenir des conseils dans ce cas. Mon point n'est pas controversĂ© - je dĂ©fends la pratique standard de l'industrie.

MĂȘme votre exemple d'ajout de supports de stockage uniquement bĂ©nĂ©ficierait fortement du chiffrement au repos. Je recommanderais vivement de lire un ensemble rĂ©cent de NIST, ISO 27002, NERC, IEC 62443 ou vraiment toute norme acceptĂ©e Ă  l'Ă©chelle mondiale pour obtenir des conseils sur les meilleures pratiques ici. Nous ne sommes pas dans un nouveau territoire.

Je dois également souligner que nous confondons effectivement deux problÚmes dans ce fil : la gestion des clés et le cryptage.

C'est peut-ĂȘtre de lĂ  que surgit la confusion.

Peut-ĂȘtre que ce problĂšme peut ĂȘtre rĂ©solu par une documentation qui dit quelque chose comme :

Si vous ne souhaitez pas sécuriser votre référentiel avec un mot de passe, utilisez simplement la chaßne : password

De cette façon, il existe un moyen bien connu d'effectuer une sauvegarde/restauration avec restic sans avoir à gérer de clés.

Why is it worse than allowing no password?

Je ne sais pas comment je ferais pour convaincre quelqu'un que les mots de passe codés en dur, cachés, secrÚtement essayés contre les référentiels seraient une mauvaise idée. Si vous pensez qu'ils le sont, il n'y a probablement aucun argument axé sur la sécurité qui pourrait vous convaincre.

Je suppose qu'il vous manque un "pas" lĂ -bas...

What exactly is the problem? Ted can still choose this password. It just means that restic conveniently will use it if they do not specify it. Restic would still encrypt/decrypt the repository the same way as if was not a special password.

J'ai choisi un exemple amusant, je n'aurais peut-ĂȘtre pas dĂ». Supposons que votre mot de passe factice que vous souhaitez que restic essaie secrĂštement et automatiquement si le dĂ©chiffrement Ă©choue est : "12345". Un utilisateur naĂŻf pourrait trĂšs bien choisir cela comme mot de passe. Maintenant, ils ont un rĂ©fĂ©rentiel qui, selon eux, est cryptĂ© (et l'est en quelque sorte) mais _n'importe qui_ restic peut dĂ©chiffrer. Cet argument s'applique Ă  tout ensemble de mots de passe que vous choisissez dans votre ensemble codĂ© en dur. C'est une conception de sĂ©curitĂ© fondamentalement mauvaise.

Je n'ai pas proposé de l'essayer lorsque le déchiffrement échoue mais lorsqu'aucun mot de passe n'est spécifié pour le déchiffrement. Si quelqu'un choisit un mot de passe non sécurisé, il n'est pas sécurisé, qu'il soit essayé directement par restic ou par quelqu'un qui force brutalement les mots de passe. "12345" est également un mot de passe non sécurisé de nos jours, et il ne changerait pas s'il devenait le mot de passe par défaut pour restic.

Il y a un terme pour ce que vous proposez. C'est ce qu'on appelle une porte dérobée de cryptage :) Cacher cette porte dérobée dans les documents suppose que tous les lecteurs liront entiÚrement le manuel avant d'utiliser restic. Cela ne servirait-il pas les besoins de plus de gens de leur faire lire les documents pour déterminer comment réduire la sécurité s'ils le désirent étrangement ?

Une porte dérobée de cryptage serait si restic utilisait un mot de passe par défaut en plus du mot de passe fourni par l'utilisateur lors du cryptage des données. Ma proposition consiste à essayer un mot de passe lors du déchiffrement. L'utilisateur choisirait toujours activement ce mauvais mot de passe.

Calling this "shoot themselves in the foot" is unnecessarily judgmental and also it does not imply reduced security. Availability and resilience against ransomware should be part of a security concept. The missing ability to restore a backup because of missing access to the encryption password would lessen the security. Storing the backup securely to an append-only storage system would not decrease the security level, here.

Si vous ne pensez pas que le cryptage au repos est une politique de sĂ©curitĂ© solide et que vous opteriez pour autre chose, vous ĂȘtes certainement dans la grande minoritĂ©. Ce type de dĂ©fauts non sĂ©curisĂ©s ne sert personne et doit ĂȘtre dĂ©couragĂ© Ă  tout moment. Il suffit de consulter N'IMPORTE QUELLE rĂ©fĂ©rence de sĂ©curitĂ© pour obtenir des conseils dans ce cas. Mon point n'est pas controversĂ© - je dĂ©fends la pratique standard de l'industrie.

Quel est le défaut non sécurisé à votre avis ?

MĂȘme votre exemple d'ajout de supports de stockage uniquement bĂ©nĂ©ficierait fortement du chiffrement au repos. Je recommanderais vivement de lire un ensemble rĂ©cent de NIST, ISO 27002, NERC, IEC 62443 ou vraiment toute norme acceptĂ©e Ă  l'Ă©chelle mondiale pour obtenir des conseils sur les meilleures pratiques ici. Nous ne sommes pas dans un nouveau territoire.

Le chiffrement au repos ne signifie pas que restic doit le faire. Le stockage d'ajout uniquement peut toujours ĂȘtre chiffrĂ© d'une autre maniĂšre si nĂ©cessaire. NĂ©anmoins, il y aura du stockage non cryptĂ©, mĂȘme si ce n'est que pour le mot de passe. Sinon, le concept de sauvegarde reposerait sur quelqu'un qui se souviendrait toujours du mot de passe.

se désinscrire de ce fil...

Restons-en lĂ , il est clair que certaines personnes veulent une option --no-password Ă  init , et c'est tout le sujet de ce problĂšme. Le cryptage ou non est une question distincte.

Juste un petit commentaire ici :
Je suis un utilisateur qui ne se soucie pas du cryptage. Il n'y a rien de sensible sur mes données. Je me soucie du fait que les gens qui ne sont pas moi puissent utiliser dans 20-40 ans. Utiliser simplement rclone est une autre alternative plus pauvre.

Restic semble ĂȘtre un bon outil pour cela, sauf que le cryptage obligatoire et un mot de passe signifient que je dois en tenir compte. Peut-ĂȘtre un fichier README dans le rĂ©fĂ©rentiel de sauvegarde. C'est plus de travail et toute solution (de mon cĂŽtĂ©) dĂ©fait tout cryptage de toute façon.

marque

Merci pour vos contributions, je pense que nous avons collecté suffisamment d'informations.

Cette page vous a été utile?
0 / 5 - 0 notes