一臺(tái)linux生成的私鑰可以給別人嗎 Ubuntu怎樣配置免密碼?
Ubuntu怎樣配置免密碼?我們一般使用ssh遠(yuǎn)程登錄服務(wù)器,需要輸入用戶名、服務(wù)器ip和密碼。當(dāng)我們需要同時(shí)管理多臺(tái)服務(wù)器時(shí),每次重復(fù)輸入這些東西會(huì)特別麻煩和費(fèi)時(shí),所以我們可以通過(guò)配置key來(lái)實(shí)現(xiàn)U
Ubuntu怎樣配置免密碼?
我們一般使用ssh遠(yuǎn)程登錄服務(wù)器,需要輸入用戶名、服務(wù)器ip和密碼。當(dāng)我們需要同時(shí)管理多臺(tái)服務(wù)器時(shí),每次重復(fù)輸入這些東西會(huì)特別麻煩和費(fèi)時(shí),所以我們可以通過(guò)配置key來(lái)實(shí)現(xiàn)Ubuntu的無(wú)密碼登錄。
實(shí)現(xiàn)這個(gè)目標(biāo)的五個(gè)部分是:-本地客戶端生成密鑰對(duì)-將密鑰上傳到服務(wù)器-服務(wù)器將密鑰添加到authorized_keys-本地客戶端配置ssh并添加服務(wù)器別名-測(cè)試。
如果客戶端使用MacOS或Linux系統(tǒng),可以在終端直接使用以下操作。如果是窗口系統(tǒng),建議先安裝Git-Bash。Git-bash自帶ssh工具。在Git-Bash下,操作與Linux或MacOS系統(tǒng)相同。
本地客戶端生成密鑰對(duì)。在生成密鑰對(duì)之前,我們可以檢查是否已經(jīng)生成了密鑰對(duì)。我們可以使用以下命令:
如果輸出有和,則證明之前已經(jīng)生成了一個(gè)密鑰對(duì),其中直接使用了私鑰和公鑰。如果你不 如果看不到這兩個(gè)文件,請(qǐng)記住密鑰對(duì)是否是您自己命名的。如果你不 如果你沒(méi)有或者忘記了它是不是生成的,你可以在很長(zhǎng)一段時(shí)間內(nèi)重新創(chuàng)建一個(gè)。該方法如下:
執(zhí)行命令后,我們會(huì)提示密鑰存放位置,詢問(wèn)是否需要設(shè)置密碼。一般我們可以一直按OK來(lái)完成密鑰生成。
當(dāng)它 完成后,我們可以再次檢查文件夾下是否有新創(chuàng)建的鍵。
接下來(lái),我們將創(chuàng)建的公鑰上傳到服務(wù)器,我們將使用命令。
這里需要注意的是,我們需要上傳的是公鑰,其文件名為,私鑰需要保密。唐 不要在這里上傳錯(cuò)誤。
服務(wù)器將密鑰添加到authorized_keys接下來(lái),我們需要登錄到我們的服務(wù)器,然后將我們剛剛上傳的公鑰添加到authorized_keys。在添加之前,我們需要做一些準(zhǔn)備,如下:-檢查是否有一個(gè)。ss件-如果它不 不存在,我們需要自己去創(chuàng)造。如果是新安裝的系統(tǒng),以我的Ubuntu 16.04.4為例,默認(rèn)的ssh不會(huì)自動(dòng)創(chuàng)建一個(gè)。ss件夾,需要自己創(chuàng)建。不同版本的系統(tǒng)或不同安裝的ssh可能會(huì)有所不同,請(qǐng)根據(jù)實(shí)際情況處理。
那個(gè) 這就是全部。在Ubuntu 16.04.4的默認(rèn)配置下,可以完成上述操作。但是,在一些不同版本的系統(tǒng)中,您可能還需要配置以下ssh。配置,如下所示:-Backup-Edit,將被修改為
本地客戶端配置ssh并添加服務(wù)器別名。以上配置完成后,我們可以嘗試用密鑰在本地登錄,看看是否成功:
如果配置正確,您可以正常登錄,無(wú)需密碼。
為了解決這個(gè)問(wèn)題,我們需要管理多臺(tái)服務(wù)器和不 如果不想記住太多不同的用戶名和地址,我們也可以登錄來(lái)設(shè)置別名,如下所示:-在本地目錄下創(chuàng)建一個(gè)config。ssh/fold
如何使用SSH服務(wù)直接登陸遠(yuǎn)程服務(wù)器?
SSH是系統(tǒng)管理員必須掌握的基本工具。
SSH或Secure Shell是一種用于安全登錄遠(yuǎn)程系統(tǒng)的協(xié)議。這是訪問(wèn)遠(yuǎn)程Linux和類Unix服務(wù)器的最常見(jiàn)。
毫無(wú)疑問(wèn),Linux上使用ssh連接遠(yuǎn)程系統(tǒng)的工具叫做SSH。
下面是基本語(yǔ)法。該命令最基本的形式是,remote_host是您嘗試連接的IP地址或域名。
ssh遠(yuǎn)程主機(jī)
該命令假設(shè)您在遠(yuǎn)程系統(tǒng)上的用戶名與本地系統(tǒng)上的用戶名相同。如果您的用戶名在遠(yuǎn)程系統(tǒng)上不同,您可以使用以下語(yǔ)法來(lái)指定它:
噓
連接到服務(wù)器后,可能會(huì)要求您提供密碼來(lái)驗(yàn)證您的身份。稍后,我將解釋如何生成一個(gè)密鑰來(lái)代替密碼。
要退出本地會(huì)話,只需鍵入:
出口
在Ubuntu上,您可以通過(guò)鍵入以下命令來(lái)啟動(dòng)ssh服務(wù):
sudo服務(wù)ssh啟動(dòng)
在Ubuntu 16.04和Debian Jessie上,可以使用systemd命令來(lái)管理服務(wù)systemctl:
sudo systemctl啟動(dòng)ssh
此時(shí),sshd服務(wù)應(yīng)該已經(jīng)啟動(dòng),然后您就可以遠(yuǎn)程登錄了。
使用密鑰登錄SSH。雖然能夠使用密碼登錄到遠(yuǎn)程系統(tǒng)很有幫助,但是設(shè)置基于密鑰的身份驗(yàn)證是一個(gè)更好的主意。
基于密鑰的身份驗(yàn)證通過(guò)創(chuàng)建一對(duì)密鑰來(lái)工作:一個(gè)私鑰和一個(gè)公鑰。私鑰位于客戶端,并且是固定的和機(jī)密的。公鑰可以給任何人,也可以放在任何要訪問(wèn)的服務(wù)器上。
當(dāng)嘗試使用密鑰對(duì)連接時(shí),服務(wù)器將使用公鑰為客戶端計(jì)算機(jī)創(chuàng)建一條消息,只有使用私鑰才能讀取該消息。
然后,客戶端向服務(wù)器發(fā)回適當(dāng)?shù)捻憫?yīng),服務(wù)器將知道客戶端是合法的。設(shè)置好鑰匙后,整個(gè)過(guò)程會(huì)在后臺(tái)自動(dòng)完成。
創(chuàng)建sSH密鑰,SSH密鑰必須在您登錄的計(jì)算機(jī)上生成。這通常是本地計(jì)算機(jī)。
在命令行上輸入以下內(nèi)容:
ssh-keygen -t rsa
按Enter鍵接受默認(rèn)值。鑰匙會(huì)在?_和?_rsa。id_rsa文件只能由所有者讀取和寫(xiě)入。這是保守秘密的方法。但是,id_ file可以共享,并且具有此活動(dòng)的適當(dāng)權(quán)限。
您可以通過(guò)發(fā)出以下命令將公鑰復(fù)制到遠(yuǎn)程服務(wù)器:
ssh-copy-id遠(yuǎn)程主機(jī)
這將啟動(dòng)一個(gè)SSH會(huì)話,并要求密碼驗(yàn)證。
輸入密碼后,它會(huì)將公鑰復(fù)制到服務(wù)器的授權(quán)密鑰文件中,這樣下次就可以不用密碼登錄了。
如果您想了解有關(guān)SSH命令參數(shù)的更多信息,可以使用以下命令:
Ssh -h或mansh
結(jié)論:
學(xué)習(xí)SSH的方法是值得的,即使只是因?yàn)樗且粋€(gè)常見(jiàn)的活動(dòng)。
使用各種選項(xiàng)時(shí),你會(huì)發(fā)現(xiàn)更高級(jí)的功能可以讓你的生活更輕松。SSH一直很受歡迎,因?yàn)樗踩?、輕便,在各種情況下都很有用。