ssh免密登陸和加密解密

2022-08-20 20:45:13 字數 2700 閱讀 9578

一 丶實現無密碼的遠端管理

1.生成公鑰 私鑰

[root@room9pc14 桌面]# ssh-keygen

[root@room9pc14 桌面]# ls /root/.ssh/

2.上傳公鑰到虛擬機器a

[root@room9pc14 桌面]# ssh-copy-id [email protected]

3.上傳公鑰到虛擬機器b

[root@room9pc14 桌面]# ssh-copy-id [email protected]

4.補充在真機上

[root@room9pc14 桌面]# ssh-add (宣告私鑰)

二、加密與解密

對稱加密:加密/解密用同乙個金鑰

非對稱加密:加密/解密用不同的金鑰   

口令認證登入   passwordauthentication no|yes

金鑰對認證登入

對稱加密

des,data encryption standard

aes,advanced encryption standard

非對稱加密

rsa,rivest shamirh adleman

dsa,digital signature algorithm

hash雜湊技術,用於資訊摘要(資料完整性)

md5,message digest algorithm 5

sha,secure hash algorithm

特點:1. 根據輸入的文字(長度不限),生成固定長度(比如128位)的摘要文字

2. 只要輸入的文字不同,則生成的摘要文字也不一樣

gpg非對稱加密/解密:

gpg介紹:

gnu privacy guard

最流行的資料加密、數字簽名工具軟體

例題:#useradd usera

#useradd userb

#echo 123456 | passwd --stdin usera

#echo 123456 | passwd --stdin userb

+++++++++++++++++++++++++++

gpg 做對稱加/解密

usera ------ > userb

發                   接

加                   解

#ssh -x usera@localhost

#head -5 /etc/passwd > a.txt

#cat a.txt

#gpg -c a.txt  (提示輸入密碼)

# ls a.txt.gpg

# mv a.txt.gpg /tmp/

#ssh -x userb@localhost

#gpg -d /tmp/a.txt.gpg > my.txt (提示輸入密碼)

#cat my.txt

+++++++++++++++++++++++++++

gpg 做非對稱加/解密

uesra ------- > userb

發       接

加       解

公鑰     私鑰

userb

ssh -x userb@localhost

1 建立秘鑰對(公鑰 私鑰)

#rm -rf ~/.gnupg

#gpg --gen-key

#ls ~/.gnupg

pubring.gpg(公鑰)  secring.gpg(私鑰)

2 匯出公鑰

#gpg -a --export  [真實姓名]  > /tmp/userb.pub

usera

ssh -x usera@localhost

1 匯入userb使用者的公鑰

#rm -rf ~/.gnupg

#gpg  --import  /tmp/userb.pub

#ls ~/.gnupg

2 使用公鑰加密明文檔案,共享給userb使用者

#tail -5 /etc/passwd > test.txt

#gpg  -e  -r  [真實姓名]  test.txt

#ls  test.txt.gpg

#mv test.txt.gpg   /tmp/

3 userb使用者使用私鑰解密共享的加密檔案

#gpg -d /tmp/test.txt.gpg > my2.txt  (提示輸入密碼,呼叫私鑰的密碼)

#cat my2/tmp/test.txt.gpg

+++++++++++++++++++++++++++++++

gpg 做數字簽名(私鑰簽名 公鑰驗證簽名)

軟體簽名與驗證過程

軟體官方以私鑰對軟體包執行數字簽名

以官方公鑰驗證軟體包簽名,確保軟體完整性

userb 

#head -2 /etc/passwd > my4.txt

#gpg -b my4.txt (要求輸入私鑰密碼) //數字簽名

#ls my4.txt.sig

#mv my4.txt* /tmp/

#ls /tmp/my4.txt*

#gpg --fingerprint

usera 

#gpg --verify /tmp/my4.txt.sig

ssh 免密登陸

摘要 在本地生成公鑰私鑰對,並將公鑰上傳至 server 端實現免密登陸。1.使用 ssh keygen 生成金鑰 ssh keygen t rsa f filename在生成金鑰對時,會要求輸入 passphrase generating public private rsa key pair.e...

ssh免密登陸

有兩台linux機器 node1 172.16.160.92 node2 172.16.160.91 先在node1 172.16.160.92 這台機器操作 生產金鑰 ssh keygen t rsa p 回車把id rsa.pub追加到授權的key裡面去。cat ssh id rsa.pub s...

SSH免密登陸

建立秘鑰 ssh keygen 傳送秘鑰 ssh copy id ip 登陸ssh ip 在進行ssh登陸的時候依然要輸入密碼的解決方案 是被登入機器的檔案許可權問題 使用者許可權 chmod 700 home hadoop ssh資料夾許可權 chmod 700 home hadoop ssh a...