Як шифрувати / вдома на Ubuntu 18.04?


57

Розчарований, коли інсталятор 18.04 більше не пропонує можливість шифрувати домашній каталог. Відповідно до цього звіту про помилки, на який посилається інсталятор, рекомендований метод шифрування в ці дні - повноцінний диск з LUKS або fscrypt для каталогів. Шифрування повним диском здається трохи надмірним для моїх потреб, і всі помилки та застереження, згадані в Wiki , не роблять це дуже привабливим варіантом. Мені дуже хочеться захистити свій домашній каталог від того, щоб хтось звертався до моїх документів, фотографій і т. Д., Якщо мій ноутбук був би вкрадений, зробивши fscrypt варіант для мене.

На сторінці fscrypt GitHub є кілька прикладів того, як його налаштувати, але я не можу знайти жодної документації, яка спрямована на шифрування домашнього каталогу в Ubuntu. Старий інструмент ecryptfs все ще доступний, але після його налаштування Ubuntu іноді зависає на екрані входу.

Отже, моє запитання таке: як мені налаштувати fscrypt для шифрування мого / домашнього каталогу та розшифрування під час входу? Також мені сподобалося, як шифри дозволяють розшифровувати папку вручну (наприклад, із зображень дисків).

(Подібне запитання було розміщено тут і, на жаль, було закрито, оскільки він не був "темою" звіту про помилки. Для уточнення це не звіт про помилку. Той факт, що параметр домашнього каталогу шифрованого файлу було видалено з інсталятора, було навмисно. Все, що я я запитую тут, як налаштувати fscrypt.)


2
@Panther Чи дозволяє LUKS розшифровувати файли, що зберігаються на резервному диску? Причина, яку я запитую, полягає в тому, що я роблю повне резервне копіювання системи з Windows за допомогою Macrium Reflect. Якщо мені потрібно витягнути з резервної копії кілька файлів, мені знадобиться спосіб розшифрувати резервні файли. З криптофайлами все, що я повинен був зробити, це підключити мій диск і запустити скрипт, що зберігається в зашифрованій папці.
elight24

7
Тож як щодо тих із нас, у кого домашня папка зашифрована з 16.04, але не можемо встановити її новою, тому що параметр "шифрувати домашню папку" вже відсутній у інсталятора? Ми навіть не можемо увійти. Це смішно.
SunnyDaze

2
@SunnyDaze Минуло час, оскільки мені довелося монтувати свої дані вручну, але я вважаю, що команда для цього була "ecryptfs-mount-private".
elight24

3
Ви можете заплутати використання LUKS на всьому диску, це не буде працювати з подвійним завантажувальним вікном, порівняно з використанням LUKS на розділі Ubuntu, добре працює подвійне завантаження з Windows. Я не читав сторінку вікі
Пантера

2
Повне шифрування диска - це чудово і робить свою роботу. Але цього достатньо лише, якщо це ти персональний комп’ютер і ти єдиний користувач. Якщо хтось цікавиться why encrypt the home?, коли є багато користувачів, це корисно. Коли ви входите в систему, розшифровується лише ваш будинок, але не інші
AnthonyB

Відповіді:


25

Оновити 2019-07

Я працюю з кількома зашифрованими будинками fscrypt. Встановіть вашу систему без шифрування і скористайтеся цим посібником для використання fscryptу вашому домі.

Будьте впевнені у chmod 700своєму будинку та / або використанні, umask 077оскільки fscrypt не встановлює автоматично дозволи, як ecryptfsраніше.

API, який fscryptможе змінитися в майбутньому, тому обов'язково створіть резервну копію важливих файлів, якщо ви намагаєтесь оновити систему.

(Ця функція не використовується широко на робочому столі. Використовуйте на власний ризик.)

Оновлення 2018-11

TL: DR; Можна спробувати fscryptв Ubuntu 18.10+ або Linux Mint 19.1+

Схоже, це було остаточно виправлено. Ось попередній посібник: http://tlbdk.github.io/ubuntu/2018/10/22/fscrypt.html

Я не цитую тут інструкцій, оскільки для цього потрібні певні хаки, і ви можете втратити домашні дані.

Попередження: Попередження користувача @dpg : " Будьте обережні : я дотримувався вказівок цього" попереднього керівництва "(робив це під tty) і отримав нескінченний цикл входу."

Розгляньте цей посібник лише для освітніх цілей.

Далі моя оригінальна відповідь:

Оригінальний відповідь 2018-05

TL; DR: Використовуйте класичне домашнє шифрування за допомогою Linux Mint 19 Tara .

fscrypt для домашнього шифрування все ще порушено.


Як налаштувати fscrypt для шифрування мого / домашнього каталогу та розшифрування під час входу?

Це те, чого багато з нас хочуть. Схоже, команда Ubuntu не змогла приступити ecryptfsдо роботи без помилок на Ubuntu 18.04, і не змогла виправити помилки fscryptдля опції домашнього шифрування вчасно для запланованого випуску Ubuntu 18.04.

Бо fscryptє хоча б одна критична помилка, яка робить її непридатною для домашнього шифрування на даний момент:

