欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

putty使用密鑰登陸OpenSSH配置方法(圖文詳解)

 更新時(shí)間:2015年07月26日 18:46:35   投稿:mdxy-dxy  
這篇文章主要介紹了putty使用密鑰登陸OpenSSH配置方法(圖文詳解),需要的朋友可以參考下

在Windows管理Linux服務(wù)器時(shí),常使用putty登陸ssh進(jìn)行遠(yuǎn)程管理。默認(rèn)登陸驗(yàn)證方式為密碼認(rèn)證,該方式雖然簡單,但每次登陸都要輸入一長串的密碼,相當(dāng)麻煩。而且,如果萬一把root允許登陸打開,還有可能被強(qiáng)力破解,導(dǎo)致嚴(yán)重的后果。
所以,通常建議用密鑰登陸驗(yàn)證代替密碼方式,即簡單,又可靠。

一、為什么建議使用密鑰登陸

通?,F(xiàn)在的Linux發(fā)行版都使用OpenSSH代替telnet、rsh等明文傳輸?shù)慕K端服務(wù)。
以紅旗 DC Server 5.0為例:

# rpm -qa|grep -E -w 'openssh'
openssh-clients-4.0p1-1.2AX
openssh-server-4.0p1-1.2AX
openssh-4.0p1-1.2AX

而OpenSSH默認(rèn)是同時(shí)支持密碼和密鑰兩種認(rèn)證方式的。轉(zhuǎn)一個(gè)說明:

為什么要使用公鑰認(rèn)證
通常,通過ssh登錄遠(yuǎn)程服務(wù)器時(shí),使用密碼認(rèn)證,分別輸入用戶名和密碼,兩者滿足一定規(guī)則就可以登錄。但是密碼認(rèn)證有以下的缺點(diǎn):

a)用戶無法設(shè)置空密碼(即使系統(tǒng)允許空密碼,也會十分危險(xiǎn))
b)密碼容易被人偷窺或猜到
c)服務(wù)器上的一個(gè)帳戶若要給多人使用,則必須讓所有使用者都知道密碼,導(dǎo)致密碼容易泄露,而且修改密碼時(shí)必須通知所有人

而使用公鑰認(rèn)證則可以解決上述問題。

a)公鑰認(rèn)證允許使用空密碼,省去每次登錄都需要輸入密碼的麻煩
b)多個(gè)使用者可以通過各自的密鑰登錄到系統(tǒng)上的同一個(gè)用戶
c)即使修改了對應(yīng)用戶的密碼,也不會影響登陸
d)若同時(shí)禁用密碼認(rèn)證,則只要保證私鑰的安全,不會受到暴力破解的威脅

二、使用putty生成密鑰和登陸
根據(jù)公鑰認(rèn)證的原理(見后面說明),認(rèn)證雙方任何一方都可制作該鑰匙對,并且只要認(rèn)證方有被認(rèn)證方的公鑰信息,即可匹配成功。
這里,我們先以Windows上的putty登陸Linux服務(wù)器為例說明。所以,該密鑰對由putty制作。
繼續(xù)前,請確保您已經(jīng)把整個(gè)putty包都下載完:
官方網(wǎng)站:點(diǎn)擊
最新版本:0.63或1.0,我截圖的版本是0.55的。

點(diǎn)擊這里下載文件

其中包括:PuTTY、Puttygen、PSCP、Plink、Pagent 等工具。
1、使用puttygen制作密鑰
啟動puttygen工具,為兼容OpenSSH密鑰,選擇“SSH2 RSA”:
點(diǎn)擊在新窗口中瀏覽此圖片
單擊 Generate 按鈕,并使用鼠標(biāo)在“key”框內(nèi)移動,以獲得足夠的隨機(jī)數(shù)據(jù)供生成密鑰使用:
點(diǎn)擊在新窗口中瀏覽此圖片
※期間,你會看到進(jìn)度條上面有個(gè)提示“Please generate some radomness by moving the mouse over the blank area.”,意思就是讓你用鼠標(biāo)在空白區(qū)域隨機(jī)移動。隨著鼠標(biāo)在空白區(qū)域的移動,進(jìn)度條會一直走下去。停止移動鼠標(biāo),進(jìn)度條也就停止了。所以,那我們要移動鼠標(biāo),直到進(jìn)度條走滿為止。
完成后的窗口如下:
點(diǎn)擊在新窗口中瀏覽此圖片
其中:

