技術(shù)員聯(lián)盟提供win764位系統(tǒng)下載,win10,win7,xp,裝機(jī)純凈版,64位旗艦版,綠色軟件,免費(fèi)軟件下載基地!

當(dāng)前位置:主頁(yè) > 教程 > 服務(wù)器類 >

SSH密鑰登錄讓Linux VPS/服務(wù)器更安全

來(lái)源:技術(shù)員聯(lián)盟┆發(fā)布時(shí)間:2019-02-14 12:33┆點(diǎn)擊:

  隨著PHP越來(lái)越流行,Linux VPS/服務(wù)器的使用也越來(lái)越多,Linux的安全問題也需要日漸加強(qiáng),如果你安裝過DenyHosts并設(shè)置過郵件提醒,你每天可能會(huì)受到數(shù)封DenyHosts Report將前來(lái)破解SSH密碼的IP加入/etc/hosts.deny。

  Linux SSH登錄有兩種:

  1、使用密碼驗(yàn)證登錄

  通常VPS或服務(wù)器開通后都是直接提供IP和root密碼,使用這種方式就是通過密碼方式登錄。如果密碼不夠強(qiáng)壯,而且沒有安裝DenyHosts之類的防止SSH密碼破解的軟件,那么系統(tǒng)安全將存在很大的隱患。

  2、使用密鑰驗(yàn)證登錄

  基于密鑰的安全驗(yàn)證必須為用戶自己創(chuàng)建一對(duì)密鑰,并把共有的密鑰放在需要訪問的服務(wù)器上。當(dāng)需要連接到SSH服務(wù)器上時(shí),客戶端軟件就會(huì)向服務(wù)器發(fā)出請(qǐng)求,請(qǐng)求使用客戶端的密鑰進(jìn)行安全驗(yàn)證。服務(wù)器收到請(qǐng)求之后,先在該用戶的根目錄下尋找共有密鑰,然后把它和發(fā)送過來(lái)的公有密鑰進(jìn)行比較。如果兩個(gè)密鑰一致,服務(wù)器就用公有的密鑰加密“質(zhì)詢”,并把它發(fā)送給客戶端軟件(putty,xshell等)??蛻舳耸盏劫|(zhì)詢之后,就可以用本地的私人密鑰解密再把它發(fā)送給服務(wù)器,這種方式是相當(dāng)安全的。

  一、生成密鑰

  因?yàn)閜uttygen生成的密鑰有問題可能會(huì)出現(xiàn):“Server refused our key”,最好使用XShell生成密鑰或者在遠(yuǎn)程Linux VPS/服務(wù)器生成密鑰。

  1、在Linux遠(yuǎn)程服務(wù)器生成密鑰:

  登錄遠(yuǎn)程Linux VPS/服務(wù)器,執(zhí)行:

  root@vpser:~# ssh-keygen -t rsa //先運(yùn)行這個(gè)命令

  Generating public/private rsa key pair.

  Enter file in which to save the key (/root/.ssh/id_rsa): //直接回車

  Created directory ‘/root/.ssh’.

  Enter passphrase (empty for no passphrase): //輸入密鑰密碼

  Enter same passphrase again: //重復(fù)密鑰密碼

  Your identification has been saved in /root/.ssh/id_rsa. //提示公鑰和私鑰已經(jīng)存放在/root/.ssh/目錄下

  Your public key has been saved in /root/.ssh/id_rsa.pub.

  The key fingerprint is:

  15:23:a1:41:90:10:05:29:4c:d6:c0:11:61:13:23:dd root@vpser.net

  The key’s randomart image is:

  +–[ RSA 2048]—-+

  |=&@Bo+o o.o |

  |=o=.E o . o |

  | . . . |

  | . |

  | S |

  | |

  | |

  | |

  | |

  +—————–+

  root@vpser:~#

  將/root/.ssh/下面的id_rsa和id_rsd.pub妥善保存。

  2、使用XShell生成密鑰

  Xshell是一款Windows下面功能強(qiáng)大的SSH客戶端,能夠按分類保存N多會(huì)話、支持Tab、支持多密鑰管理等等,管理比較多的VPS/服務(wù)器使用XShell算是比較方便的,推薦使用。

  下載XShell,安裝,運(yùn)行XShell,點(diǎn)擊菜單:Tool ->User Key Generation Wizard,出現(xiàn)如下提示:

SSH密鑰登錄讓Linux VPS/服務(wù)器更安全 三聯(lián)

SSH密鑰登錄讓Linux VPS/服務(wù)器更安全

SSH密鑰登錄讓Linux VPS/服務(wù)器更安全

SSH密鑰登錄讓Linux VPS/服務(wù)器更安全

  點(diǎn)擊Save as file將密鑰保存為id_rsa.pub。

  二、將密鑰添加到遠(yuǎn)程Linux服務(wù)器

  1、用winscp,將id_rsa.pub文件上傳到/root/.ssh/下面(如果沒有則創(chuàng)建此目錄),并重命名為:authorized_keys(如果是在Linux服務(wù)器上生成的密鑰直接執(zhí)行:mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys),再執(zhí)行:chmod 600 /root/.ssh/authorized_keys 修改權(quán)限。

  2、修改/etc/ssh/sshd_config 文件,將RSAAuthentication 和 PubkeyAuthentication 后面的值都改成yes ,保存。

  3、重啟sshd服務(wù),Debian/Ubuntu執(zhí)行/etc/init.d/ssh restart ;CentOS執(zhí)行:/etc/init.d/sshd restart。

  三、客戶端測(cè)試使用密鑰登錄

  1、使用putty登錄

  putty使用的私鑰文件和Linux服務(wù)器或XShell的私鑰格式不同,如果使用putty的話,需要將Linux主機(jī)上生成的id_rsa文件下載的本地。運(yùn)行putty壓縮包里面的puttygen.exe,選擇Conversions->Import key選擇私鑰文件id_rsa,輸入密鑰文件的密碼,會(huì)出現(xiàn)如下界面:

SSH密鑰登錄讓Linux VPS/服務(wù)器更安全

  點(diǎn)擊“Save Private Key”,將私鑰保存為id_rsa.ppk

  運(yùn)行putty,在Host Name填寫:root@主機(jī)名或ip

SSH密鑰登錄讓Linux VPS/服務(wù)器更安全

SSH密鑰登錄讓Linux VPS/服務(wù)器更安全

SSH密鑰登錄讓Linux VPS/服務(wù)器更安全

  如果設(shè)置了密鑰密碼,出現(xiàn):Passphrase for key “imported-openssh-key”時(shí)輸入密鑰密碼。

  如果設(shè)置沒問題就會(huì)登錄成功,出現(xiàn)用戶提示符。

  2、XShell登錄