Ubuntu下如何實現(xiàn)對文件的加密傳輸?
網(wǎng)絡(luò)技術(shù)的快速發(fā)展,方便了我們的日常生活,加快了工作效率,增進了交流。網(wǎng)絡(luò)的出現(xiàn)確實給我們帶來了很多的便利,但網(wǎng)絡(luò)安全問題也在時時困擾著我們。文件傳輸安全就是大眾關(guān)注的安全問題之一,一份文件可能包含了很多的機密,一旦被黑客竊取,那損失是不可想象的。在網(wǎng)絡(luò)安全問題日益突出的今天,如何保證Ubuntu系統(tǒng)的數(shù)據(jù)在傳輸過程中的安全性呢?本文為大家講解在Ubuntu系統(tǒng)中如何對文件進行加密傳輸。
本文介紹基于UbuntuDesktop9.10(i386),采用GNOME集成桌面環(huán)境。并設(shè)定有兩臺安裝了Ubuntu9.10桌面版系統(tǒng)的計算機Host1和Host2,都安裝了OpenSSH軟件包且具有相同的用戶賬號(為敘述方便,用戶名和密碼相同)。
準備工作:安裝Seahorse密鑰管理器插件
默認情況下,Ubuntu9.10GNOME集成桌面環(huán)境軟件沒有自帶Seahorse密鑰管理器插件(seahorse-plugins),因此在Nautilus(鸚鵡螺)文件瀏覽器中,選中某個文件并點擊鼠標(biāo)右鍵后,在彈出的快捷菜單中看不到“加密”與“簽署”兩個選項,從而無法通過圖形化的界面(該插件集成在Nautilus文件瀏覽器中)來對文件進行加密或簽署操作。
為此,我們可以使用“apt-get”命令或“新立得軟件包管理器”來手動安裝該插件。這里以使用命令行方式來安裝為例。依次點擊菜單“應(yīng)用程序→附件→終端”,打開GNOME終端窗口后輸入如下命令:“sudoapt-getinstallseahorse-plugins”,命令執(zhí)行后即可下載并安裝“seahorse-plugins”軟件包。安裝完成后,從當(dāng)前系統(tǒng)注銷并重新登錄,即可在上文所述的快捷菜單中看到“加密”和“簽署”兩項(如圖1所示)。
要對文件進行加密或簽署,首先要創(chuàng)建對應(yīng)用戶的密鑰。創(chuàng)建的密鑰為一對,分為公鑰和私鑰。通常將公鑰發(fā)布出去,由其他用戶對文件進行加密。收到其他用戶發(fā)來的加密文件后,再利用自己的私鑰進行解密。
步驟一、在Host1中創(chuàng)建本地用戶密鑰
依次點擊菜單“應(yīng)用程序→附件→密碼和加密密鑰”運行Seahorse密鑰管理程序。在出現(xiàn)的“密碼和加密密鑰”窗口中,點擊菜單“文件→新建”,則出現(xiàn)“新建”密鑰對話框。因為我們要加密的是文件,因此根據(jù)說明,選擇創(chuàng)建的密鑰的類型為“PGP密鑰”并點擊“繼續(xù)”按鈕進入“新建PGP密鑰”對話框。在創(chuàng)建密鑰時,需要指定用戶的個人信息,如用戶名、電子郵件等以及指定加密類型和密鑰保密強度等(如圖2所示)。填寫完成后點擊“創(chuàng)建”按鈕,并輸入密鑰保護密碼后即可創(chuàng)建用戶密鑰。
步驟二、分發(fā)公鑰給Host2用戶
首先,利用Seahorse密鑰管理器導(dǎo)出剛剛創(chuàng)建的公鑰。依次點擊“密鑰和加密密碼”窗口中的“文件→導(dǎo)出”,將公鑰導(dǎo)出后點擊“保存”按鈕,則在當(dāng)前登錄用戶(testuser)的目錄下生成公鑰文件“testuser.asc”。接下來,我們將公鑰文件傳送到Host2主機中(這里以使用“scp”命令為例)。
在Host1上打開一個GNOME終端窗口,輸入命令“scptestuser.Asctestuser@Host2:~/.”,執(zhí)行后首先輸入“y”來加入主機Host2到信任主機列表中,再輸入Host2上的用戶“testuser”的密碼,通過后則將Host1上的“testuser.asc”文件復(fù)制到Host2主機的testuser用戶目錄下(/home/testuser)。Host2上的用戶接收到密鑰文件后,在Seahorse密鑰管理器中點擊“密鑰和加密密碼”窗口中的“文件→導(dǎo)入”,在當(dāng)前登錄用戶目錄下找到文件“testuser.asc”并打開,即可完成導(dǎo)入。
步驟三、Host2用戶加密待發(fā)文件
有了Host1用戶的公鑰,在Host2上就可以使用它來對文件進行加密了。在Nautilus文件瀏覽器中,鼠標(biāo)右鍵點擊待加密文件,在彈出的快捷菜單中選擇“加密”項,則彈出“選擇收件人”對話框(如圖3所示)。在密鑰列表中將自動列出當(dāng)前系統(tǒng)中的可用密鑰,選定剛剛導(dǎo)入的Host1用戶的公鑰,并勾選其前的方框,點擊“確定”按鈕,則開始對文件進行加密,并生成“.pgp”文件名結(jié)尾的加盟文件(如“abc.pgp”)。
同樣,使用“scp”命令將加密后的文件傳送到Host1中“scpabc.pgptestuser@Host1:~/.”。
步驟四、Host1用戶解密收到的文件
Host1上的用戶接收到Host2用戶傳過來的加密文件后,在Nautilus文件瀏覽器中鼠標(biāo)右鍵點擊該文件,在彈出的快捷菜單中選擇“使用解密文件打開”,按要求輸入密鑰保護密碼后,程序?qū)⑹褂糜脩舻乃借€對文件進行解密,并在當(dāng)前目錄下生成解密后的文件,也就是還原出來Host2用戶加密過的文件。
現(xiàn)在需要通過因特網(wǎng)進行遠程文件傳輸?shù)牟僮饕呀?jīng)非常多,而為了保障數(shù)據(jù)安全,對數(shù)據(jù)進行加密已經(jīng)是很切實的應(yīng)用需求。
總結(jié):
看過本文,相信大家對于在Ubuntu當(dāng)中進行加密、解密操作已經(jīng)有了初步的了解,在今后的應(yīng)用過程中,大家不妨親自嘗試,以提高數(shù)據(jù)傳輸?shù)陌踩浴?/p>
希望本文介紹的在Ubuntu下實現(xiàn)對文件的加密傳輸?shù)姆椒軌驅(qū)Υ蠹矣兴鶐椭?,更?a >有關(guān)linux系統(tǒng)的知識還有待于讀者去探索和學(xué)習(xí)。