引用

Key comment:是注釋,不會影響密鑰的有效性,但可作為自己用于區(qū)別其他密鑰的參考;
Key passphrase 和 Confirm passphrase :用于保護(hù)私鑰,如果不輸入該信息,那么任何人只要拿到該私鑰,即可無密碼登陸系統(tǒng),非常危險(xiǎn);通常情況下,我是建議大家輸入的,但這里為了方便說明,暫時(shí)留空,請看后面使用的說明。


隨后,點(diǎn)擊“Save private key”保留私鑰。
如果沒有輸入Key passphrase信息,會有警告:
點(diǎn)擊在新窗口中瀏覽此圖片
輸入私鑰的文件名:
點(diǎn)擊在新窗口中瀏覽此圖片
※公鑰信息可以不用保留在本地的,puttygen可以從私鑰得到它,驗(yàn)證時(shí)也不會用到。

2、修改openssh配置
修改/etc/ssh/sshd_config:

ChallengeResponseAuthentication no #關(guān)閉挑戰(zhàn)應(yīng)答方式
UsePAM no #不使用PAM認(rèn)證

然后重啟sshd服務(wù),原因見:這里

3、拷貝公鑰信息
上面密鑰信息窗口的“Key”框最后生成的就是公鑰信息:

點(diǎn)擊在新窗口中瀏覽此圖片

需要把該信息拷貝到Linux服務(wù)器的特定文件中:~/.ssh/authorized_keys
其中,“~”表示對應(yīng)用戶的主目錄,以root為例。
若.ssh目錄不存在,請創(chuàng)建它,并把公鑰信息寫入文件中:

# mkdir ~/.ssh
# chmod 700 ~/.ssh
# vi ~/.ssh/authorized_keys
# chmod 644 ~/.ssh/authorized_keys


※請務(wù)必留意:文件和目錄的權(quán)限問題,用戶必須是將要進(jìn)行認(rèn)證的用戶,而權(quán)限必須是0644,也就是禁止其他人對該文件寫入信息。(否則,某些有心人把自己的公鑰寫入這里,他也可以無密碼進(jìn)來了)
因?yàn)?,通常umask是0022或0002的,所以請使用chown和chmod修改為對應(yīng)的權(quán)限咯。


4、使用putty使用密鑰登陸
對putty進(jìn)行一些簡單配置,即可使用密鑰登陸Linux服務(wù)器。
選擇Connection-SSH-Auth,在“Private key file for authentication”輸入密鑰的路徑:
點(diǎn)擊在新窗口中瀏覽此圖片
然后在Connection的“Auth-login username”輸入登陸的用戶名,例如root:
點(diǎn)擊在新窗口中瀏覽此圖片
◎Putty 0.60 版本在Connection-Data頁內(nèi)。
然后點(diǎn)擊Open即可:
點(diǎn)擊在新窗口中瀏覽此圖片
若一切正常,則可以在session中Save保存配置。

三、使用OpenSSH生成密鑰
密鑰既可使用putty生成,也可用OpenSSH生成。
1、Linux下生成密鑰
運(yùn)行:

引用

# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):  <-密鑰路徑
Enter passphrase (empty for no passphrase): <-密鑰保護(hù)密碼
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa. <-私鑰
Your public key has been saved in /root/.ssh/id_rsa.pub. <-公鑰
The key fingerprint is:
17:28:4c:c3:e4:18:d4:c2:31:bd:be:a7:a9:d4:a8:48 root@mail.linuxfly.org


