文章出處

CentOS中使用VeraCrypt(一):安裝及創建整個加密硬盤,前一階段看了一些關于數據安全,系統安全,以及社會工程學的書籍,突然覺得數據加密是一項十分重要的工作,由其是公司的敏感數據、商業機密,或者個人的重要文件都應該隨時進行加密;就算是平時的備份數據也要進行合理的加密,以保證數據安全。VeraCrypt是目前一款比較流行,而且安全性和效能都比較好的軟件,最重要是的開源、免費,并不斷進行更新。
此前我一直在使用Veracrypt的Windows版本,效果不錯。Mac、Linux也有圖形化的版本,因為使用比較簡單,這里就不進行介紹了。這里主要是介紹Veracrypt的Linux console也就是命令行版本的命令的使用,這也是我們平時在運維中的主要操作環境。
這篇文檔是介紹如何使用Veracrypt命令的第一部分,這里介紹安裝及加密單個磁盤。后面會分幾個部分逐漸深入介紹Veracrypt中相關的概念、Veracrypt命令的用法及自動化處理磁盤的加密和解密等等。

一、準備實驗環境

1、在VirtualBox中安裝好CentOS 6.8并升級到最新版本后,關機;
2、在該虛擬機中添加一塊新的磁盤,建議大小為8GB因為在使用VeraCrypt加密的時候,雖然你在新建虛擬磁盤時設置了“動態分配”虛擬磁盤大小,但虛擬磁盤所占用的空間大小和你設置的大小會一樣大。
如圖:

創建虛擬硬盤

添加后的新虛擬硬盤

二、安裝VeraCrypt(一)、下載安裝包并解壓

VeraCrypt最新版本為1.19,單擊此處進入項目主頁
在下載頁面找到Linux安裝包,如圖:
這里寫圖片描述
使用wget命令下載安裝包:

cd /usr/local/srcwget https://launchpad.net/veracrypt/trunk/1.19/+download/veracrypt-1.19-setup.tar.bz2

解壓文件:

tar -jxvf veracrypt-1.19-setup.tar.bz2

解壓后有四個文件:
這里寫圖片描述

(二)、安裝

因為我安裝的CentOS是64位的,并且沒有安裝GUI,所以安裝veracrypt-1.19-setup-console-x64

./veracrypt-1.19-setup-console-x64
1、選擇安裝模式

安裝程序彈出提示:問你是安裝veracrypt(選項1)還是將安裝包解壓到/tmp目錄下,這里選擇“1”,并回車:

VeraCrypt 1.19 Setup____________________Installation options: 1) Install veracrypt_1.19_console_amd64.tar.gz 2) Extract package file veracrypt_1.19_console_amd64.tar.gz and place it to /tmpTo select, enter 1 or 2:
2、查看并接受用戶許可

接下來彈出提示,讓你輸入回車查看用戶許可:

Before you can use, extract, or install VeraCrypt, you must accept theterms of the VeraCrypt License.Press Enter to display the license terms...

單擊回車后就可以看到用戶許可的全文,如果不想看完,可以按q退出; 這時程序會問你是否接受許可,輸入yes.

Do you accept and agree to be bound by the license terms? (yes/no): yesUninstalling VeraCrypt:-----------------------To uninstall VeraCrypt, please run 'veracrypt-uninstall.sh'.Installing package...usr/usr/share/usr/share/veracrypt/usr/share/veracrypt/doc/usr/share/veracrypt/doc/License.txtusr/share/veracrypt/doc/VeraCrypt User Guide.pdfusr/share/pixmaps/usr/share/pixmaps/veracrypt.xpmusr/share/applications/usr/share/applications/veracrypt.desktopusr/bin/usr/bin/veracryptusr/bin/veracrypt-uninstall.shPress Enter to exit...

此時,輸入回車就完成安裝。

3、驗證安裝

輸入如下命令:

[root@localhost src]# veracrypt --versionVeraCrypt 1.19

如果此時程序出現如下錯誤提示

