Forum

nawigacja: powrót do listy forów | Tips and Tricks

Tips and Tricks

Szyfrowany katalog domowy mountowany przy logowaniu.

Marcin Bis2006-06-05 23:52 (18 lat, 5 miesięcy temu)

(Przetestowane w Debianie, powinno działać też w innych dystrybucjach)

1. Tworzymy szyfrowaną partycję:
Potrzebne jest jądro z obsługą dm-crypt (opcje: CONFIG_BLK_DEV_DM, CONFIG_DM_CRYPT), oraz z obsługą algorytmu szyfrującego: (na przykład: CONFIG_CRYPTO_AES_586), czyli 2.6.x.

a) Generujemy zabezpieczony hasłem klucz, którym zaszyfrujemy partycję:
dd if=/dev/urandom bs=1c count=32 | openssl enc -aes-256-ecb > /home/mount.key
enter aes-256-ecb encryption password: <wprowadzmy nasze hasło, takie samo, jak hasło logowania>

UWAGA!: Należy zrobić kopię bezpieczeństwa pliku mount.key, bez niego nie można dostać się do zaszyfrowanej partycji.

b) Inicjujemy szyfrowaną partycję (zamiast partycji można też użyć pliku, ale działa wolniej):
openssl enc -d -aes-256-ecb -in /home/test.key | cryptsetup -c aes create _dev_hda6 /dev/hda6
enter aes-256-ecb decryption password: <wprowadzmy hasło>

c) Możemy użyć dowolnego systemu plików, na przykład XFS:
mkfs -t xfs /dev/mapper/_dev_hda6

Mountujemy tymczasowo urządzenie /dev/mapper/_dev_hda6 i przenosimy na nie zawartość katalogu /home/marcin.

Odmountowujemy i wyrejestrowujemy urządzenie:
cryptsetup remove _dev_hdb8

2. Konfigurujemy pam_mount
a) Instalujemy pam_mount, w debianie:
apt-get install libpam-mount
Do pliku konfiguracyjnego (/etc/security/pam_mount.conf) dodajemy linijkę (przykład dla użytkownika marcin):

volume marcin crypt - /dev/hda6 /home/marcin exec,fsck,noatime,nodev,nosuid,fstype=xfs,cipher=aes aes-256-ecb /home/mount.key

b) Konfigurujemy pam-a:
Na końcu pliku /etc/pam.d/gdm dodajemy linijki:
auth required pam_mount.so use_first_pass
session required pam_mount.so use_first_pass
(lub: @include common-pammount) Nie może przed nimi wystąpić żaden moduł pam-a załączony z opcją sufficient

Przy następnym logowaniu użytkownika marcin przez GDM, katalog domowy zostanie zamountowany, a odmountowanu po wylogowaniu (chyba, że będą w nim otwarte pliki).

Do diagnozowania ewentualnych błędów działania pam_mount służy parametr
debug 1
w pliku konfiguracyjnym pam_mount.

nawigacja: powrót do listy forów | Tips and Tricks