Włącz szyfrowanie dysku po instalacji

61

Korzystam z Saucy 13.10. Jeśli nie włączyłem szyfrowania dysku podczas instalacji, czy jest jakiś sposób, aby włączyć to post facto?

Znalazłem to , co mówi, że szyfrowanie musi nastąpić w czasie instalacji, ale dotyczy to również Fedory. Mogę z łatwością uruchomić się na dysk na żywo, jeśli jest na to sposób.

Isaac Dontje Lindell
źródło
Pełne szyfrowanie dysku czy tylko folder / home?
Joren
Pełny dysk. (Dalsze pytanie: jakie są
zalety
Szyfrowanie dysku / home nie obejmuje przestrzeni wymiany. Wrażliwe dane mogą zostać zapisane w nieszyfrowanej zamianie, jeśli tylko / home jest zaszyfrowane. Można to odzyskać. Ubuntu ma automatyczne deszyfrowanie / home podczas logowania. Pełne szyfrowanie dysku wymaga podania hasła podczas rozruchu i logowania. Zmiana rozmiaru zaszyfrowanego dysku jest żmudnym procesem. Jeśli masz dysk zewnętrzny, łatwo go zaszyfrować po instalacji w 13.10 Saucy Salamander: wykonaj kopię zapasową danych, uruchom „dyski” z deski rozdzielczej, wybierz dysk zewnętrzny, kliknij tryb, wybierz szyfruj, odblokuj nowo zaszyfrowany dysk , skopiuj dane z powrotem.
user75798,

Odpowiedzi:

57

Jeśli chcesz włączyć szyfrowanie folderu domowego, musisz zainstalować i używać tych pakietów: ecryptfs-utilsi cryptsetup. Będziesz także potrzebować innego konta użytkownika z uprawnieniami administratora (sudo). Pełna dokumentacja znajduje się tutaj:

Jeśli chcesz włączyć pełne szyfrowanie dysku po instalacji, na razie krótka odpowiedź brzmi: nie, nie możesz . W każdym razie, jeśli jesteś tym zainteresowany, twoje pytanie jest duplikatem:

Radu Rădeanu
źródło
8
Podaj tutaj przynajmniej podstawowe kroki swojego linkowanego howto. Na wypadek, gdyby Twój link przestał działać, zmienił się lub był tymczasowo niedostępny.
con-f-use
1
@ con-f-use Jeśli dokładnie czytasz (bez zamieszania), w odpowiedzi zawarte są podstawowe kroki.
Radu Rădeanu
1
Co się stanie, jeśli masz udział samby w folderze domowym, który jest zaszyfrowany? Czy użytkownicy sieci nie mogą już czytać plików lub czy są deszyfrowani w ramach udziału?
Rush Frisby,
21

Dalsze pytanie: jakie są wady i zalety pełnego dysku vs. just / home?

Szyfrowanie w / home odbywa się przy użyciu systemu plików przestrzeni użytkownika o nazwie ecryptfs. Jest to bardzo dobrze zrobione i ściśle powiązane z domyślnym systemem uwierzytelniania, dzięki czemu będziesz mieć zero wad użyteczności: po wejściu na konto (ze zdalnej powłoki lub z domyślnego ekranu logowania) twoje hasło służy do rozpakowania bezpiecznego klucza , który jest następnie używany do szyfrowania / deszyfrowania plików w katalogu domowym w locie (zamontowany system plików będzie znajdować się bezpośrednio w / home / nazwa użytkownika). Po wylogowaniu / home / nazwa użytkownika jest odmontowana i tylko zaszyfrowane pliki pozostają widoczne w systemie (zwykle w /home/.ecryptfs/username/.Private/). Wyglądają jak kilka scrabbowanych / losowych plików, ponieważ nazwy plików są również szyfrowane. Jedyny wyciek informacji to: rozmiar pliku, znaczniki czasu i liczba plików (przy pełnym szyfrowaniu dysku są one również ukryte).

Jeśli twój system ma być współużytkowany przez wielu użytkowników, jest to bardzo miła funkcja, nawet jeśli zdecydujesz się na dodanie pełnego szyfrowania dysku wraz z tym: bezpieczeństwo szyfrowania całego dysku jest wyłączone, gdy maszyna jest uruchomiona w domu ( ecryptfs) szyfrowanie jest włączone, dopóki użytkownik jest wylogowany.

Tak więc szyfrowanie całego dysku i szyfrowanie domowe niekoniecznie się wykluczają.

Oto lista możliwych konfiguracji, w zależności od różnych potrzeb bezpieczeństwa:

  • TYLKO PEŁNE SZYFROWANIE DYSKU: Jeśli tylko Ty używasz swojego komputera, a twoje urządzenie jest w stanie obsłużyć pełne szyfrowanie dysku (wszystkie nowoczesne komputery mogą to zrobić bez zauważenia przez użytkownika, netbooków i starych laptopów nie tyle), możesz użyć pełnego szyfrowanie dysku i umieścić dom na tej samej partycji co system operacyjny (/).
  • SZYFROWANIE PEŁNEGO DYSKU I SZYFROWANIE EKRANÓW DOMOWYCH : Jeśli obawiasz się, że Twoje prywatne dane są odczytywane, gdy komputer jest włączony lub udostępniasz komputer innym użytkownikom, możesz mieć dom na innej partycji od / i korzystać z ecryptfs na pełnym dysku szyfrowanie (czyli szyfrowanie / przez LUKS)
  • TYLKO SZYFROWANIE EKRANU DOMOWEGO : Jeśli nie martwisz się zbytnio o to, że ktoś ingeruje w twój system podczas twojej nieobecności, ale nadal chcesz chronić swoje prywatne dane, pomiń szyfrowanie całego dysku i po prostu użyj ecryptfs (szyfrowanie domu). Dodatkową zaletą tego scenariusza jest to, że można go łatwo skonfigurować nawet pozainstalowałeś Ubuntu, po prostu używając ecryptfs-migrate-home. Jest to również domyślna konfiguracja Ubuntu, zanim zmieniła kilka wydań z powrotem, dodając możliwość pełnego szyfrowania dysku. Ponieważ większość współczesnych komputerów stacjonarnych może obsłużyć pełne szyfrowanie dysku bez wysiłku i zapewnia cienką warstwę zabezpieczenia przed wstrzykiwaniem kodu offline, do instalatora dodano pełne szyfrowanie dysku. Zauważ jednak, że dla większości użytkowników po prostu szyfrowanie domu za pomocą ecryptfs będzie wystarczające dla ich potrzeb: trzymanie swoich przyjaciół i zwykłych złodziei laptopów z dala od ich prywatnych danych. Poza tym, jeśli organizacja została specjalnie zaatakowana przez organizację dysponującą odpowiednimi środkami, szyfrowanie całego dysku lub szyfrowanie domowe nie będzie miało większego znaczenia, chyba że wprowadzisz wiele innych paranoicznych zachowań (takich jak: trzymanie jądra w osobnym pendrivie, który jest zawsze przy tobie; ciągłe sprawdzanie pod kątem sabotażu sprzętu / keyloggerów itp.)

Jeśli nie włączyłem szyfrowania dysku podczas instalacji, czy jest jakiś sposób, aby włączyć to post facto?

Tak i będzie łatwiej, jeśli obecnie używasz LVM i masz wystarczająco dużo miejsca w systemie, aby skopiować wszystkie niezaszyfrowane pliki systemowe na zaszyfrowaną partycję LUKS. W tej chwili nie wchodzę w szczegóły, ponieważ nie wiem, czy używasz LVM i czy wolisz nie używać na razie ecrypfs i pominąć kłopot pełnego szyfrowania dysku, aż do kolejnej nowej instalacji.

użytkownik824924
źródło
3

Cóż, możesz wykonać kopię zapasową wszystkich ważnych katalogów i zainstalowanego oprogramowania. Upewnij się, że Twój 13.10 jest w pełni zaktualizowany, aby uniknąć konfliktów wersji. Zwykle rzeczy, które wykonują kopię zapasową, to:

Następnie ponownie instalujesz system tylko teraz zaszyfrowany. Zaktualizuj go w pełnym zakresie. Następnie przenieś kopię zapasową do zaszyfrowanego systemu i zainstaluj całe oprogramowanie z poprzedniej wersji.

Tylko pamiętaj, aby nie nadpisać pliki do szyfrowania ważnych, gdy oddanie z powrotem do tyłu w górę (na przykład /etc/fstab, /etc/cryptabniektóre grub podobne rzeczy, a niektóre rzeczy w /bootnie powinno być zastąpione kopii zapasowych plików).

dezorientować
źródło
1

Z działającego systemu Ubuntu 16.04 udało mi się poinstalacyjne szyfrowanie partycji root, przy czym partycja root zawiera wszystko oprócz / boot. Umieszczam / bootuję na osobnym wymiennym usb. W szczególności zrobiłem to przed aktualizacją do Ubuntu 18, a aktualizacja działała dobrze na wersji dysku zaszyfrowanego.

Szyfrowanie nie zostało wykonane „na miejscu”, co było dla mnie w porządku, ponieważ i tak nie chciałem nadpisywać działającej wersji, dopóki nowa konfiguracja nie działała.

Wykonanie prawidłowej procedury jest niezwykle proste i szybkie. (Chociaż ustalenie prawidłowej procedury było bardzo czasochłonne, ponieważ podążyłem za fałszywymi wskazówkami).

ZARYS

  1. Utwórz dysk USB z linuksem na żywo - wygodne jest włączenie trwałości. Uruchom się na tym dysku USB na żywo.
  2. Utwórz zaszyfrowaną grupę woluminów Luks na pustej partycji. (W moim przypadku znajdował się on na tym samym dysku, co oryginalny Linux, ale może to być inny dysk.) Utwórz / (root) i zamień woluminy logiczne na tej zaszyfrowanej partycji. Będą one działały jako wirtualne partycje, jeśli chodzi o skopiowany Linux.
  3. Skopiuj pliki ze starego katalogu głównego do nowego katalogu głównego.
  4. Skonfiguruj i podziel na partycje inny port USB, aby działał jako wymienny dysk rozruchowy.
  5. Skonfiguruj niektóre pliki w nowym katalogu głównym, zrób trochę magii i chroot w nowym katalogu głównym, a następnie zainstaluj gruba na dysku startowym z nowego środowiska roota.

DETALE

1 - Uruchom z dysku USB z linuksem na żywo - wygodnie jest mieć włączoną trwałość.

Zainstalowano Ubuntu 16 na usb z unetbootin. GUI pozwala na określenie „trwałości”, ale wymagany jest również kolejny krok, aby trwałość działała - zmodyfikuj, /boot/grub/grub.cfgaby dodać --- persistentw następujący sposób:

menuentry "Try Ubuntu without installing" {
    set gfxpayload=keep
    linux   /casper/vmlinuz  file=/cdrom/preseed/ubuntu.seed boot=casper quiet splash --- persistent
    initrd  /casper/initrd
}

Uruchom komputer za pomocą USB na żywo

2- Utwórz zaszyfrowaną grupę woluminów Luks na pustej partycji. Utwórz / (root) i zamień woluminy logiczne na tej zaszyfrowanej partycji.

Załóżmy, że nieużywana partycja do zaszyfrowania to /dev/nvme0n1p4.

Opcjonalnie , jeśli masz stare dane na partycji, którą chcesz ukryć przed szyfrowaniem i formatowaniem, możesz przypadkowo wyczyścić partycję. Zobacz dyskusję tutaj .

dd if=/dev/urandom of=/dev/nvme0n1p4 bs=4096 status=progress

Skonfiguruj szyfrowanie.

cryptsetup -y -v luksFormat /dev/nvme0n1p4

Zostaniesz poproszony o ustawienie hasła.

cryptsetup luksOpen /dev/nvme0n1p4 crypt1

Zostaniesz poproszony o podanie hasła. Pamiętaj, że crypt1jest to dowolna nazwa ustalona przez użytkownika. Teraz utwórz woluminy i format.

pvcreate /dev/mapper/crypt1
vgcreate crypt1-vg /dev/mapper/crypt1

lvcreate -L 8G crypt1-vg -n swap
mkswap /dev/crypt1-vg/swap

lvcreate -l 100%FREE crypt1-vg -n root
mkfs.ext4 /dev/crypt1-vg/root

Użyj tych narzędzi, aby wyświetlić woluminy i zrozumieć hierarchię.

pvscan
vgscan
lvscan
ls -l /dev/mapper
ls -l /dev/crypt1

3- Skopiuj pliki ze starego katalogu głównego do nowego katalogu głównego

mkdir /tmp/old-root 
mount /dev/ubuntu-vg/root /tmp/old-root/
mkdir /tmp/new-root
mount /dev/crypt1-vg/root /tmp/new-root/
cp -a /tmp/old-root/. /tmp/new-root/

umount /tmp/old-root
umount /tmp/new-root

cp -a ... kopiuje w trybie archiwizacji, zachowując wszystkie tryby plików i flagi.

4- Skonfiguruj i podziel na partycje inny port USB, aby działał jako wymienny dysk rozruchowy.

Użyłem do tego gparted. Skonfiguruj dwie partycje. Pierwsza partycja to vfatdruga ext2. Każdy z nich miał 512 MB, możesz dostać mniej. Załóż urządzenie /dev/sdf.

# The first partition: (will be /dev/sdf1)
Free space preceding (leave default value)
New size 512 MiB
Free space following (leave default value)
Create as: Primary Partition
Partition Name: (leave)
File System: fat32
Label: (leave)

# The second partition: (will be /dev/sdf2)
Free space preceding (leave default value)
New size 512 MiB
Free space following (leave default value)
Create as: Primary Partition
Partition Name: (leave)
File System: ext4
Label: (leave) 

5- Skonfiguruj niektóre pliki w nowym katalogu głównym, zrób trochę magii i chroot w nowym katalogu głównym, a następnie zainstaluj gruba na dysku startowym z nowego środowiska roota.

Znajdź niektóre UUID do późniejszego wykorzystania. Zwróć uwagę na wyniki następujących poleceń:

blkid /dev/sdf1
blkid /dev/sdf2
blkid /dev/nvme0n1p4

Zamontuj partycję root i partycje rozruchowe

sudo mount /dev/mapper/crypt1--vg-root /mnt
sudo mount /dev/sdf2 /mnt/boot
sudo mount /dev/sdf1 /mnt/boot/efi

Skonfiguruj plik /mnt/etc/fstab

/dev/mapper/crypt1--vg-root /               ext4    errors=remount-ro 0       1
/dev/mapper/crypt1--vg-swap none    swap    sw              0       0
UUID=[uuid of /dev/sdf2] /boot           ext2    defaults        0       2
UUID=[uuid of /dev/sdf1]  /boot/efi       vfat    umask=0077      0       1

gdzie „[uuid z ...]” to tylko kombinacja litera-liczba-łącznik.

Utwórz plik /mnt/etc/cryptab

# <target name> <source device>     <key file>  <options>
crypt1 UUID=[uuid of /dev/nvme0n1p4] none luks,discard,lvm=crypt1--vg-root

Do wejścia do środowiska katalogu głównego wymagana jest magia:

sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
chroot /mnt

Teraz skonfiguruj rozruchowy dysk USB za pomocą grub:

apt install --reinstall grub-efi-amd64
grub-install --efi-directory=/boot/efi --boot-directory=/boot --removable
update-initramfs -k all -c
update-grub

Teraz powinieneś być w stanie zrestartować się i uruchomić przy użyciu nowo utworzonego dysku rozruchowego USB.

Rozwiązywanie problemów

(a) Sieć musi być podłączona do apt install --reinstall grub-efi-amd64polecenia. Jeśli sieć jest podłączona, ale DNS nie działa, spróbuj

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null

(b) Przed wywołaniem initramfsbieżący vmlinuz...plik użyty w oryginalnym systemie Linux musi znajdować się w nowym katalogu głównym. Jeśli nie, znajdź go i umieść tam.

(c)grub-install polecenie przez domyślną wyszukiwarkę wszystkie inne dyski Linux może znaleźć nawet jeśli nie są one mounted, i umieścić je w menu startowym na nowym startowego USB. Zwykle nie jest to pożądane, więc można tego uniknąć, dodając ten wiersz do /boot/default/grub.cfg:

GRUB_DISABLE_OS_PROBER=true

UWAGA: Do wymiennego rozruchowego USB można dodać plik tekstowy z kluczem szyfrującym.

Craig Hicks
źródło
0

Prosta odpowiedź: nie.

Skomplikowana odpowiedź:

Szyfrowanie dysku lub partycji spowoduje wymazanie wszystkiego, co aktualnie znajduje się na tym dysku lub partycji, więc aby zaszyfrować dysk, należy również usunąć jego zawartość. Przed rozpoczęciem należy wykonać odpowiednie kopie zapasowe danych. Oczywiście oznacza to, że należy ponownie zainstalować system, aby korzystać z pełnego szyfrowania dysku, nie ma innej możliwości. Wynika to z faktu, że losowe dane będą zapisywane na całym dysku, co utrudni odzyskanie danych.

Ale obecnie nie musisz szyfrować partycji root. Pamiętaj, że jeśli coś pójdzie nie tak, jesteś poza systemem bez możliwości odzyskania danych. Zamiast tego należy rozważyć szyfrowanie tylko danych osobowych.

Zobacz podobne pytanie Jak zaszyfrować pełny dysk po instalacji?

Braiam
źródło
„Są poza twoim systemem bez możliwości odzyskania danych” <--- To jest niepoprawne. Tak długo, jak ktoś ma klucz szyfrowania, dane można odzyskać za pomocą Live Medium.
con-f-use
@ con-f-use bierze pod uwagę, że istniało warunkowe „jeśli coś pójdzie drutem”, co oznacza, że ​​jeśli coś niesamowicie złego stanie się z dyskiem / partycją, jest ono szyfrowane.
Braiam
Cóż, tak, jeśli jesteś podejrzany, należy również zachować ostatnią kopię zapasową nagłówka LUKS na zaszyfrowanym dysku. Ale zawarłbym to w „kluczu szyfrującym”. Poza tym nie ma szkody w pełnym szyfrowaniu z punktu widzenia odzyskiwania danych. Jednak fakt, że można stwierdzić, która wersja Ubuntu jest tam zainstalowana, jakie programy są zainstalowane itd., Zapewnia możliwy wektor ataku na dyski nie w pełni zaszyfrowane. Ogólnie rzecz biorąc, także dyski SSD. Tak więc dla paranoika wciąż nie ma możliwości pełnego szyfrowania dysku.
con-f-use
„Ale obecnie nie trzeba szyfrować partycji głównej”. Proszę mówić za siebie, całkowicie się nie zgadzam. „Szyfrowanie dysku lub partycji spowoduje wymazanie wszystkiego, co aktualnie znajduje się na tym dysku lub partycji, więc aby zaszyfrować dysk, należy również usunąć zawartość dysku”. Znowu się nie zgadzam. Truecrypt jest bardzo dobrym przykładem wykonywania FDE w systemie Windows przy użyciu istniejących dysków. W rzeczywistości jest to de facto metoda instalacji - niezaszyfrowana, a po zakończeniu szyfruj ją. Nie zmienia to odpowiedzi, ponieważ w Ubuntu nie jest możliwe atm, ale twoje wypowiedzi są bardzo kategoryczne i niepoprawne.
Cookie
@Cookie dlaczego miałbyś szyfrować partycję zawierającą elementy, które możesz zainstalować później? (i proszę, mówię o nowoczesnym systemie użytkownika, nie ma nic wspólnego z serwerami korporacyjnymi / korporacyjnymi, które mogą mieć zainstalowane w nim rzeczy) 2) to, o czym mówisz, to funkcja truecrypt dostępna tylko dla Windows do tej pory i jeśli nie możesz znaleźć systemu szyfrowania Linux, który może zaszyfrować partycję po instalacji, moje oświadczenie jest poprawne, ponieważ w tej chwili nie jest to możliwe.
Braiam