使用gpg工具實現公鑰加密

本實驗通過gpg工具 實現 用非對稱密鑰加密方法,對Centos 7 主機的文件fstab,用Centos6的公鑰加密,并且到Centos6 用私鑰解密文件。

  • 基本步驟和密令

 

在hostB主機上用公鑰加密,在hostA主機上解密

一.

  1. ?在hostA主機上生成公鑰/私鑰對
    gpg –gen-key
  2. 在hostA主機上查看公鑰
    gpg –list-keys
  3. 從hostA主機上復制公鑰文件到需加密的B主機上
    scp wang.pubkey hostB:

    使用gpg工具實現公鑰加密

二.?

  1. 在需加密數據的hostB主機上生成公鑰/私鑰對
    gpg –list-keys
    gpg –gen-key
  2. 在hostB主機上導入公鑰
    gpg –import wang.pubkey
    gpg –list-keys
  3. 用從hostA主機導入的公鑰,加密hostB主機的文件file,生成file.gpg
    gpg -e -r wangxiaochun file
    file file.gpg
    使用gpg工具實現公鑰加密
    ?復制加密文件到hostA主機
  4. scp fstab.gpg hostA:
    ?在hostA主機解密文件
    gpg -d file.gpg
    gpg -o file -d file.gpg


?刪除公鑰和私鑰
gpg –delete-keys wangxiaochun
gpg –delete-secret-keys wangxiaochun

  • 詳細步驟

一.首先在 Centos 6 上生成公鑰加密,

gpg –gen-key

這個是實驗需要收集界面的隨機字符,所以不能在遠程軟件上做,要在主機界面上做。

1.這里讓我們選擇加密算法,我們選擇默認的RSA

1

2.這里選擇加密的大小和有效期,0代表永久有效,我們選擇0

2

3.為密鑰設置一個名字,至少五個字符。

3

4.這里問你是否接受上述設置,如果不更改,就選ok.

4

5.基于安全考慮,這里為你生成的私鑰要加口令,可以不加,如果不加,接下來就是無限
回車確認就好,這里也會提醒你,你需要一個密碼給你的密鑰。
這里也提醒了生成的密鑰對存放的文件夾,/root/.gnupg/

5

6.這個界面比較搞笑,讓你隨意移動鼠標,敲擊鍵盤,收集足夠的隨機字符,產生密鑰。

6
7.密鑰生成成功,

7

8.查看密鑰存盤的地方

8

9.通過 gpg -a –export -o magedu.pubkey將公鑰導出準備傳給需要加密的Centos 7系統;
這里的-o 是為導出的密鑰加名字,這個名字可以自己隨意起,導出后就可以查看
密鑰的內容,這里已經變成了人類易讀模式!而/root/.gnupg/下的密鑰是不可讀的。

9

10.將公鑰傳給Centos 7

10

二:在Centos 7 上生成自己的密鑰對,方法同上,不再贅述!

1.這里可以通過 gpg –list-keys 查看自己目前擁有的鑰匙,

2-1

2.由于從6傳過來的,公鑰沒有導入到系統,系統無法識別它是一個公鑰,所以這里我們需要先將6機器的公鑰導入,
密令 gpg –import /root/magedu.pubkey
gpg –list-keys
可以發現,公鑰已經導入到 7的系統的中了

2-2

3然后將需要加密的文件 fstab 用 6 機器的公鑰加密,
密令是 gpg -e -r magedu fstab
這里的公鑰用到是公鑰的名字,不要加后綴,生成的加密文件也會放在被加密文件所在的目錄,需注意

2-3

4.將加密文件傳回Centos 6 主機,用6的私鑰進行解密,觀看效果。

2-4

三:Centos 6 解密文件,查看內容

密令 gpg -o file -d fstab.gpg
系統會自動識別公鑰,用自己的私鑰進行解密文件

-o 可以指定解密后的文件名。

這里是解密后的文件。

3

四:密鑰的刪除

不用的密鑰可以刪除,用到的密令是
gpg –delete-keys magedu.gpg
gpg –delete-secret-keys wangdu
這里以Centos 7 為例子
需要注意的是,如果有私鑰的存在,那么成對的公鑰是刪除不了的,需要先刪除私鑰。

4

 

 

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/98669

(0)
知行合一知行合一
上一篇 2018-05-16 15:42
下一篇 2018-05-16 21:36

相關推薦

  • N31第五周

    1、簡述rpm與yum命令的常見選項,并舉例 一.rpm包管理 CentOS系統上使用rpm命令管理程序包:安裝、卸載、升級、查詢、校驗、數據庫維護安裝 (1)安裝[install-options] rpm {-i | –install} [install-options] PACKAGE_FILE … -h:使用”#&…

    Linux筆記 2018-07-30
  • 馬哥教育 — 第三周作業

    1.列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可 2. 取出最后登錄到當前系統的用戶的相關信息 3. 取出當前系統上被用戶當作其默認shell的最多的那個shell 4.將/etc/passwd中的第三個字段數字最大的后10個用戶的信息全部改為大寫后保存至/tmp/maxusers.txt文件中 5. 取出當前主機的i…

    2018-05-29
  • 淺談linux系統中mv、cp、rm這三種命令的工作原理

    淺談mv、cp、rm這三種命令的工作原理

    2018-07-29
  • Linux基礎知識(1)

    N31
    第一周

    Linux筆記 2018-06-23
  • LVS介紹及工作原理

    LVS是Linux Virtual Server的簡寫,意即Linux虛擬服務器,是一個虛擬的服務器集群系統。本項目在1998年5月由章文嵩博士成立,是中國國內最早出現的自由軟件項目之一。

    2018-07-03
欧美性久久久久