2、把公鑰信息寫入authorized_keys文件中
運(yùn)行:

# cd ~/.ssh
# cat id_rsa.pub >> authorized_keys



3、生成putty的私鑰
由于SSH的標(biāo)準(zhǔn)中,并沒有固定密鑰文件的格式。而Putty使用的私鑰格式和OpenSSH生成的有點(diǎn)不同,需要轉(zhuǎn)換一下。
a)把id_rsa傳到Windows機(jī)器上
b)使用puttygen的“Load”讀取id_rsa文件
點(diǎn)擊在新窗口中瀏覽此圖片
這里也可以從圖中的公鑰信息,與id_rsa.pub對比一下,應(yīng)該是一致的。
c)點(diǎn)擊“Save private key”保留私鑰。
d)putty使用該新的私鑰登陸服務(wù)器即可。

四、注意事項(xiàng)
1、檢查OpenSSH服務(wù)端的配置


OpenSSH的配置通常保存在:/etc/ssh/sshd_config
PermitRootLogin no # 禁止root用戶登陸
StrictModes yes # 檢查密鑰的用戶和權(quán)限是否正確,默認(rèn)打開的
RSAAuthentication yes # 啟用 RSA 認(rèn)證
AuthorizedKeysFile .ssh/authorized_keys # 驗(yàn)證公鑰的存放路徑
PubkeyAuthentication yes # 啟用公鑰認(rèn)證
PasswordAuthentication no # 禁止密碼認(rèn)證,默認(rèn)是打開的。

說明:
a)如果StrictModes為yes,而authorized_keys的權(quán)限為664等的情況,則驗(yàn)證密鑰的時(shí)候,會報(bào)錯(cuò):

bad ownership or modes for file /home/linuxing/.ssh/authorized_keys

b)若PasswordAuthentication設(shè)置為no,則禁用密碼認(rèn)證,配合啟動公鑰認(rèn)證,是更安全的方式。

2、公鑰存放的路徑
Putty作為客戶端是不需要使用公鑰的,而Linux服務(wù)端的公鑰是存放在:~/.ssh/authorized_keys中。
也就是講,如果登陸用戶的主目錄不同,存放的路徑是不相同的。
例如某用戶:

$ echo ~
/home/linuxing
則密鑰在:
/home/linuxing/.ssh/authorized_keys

若你想使用同一私鑰,但不同用戶登陸服務(wù)器,則請保證公鑰信息已經(jīng)寫入每個(gè)用戶的驗(yàn)證文件中咯。并且一定要注意驗(yàn)證文件的用戶和權(quán)限不能搞錯(cuò)哦。

3、Key passphrase密碼
如果你在保存私鑰的時(shí)候,輸入了Key passphrase密碼。其就會使用該信息對私鑰加密。這會帶來一個(gè)好處:就是萬一您的私鑰給盜走了,但如果小偷不知道該密碼,他也無法使用該私鑰登陸服務(wù)器的。簡單來說,就是加強(qiáng)了安全性。
a)在putty使用這種私鑰登陸服務(wù)器的時(shí)候,就會有提示:
點(diǎn)擊在新窗口中瀏覽此圖片
只有輸入正確的密碼才能通過認(rèn)證。
※這里看上去和使用密碼認(rèn)證方式登陸OpenSSH有點(diǎn)類似。但實(shí)際上是完全不同的。該
Key passphrase密碼是用于管理私鑰,避免私鑰被盜用的;而OpenSSH的密碼認(rèn)證方式使用的密碼,指的是Linux服務(wù)器端的用戶密碼,即PAM信息。也就是說,即使你修改了PAM的密碼,但只要Key passphrase信息正確,你還是可以登陸到服務(wù)器上的。(因?yàn)槭褂盟鈮撼鰜淼乃借€是沒變的)


