У линейки NAS Synology есть возможность шифрования пользовательских директорий. С точки зрения пользователя и производительности данный процесс проходит незаметно. С точки зрения восстановления данных в случае физического выхода из строя непосредственно Synology возникают вопросы.
Решение достаточно простое.
Попробуем зашифровать данные на synology и восстановить их на другом компьютере под управлением linux.
1. Создаем папку «test»
В консоли она выглядит как:
| DiskStation> mount /volume2/@test@ on /volume2/test type ecryptfs (rw,ecryptfs_sig=d1a01d50c3f21e00,ecryptfs_fnek_sig=d1a01d50c3f21e00,ecryptfs_cipher=aes,ecryptfs_key_bytes=32) DiskStation> | 
Шифрованные данные у нас хранятся в папке «@test@». Заголовки файлов тоже зашифровываны.
| DiskStation> cd /volume2/@test@ DiskStation> DiskStation> ll drwxrwxrwx 2 root root 4096 Apr 27 23:06 . drwxr-xr-x 23 root root 4096 May 9 17:40 .. -rwxrwxrwx 1 admin users 24576 Nov 9 2010 ECRYPTFS_FNEK_ENCRYPTED.FWbFc.pEkz6S--Zpr-2Dd2NYpDmWazP5XzYWVeykmHA9VYWnIBByabjQtE-- -rwxrwxrwx 1 admin users 12288 Apr 3 2012 ECRYPTFS_FNEK_ENCRYPTED.FWbFc.pEkz6S--Zpr-2Dd2NYpDmWazP5XzYWtM3rznMpxRScrFYYkhUTwU-- -rwxrwxrwx 1 admin users 28672 Apr 3 2012 ECRYPTFS_FNEK_ENCRYPTED.FWbFc.pEkz6S--Zpr-2Dd2NYpDmWazP5XzYWy9O2gyYttBSkbxQ07Q6pok-- | 
Расшифрованные в папке «test».
| DiskStation> cd /volume2/test DiskStation> DiskStation> ll drwxrwxrwx 2 root root 4096 Apr 27 23:06 . drwxr-xr-x 23 root root 4096 May 9 17:40 .. -rwxrwxrwx 1 admin users 1362 Apr 3 2012 1354.gif -rwxrwxrwx 1 admin users 17519 Apr 3 2012 1354.png -rwxrwxrwx 1 admin users 12382 Nov 9 2010 my2010.jpg | 
Шифрование происходит через eCryptfs — файловую систему с ассиметричным шифрованием файлов.
2. Скачиваем «/volume2/@test@» на нашу linux машину.
Всё, что нужно для работы eCryptfs, во всех современных Linux-дистрибутивах имеются как правило по умолчанию «из коробки».
3. Ставим ecryptfs (у меня centos 6.4):
| linux>yum install ecryptfs* Setting up Install Process Package ecryptfs-utils-python-82-6.el6_1.3.i686 already installed and latest version Package ecryptfs-utils-82-6.el6_1.3.i686 already installed and latest version Package ecryptfs-utils-devel-82-6.el6_1.3.i686 already installed and latest version | 
4. Создадим пустой каталог, в который будут примонтированы расшифрованные данные:
| # mkdir /mnt/decode-test | 
5. Теперь смонтируем в созданный каталог используя eCryptfs ранее зашифрованные данные:
| # mount -t ecryptfs /mnt/@test@/ /mnt/decode-test | 
После ввода команды вам необходимо ввести пароль для ключа шифрования, тот самый, который мы вводили в web интерфейсе synology:
| Passphrase: | 
Далее, выбираем алгоритм шифрования, по-умолчанию — AES, совпадает с тем, что у нас «ecryptfs_cipher=aes»:
| Select cipher: 1) aes: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded) 2) blowfish: blocksize = 16; min keysize = 16; max keysize = 56 (not loaded) 3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24 (not loaded) 4) twofish: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded) 5) cast6: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded) 6) cast5: blocksize = 8; min keysize = 5; max keysize = 16 (not loaded) Selection [aes]: | 
Необходимо выбрать размер ключа, у меня он 32bytes, как можно было заметить в первом пункте: ecryptfs_key_bytes=32:
| Select key bytes: 1) 16 2) 32 3) 24 Selection [16]:2 | 
Разрешаем или запрещаем доступ к файлам, которые не были зашифрованы при помощи eCrypfs:
| Enable plaintext passthrough (y/n) [n]:n | 
Шифровать или нет имена файлов, ставим «да»:
| Enable filename encryption (y/n) [n]:y | 
Если все параметры указаны верно, можно подтверждать монтирование и в «/mnt/decode-test» увидеть свои данные:
| Would you like to proceed with the mount (yes/no)? : y | 
 RSS
 RSS Твиттер
 Твиттер G+
G+
 Категория:
 Категория: 
