Найпростіший спосіб захисту паролем каталогу та його вмісту без створення нових файлів?


22

Я хотів би захистити паролем або зашифрувати каталог і всі файли в ньому (для всього дерева каталогів під ним). Я не хочу турбувати весь домашній каталог, я хочу конкретний каталог з деякими файлами та папками в ньому. Я хотів би мати можливість зашифрувати каталог або розшифрувати його за допомогою пароля. Командний рядок було б найкраще використовувати. Мені не хочеться створювати новий файл як зашифровану версію, а потім видаляти попередні, які є незашифрованою версією.


Цікаво, "без створення нових файлів" ...
phunehehe

Ви маєте на увазі mount як зашифрована файлова система?
Faheem Mitha

@FaheemMitha, я також хотів би уникати маршруту файлової системи, це звучить складно.
Vass

1
@Vass Маршрут файлової системи на сьогоднішній день є найпростішим методом. Ви полегшите своє життя, якщо не відкинете рішення довільно.
Жил 'ТАК - перестань бути злим'

ПРИМІТКА: encfs не вважається безпечним: askubuntu.com/questions/813290/encfs-insecure-what-to-use-now
Keiran Raine

Відповіді:


23

Використовуйте encfs (доступний як пакет у більшості дистрибутивів). Налаштовувати:

mkdir ~/.encrypted ~/encrypted
encfs ~/.encrypted ~/encrypted
# enter a passphrase
mv existing-directory ~/encrypted

Початковий виклик для encfsналаштування зашифрованої файлової системи. Після цього кожен файл, під яким ви пишете ~/encrypted, не зберігається безпосередньо на диску, він шифрується, а зашифровані дані зберігаються під ~/.encrypted. У encfsлистах команди демон працює, і цей демон ручка шифрування (і дешифрування при читанні файлу з - під ~/encrypted).

Іншими словами, для файлів під ~/encrypted, дії, такі як читання та запис, не перекладаються безпосередньо на читання чи запис з диска. Вони виконуються encfsпроцесом, який шифрує та розшифровує дані та використовує ~/.encryptedкаталог для зберігання шифротексту.

Коли ви закінчили роботу з вашими файлами, відключіть файлову систему, щоб отримати доступ до даних, поки ви знову не введете свою парольну фразу:

fusermount -u ~/encrypted

Після цього ~/encryptedзнову буде порожній каталог.

Коли згодом ви захочете знову працювати над цими файлами, змонтуйте зашифровану файлову систему:

encfs ~/.encrypted ~/encrypted
# enter your passphrase

Це, знову ж таки, робить зашифровані файли ~/.encryptedдоступними під каталогом ~/encrypted.

Ви можете змінити точку монтажу, ~/encryptedяк вам подобається: encfs ~/.encrypted /somewhere/else(але монтуйте зашифрований каталог лише один раз за раз). Ви можете скопіювати або перемістити шифротекст (але не поки він встановлений) в інше місце або навіть на іншу машину; все, що вам потрібно зробити для роботи над файлами, - це передати розташування шифротексту як першого аргументу encfsта розташування порожнього каталогу як другого аргументу.


відповідь дуже корисна і практична. Я дуже вдячний, якщо ви можете додати ще трохи тексту, щоб пояснити, що робить кожна операція, якщо це не турбує вас. А ви могли б пояснити, що означає файлова система у цьому контексті та відповідність монтажу?
Вас

1
@Vass Я оновив свою відповідь ще більше пояснень. Докладніше про файлові системи та монтаж, див. Які точки монтажу існують у типовій системі Linux? і Що означає встановлення пристрою в Linux?
Жил "ТАК - перестань бути злим"

Це дивовижне пояснення. Я відчуваю, що дізнався багато. І додаткові посилання допомагають. Таким чином, файлова система, створена encfs, є "збитими блоками вихідного файлу", і через encfs ви можете переміщатися та читати її; оскільки оригінальна файлова система не сумісна для використання цих блоків даних. і зашифрований каталог прихований, щоб не потрапити в нього випадково. і якби ти це зробив, ти нічого не побачив?
Vass

1
@Vass "файлова система, створена encfs," збита з блоків вихідного файлу ", і через encfs ви можете переміщатися та читати її": так, саме так. Каталог ~/.encryptedмістить шифротекст; Ви можете отримати доступ до нього, не проходячи encfs, але там ви побачите лише зашифровані дані.
Жил "ТАК - перестань бути злим"

2

Мені не хочеться створювати новий файл у вигляді зашифрованої версії, а потім видаляти попередні, які є незашифрованою версією

Але саме такий сценарій ви описали .... "зможете зашифрувати каталог або розшифрувати його"

Я підозрюю, що рішення, яке ви шукаєте, це зашифрований FUSE або подібний . Файлова система зберігається у зашифрованому файлі, і при їх монтажі (із парольною фразою) відкритий доступ через рівень VFS.


створення нового файлу та видалення попереднього - це .zip-маршрут із захистом паролем. Я не розумію файлову систему та маршрут монтажу, на який ви посилаєтесь. Чи не існує якоїсь програми, яка певним чином змішує файл, а потім може привести його в порядок?
Vass

так, тут весь список FUSE зашифрованих файлових систем. Поштовий шлях є найпростішим
BSD

@Vass Я не розумію, що ви маєте на увазі під "поштовим шляхом": жодного поштового індексу немає. Простий текст ніколи не зберігається на диску (це було б набагато складніше і перемогло б більшість цілей шифрування).
Жил "ТАК - перестань бути злим"

2
Шлях поштового шляху / zip - це рекурсивно зафіксувати каталог із параметрами шифрування / пароля. Потім, коли хочеться отримати доступ до файлу, потрібно витягнути незашифрований файл із zip, прочитати файл, а потім видалити або відредагувати файл, а потім оновити zip новим файлом, а потім видалити проміжний файл. Він шукає прозорість зашифрованої файлової системи, але на рівні каталогу. Я та інші пропонують FUSE із зашифрованим fs. Хоча "просто" - це питання перспективи та досвіду.
bsd

@bdowning, так, ви правильно сформулювали це. Я не розумію файлових систем та їх роботи. Я би працював наосліп з командами, не розуміючи понять.
Вас
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.