b)若每次登陸都要輸入Key passphrase,明顯達(dá)不到我們簡化登陸步驟的目的。在既要保證安全,又要簡便的情況下,我們可以使用PAGEANT。
PAGEANT的作用很簡單,就是在我們輸入一次私鑰密碼后,把解密后的私鑰保存在PAGEANT中。
再次使用putty登陸的時(shí)候,PAGEANT就會自動的把解密后私鑰用于認(rèn)證,這樣就不用我們多次輸入密碼了。而
當(dāng)我們退出PAGEANT的時(shí)候,會自動刪除私鑰,重新登陸的時(shí)候需要再次檢驗(yàn)。實(shí)現(xiàn)“一次驗(yàn)證,多次使用”的目的。
打開PAGEANT,其會自動放入Windows右下角的任務(wù)欄中:點(diǎn)擊在新窗口中瀏覽此圖片
右鍵點(diǎn)擊后,選擇“View Keys”:點(diǎn)擊在新窗口中瀏覽此圖片
在彈出框中,選擇“Add Key”,輸入Putty的私鑰(.PPK),并會提示輸入Key passphrase:
點(diǎn)擊在新窗口中瀏覽此圖片
結(jié)果:
點(diǎn)擊在新窗口中瀏覽此圖片
直接選擇菜單的“Add Key”也可以。
這時(shí)候,使用putty再次登陸服務(wù)器就不需要Key passphrase啦。
點(diǎn)擊在新窗口中瀏覽此圖片
◎其實(shí),即使沒有Key passphrase的私鑰也可以導(dǎo)入PAGEANT中的,這時(shí)候就可以不用在Putty的配置文件中指定私鑰的路徑咯。也可以達(dá)到一定的安全目的的。

c)若要修改Key passphrase,可以使用puttygen重新Load私鑰,其會咨詢Key passphrase信息:
點(diǎn)擊在新窗口中瀏覽此圖片
輸入正確密碼后,即可修改,并保存新私鑰即可。是否存在或修改Key passphrase是不會改變公鑰信息的。

4、保存putty的配置信息
putty的配置信息是保存在Windows注冊表的,需使用下面的命令導(dǎo)出:

regedit /e PuTTY.config.reg "HKEY_CURRENT_USER\Software\SimonTatham\PuTTY"

5、使用DSA密鑰
默認(rèn)配置下,OpenSSH就同時(shí)支持RSA和DSA兩種編碼的密鑰。只要在生成密鑰的時(shí)候選擇“DSA”即可。例如:

# ssh-keygen -t dsa

使用上和RSA是沒有區(qū)別的,把公鑰信息拷貝到驗(yàn)證文件中即可使用。

五、公鑰認(rèn)證的原理
所謂的公鑰認(rèn)證,實(shí)際上是使用一對加密字符串,一個(gè)稱為公鑰(public key),任何人都可以看到其內(nèi)容,用于加密;另一個(gè)稱為密鑰(private key),只有擁有者才能看到,用于解密。通過公鑰加密過的密文使用密鑰可以輕松解密,但根據(jù)公鑰來猜測密鑰卻十分困難。
ssh 的公鑰認(rèn)證就是使用了這一特性。服務(wù)器和客戶端都各自擁有自己的公鑰和密鑰。為了說明方便,以下將使用這些符號。

Ac 客戶端公鑰
Bc 客戶端密鑰
As 服務(wù)器公鑰
Bs 服務(wù)器密鑰

在認(rèn)證之前,客戶端需要通過某種安全的方法將公鑰 Ac 登錄到服務(wù)器上。

認(rèn)證過程分為兩個(gè)步驟:

