認真對待網路安全,使用SSH金鑰訪問遠端登入。它們比密碼更安全。我們將向您展示如何在Linux中生成、安裝和使用SSH金鑰。
secureshell(SSH)是一種加密協議,用於在遠端Linux或類似Unix的計算機上登入使用者帳戶。通常,這類使用者帳戶使用密碼進行保護。登入到遠端計算機時,必須提供要登入的帳戶的使用者名稱和密碼。
密碼是保護對計算資源訪問的最常用的方法。儘管如此,基於密碼的安全確實有其缺陷。人們選擇弱密碼、共享密碼、在多個系統上使用相同的密碼等等。
SSH金鑰更安全,一旦設定好,就和密碼一樣容易使用。
SSH金鑰是成對建立和使用的。這兩個金鑰是連結的,加密安全。一個是公鑰,另一個是私鑰。它們與您的使用者帳戶繫結。如果一臺計算機上有多個使用者使用SSH金鑰,則每個使用者都將收到自己的金鑰對。
私鑰安裝在主資料夾中(通常),公鑰安裝在需要訪問的遠端計算機上。
你的私鑰必須妥善保管。如果其他人可以訪問,則您的位置與他們發現您的密碼的位置相同。一個明智的和強烈建議的預防措施是在您的計算機上用一個健壯的密碼短語加密您的私鑰。
公鑰可以自由共享,而不會損害您的安全性。無法透過檢查公鑰來確定私鑰是什麼。私鑰可以加密只有私鑰才能解密的訊息。
當您發出連線請求時,遠端計算機將使用其公鑰副本建立加密訊息。訊息包含會話ID和其他元資料。只有擁有您的計算機的私鑰的計算機才能解密此訊息。
您的計算機訪問您的私鑰並解密訊息。然後它將自己的加密訊息傳送回遠端計算機。除此之外,此加密訊息包含從遠端計算機接收的會話ID。
遠端計算機現在知道您必須是您所說的那個人,因為只有您的私鑰才能從傳送到您的計算機的訊息中提取會話Id。
確保您可以遠端連線並登入到遠端計算機。這證明您的使用者名稱和密碼在遠端計算機上設定了有效的帳戶,並且您的憑據是正確的。
在驗證可以使用SSH和密碼連線到目標計算機之前,不要嘗試使用SSH金鑰。
在本例中,具有名為dave的使用者帳戶的人登入到名為howtogeek的計算機。他們將連線到另一臺名為Sulaco的計算機。
它們輸入以下命令:
ssh dave@sulaco他們被要求輸入密碼,輸入密碼,然後與蘇拉科連線。他們的命令列提示符會更改以確認這一點。
我們只需要確認一下。因此使用者dave可以使用exit命令斷開與Sulaco的連線:
exit它們接收到disconnect訊息,命令列提示符返回到戴夫@howtogeek。
相關:如何從Windows、macOS或Linux連線到SSH伺服器
這些指令在Linux的Ubuntu、Fedora和Manjaro發行版上進行了測試。在所有情況下,過程都是相同的,並且不需要在任何測試機器上安裝任**軟體。
要生成SSH金鑰,請鍵入以下命令:
ssh-keygen生成過程開始。系統將詢問您希望將SSH金鑰儲存在何處。按Enter鍵接受預設位置。對該資料夾的許可權將保護它僅供您使用。
現在將要求您輸入密碼短語。我們強烈建議您在此處輸入密碼短語。記住那是什麼!您可以按Enter鍵不輸入密碼短語,但這不是一個好主意。一個由三個或四個不相連的單片語成的密碼短語,串在一起將構成一個非常健壯的密碼短語。
您將被要求再次輸入相同的密碼短語,以驗證您是否鍵入了您認為鍵入的內容。
SSH金鑰是為您生成和儲存的。
您可以忽略顯示的“隨機藝術”。某些遠端計算機可能會在每次連線時向您顯示它們的隨機藝術。這樣做的目的是,如果隨機art發生了變化,您將能夠識別,並對連線產生懷疑,因為這意味著該伺服器的SSH金鑰已被更改。
我們需要在遠端計算機Sulaco上安裝您的公鑰,以便它知道公鑰屬於您。
我們使用ssh copy id命令執行此操作。此命令與常規ssh命令一樣連線到遠端計算機,但它不允許您登入,而是傳輸公共ssh金鑰。
ssh-copy-id dave@sulaco雖然您沒有登入到遠端計算機,但仍然必須使用密碼進行身份驗證。遠端計算機必須標識新SSH金鑰屬於哪個使用者帳戶。
請注意,此處必須提供的密碼是您登入的使用者帳戶的密碼。這不是您剛剛建立的密碼短語。
驗證密碼後,ssh copy id將公鑰傳輸到遠端計算機。
您將返回到計算機的命令提示符。您沒有連線到遠端計算機。
讓我們按照建議試著連線到遠端計算機。
ssh dave@sulaco因為連線過程將需要訪問您的私鑰,並且因為您在密碼短語後面保護SSH金鑰,所以您需要提供密碼短語以便連線可以繼續。
輸入您的密碼短語並單擊解鎖按鈕。
在終端會話中輸入密碼短語後,只要開啟終端視窗,就不必再次輸入密碼短語。您可以隨意連線和斷開與任意多個遠端會話的連線,而無需再次輸入密碼短語。
您可以勾選“在我登入時自動解鎖此金鑰”選項的複選框,但這會降低您的安全性。如果您的計算機無人看管,任何人都可以連線到具有您的公鑰的遠端計算機。
輸入密碼後,您就可以連線到遠端計算機。
要再次端到端驗證該過程,請使用exit命令斷開連線,然後從同一終端視窗重新連線到遠端計算機。
ssh dave@sulaco您將連線到遠端計算機,而不需要密碼或口令。
網路安全專家談論一種叫做安全摩擦的東西。這是你需要忍受的小痛苦,以獲得額外的安全性。通常需要一些額外的步驟或兩個採取更安全的工作方法。大多數人都不喜歡。他們實際上更喜歡較低的安全性和缺乏摩擦。這是人的本性。
使用SSH金鑰,您可以獲得更高的安全性和更大的便利性。這絕對是雙贏的。
...。它之所以成為遠端伺服器管理的首選是有原因的。學習如何透過SSH遠端管理Linux伺服器,從連線到安裝軟體和檔案傳輸。 ...
...ali Linux提供了擴充套件道德駭客技能所需的一切。下面是如何將Kali Linux載入到Raspberry Pi 3上的。 ...
... 需要Windows中的Linux環境嗎?2016年,微軟與Canonical合作建立了一個在Windows中執行的Bash工作版本。能夠執行grep、ssh和nano等命令和工具,可以輕鬆地在Windows上啟用Bash。 ...
... 但不一定要這樣。是時候學習如何只使用別名透過SSH高效登入、傳輸單個檔案或目錄、執行遠端SSH命令以及輕鬆地將遠端伺服器裝載到本地目錄了。 ...
...機率現在大大降低了。在本文中,您瞭解了rsync是什麼,如何生成和安裝SSH金鑰,如何在~./.SSH/config檔案中定義伺服器,如何同步本地和遠端目錄,以及如何透過crontab自動化整個過程。今後,所有必需的檔案將始終與遠端伺服器...
...你的系統,例如,可能是滲透他們的第一步。因此,評估如何保護您的系統是值得的。 ...
...機。它是獨立的,設定簡單,使用方便。我們將向您展示如何開始。 管理多個linux伺服器 如果您要監視多臺Linux計算機或伺服器,您將面臨一個挑戰。這是特別真實的,如果其中一些是執行無頭系統沒有顯示器連線。例如,您...
密碼是帳戶安全的基石。我們將向您展示如何在Linux網路上重置密碼、設定密碼過期期限和強制更改密碼。 密碼已經存在了近60年 自從20世紀60年代中期密碼第一次出現以來,我們就一直在向計算機證明我們就是我們所說的那個...
...一個分支,它的建立完全是為了避免使用systemd。 相關:如何在Linux系統上管理Systemd服務 $home目錄 在Linux目錄結構中,您所做的一切都駐留在“/home”目錄中。您的資料檔案、影象、音樂和整個個人目錄樹都儲存在這個以您的使...