M22 使用非對稱密鑰實現ssh自動登陸

一 實驗目的

一般在用戶使用ssh客戶端登陸ssh服務器時需要使用用戶名和密碼,本實驗使用非對稱加密的方式實現了無密碼登陸ssh服務器。

二 實驗流程

M22 使用非對稱密鑰實現ssh自動登陸 、

1 在客戶端生成非對稱密鑰對

2 將非對稱密鑰中的公鑰發送給ssh服務器端相應的帳號

3 當客戶端通過ssh協議與服務器端發起連接時,客戶端將私鑰加密過的簽名發送給服務器端,服務器端使用客戶端的公鑰確認該簽名有效并通過認證,然后建立ssh連接

三 實驗過程

1 客戶端生成非對稱密鑰

# cd ~/.ssh

使用ssh-keygen命令可以自動生成密鑰對

ssh-keygen的用法如下:
ssh-keygen [-q] [-b bits] [-t dsa | ecdsa | ed25519 | rsa | rsa1] [-p new_passphrase] [-C comment] [-f output_keyfile]
-q:安靜模式
-b:指定生成密鑰的大小
-t:加密類型
-p:設置私鑰的密碼
-C:注釋
-f:指定輸出文件名

在這里直接使用缺省參數即可創建沒有口令的非對稱密鑰對,也可以在后續選項里添加私鑰密碼

# ssh-keygen

或者使用-p參數將沒有密碼的私鑰加密

# ssh-keygen -p -f id_isa

然后使用在登陸ssh服務器之前使用ssh agent管理鏈接,如果私鑰未被加密,可以省略此步驟

# ssh-agent bash
# ssh-add

2 將私鑰傳送給ssh服務器

使用ssh-copy-id命令可以自動將私鑰發送給ssh服務器端,并自動更改密鑰名稱

ssh-copy-id [-f] [-n] [-i [identity_file]] [-p port] [-o ssh_option] [user@]hostname

可選參數有:
-f:強制模式,不檢測服務器上是否已經有了私鑰
-n:檢測服務器上的賬戶是否已經有客戶端的公鑰
-i:確認文件內容
-p:設置ssh端口
-o:設置ssh選項

在本實驗使用如下方法:

# ssh yangfan@172.18.55.6

3 連接ssh服務器

# ssh yangfan@172.18.55.6
Last login: Wed Apr 12 22:21:24 2017 from 172.18.100.9
[yangfan@centos6 ~]$

實現了自動登陸

4 更新密鑰

如果遇到客戶端需要更換密鑰的情況,需要重復以上步驟,最后執行如下命令將私鑰更新到ssh-agent

# ssh-add

原創文章,作者:realmaster,如若轉載,請注明出處:http://www.www58058.com/73235

(0)
realmasterrealmaster
上一篇 2017-04-12 10:28
下一篇 2017-04-13 11:35

相關推薦

  • LINUX-echo命令

    echo命令:回顯         語法:echo [-neE][字符串]     說明:echo會將輸入的字符串送往標準輸出。輸出的字符串間         以空白字符隔開,并在最后加上換行號。   &nbs…

    Linux干貨 2017-05-22
  • inode 與 block

    iNode:索引節點(index node) iNode是用來存儲數據屬性信息的,iNode包含的屬性包括:文件大小屬組歸屬的用戶組讀寫權限文件類型修改時間指向文件實體的指針功能(iNode節點和block的對應關系)但是,iNode不包括文件名 iNode小結: 磁盤分區格式化為ext4文件系統后會生成一定數量的iNode和block iNode是索引節點…

    Linux干貨 2017-07-18
  • 8.3-特殊權限(作業篇)

    1. 在/data/testdir里創建的新文件自動屬于g1組,組g2的成員如: alice能對這些新文件有讀寫權限,組g3的成員如: tom只能對新文件有讀權限,其它用戶(不屬于,g2,g3)不能訪問這個文件夾。 root@localhost ~]# mkdir -p /data/testdir [root…

    Linux干貨 2016-08-04
  • Linux 任務計劃、周期性任務執行

    Linux 任務計劃、周期性任務執行 概述:      什么是任務計劃呢?就像我們每個人日常生活中都會使用到的鬧鐘一樣,按時的去提醒該去做什么事情,以免忘記。同樣,我們在工作當中也要在每天在特定的時間內安排做一些事情,這就是任務計劃,本章將學習如何制定Linux系統的任務計劃,這里主要包括兩種工具:at和crontab…

    Linux干貨 2016-09-11
  • python面向對象第二周魔術方法詳解

    魔法方法及其使用__開頭和結束的方法,定義外部沒有辦法直接調用,但會有影響使用運算符號的魔法方法, + ,-,*,/,%,//,**, __add__,__sub__,__mul__,__truediv__,__mod__,__floordiv__,__pow__,__divmod__(?),系統內部對于數值型,字符串型,容器內型都定義了其中部分或者全部的運…

    Linux干貨 2017-11-22
  • N26_第三周作業

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 演示: [root@joylin test]# who|cut -d” ” -f1|uniq root gentoo [root@joylin test]# who|cut -d” ” -f1|uniq -c 5 root 1 gentoo 或者 [root@joyl…

    Linux干貨 2017-02-21
欧美性久久久久