1. 程式人生 > >Linux SSH遠程管理

Linux SSH遠程管理

網絡

SSH (Secure Shell)是一種安全通道協議,主要用來實現字符界面遠程復制等功能。SSH協議對通信雙方的數據傳輸進行加密處理其中包括用戶登陸輸入口令。與早期的telnet(遠程登陸)丶rsh遠程執行程序rc遠程文件復制 等應用相比SSH協議提供了更加好的安全性
  1. SSH在CentOS6.5 系統中OpenSSH默認安裝
  2. SSH服務使用默認端口22
  3. sshd服務默認允許root用戶登陸(這樣做非常不安全可以先用普通用戶遠程登陸進入安全shell環境後更具實際使用su命令切換root用戶
  4. sshdf服務的用戶登陸限制,通常禁止root用戶或者密碼為空的用戶登陸,可以限制登陸驗證時間(默認為2分鐘)
    在Linux中wheel組就類似於一個管理員的組。

    通常在LUNIX下,即使我們有系統管理員root的權限,也不推薦用root用戶登錄。一般情況下用普通用戶
    登錄就可以了,在需要root權限執行一些操作時,再su登錄成為root用戶。但是,任何人只要知道了root
    的密碼,就都可以通過su命令來登錄為root用戶--這無疑為系統帶來了安全隱患。所以,將普通用戶加入
    到wheel組,被加入的這個普通用戶就成了管理員組內的用戶,但如果不對一些相關的配置文件進行配置,
    這個管理員組內的用戶與普通用戶也沒什麽區別--就像警察下班後,沒有帶槍、穿這便衣和普通人(用戶)
    一樣,雖然他的的確確是警察。

    登陸驗證
    1. 密碼驗證:以服務器中本地系統用戶的登陸名稱,密碼進行驗證。這種使用方式最為簡便,從客戶機角度來看正在鏈接的服務器有肯能被假冒,從服務器角度來看,當遭遇密碼窮舉(暴力破解)攻擊時防禦力比較弱。
    2. 密鑰對驗證:通常在客戶機中創建一對密鑰文件(公鑰,私鑰)然後將公鑰文件放到服務器中指定位置遠程登陸,系統叫使用公鑰,私鑰進行加密/解密驗證關聯驗證。大大增強了遠程管理安全性。
    公鑰和私鑰是成對生成的,這兩個密鑰互不相同,可以相互加密/解密。
    不能根據一個密鑰來推算出另一個密鑰
    公鑰對位公開,私鑰只有私鑰持有人才知道
    實驗目標:兩個Linux可以互相讀取,上傳,下載密碼驗證,密鑰對驗證
    root@c01 SSH服務的 root@c02 為客戶端
    vim /etc/ssh/sshd_config SSH配置文件
    Port 22 監聽端口為22
    AddressFamily any 監聽地址為任意網段
    PermitRootLogin yes 更為no 開啟不讓管理員進行登陸
    AllowUsers 添加用戶 白名單
    [root@c01 ~]# useradd zhangsan 創建張三
    [root@c01 ~]# useradd lisi 創建張三密碼
    passwd 設置張三李四密碼
    [root@c01 ~]# service sshd restart 重啟啟動服務
    [==root@c02 ~==]# ssh [email protected] 登陸Linux1 張三登陸
    [zhangsan@c01 ~]$ su root
    密碼:[root@c01 zhangsan] 這就從普通用戶切換root用戶上走了個迂回路線

    [root@c01 ~]# gpasswd -a zhangsan wheel 張三添加到whee組中只能張三可以切換到root用戶而李四不能

    [root@c01 ~]# vim /etc/pam.d/su

    auth 開啟whee 認證

    vim /etc/ssh/sshd_config 開啟密鑰驗證

    PubkeyAuthentication yes //啟動密碼驗證//

AuthorizedKeysFile .ssh/authorized_keys //指定公鑰數據指定文件//

[root@c02 ~]# passwd wangwu 在客戶機上創建王五並且綁定服務器上的張三,每次登陸的時候從王五切換到張三進行登陸
[root@c02 ~]# passwd wangwu

通過ssh-keygen工具為當前用戶創建密鑰對文件,ssh-keygen命令的-t 選項用於指定算法類型

[wangwu@c02 root]$ ssh-keygen -t rsa

Enter file in which to save the key (/home/wangwu/.ssh/id_rsa): 問存放位置這裏默認回車
Enter passphrase (empty for no passphrase): 密鑰密碼

Enter same passphrase again: 確認密碼

會生成一個+--[ RSA 2048]----+
技術分享圖片

[wangwu@c02 root]$ cd /home/wangwu/.ssh/
[wangwu@c02 .ssh]$ ls

id_rsa密鑰私鑰 id_rsa.pub 公鑰

[wangwu@c02 .ssh]$ ssh-copy-id -i id_rsa.pub [email protected] 指公鑰通過張三上傳

[email protected]‘s password: 張三登陸密碼
技術分享圖片

//在客戶機上設置ssh 代理功能 不需要設置密碼就能訪問//

技術分享圖片

Linux SSH遠程管理