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/src
wget 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 /tmp
To select, enter 1 or 2:
2、檢視並接受使用者許可
接下來彈出提示,讓你輸入回車檢視使用者許可:
Before you can use, extract, or install VeraCrypt, you must accept the
terms 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): yes
Uninstalling 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.txt
usr/share/veracrypt/doc/VeraCrypt User Guide.pdf
usr/share/pixmaps/
usr/share/pixmaps/veracrypt.xpm
usr/share/applications/
usr/share/applications/veracrypt.desktop
usr/bin/
usr/bin/veracrypt
usr/bin/veracrypt-uninstall.sh
Press Enter to exit...
此時,輸入回車就完成安裝。
3、驗證安裝
輸入如下命令:
[root@localhost src]# veracrypt --version
VeraCrypt 1.19
如果此時程式出現如下錯誤提示
[[email protected] src]# veracrypt -version
veracrypt: 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 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
目前還沒有進行分割槽操作。
其實我們也沒有必要對待加密的整個磁碟進行分割槽操作,除非我們只是想加磁碟的一部分進行加密操作的話,那麼可以先對磁碟進行分割槽,然後使用veracrypt針對某一分割槽進行加密。
(一)建立加密硬碟
建立加密硬碟使用veracrypt -t -c
-t
的意思是使用檔案嚮導建立加密盤,-c
的意思是create
建立加密盤
1、啟動加密盤建立嚮導
[[email protected] src]# veracrypt -t -c
Volume type:
1) Normal
2) Hidden
Select [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]: 1
Hash algorithm:
1) SHA-512
2) Whirlpool
3) SHA-256
4) Streebog
Select [1]: 1
4、選擇加密後的檔案系統格式
由於我們將加密磁碟用於Linux系統的,因此選擇Linux Ext4
Filesystem:
1) None
2) FAT
3) Linux Ext2
4) Linux Ext3
5) Linux Ext4
6) NTFS
7) exFAT
Select [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]: yes
Re-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: 277
Characters remaining: 172
Characters remaining: 88
Characters remaining: 31
當輸入的隨機字元數量符合要求後,嚮導就開始建立加密盤了:
Done: 9.946% Speed: 89 MB/s Left: 81 s
全部完成後會有如下提示
Done: 100.000% Speed: 88 MB/s Left: 0 s
The VeraCrypt volume has been successfully created.
(二)掛載加密磁碟
1、掛載加密磁碟
掛載由veracrypt加密的磁碟和掛載普通磁碟的命令不一樣,不能使用mount
。
在未掛載前使用fdisk -l
命令檢視的話,磁碟還是沒有分割槽和格式化的狀態:
Disk /dev/sdb: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x330ad122
在這種狀態下是沒有辦法使用mount
命令的。
正確的方法是使用命令 veracrypt /dev/sdb /mnt
:
[[email protected] src]# veracrypt /dev/sdb /mnt
Enter 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 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
使用 df -h
命令檢視可以看到/dev/mapper/veracrypt1
已經掛載到/mnt
目錄上了。
[root@localhost src]# df -h
Filesystem 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
總用量 16
drwx------. 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.txt
drwx------. 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.txt
drwx------. 2 root root 16384 2月 6 21:35 lost+found
沒有問題,掛載成功。
(三)解除安裝加密硬磁碟
既然掛載加密磁碟有專用的命令,那麼解除安裝加密磁碟也一定有專用的命令:
veracrypt -d /mnt
如果要解除安裝系統中掛載的全部veracrypt加密磁碟,則使用:
veracrypt -d
不指定掛載目錄即可。
再次檢視系統中已經掛載的磁碟:
[root@localhost ~]# df -h
Filesystem 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加密磁碟已經被解除安裝掉了。
相關推薦
CentOS中使用VeraCrypt(一):安裝及建立整個加密硬碟
前一階段看了一些關於資料安全,系統安全,以及社會工程學的書籍,突然覺得資料加密是一項十分重要的工作,由其是公司的敏感資料、商業機密,或者個人的重要檔案都應該隨時進行加密;就算是平時的備份資料也要進行合理的加密,以保證資料安全。VeraCrypt是目前一款比較流行
Veeam Backup & Replication試用(一):安裝及配置
近期veeam 9.5出來了,嘗試安裝使用,找到老管網路日誌相關的文件,分享一下。 轉自老管網路日誌http://guanjianfeng.com/archives/1159347 ===================================================
SmartGit 安裝及使用(一):安裝及配置
一、官網下載smartgit安裝包。 https://www.syntevo.com/smartgit/download/ 二、安裝smartgit,根據提示安裝即可。 三、啟動配置smartgit。 1、選擇非商業模式安裝,勾選第三個Non-commercial us
MongoDB 學習筆記(一):安裝及簡單shell操作
一、說明 1、該系列MongoDB學習筆記的學習環境採用的MongoDB版本為mongodb-win32-i386-2.4.6,作業系統為win7。 二、安裝 1、新建兩個目錄,分別是D:\Installations\MongoDB-2.4.6\MongoDB和D:\Ins
webpack官方文檔分析(一):安裝
目錄 單獨 https div script version clas .com 我們 一:安裝 1、首先要安裝Node.js->node.js下載 2、本地安裝 要安裝最新版本或特定版本,運行如下: npm install --save-dev webpack
ELK系列(一):安裝(elasticsearch + logstash + kibana)
minimum 5.6 解壓 通過 stdout you targe 記錄 pat 因為公司使用ELK的緣故,這兩天嘗試在阿裏雲上安裝了下ELK,這裏做個筆記,有興趣的同學可以看下。 先大致介紹下ELK,ELK是三個組件的縮寫,分別是elasticsearch、logsta
tensorflow(一):安裝在Spyder上
參考:https://www.tensorflow.org/install/install_windows?hl=zh-cn 最簡單的是,安裝在anaconda上。 一 anaconda設定 把python版本改成3.5或3.6 二 anaconda上安裝tensorf
瞎折騰之個人學習環境搭建(一):安裝XenServer
背景介紹 家裡只有一臺安裝WIN10的筆記本可供在下折騰,在下先安裝了個VMware® Workstation 12 Pro,計劃建立一臺虛擬機器安裝XenServer,再得用XenServer虛擬3臺Centos7,夠折騰的吧,其實如果僅虛擬Centos7,可以直接使用VMwar
selenium模組(一):介紹及安裝
一、介紹 selenium最初是一個自動化測試工具,而爬蟲中使用它主要是為了解決requests無法直接執行JavaScript程式碼的問題。 selenium本質是通過驅動瀏覽器,完全模擬瀏覽器的操作,比如跳轉、輸入、點選、下拉等,來拿到網頁渲染之後的結果,可支援多種瀏覽器 f
Kubernetes安裝(一):架構及功能說明
叢集功能各模組功能描述 Master節點: Master節點上面主要由四個模組組成,APIServer,schedule,controller-manager,etcd APIServer: APIServer負責對外提供RESTful的kubernetes API的服務,它是系統管理指令的統一
學習nginx(一):安裝
1.Windows安裝:下載+解壓,執行nginx.exe就行 2.linux安裝: 前置條件:安裝了GCC編譯器(build-essential)、openSSL 1)安裝基本元件 wget https://ftp.pcre.org/pub/pcre/pcre-8.42.tar.g
10. vSphere PowerCLI試用(一):安裝PowerCLI
PowerCLI是VMware中的一款命令列管理工具。一般管理VMware都使用vSphrere Client或者vSphere Web Client,vSphere PowerCLI則可以通過命令列來管理VMware vSphere主機或者是VMware vCenter。
系列教程|IntelliJ IDEA(一):安裝與破解
之前經常聽人說IDEA效能如何優越,使用如何方便,今天心血來潮,準備從eclipse轉投IDEA的懷抱。安裝破解的時候,在網上搜索了許多教程,不經意間看到這位大佬(JaJian)的部落格,頁面優美、整潔,內容完備、清晰,一時之間引為天人。 所以,就決定以JaJian大佬的部落格作為初步學習IDE
Linux下nodejs(一):安裝和使用
一、安裝 一共有三種安裝方式,由於其他兩種不太方便,因此只介紹第一種二進位制檔案安裝。 1、首先官網下載nodejs安裝壓縮包。 2、下載完成後用ftp上傳到Linux任意資料夾即可。我的是/home/chuan/chuansoft。然後進入到
PostgreSQL學習筆記(一):安裝篇
文章目錄 1. PostgreSQL是什麼? 2. 安裝和配置 2.1 CentOS7線上安裝 2.2 Ubuntu線上安裝 1. PostgreSQL是什麼? PostgreSQL
CentOS 基本指令(一)——從安裝JDK開始
Linux 版本檢視命令:在終端輸入 lsb_release -a 檢視java執行路徑:which java 目前伺服器上空空噠,還沒有安裝jdk 安裝jdk:使用wget命令下載 沒有wget命令則需要先進行安裝: yum search wget
TensorFlow 從入門到精通(一):安裝和使用
安裝過程 目前較為穩定的版本為 0.12,本文以此為例。其他版本請讀者自行甄別安裝步驟是否需要根據實際情況修改。 TensorFlow 支援以下幾種安裝方式: PIP 安裝 原始碼編譯安裝 Docker 映象安裝 PIP 安裝
dotConnect for Oracle入門指南(一):安裝
【下載dotConnect for Oracle最新版本】 dotConnect for Oracle(原名OraDirect.NET)建立在ADO.NET技術上,為基於Oracle資料庫的應用程式提供完整的解決方案。它為設計應用程式結構帶來了新的方法,提高工作效率,使資料庫應用程式的開發更簡便。 d
python知識梳理-基礎(一):安裝以及環境搭建
python3 win10 一、下載 官網下載python3.7 官網地址 二、安裝 在windows環境下進行安裝安裝 三、配置環境變數 在系統環境變數(path)中加入python的安裝地址 四、驗證: win+R,輸入cmd開啟命令提示符 輸入p
elasticsearch(一):安裝與配置
一、elastic search的安裝與配置 1、安裝Java 並且配置JAVA_HOME環境變數。 2、下載elasticsearch,下載地址:https://www.elastic.co/downloads/elasticsearch。博主下載時最新版為6.3.2,下面所有都是基於6.3.2進行的測