首頁 > 系統教程 > Linux > 主體

遠端管理Linux伺服器,從SSH入手

王林
發布: 2024-02-10 10:00:31
轉載
490 人瀏覽過

Linux伺服器在運維過程中,經常需要進行遠端管理。而SSH是最常用的遠端管理工具之一。它可以讓管理員遠端登入Linux伺服器,執行命令和操作檔案。在本文中,我們將討論如何使用SSH連接Linux伺服器,並分享一些SSH的實用技巧。

身為系統管理員,你打算在 Linux 上使用 OpenSSH,完成日常工作的自動化,例如檔案傳輸、備份資料庫轉儲檔案到另一台伺服器等。要達成這個目標,你需要從主機 A 能自動登入主機 B。自動登入也就是說,要在 shell 腳本中使用ssh,而不需要輸入任何密碼。

遠端管理Linux伺服器,從SSH入手

本文會告訴你怎麼在 CentOS/RHEL 上設定 SSH 免密碼登入。自動登入設定好以後,你可以透過它使用 SSH (Secure Shell)和安全複製 (SCP)來移動檔案。

SSH 是開源的,是用於遠端登入的最可靠的網路協定。系統管理員用它來執行命令,以及透過 SCP 協定在網路上向另一台電腦傳輸檔案。

透過設定 SSH 免密碼登錄,你可以享受如下的便利性:

◆用腳本實現日常工作的自動化。

◆增強 Linux 伺服器的安全性。這是防範虛擬專用伺服器(VPS)遭受暴力破解攻擊的一個推薦的方法,SSH 金鑰單憑暴力破解是幾乎不可攻破的。

什麼是 Ssh-Keygen

ssh-keygen 是一個用來產生、建立和管理 SSH 認證用的公私鑰的工具。透過 ssh-keygen 指令,使用者可以建立支援SSH1 和 SSH2 兩個協定的金鑰。 ssh-keygen 為 SSH1 協定建立 RSA 金鑰,SSH2 則可以是 RSA 或 DSA。

什麼是 Ssh-Copy-Id

ssh-copy-id 是用來將本機公鑰拷貝到遠端的authorized_keys 檔案的腳本指令,它也會將身分識別檔案追加到遠端機器的~/.ssh/authorized_keys 檔案中,並給予遠端主機的使用者主目錄適當的的權限。

SSH 金鑰

#SSH 金鑰為登入 Linux 伺服器提供了更好且安全的機制。執行 ssh-keygen 後,將會產生公私密鑰對。你可以將公鑰放置到任意伺服器,從持有私鑰的客戶端連接到伺服器的時,會用它來解鎖。兩者配對時,系統無需密碼就能解除鎖定。

在 CentOS 和 RHEL 上設定免密碼登入 SSH

以下步驟在 CentOS 5/6/7、RHEL 5/6/7 和 Oracle Linux 6/7 上測試通過。

節點1:192.168.0.9 節點2 : 192.168.0.10

本章目錄結構

  • 步驟一 :
  • 步驟二:
  • 步驟三:
  • 步驟四:

步驟一 :

測試節點1到節點2的連接與存取:

[root@node1 ~]# ssh root@192.168.0.10
The authenticity of host '192.168.0.10 (192.168.0.10)' can't be established.
RSA key fingerprint is 6d:8f:63:9b:3b:63:e1:72:b3:06:a4:e4:f4:37:21:42.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.10' (RSA) to the list of known hosts.
root@192.168.0.10's password:
Last login: Thu Dec 10 22:04:55 2015 from 192.168.0.1
[root@node2 ~]#
登入後複製

步驟二:

#使用 ssh-key-gen 指令產生公鑰和私鑰,這裡要注意的是可以對私鑰進行加密保護以增強安全性。

[root@node1 ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
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:
b4:51:7e:1e:52:61:cd:fb:b2:98:4b:ad:a1:8b:31:6d root@node1.ehowstuff.local
The key's randomart image is:
+--[ RSA 2048]----+
| . ++ |
| o o o |
| o o o . |
| . o + .. |
| S . . |
| . .. .|
| o E oo.o |
| = ooo. |
| . o.o. |
+-----------------+
登入後複製

步驟三:

#用 ssh-copy-id 指令將公鑰複製或上傳到遠端主機,並將身分識別檔追加到節點2的 ~/.ssh/authorized_keys 中:

[root@node1 ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.0.10
root@192.168.0.10's password:
Now try logging into the machine, with "ssh '192.168.0.10'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
登入後複製

步驟四:

#驗證免密碼 SSH 登入節點2:

[root@node1 ~]# ssh root@192.168.0.10
Last login: Sun Dec 13 14:03:20 2015 from www.ehowstuff.local
登入後複製

總結一下,SSH是Linux系統中非常重要的遠端管理工具,它可以提供安全、高效的遠端存取方式。在使用SSH時,請注意加強安全措施,例如使用公鑰認證,並設定合理的設定參數。同時,我們也分享了一些實用的SSH技巧,例如使用代理、轉送連接埠等等,可以幫助我們更好地管理Linux伺服器。相信這些內容對於Linux維運人員會有所幫助。

以上是遠端管理Linux伺服器,從SSH入手的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:lxlinux.net
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!