Крім того, нам знадобиться прозорий спосіб автентифікації / розблокування, перш ніж це буде реалістичною альтернативою «старому» домашньому шифруванню шифрувального типу. Це відстежується тут:

Якщо ці питання відкриті, ви можете вважати домашнє шифрування порушеним у цей момент. З цим ми з колегами вважаємо, що Ubuntu 18.04 18.04.1 наразі не закінчено, і сподіваємось, що домашнє шифрування буде повернуто (використовуючи новий і набагато кращий fscryptметод) в Ubuntu 18.04.1 18.04.2.

До цього часу ми дотримуємось Ubuntu 16.04. Ми переключили всі наші машини на Linux Mint 19 Tara за допомогою класичного домашнього шифрування ecryptfs. Прочитайте розділ "відомі проблеми" у Примітках до випуску для Linux Mint 19 Tara про ecryptfsобмеження та переконайтесь, що це прийнятно для вас:

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

Якщо ви спробували fscryptі виявили, що вона порушена для вашого використання, ви можете проголосувати "ця помилка впливає і на мене" за наступною помилкою запуску:


Зауважте, що fscrypt/ ext4-crypt(майбутнє "шифрування домашньої програми") - це найшвидший варіант, а ecryptfs(старий "шифрувати домашнє") - найповільніший варіант. LUKS("шифрувати весь диск") знаходиться посередині.

З цієї причини рекомендується ціле шифрування диска "зручно". Тому що якщо у вас дуже великі проекти з багатьма невеликими файлами, ви багато використовуєте управління редагуванням, робіть великі компіляції та ін домашнє шифрування.

Зрештою, шифрування всього диска має декілька недоліків:

  • Обліковий запис гостя
  • Сімейний ноутбук з приватними акаунтами
  • Використання програмного забезпечення проти крадіжок типу PREY

Дивовижно, що Canonical вирішив, що "нам це більше не потрібно" у своїй версії LTS, яка стала відома як їх більш "серйозне" розповсюдження.


2
Ubuntu 18.04.1 вийшов сьогодні, при цьому обидва помилки все ще стоять. Я сподіваюся побачити fscrypt в 18.04.2, але зараз я трохи менш оптимістичний. Будь ласка, оновіть!
Nonny Moose

2
@NonnyMoose оновлено - дивіться жирний розділ на півдорозі моєї публікації.
Редсандро

3
Оце Так! коли люди оновлюються з 16.04 до 18.04, що відбувається з їх ~!?
MaxB

2
Будьте уважні: я дотримувався вказівок із цього «переважного керівництва» (робив це під tty) і отримав нескінченний цикл входу. Спробував це двічі на свіжому монтажі 18.10 з тим же результатом.
PetroCliff

2
Якщо хтось потрапив у нескінченний цикл входу після шифрування, але може увійти в tty. У моєму випадку це було викликано неправильним власником /home/myuserкаталогу. З якихось причин він був корінним, тому зміна власника на мого користувача вирішила проблему.
PetroCliff

8

З відповіді Пантери тут повне шифрування диска шифрує все, включаючи / home, а шифрування лише певного режиму, такого як / home, шифрується лише тоді, коли ви не ввійшли в систему.

Щоб зашифрувати діючий користувач домашнього режиму:

Перший вихід із цього облікового запису та вхід у обліковий запис адміністратора:

встановіть утиліти шифрування для завдання:

 sudo apt install ecryptfs-utils cryptsetup

з цієї помилки на панелі запуску ecryptfs-utils зараз знаходиться у Всесвітній репо.

перемістити домашню папку цього користувача:

sudo ecryptfs-migrate-home -u <user>

після чого пароль користувача цього облікового запису

Потім вийдіть із системи та увійдіть в обліковий запис зашифрованих користувачів - перед перезавантаженням! для завершення процесу шифрування

Всередині облікового запису друкуйте та записуйте парольну фразу для відновлення:

ecryptfs-unwrap-passphrase

Тепер ви можете перезавантажити та увійти. Після задоволення можна видалити домашню папку резервного копіювання.

Також якщо ви хочете створити нового користувача із зашифрованим домашнім dir:

sudo adduser --encrypt-home <user>

Для отримання додаткової інформації: man ecryptfs-migrate-home ; man ecryptfs-setup-private


2
Дякую за відповідь, ptetteh. Я спробував цей метод днями, але, схоже, це викликає проблеми при вході в систему. Іноді він зависає на екрані входу і спричинить перезавантаження. Я перевстановив 18.04 лише для того, щоб переконатися, що це не щось інше, що викликає проблему, і поки що все здається нормально. Якщо ecryptfs тепер вважається непридатним для включення за замовчуванням, я вважаю, що найкраще було б для мене використовувати LUKS або fscrypt.
elight24

1
Це працювало для мене в чистому монтажі (18.04.1). Мені довелося це робити в "режимі відновлення". Розв’язування не потрібно, як під час входу, він повідомить про це та попросить записати створену парольну фразу. Дякую!
lepe

