1. 程式人生 > 其它 >ssh遠端服務

ssh遠端服務

技術標籤:shellLinuxlinuxsshcentos安全經驗分享

ssh遠端服務

簡介

SSH (安全外殼協議)為 Secure Shell 的縮寫,SSH 為建立在應用層基礎上的安全協議。SSH 是較可靠,專為遠端登入會話和其他網路服務提供安全性的協議。利用 SSH 協議可以有效防止遠端管理過程中的資訊洩露問題。SSH最初是UNIX系統上的一個程式,後來又迅速擴充套件到其他操作平臺。SSH在正確使用時可彌補網路中的漏洞。SSH客戶端適用於多種平臺。幾乎所有UNIX平臺—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平臺,都可執行SSH。

SSH 主要由三部分組成:

  • 傳輸層協議 [SSH-TRANS] 提供了伺服器認證,保密性及完整性。此外它有時還提供壓縮功能。 SSH-TRANS
    通常執行在TCP/IP連線上,也可能用於其它可靠資料流上。 SSH-TRANS
    提供了強力的加密技術、密碼主機認證及完整性保護。該協議中的認證基於主機,並且該協議不執行使用者認證。更高層的使用者認證協議可以設計為在此協議之上。

  • 使用者認證協議 [SSH-USERAUTH] 用於向伺服器提供客戶端使用者鑑別功能。它執行在傳輸層協議 SSH-TRANS
    上面。當SSH-USERAUTH 開始後,它從低層協議那裡接收會話識別符號(從第一次金鑰交換中的交換雜湊H

    )。會話識別符號唯一標識此會話並且適用於標記以證明私鑰的所有權。 SSH-USERAUTH 也需要知道低層協議是否提供保密性保護。

  • 連線協議 [SSH-CONNECT]
    將多個加密隧道分成邏輯通道。它執行在使用者認證協議上。它提供了互動式登入話路、遠端命令執行、轉發 TCP/IP 連線和轉發 X11
    連線。

    實驗過程

                                           SSH
    

伺服器ip:192.168.1.10
客戶端ip:192.168.1.20

伺服器配置:

[[email protected] ~]# vim /etc/ssh/sshd_config
在這裡插入圖片描述
在這裡插入圖片描述


在這裡插入圖片描述
在這裡插入圖片描述

最後一行加入(允許登入的使用者):AllowUsers xixi haha
在這裡插入圖片描述

重啟: [[email protected] ~]# systemctl restart sshd

  • 伺服器建立xixi與haha使用者,設定密碼
useradd xixi
useradd haha
passwd xixi
passwd haha

客戶端驗證:
在這裡插入圖片描述

驗證之後記得退出:
在這裡插入圖片描述

限定使用者登入的IP

伺服器配置:
vim /etc/ssh/sshd_config
在這裡插入圖片描述

重啟:systemctl restart sshd
客戶端更改IP進行驗證

scp上傳下載

  • 上傳

    scp 本地目錄/檔名 使用者名稱@主機地址:/遠端目錄
    客戶端建立檔案111.txt,伺服器建立測試資料夾t325,賦予777許可權方便測試
    在這裡插入圖片描述

  • 下載

    scp 使用者名稱@主機地址:/遠端目錄 /本地目錄
    伺服器建立一個目錄/mulu,賦予許可權,建立測試檔案12.txt,客戶端下載
    在這裡插入圖片描述

sftp服務

格式:sftp 使用者名稱@主機地址
在這裡插入圖片描述

注:sshd使用非預設埠號時:登陸時必須通過-p選擇指定埠號 ssh -p 埠號 使用者名稱@主機地址

金鑰對驗證

客戶端建立使用者,然後在本地建立金鑰對

useradd user1 
passwd user1

切換到使用者user1,然後:ssh-keygen -t rsa,一直回車即可建立金鑰對
cd /home/user1/.ssh/
ls 檢視
id_rsa是私鑰 id_rsa.pub是公鑰
在這裡插入圖片描述

將生成的公鑰傳給服務端
ssh-copy-id -i ./id_rsa [email protected]
在這裡插入圖片描述

伺服器配置:
在這裡插入圖片描述

編輯主配置檔案
在這裡插入圖片描述

客戶端直接遠端:

在這裡插入圖片描述