1、會話密鑰(session key)生成
客戶端請求連接服務(wù)器,服務(wù)器將 As 發(fā)送給客戶端。
服務(wù)器生成會話ID(session id),設(shè)為 p,發(fā)送給客戶端。
客戶端生成會話密鑰(session key),設(shè)為 q,并計(jì)算 r = p xor q。
客戶端將 r 用 As 進(jìn)行加密,結(jié)果發(fā)送給服務(wù)器。
服務(wù)器用 Bs 進(jìn)行解密,獲得 r。
服務(wù)器進(jìn)行 r xor p 的運(yùn)算,獲得 q。
至此服務(wù)器和客戶端都知道了會話密鑰q,以后的傳輸都將被 q 加密。
2、認(rèn)證
服務(wù)器生成隨機(jī)數(shù) x,并用 Ac 加密后生成結(jié)果 S(x),發(fā)送給客戶端
客戶端使用 Bc 解密 S(x) 得到 x
客戶端計(jì)算 q + x 的 md5 值 n(q+x),q為上一步得到的會話密鑰
服務(wù)器計(jì)算 q + x 的 md5 值 m(q+x)
客戶端將 n(q+x) 發(fā)送給服務(wù)器
服務(wù)器比較 m(q+x) 和 n(q+x),兩者相同則認(rèn)證成功

六、參考資料
一份非常詳細(xì)的putty使用說明:http://docs.google.com/View?docid=ajbgz6fp3pjh_2dwwwwt
源地址打開很慢,我保存了一份:

putty中文教程 pdf版

相關(guān)文章

  • 詳解CentOS中的route命令

    詳解CentOS中的route命令

    這篇文章給大家主要介紹了關(guān)于CentOS中的route命令,文中介紹的很詳細(xì),相信對大家的理解和學(xué)習(xí)具有一定的參考價(jià)值,有需要的朋友們下面來跟著小編一起學(xué)習(xí)學(xué)習(xí)吧。
    2016-12-12
  • linux掛載本地yum源問題

    linux掛載本地yum源問題

    這篇文章主要介紹了linux掛載本地yum源問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • linux服務(wù)器下LNMP安裝與配置方法

    linux服務(wù)器下LNMP安裝與配置方法

    現(xiàn)在很多朋友都選擇了linux服務(wù)器下配置LNMP(linux+nginx+mysql+php),這里分享下LNMP安裝與配置方法,需要的朋友可以參考下
    2013-07-07
  • linux編譯內(nèi)核的方法

    linux編譯內(nèi)核的方法

    在本篇文章里小編給各位整理的是關(guān)于linux編譯內(nèi)核的方法,有需要的朋友們可以跟著學(xué)習(xí)參考下。
    2020-03-03
  • CentOS7環(huán)境中DHCP配置教程

    CentOS7環(huán)境中DHCP配置教程

    大家好,本篇文章主要講的是CentOS7環(huán)境中DHCP配置教程,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-11-11
  • linux Vim基本操作方法

    linux Vim基本操作方法

    Ubuntu的Vi也不好用,搞了個(gè)Vim用來學(xué)習(xí)了,簡單記錄下它的基本操作。還有一本相關(guān)的電子書可下載。
    2013-11-11
  • 使用squid搭建http代理的方法

    使用squid搭建http代理的方法

    這篇文章主要介紹了使用squid搭建http代理的方法,需要的朋友可以參考下
    2016-11-11
  • Centos7安裝配置NFS服務(wù)和掛載教程(推薦)

    Centos7安裝配置NFS服務(wù)和掛載教程(推薦)

    下面小編就為大家?guī)硪黄狢entos7安裝配置NFS服務(wù)和掛載教程(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-10-10
  • 【Linux】linux常用基本命令總結(jié)(推薦)

    【Linux】linux常用基本命令總結(jié)(推薦)

    Linux中許多常用命令是必須掌握的,這里將我學(xué)linux入門時(shí)學(xué)的一些常用的基本命令分享給大家一下,有興趣的可以了解一下。
    2016-11-11
  • Linux curl表單登錄或提交與cookie使用詳解

    Linux curl表單登錄或提交與cookie使用詳解

    這篇文章主要給大家介紹了關(guān)于Linux curl表單登錄或提交與cookie使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Linux系統(tǒng)具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08

最新評論