2
ecryptfs не працюватиме, якщо у вашому домашньому каталозі у вас є кілька довших імен шляху (> ~ 140 символів). Дивіться unix.stackexchange.com/questions/32795/…
Себастьян Старк

1

Особисто я майже ніколи не рекомендую використовувати шифрування файлової системи комусь, для більшості випадків використання. Є кілька причин, не останньою з яких є факт існуючих та більш ефективних альтернатив. Ви всі розмовляєте так, що є лише два варіанти - FSE або FDE (Повне шифрування диска). Однак це просто не так. Насправді, є ще два варіанти, які б принесли користь ОП набагато більше, а саме: Шифрування файлів та контейнерів.

Шифрування файлових контейнерів - це те, для чого написано програмне забезпечення, як Veracrypt, і тепер неіснуючий Truecrypt. Шифрування контейнерів вбудовано в більшість програмного забезпечення архіву стиснення файлів, таких як Winzip та 7zip, як варіант при створенні такого архіву.

Обидва вони мають багато переваг перед FSE, найбільш очевидним є те, що вам не потрібно залишати їх встановленими, поки ви не працюєте зі своїми зашифрованими файлами. Це не дозволяє комусь отримати доступ до тих, хто може змінити захист клавіші профілю користувача та блокувати екран. Крім того, ви можете зробити щось дурне, наприклад, відійти від комп'ютера, але забудьте заблокувати екран або дозволити комусь користуватися комп’ютером і сподіваючись, що вони не заглянуть у ваші приховані каталоги. Крім того, ви можете легко переміщувати велику кількість файлів одночасно, не потрібно шифрувати їх іншим способом, оскільки контейнери є портативними.

Однією з переваг того, що контейнери Veracrypt є настільки корисними, є той факт, що вони можуть бути змонтовані як накопичувач, і це дозволяє форматувати їх за допомогою окремої файлової системи, переважно файлової системи, яка не веде журнал, наприклад EXT2 або FAT32. Система файлів журналів може потенційно просочити інформацію до зловмисника. Однак якщо все, що ви робите, приховуєте ваші особисті фотографії, це може бути не все, що стосується вас. Якщо, з іншого боку, ви маєте державну таємницю або юридично захищені дані, то це може бути. Ви також можете встановити їх для автоматичного встановлення під час завантаження, якщо використовується файл ключа. Однак це не рекомендується, оскільки файл ключів потрібно зберігати десь менш безпечно, ніж там, де FSE зберігає ключ профілю користувача.

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

Особисто я використовую шифрування контейнерів для файлів, які не будуть переміщені, і зашифровані архіви для файлів, які будуть переміщені або збережені в хмарі, оскільки це менший розмір файлу.

Шифрування домашнього каталогу все ще можливо за допомогою шифрування контейнера. Може зберігати ключ шифрування на YubiKey?

У будь-якому випадку, я просто хотів запропонувати вам усі альтернативи, які не були згадувані іншими плакатами. Не соромтеся погоджуватися чи не погоджуватися з усім, що я сказав.


8
Привіт. У мене є кілька коментарів щодо вашого прикладу "няні": - по-перше, в багатьох місцях люди можуть сподіватися, що середня няня за типою буде підлітком, що робить трохи тривожною аналогію потрапляти до такої нитки. По-друге, я просто хочу підтвердити, що для шифрування є набагато кращі випадки використання, ніж приховування винної таємниці.
mwfearnley

Контейнери мають фіксований розмір, шифрування файлової системи (fscrypt, eCryptfs, EncFS тощо) займає лише стільки місця, скільки файли, і може рости та зменшуватися відповідно. QED. PS вам здається невідомим, що eCryptfs може зашифрувати лише одну директорію в домашніх умовах, розшифрувати лише за примхою.
Xen2050

3
Чесно кажучи, ця відповідь корисна, але зміст образливий. Просто через асоціювання шифрування із злочинною діяльністю, як ніби цього недостатньо у ЗМІ. Шифрування - це захист від злочинної діяльності. Я не можу виголосити через це. Я видаляю цей коментар, коли відбудеться редагування.
Тодд

1
Зауважте, що якщо ви не можете довірити root (uid: 0), ви не можете використовувати систему для будь-якого шифрування (будь то FSE, контейнер або архів). Усі системи шифрування є вразливими, якщо відкрити шифрування та піти подалі від системи, не замикаючи її. Крім того, якщо ви не шифруєте всю свою файлову систему, ви повинні розуміти, що потенційно всі програми, які торкаються секретних файлів, потенційно можуть робити незашифровані копії поза захищеним розділом.
Мікко Ранталайнен

0

Якщо ви, як і я, робите нову установку Ubuntu 18.04 над Ubuntu 16.04, і раніше ви зашифрували свою програму /home, ви побачите, що після встановлення ви не можете ввійти. Все, що вам потрібно зробити - це встановити пакунки, пов'язані з ecryptfs:, sudo apt install ecryptfs-utils cryptsetupперезавантажити та увійти.

Щоб встановити ці пакети, ви можете або увійти в запасний tty, коли budgie завантажився ( Cntrl+ Alt+ F1), або увійти в режим відновлення Linux і встановити його звідти.

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