[root@localhost src]# veracrypt -versionveracrypt: error while loading shared libraries: libfuse.so.2: cannot open shared object file: No such file or directory

則需要安裝fuse-libs

yum install -y fuse-libs
三、創建整個加密硬盤

現在使用fdisk -l命令就可以看到我們之前添加的那塊8GB的虛擬硬盤:

Disk /dev/sdb: 8589 MB, 8589934592 bytes255 heads, 63 sectors/track, 1044 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x00000000

目前還沒有進行分區操作。
其實我們也沒有必要對待加密的整個磁盤進行分區操作,除非我們只是想加磁盤的一部分進行加密操作的話,那么可以先對磁盤進行分區,然后使用veracrypt針對某一分區進行加密。

(一)創建加密硬盤

創建加密硬盤使用veracrypt -t -c
-t的意思是使用文件向導創建加密盤,-c的意思是create創建加密盤

1、啟動加密盤創建向導
[root@localhost src]# veracrypt -t -cVolume type: 1) Normal 2) HiddenSelect [1]: 1

這里面是創建普通加密盤,還是隱藏加密盤。這里選擇第1項,創建普通加密盤

2、輸入待加密磁盤的路徑

向導會提示你輸入加密的磁盤路徑,由于我們這里是加密整塊硬盤,然后只輸入設備名,不用輸入分區名:

Enter volume path: /dev/sdb
3、選擇加密算法

接下來,向導會提示你選擇加密算法和哈希算法,這里我們選擇AES SHA-512:

Encryption Algorithm: 1) AES 2) Serpent 3) Twofish 4) Camellia 5) Kuznyechik 6) AES(Twofish) 7) AES(Twofish(Serpent)) 8) Serpent(AES) 9) Serpent(Twofish(AES)) 10) Twofish(Serpent)Select [1]: 1Hash algorithm: 1) SHA-512 2) Whirlpool 3) SHA-256 4) StreebogSelect [1]: 1
4、選擇加密后的文件系統格式

由于我們將加密磁盤用于Linux系統的,因此選擇Linux Ext4

Filesystem: 1) None 2) FAT 3) Linux Ext2 4) Linux Ext3 5) Linux Ext4 6) NTFS 7) exFATSelect [2]: 5
5、輸入密碼
Enter password:WARNING: Short passwords are easy to crack using brute force techniques!We recommend choosing a password consisting of 20 or more characters. Are you sure you want to use a short password? (y=Yes/n=No) [No]: yesRe-enter password:

由于我這里用于演示的密碼太短,系統提示我當前密碼很容易被暴力破解,建議使用20個字符以上的密碼,是否還要使用當前密碼。這里輸入yes
接著系統會讓你再次輸入一次密碼:Re-enter password:

6、輸入PIM

接下來系統會讓你輸入PIM。

Enter PIM:

這個PIM是什么?我上網查了一下,就是Personal Iterations Multiplier”的縮寫。通俗地說就是:你可以自定義“加密盤的頭部密鑰生成時的迭代次數”。這個“迭代次數”越大,計算頭部密鑰的時間就越長,因此掛載加密盤的過程就越慢;表面上看,這是一個缺點。但其好處在于:如果某個攻擊者想要采用暴力破解的方式對“頭部”進行窮舉解密,每次一次嘗試也同樣需要花很長時間(同樣要迭代 N 次)。所以,當 N 足夠大,暴力破解就變得不可行。
如果你設置的密碼過于簡短,那么 VeraCrypt 會強制讓你輸入一個比較大的 PIM 數值(大于 485, 但是要小于2147468)。
如果你創建加密盤的時候,指定了 PIM 數值,那么在掛載的時候,需要輸入【相同的】PIM 數值。 如果輸入的數值與創建時指定的 PIM 數值不一致,則掛載失敗。
這里我們直接回車就可以.

7、輸入keyfile

接下來,指定keyfile

Enter keyfile path [none]:

這里我們先不指定,所以直接回車。

8、輸入320個隨機字符

