首頁技術文章正文

Hadoop虛擬機怎樣遠程登錄和開啟SSH免密登錄功能?

更新時間:2020-12-22 來源:黑馬程序員 瀏覽量:

1577370495235_學IT就到黑馬程序員.gif

  通過前面的操作,已經(jīng)完成了三臺虛擬機Hadoop01、Hadoop02和Hadoop03的安裝和網(wǎng)絡配置,雖然這些虛擬機已經(jīng)可以正常使用了,但是依然存在下列問題。

  (1)實際工作中,服務器被放置在機房中,同時受到地域和管理的限制,開發(fā)人員通常不會進入機房操作直接上機操作,而是通過遠程連接服務器,進行相關操作。

  (2)在集群開發(fā)中,主節(jié)點通常會對集群中各個節(jié)點頻繁的訪問,就需要不斷輸入目標服務器的用戶名和密碼,這種操作方式非常麻煩并且還會影響集群服務的連續(xù)運行。

  為了解決上述問題,可以通過配置SSH服務來分別實現(xiàn)遠程登錄和SSH免密登錄功能。接下來,就分別對這兩種服務配置和說明進行詳細講解。

  1.SSH遠程登錄功能配置

  SSH為Secure Shell的縮寫,它是一種網(wǎng)絡安全協(xié)議,專為遠程登錄會話和其他網(wǎng)絡服務提供安全性的協(xié)議。通過使用SSH服務,可以把傳輸?shù)臄?shù)據(jù)進行加密,有效防止遠程管理過程中的信息泄露問題。

  為了使用SSH服務,服務器首先必須安裝并開啟相應的SSH服務。在CentOS系統(tǒng)下,可以先執(zhí)行“rpm -qa | grep ssh”指令查看當前機器是否安裝SSH服務,同時使用“ps -e | grep sshd”指令查看SSH服務是否啟動,如圖1所示。

1608621608136_1.jpg

   圖1 查看是否安裝和開啟SSH服務

  從圖1可以看出,CentOS虛擬機已經(jīng)默認安裝并開啟了SSH服務,所以不需要進行額外安裝,就可以進行遠程連接訪問(如果沒有安裝,CentOS系統(tǒng)下可以執(zhí)行“yum install openssh-server”指令進行安裝)。

  在目標服務器已經(jīng)安裝SSH服務,并且支持遠程連接訪問后,在實際開發(fā)中,開發(fā)人員通常會通過一個遠程連接工具來連接訪問目標服務器。本教材就介紹一個實際開發(fā)中常用的SecureCRT遠程連接工具來演示遠程服務器的連接和使用。

  SecureCRT是一款支持SSH的終端仿真程序,它能夠在Windows操作系統(tǒng)上遠程連接Linux服務器執(zhí)行操作。本書采用SecureCRT 7.2版本進行介紹說明,讀者可以通過地址 https://www.vandyke.com/download/securecrt/7.2/index.html,自行下載安裝。下載安裝完成后,按照以下操作進行遠程連接訪問。

  (1)打開SecureCRT遠程連接工具,單擊導航欄上的【File(文件)】à【Quick Connect(快速連接)】創(chuàng)建快速連接,并根據(jù)虛擬機的配置信息進行設置,如圖2所示。

  圖2 創(chuàng)建快速鏈接

  在圖2所示的快速連接設置中,主要是根據(jù)要連接遠程服務器設置了目標主機名為192.168.121.134(即Hadoop01虛擬機的IP地址)和登錄用戶root,而其他相關設置通常情況下使用默認值即可。

  (2)設置完快速連接配置后,單擊圖2中的“Connect(連接)”按鈕,會彈出“New Host Key(新建主機秘鑰)”對話框(主要用于秘鑰信息發(fā)送確認),如圖3所示。

  圖3 秘鑰信息發(fā)送確認

  (3)單擊圖4中的“Accept&Save(接收并保存)”按鈕。保存完畢后,客戶端需要輸入目標服務器的用戶名和密碼,并且可以勾選“Save password(保存密碼)”按鈕,避免下次連接重復要求輸入密碼,如圖4所示。

   圖4 輸入用戶名密碼

  (4)在圖5中輸入正確的用戶名和密碼后,單擊“OK(確定)”按鈕,SecureCRT遠程連接工具就會自動連接到遠程目標服務器,如圖5所示。

   圖5 SecureCRT遠程連接到Hadoop01服務器

  進入到圖6所示界面,就表示通過SecureCRT遠程連接服務器成功,后續(xù)就可以像在虛擬機終端窗口一樣,也可以在該工具客戶端上操作虛擬機。

  2.SSH免密登錄功能配置

  前面介紹了SSH服務,并實現(xiàn)了遠程登錄功能,而想要實現(xiàn)多臺服務器之間的免密登錄功能還需要進一步設置。下面就詳細講解如何配置SSH免密登錄,具體如下。

  (1)在需要進行統(tǒng)一管理的虛擬機上(例如后續(xù)會作為Hadoop集群主節(jié)點的Hadoop01)輸入“ssh-keygen -t rsa”指令,并根據(jù)提示,可以不用輸入任何內(nèi)容,連續(xù)按四次Enter鍵確認,接著就會在當前虛擬機的root目錄下生成一個包含有秘鑰文件的.ssh隱藏文件。在虛擬機的root目錄下通過“l(fā)l -a”指令可以查看當前目錄下的所有文件(包括隱藏文件),然后進入到.ssh隱藏目錄,查看當前目錄的文件,如圖6所示。

   圖6 .ssh目錄文件

  在圖6中,.ssh隱藏目錄下的id_rsa就是生成的Hadoop01私鑰,id_rsa.pub為公鑰。

  (2)在生成秘鑰文件的虛擬機Hadoop01上,執(zhí)行相關指令將公鑰拷貝到需要關聯(lián)的服務器上(包括本機)。例如執(zhí)行“ssh-copy-id hadoop02”指令可以將公鑰文件拷貝到主機名為hadoop02的虛擬機上(拷貝到其他服務器指令只需修改主機名即可),如圖7所示。

   圖7 驗證免密登錄

  從圖7可以看出,在hadoop01主機上生成的公鑰拷貝到了hadoop02主機上并自動重命名為authorized_keys。當在hadoop01主機上輸入“ssh hadoop02”指令訪問hadoop02主機時就不再需要輸入密碼了。

  需要說明的是,上述步驟只是演示了在主機名為hadoop01的機器上生成秘鑰文件,并將公鑰拷貝到hadoop02主機上,實現(xiàn)了hadoop01到hadoop02的單向免密登錄。而本教材后續(xù)將使用前面安裝的主機名為hadoop01、hadoop02和hadoop03主機進行Hadoop集群搭建,因此,還需要在所有機器上進行上述操作。

猜你喜歡

怎樣創(chuàng)建和使用Combiner組件?

InputFormat接口的定義代碼如何設置?

Znode儲存結構是怎樣的?節(jié)點類型有哪幾種?

黑馬程序員大數(shù)據(jù)培訓課程 

分享到:
在線咨詢 我要報名
和我們在線交談!