雲端計算運維學習---ssh遠端管理服務

路~~~發表於2020-10-21

SSH服務介紹
SSH是Secure Shell Protocol的簡寫;在進行資料傳輸之前,SSH先對聯機資料包通過加密技術進行加密處理,加密之後再進行資料傳輸。確保了傳遞的資料安全。
在預設狀態下,SSH服務主要提供了兩個服務功能:

  • 一是提供類似telnet遠端聯機伺服器的服務
  • 另一個是類似FTP服務的sftp-server,藉助SSH協議來傳輸資料的,提供更加安全的SFTP服務

SSH服務和TELNET服務的區別

  • SSH服務是一個安全的服務,預設使用22埠;在資料傳輸前,先對資料進行加密再傳輸。可通過wireshark抓包軟體獲取客戶端和遠端主機之間的資料傳輸過程:
    在這裡插入圖片描述
  • TELNET服務是一個不安全的遠端連線服務,預設使用23埠;客戶端和遠端主機之間的資料傳輸都是明文的
    在這裡插入圖片描述

TELNET服務的測試方法
若是有朋友想親自測試一下,telnet服務是否真的是明文傳輸資料,可根據下面的步驟進行測試

  1. 先在遠端主機上安裝telnet服務,只有遠端主機有telnet服務,本地客戶端才能連線上
    在這裡插入圖片描述
  2. 啟動telnet服務,檢視23埠號,看telnet服務是否真啟動成功
    在這裡插入圖片描述
  3. 新開啟一個shell,連線剛配置好的遠端主機
    在這裡插入圖片描述
    最後通過抓包軟體上的資料包,就可以看到上面我抓取到的資訊了。

TIPS:什麼是shell
1.每連線登入到一個Linux系統中,就是一個shell,
2.登入到一個Linux系統後,複製這個會話,每一個會話就是一個shell視窗
3.一個shell會話中進行使用者的切換,每切換一次使用者就是進入一個新的shell
shell特點:
1.一般命令列臨時配置的資訊,只會影響當前的shell
2.若是想不重啟就讓臨時配置的資訊生效,需要切換shell即可, eg:修改主機名稱
在這裡插入圖片描述
在這裡插入圖片描述

SSH服務的連線工作原理

  • 基於密碼的方式進行遠端連線:連線比較麻煩,也不太安全
    在這裡插入圖片描述
  • 基於金鑰的方式進行遠端連線:連線方便,也比較安全
    在這裡插入圖片描述
    基於金鑰進行遠端連線的具體步驟:(backup主機作為要遠端連線的主機)
    第一步:客戶端建立金鑰對
    在這裡插入圖片描述在這裡插入圖片描述
    第二步:向遠端主機傳送公鑰資訊
    在這裡插入圖片描述
    第三步:驗證是否可以不用密碼直接登入遠端主機
    在這裡插入圖片描述

公鑰和私鑰的作用:
1.私用私鑰和公鑰對資料資訊進行加密處理
2.利用公鑰和私鑰進行使用者身份驗證
基於密碼的方式進行遠端連線:公鑰和私鑰只能完成資料加密過程
基於金鑰的方式進行遠端連線:公鑰和私鑰可以完成身份認證工作

無互動遠端連線分發公鑰
上面使用金鑰的方式進行遠端連線,有三個問題:
1.向遠端主機分發公鑰時需要有確認yes/no
2.向遠端主機分發公鑰時需要輸入密碼資訊
3.服務埠若是改變了,如何分發公鑰

下面介紹一下如何免互動直接連線遠端主機:
第一步:下載一個可以提供免互動ssh密碼的服務
在這裡插入圖片描述
第二步:執行免互動方式分發公鑰命令
在這裡插入圖片描述
如何使用密碼檔案連線遠端主機
在這裡插入圖片描述

如何不要輸入連線yes/no的確認資訊
在這裡插入圖片描述
遠端主機埠發生變化,如何進行分發公鑰
在這裡插入圖片描述
tips:

  • 一些"sshd_config"配置檔案中常用的引數:
    在這裡插入圖片描述
  • SSH遠端服務防防入侵的案例
    在這裡插入圖片描述
  • sftp(SSH File Transfer Protocol,SSH檔案傳輸協議,也即安全檔案傳送協議):sftp服務是屬於"openssh-clients"安裝包的,ftp是屬於"ftp"安裝包的,不過sftp和ftp有著幾乎一樣的語法和功能。
    在這裡插入圖片描述

相關文章