在鍵盤上隨意輸入字符,如果不知道輸入的數量夠不夠,可以回車,向導就會提示你還剩多少個字符沒有輸入了:

Please type at least 320 randomly chosen characters and then press Enter:Characters remaining: 277Characters remaining: 172Characters remaining: 88Characters remaining: 31

當輸入的隨機字符數量符合要求后,向導就開始創建加密盤了:

Done:   9.946%  Speed:   89 MB/s  Left: 81 s

全部完成后會有如下提示

Done: 100.000%  Speed:   88 MB/s  Left: 0 sThe VeraCrypt volume has been successfully created.
(二)掛載加密磁盤1、掛載加密磁盤

掛載由veracrypt加密的磁盤和掛載普通磁盤的命令不一樣,不能使用mount。
在未掛載前使用fdisk -l命令查看的話,磁盤還是沒有分區和格式化的狀態:

Disk /dev/sdb: 8589 MB, 8589934592 bytes255 heads, 63 sectors/track, 1044 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x330ad122

在這種狀態下是沒有辦法使用mount命令的。

正確的方法是使用命令 veracrypt /dev/sdb /mnt:

[root@localhost src]# veracrypt /dev/sdb /mntEnter password for /dev/sdb:Enter PIM for /dev/sdb:Enter keyfile [none]:Protect hidden volume (if any)? (y=Yes/n=No) [No]:

這時系統會提示是輸入加密磁盤時預留的密碼,后三項可以直接回車略過。

2、查看磁盤掛載情況

這里再使用fdisk -l命令查看的話,在原來的磁盤/dev/sda、/dev/sdb的基礎上會多出一個/dev/mapper/veracrypt1磁盤,這就是掛載上來加密磁盤:

Disk /dev/mapper/veracrypt1: 8589 MB, 8589672448 bytes255 heads, 63 sectors/track, 1044 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x00000000

使用 df -h命令查看可以看到/dev/mapper/veracrypt1已經掛載到/mnt目錄上了。

[root@localhost src]# df -hFilesystem            Size  Used Avail Use% Mounted on/dev/sda3              47G 1001M   43G   3% /tmpfs                 939M     0  939M   0% /dev/shm/dev/sda1             976M   80M  845M   9% /boot/dev/mapper/veracrypt1                      7.8G   18M  7.4G   1% /mnt
3、嘗試訪問和寫入文件
[root@localhost src]# cd /mnt[root@localhost mnt]# ll總用量 16drwx------. 2 root root 16384 2月   6 21:35 lost+found[root@localhost mnt]# touch 1.txt[root@localhost mnt]# ll總用量 16-rw-r--r--. 1 root root     0 2月   6 21:48 1.txtdrwx------. 2 root root 16384 2月   6 21:35 lost+found[root@localhost mnt]# echo "text" >2.txt[root@localhost mnt]# ll總用量 20-rw-r--r--. 1 root root     0 2月   6 21:48 1.txt-rw-r--r--. 1 root root     5 2月   6 21:49 2.txtdrwx------. 2 root root 16384 2月   6 21:35 lost+found

沒有問題,掛載成功。

(三)卸載加密硬磁盤

既然掛載加密磁盤有專用的命令,那么卸載加密磁盤也一定有專用的命令:

veracrypt -d /mnt

如果要卸載系統中掛載的全部veracrypt加密磁盤,則使用:

veracrypt -d

不指定掛載目錄即可。
再次查看系統中已經掛載的磁盤:

[root@localhost ~]# df -hFilesystem      Size  Used Avail Use% Mounted on/dev/sda3        47G 1001M   43G   3% /tmpfs           939M     0  939M   0% /dev/shm/dev/sda1       976M   80M  845M   9% /boot

veracrypt加密磁盤已經被卸載掉了。

看文倉www.kanwencang.com網友整理上傳,為您提供最全的知識大全,期待您的分享,轉載請注明出處。
歡迎轉載:http://www.kanwencang.com/bangong/20170208/98671.html

文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()