Различия
Здесь показаны различия между двумя версиями данной страницы.
| Следующая версия | Предыдущая версия | ||
| wiki:шифрование_всего_диска [2011/12/14 17:00] alfa | wiki:шифрование_всего_диска [2016/05/08 19:34] (текущий) [Описание руководства] | ||
|---|---|---|---|
| Строка 3: | Строка 3: | ||
| ===== Описание руководства ===== | ===== Описание руководства ===== | ||
| - | Данная статья рассказывает, как создать надёжно зашифрованное хранилище данных на жестом диске компьютера и при этом не сломать спящий и ждущий режимы. Особенно актуально это для владельцев ноутбуков, т. к. в отличие от стационарных компьютеров шанс кражи/утери ноутбука выше и возникает обоснованное желание хранить информацию в зашифрованном виде. Однако, предлагаемая по-умолчанию опция шифрования домашней папки при помощи  ecryptfs  во-первых не шифрует корневой раздел системы ((имея доступ к корневому разделу можно, например, получить список файлов в домашнем разделе, несмотря на то, что тот зашифрован)), а во-вторых  ecryptfs  шифрует раздел swap с применением случайно сгенерированного ключа, таким образом, перестает работать такая нужная в ноутбуках опция как спящий режим((т. е. режим приостановки работы компьютера, при котором все содержимое оперативной памяти сбрасывается на диск, а питание компьютера отключается)).  | + | Данная статья рассказывает, как создать надёжно зашифрованное хранилище данных на жестком диске компьютера и при этом не сломать спящий и ждущий режимы. Особенно актуально это для владельцев ноутбуков, т. к. в отличие от стационарных компьютеров шанс кражи/утери ноутбука выше и возникает обоснованное желание хранить информацию в зашифрованном виде. Однако, предлагаемая по-умолчанию опция шифрования домашней папки при помощи  ecryptfs  во-первых не шифрует корневой раздел системы ((имея доступ к корневому разделу можно, например, получить список файлов в домашнем разделе, несмотря на то, что тот зашифрован)), а во-вторых  ecryptfs  шифрует раздел swap с применением случайно сгенерированного ключа, таким образом, перестает работать такая нужная в ноутбуках опция как спящий режим((т. е. режим приостановки работы компьютера, при котором все содержимое оперативной памяти сбрасывается на диск, а питание компьютера отключается))(([[https://help.ubuntu.com/community/EnableHibernateWithEncryptedSwap|Починка спящего режима для EncryptFs-swap]])). | 
| Предлагается же создать один большой зашифрованный раздел размером с весь диск компьютера((за исключением небольшого не шифруемого раздела /boot)), поверх которого развернуть виртуальную группу LVM, в которой создать обычные (не шифрованные с точки зрения ОС) разделы /, /home и swap. При этом, пользователю придётся вводить пароль при каждом включении компьютера (даже при выходе из спящего режима), однако, за счёт смещения шифрования на более низкий уровень, ОС «не заметит» этого и все функции будут работать. | Предлагается же создать один большой зашифрованный раздел размером с весь диск компьютера((за исключением небольшого не шифруемого раздела /boot)), поверх которого развернуть виртуальную группу LVM, в которой создать обычные (не шифрованные с точки зрения ОС) разделы /, /home и swap. При этом, пользователю придётся вводить пароль при каждом включении компьютера (даже при выходе из спящего режима), однако, за счёт смещения шифрования на более низкий уровень, ОС «не заметит» этого и все функции будут работать. | ||
| + | <note important>Начиная с версии 12.10 возможность зашифровать весь диск целиком добавлена в варианты установки Ubuntu в стандартном инсталляторе.</note> | ||
| ===== Установка ===== | ===== Установка ===== | ||
| - | Итак, для установки нам потребуется диск альтернативной установки системы . | + | Итак, для установки нам потребуется диск альтернативной установки системы, который можно скачать [[http://ubuntu.ru/get|тут]]. Ищите образ с alternate в названии. | 
| + | <note warning> | ||
| Подразумевается, что вы выполняете новую установку системы, если это не так — предварительно сохраните все свои данные и настройки, т. к. описанный ниже процесс подразумевает потерю всех данных на жёстком диске компьютера. | Подразумевается, что вы выполняете новую установку системы, если это не так — предварительно сохраните все свои данные и настройки, т. к. описанный ниже процесс подразумевает потерю всех данных на жёстком диске компьютера. | ||
| + | </note> | ||
| - | Загрузите систему с alternate — диска, выберите язык и приступите у установке. | + | Загрузите систему с alternate — диска, выберите язык и приступите к установке: | 
| - | Тут скриншоты и немного текста | + | {{ :wiki:cryptsetup_screen_002.png?direct& |Загрузите систему с alternate — диска, выберите язык и приступите у установке.}} | 
| - | Далее продолжайте установку системы как обычно. Когда установщик спросит вас, зашифровать ли домашний каталог — откажитесь, ведь ваш диск уже зашифрован. | + | Выберите ручной режим разметки диска: | 
| - | После завершения установки и перезагрузки система предложит вам ввести пароль для разблокировки шифрованного диска.  | + | {{ :wiki:cryptsetup_screen_003.png?direct& |Выберите ручной режим разметки диска.}} | 
| - | Тут скрин | + | Если у вас новый диск или, если вы хотите очистить на нем таблицу разделов, выберите строку с названием диска: | 
| - | Введите пароль и нажмите Enter. | + | {{ :wiki:cryptsetup_screen_004.png?direct& |Если у вас новый диск...}} | 
| - | Изменение пароля. | + | и создайте на нем новую таблицу разделов: | 
| + | {{ :wiki:cryptsetup_screen_005.png?direct& |...создайте на нем новую таблицу разделов}} | ||
| + | |||
| + | После этого, создайте на диске раздел /boot, выбрав указателем свободное место на диске: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_006.png?direct& |создайте раздел}} | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_007.png?direct& |создайте раздел}} | ||
| + | |||
| + | Укажите небольшой объем, от 300 МБ до 1ГБ, т.к. для /boot этого будет вполне достаточно:  | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_008.png?direct& |от 300 до 1000 МБ}} | ||
| + | {{ :wiki:cryptsetup_screen_009.png?direct& |лучше сделать раздел первичным}} | ||
| + | {{ :wiki:cryptsetup_screen_010.png?direct& |и расположить в начале диска}} | ||
| + | |||
| + | В списке "использовать как" укажите /boot, не забудьте сделать раздел загрузочным: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_011.png?direct& |не забудьте сделать его загрузочным}} | ||
| + | |||
| + | Далее, не размечая оставшееся место, переходим в пункт "Настроить шифрование для томов": | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_012.png?direct& |переходим в пункт "Настроить шифрование для томов"}} | ||
| + | |||
| + | Соглашаемся записать изменения: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_013.png?direct& |соглашаемся на запись изменений}} | ||
| + | |||
| + | Выбираем "Create encrypted volumes": | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_014.png?direct& |Выбираем "Create encrypted volumes"}} | ||
| + | |||
| + | Далее выбираем (при помощи кнопки <key>Space</key>) свободное место на диске и жмём "Продолжить": | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_015.png?direct& |выбираем свободное место}} | ||
| + | |||
| + | Если у вас нет паранойи, можете просто нажать "Настройка раздела закончена", если есть - установите параметр "Стереть данные" в "Да": | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_016.png?direct& |}} | ||
| + | |||
| + | Снова соглашаемся на запись изменений на диск: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_017.png?direct& |Соглашаемся на запись изменений}} | ||
| + | |||
| + | Далее выбираем "Finish": | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_018.png?direct& |Выбираем "Finish"}} | ||
| + | |||
| + | Далее установщик попросит вас ввести парольную фразу, которой он "закроет" диск: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_019.png?direct& |введите пароль}} | ||
| + | |||
| + | После этого подтвердите пароль: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_020.png?direct& |подтвердите пароль}} | ||
| + | |||
| + | Если вы используете слишком простой пароль((существует неплохой генератор паролей, pwgen, создающий сложные, но легко запоминающиеся пароли)), установщик попросит подтверждения: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_021.png?direct& |используйте сильный пароль}} | ||
| + | |||
| + | После создания шифрованного тома, нужно настроить LVM: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_022.png?direct& |теперь настраиваем LVM}} | ||
| + | |||
| + | Снова соглашаемся на запись изменений: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_023.png?direct& |ну да, опять}} | ||
| + | |||
| + | Создаем группу томов: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_024.png?direct& |создаем группу томов}} | ||
| + | |||
| + | Даем ей имя: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_025.png?direct& |даем ей имя}} | ||
| + | |||
| + | И указываем в качестве устройств для группы только что созданный шифрованный диск: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_026.png?direct& |тот, что crypt}} | ||
| + | |||
| + | После этого создаем логические тома: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_027.png?direct& |создаем логические тома}} | ||
| + | |||
| + | Пример для swap: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_028.png?direct& |для swap}} | ||
| + | {{ :wiki:cryptsetup_screen_029.png?direct& |для swap}} | ||
| + | |||
| + | Аналогично создаем диски для root и home, выделяя им желаемый объем. Если у вас большой диск - можете оставить некоторый его объем свободным, позднее вы сможете добавить его к любому логическому тому((что, однако, потребует изменения размера файловой системы на нем, так что если не знаете как лучше поступить - добавьте этот объем сразу к разделу home)). | ||
| + | |||
| + | После этого выбирайте "Закончить": | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_031.png?direct& |Закончить}} | ||
| + | |||
| + | Теперь нужно назначить файловые системы и точки монтирования для созданных дисков: | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_032.png?direct& |}} | ||
| + | |||
| + | Выбирайте разделы, находящиеся в блоках, начинающихся на LVM, они названы, согласно именам, данным им вами при создании логических томов, например, в данном случае, это LV home, LV swap и LV root. Стоит заметить, что раздел root((имеется ввиду корневой раздел /)) не нужно делать загрузочным, т.к. роль загрузочного у нас выполняет отдельный раздел /boot. | ||
| + | |||
| + | По окончании, выбирайте "Закончить разметку и записать изменения на диск": | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_036.png?direct& |Закончить...}} | ||
| + | |||
| + | И снова соглашаемся с записью изменений на диск (заодно можно ещё раз проверить все ли вы правильно разметили): | ||
| + | |||
| + | {{ :wiki:cryptsetup_screen_037.png?direct& |Проверяем и жмём "Да"}} | ||
| + | |||
| + | Далее продолжайте установку системы как обычно. Когда установщик спросит вас, зашифровать ли домашний каталог — откажитесь, ведь ваш диск уже зашифрован. | ||
| + | |||
| + | После завершения установки и перезагрузки система предложит вам ввести пароль для разблокировки шифрованного диска. Введите пароль и нажмите <key>Enter</key>. | ||
| + | |||
| + | ===== Изменение пароля ===== | ||
| + | |||
| + | <note important> | ||
| Рекомендуется предварительно размонтировать все разделы, лежащие на зашифрованном диске, что в нашем случае означает, что для смены пароля на диске понадобится live-cd. | Рекомендуется предварительно размонтировать все разделы, лежащие на зашифрованном диске, что в нашем случае означает, что для смены пароля на диске понадобится live-cd. | ||
| - | Если вы не боитесь возможных последствий — можете пропустить этап с загрузкой live-cd и установкой необходимых программ, и сразу перейти к смене пароля. | + | Если вы не боитесь возможных последствий — можете пропустить этап с загрузкой live-cd и установкой необходимых программ, и сразу перейти к смене пароля.</note> | 
| - | Загрузитесь с live-cd, выберите «Попробовать» и дождитесь полной загрузки системы. После этого, настройте подключение к интернету. Затем откройте терминал и выполните: | + | ==== Работа с live-cd ==== | 
| + | |||
| + | Загрузитесь с live-cd((т.е. с обычного установочного диска Ubuntu)), выберите «Попробовать Ubuntu» и дождитесь полной загрузки системы. После этого, настройте подключение к интернету.  | ||
| + | Затем откройте терминал и выполните: | ||
| + | <code> | ||
| sudo apt-get update | sudo apt-get update | ||
| sudo apt-get install lvm2 cryptsetup | sudo apt-get install lvm2 cryptsetup | ||
| + | </code> | ||
| + | |||
| После успешной установки, переходите к этапу «Смена пароля». | После успешной установки, переходите к этапу «Смена пароля». | ||
| - | LUKS использует в качестве идентификаторов доступа key slots, которые в данном случае выступают в виде пароля, однако могут быть и ключом. Всего доступно 8 слотов. По умолчанию (при создании шифрованного диска) используется слот №0. | + | ==== Смена пароля ==== | 
| + | |||
| + | === Описание === | ||
| + | |||
| + | При установке диск шифруется при помощи связки LUKS и dm-crypt. LUKS использует в качестве идентификаторов доступа key slots, которые в данном случае выступают в виде пароля, однако могут быть и ключом. Всего доступно 8 слотов. По умолчанию (при создании шифрованного диска) используется слот 0. | ||
| Если вам нужно использовать компьютер совместно с другим человеком — вы можете создать для него отдельный пароль разблокировки диска.  | Если вам нужно использовать компьютер совместно с другим человеком — вы можете создать для него отдельный пароль разблокировки диска.  | ||
| Для операций со слотами — сначала нужно определиться с диском, на котором установлено шифрование. Выполните в терминале команду  | Для операций со слотами — сначала нужно определиться с диском, на котором установлено шифрование. Выполните в терминале команду  | ||
| + | <code> | ||
| sudo fdisk -l | sudo fdisk -l | ||
| + | </code> | ||
| + | Вывод будет примерно следующим: | ||
| + | <file> | ||
| Disk /dev/sda: 8589 MB, 8589934592 bytes | Disk /dev/sda: 8589 MB, 8589934592 bytes | ||
| 255 heads, 63 sectors/track, 1044 cylinders, total 16777216 sectors | 255 heads, 63 sectors/track, 1044 cylinders, total 16777216 sectors | ||
| Строка 55: | Строка 185: | ||
| Disk /dev/mapper/sda5_crypt: 7586 MB, 7586443264 bytes | Disk /dev/mapper/sda5_crypt: 7586 MB, 7586443264 bytes | ||
| + | ... | ||
| + | </file> | ||
| - | Она даст вам список разделов на диске. Нужно найти тот раздел, на котором присутствует зашифрованный раздел. В данном случае это sda5. | + | Она даст вам список разделов на диске. Нужно найти тот раздел, **на котором** присутствует зашифрованный раздел. В данном случае это sda5. | 
| Теперь можно просмотреть состояние слотов на этом разделе: | Теперь можно просмотреть состояние слотов на этом разделе: | ||
| + | <code> | ||
| sudo cryptsetup luksDump /dev/sda5 | sudo cryptsetup luksDump /dev/sda5 | ||
| + | </code> | ||
| + | <file> | ||
| testuser@ubuntu:~$ sudo cryptsetup luksDump /dev/sda5 | testuser@ubuntu:~$ sudo cryptsetup luksDump /dev/sda5 | ||
| [sudo] password for testuser:  | [sudo] password for testuser:  | ||
| Строка 89: | Строка 224: | ||
| Key Slot 6: DISABLED | Key Slot 6: DISABLED | ||
| Key Slot 7: DISABLED | Key Slot 7: DISABLED | ||
| + | </file> | ||
| Видим, что слот 0 содержит пароль, а слоты 1-7 имеют статус DISABLED. | Видим, что слот 0 содержит пароль, а слоты 1-7 имеют статус DISABLED. | ||
| - | Устанавливаем новый ключ. | + | === Устанавливаем новый ключ === | 
| + | Ввиду того, что необходим как минимум один активный слот, сменить пароль в обычном понимании на таком диске невозможно. Однако, можно создать пароль в другом слоте, а потом удалить первый слот. | ||
| + | Чтобы создать новый ключ, выполните: | ||
| + | <code> | ||
| sudo cryptsetup luksAddKey /dev/sda5 | sudo cryptsetup luksAddKey /dev/sda5 | ||
| Enter any passphrase: любой из существующих паролей (т. е. В нашем случае из слота 0) | Enter any passphrase: любой из существующих паролей (т. е. В нашем случае из слота 0) | ||
| Enter new passphrase for key slot: Новый пароль | Enter new passphrase for key slot: Новый пароль | ||
| Verify passphrase: Подтверждение нового пароля | Verify passphrase: Подтверждение нового пароля | ||
| + | </code> | ||
| + | |||
| Если теперь посмотреть слоты, то станет видно, что статус ENABLED стоит теперь уже у двух слотов: | Если теперь посмотреть слоты, то станет видно, что статус ENABLED стоит теперь уже у двух слотов: | ||
| - | testuser@ubuntu:~$ sudo cryptsetup luksDump /dev/sda5 | + | <code>sudo cryptsetup luksDump /dev/sda5</code> | 
| - | LUKS header information for /dev/sda5 | + | <file> | 
| - | Version:  1 | + | ... | 
| - | Cipher name:  aes | + | |
| - | Cipher mode:  cbc-essiv:sha256 | + | |
| - | Hash spec:  sha1 | + | |
| - | Payload offset: 2056 | + | |
| - | MK bits:  256 | + | |
| - | MK digest:  cd 6d 79 1b 55 11 e9 04 2f ae 51 7d d5 02 8d ec 40 38 3f ef | + | |
| - | MK salt: c2 b3 1a 4f e7 ed 13 16 40 0b 45 af 43 10 de 24 | + | |
| - | f8 fe bd d8 09 be 71 e6 e0 6f bd ea b9 33 78 c7 | + | |
| - | MK iterations: 22250 | + | |
| - | UUID: 358a958b-c2ce-4626-8cd3-58124ddc15eb | + | |
| Key Slot 0: ENABLED | Key Slot 0: ENABLED | ||
| Строка 130: | Строка 261: | ||
| Key Slot 6: DISABLED | Key Slot 6: DISABLED | ||
| Key Slot 7: DISABLED | Key Slot 7: DISABLED | ||
| + | </file> | ||
| Теперь можно удалить старый пароль, находящийся в слоте 0: | Теперь можно удалить старый пароль, находящийся в слоте 0: | ||
| + | <code> | ||
| sudo cryptsetup luksKillSlot /dev/sda5 0 | sudo cryptsetup luksKillSlot /dev/sda5 0 | ||
| + | -------тут нужно указывать номер слота ^ | ||
| Enter any remaining LUKS passphrase:Пароль из слота 1 (т. е. Из любого оставшегося слота) | Enter any remaining LUKS passphrase:Пароль из слота 1 (т. е. Из любого оставшегося слота) | ||
| - | Смотрим слоты: | + | </code> | 
| - | testuser@ubuntu:~$ sudo cryptsetup luksDump /dev/sda5 | + | |
| - | LUKS header information for /dev/sda5 | + | |
| - | + | ||
| - | Version:  1 | + | |
| - | Cipher name:  aes | + | |
| - | Cipher mode:  cbc-essiv:sha256 | + | |
| - | Hash spec:  sha1 | + | |
| - | Payload offset: 2056 | + | |
| - | MK bits:  256 | + | |
| - | MK digest:  cd 6d 79 1b 55 11 e9 04 2f ae 51 7d d5 02 8d ec 40 38 3f ef | + | |
| - | MK salt: c2 b3 1a 4f e7 ed 13 16 40 0b 45 af 43 10 de 24 | + | |
| - | f8 fe bd d8 09 be 71 e6 e0 6f bd ea b9 33 78 c7 | + | |
| - | MK iterations: 22250 | + | |
| - | UUID: 358a958b-c2ce-4626-8cd3-58124ddc15eb | + | |
| + | Смотрим слоты: | ||
| + | <code>sudo cryptsetup luksDump /dev/sda5</code> | ||
| + | <file> | ||
| + | ... | ||
| Key Slot 0: DISABLED | Key Slot 0: DISABLED | ||
| Key Slot 1: ENABLED | Key Slot 1: ENABLED | ||
| Строка 163: | Строка 287: | ||
| Key Slot 6: DISABLED | Key Slot 6: DISABLED | ||
| Key Slot 7: DISABLED | Key Slot 7: DISABLED | ||
| + | </file> | ||
| И видим, что слот 0 стал DISABLED. | И видим, что слот 0 стал DISABLED. | ||
| + | ===== Заключение ===== | ||
| + | |||
| + | Вот и все. Информация на диске надёжно защищена. Однако, не стоит забывать, что существует большое количество различных угроз, и ваши данные все еще могут быть доступны злоумышленнику, в то время, пока компьютер включён, все диски "открыты". И конечно же, в случае кражи, шифрование спасет ваши данные от злоумышленника, но не вернет их вам, так что не забывайте делать резервные копии. | ||
| + | |||
| + | ===== Ссылки ===== | ||
| + | |||
| + | Статья написана по мотивам [[http://joernfranz.net/2011/01/20/installing-ubuntu-10-10-with-full-disk-encryption/|вот этой вот статьи]]. | ||
| + | |||
| + | {{tag>Система Настройка_системы Cryptsetup LUKS LVM Шифрование}} | ||
 
			 
	