五、SSH遠程管理服務
(一)遠程管理服務知識介紹
1) SSH遠程登錄服務介紹說明
SSH是Secure Shell Protocol的簡寫,由 IETF 網路作業小組(Network Working Group)制定;
在進行資料傳輸之前,SSH先對聯機資料包通過加密技術進行加密處理,加密后在進行資料傳輸,
確保了傳遞的資料安全,
SSH是專為遠程登錄會話和其他網路服務提供的安全性協議,
利用SSH協議可以有效的防止遠程管理程序中的資訊泄露問題,在當前的生產環境運維作業中,
絕大多數企業普遍采用SSH協議服務來代替傳統的不安全的遠程聯機服務軟體,如telnet(23埠,非加密的)等,
2) SSH遠程登錄服務功能作用
a 一是提供類似telnet遠程聯機服務器的服務,即上面提到的SSH服務;
b 另一個是類似FTP服務的sftp-server,借助SSH協議來傳輸資料的,提供更安全的SFTP服務(vsftp,proftp),
3) SSH遠程登錄服務排錯思路
01. 檢查鏈路是否通暢---ping(icmp)/tracert/traceroute
02. 檢查鏈路是否阻斷---將防火墻功能關閉
03. 檢查服務是否開啟---ss/netstat -lntup(服務端檢查) /telnet/nmap/nc(客戶端檢查)
(二)Telnet遠程登錄服務功能作用
1、SSH遠程登錄服務特點說明
01、SSH服務埠資訊為22
02、SSH服務采用密文方式傳輸資料
03、SSH服務默認支持root用戶進行遠程登錄
2、Telnet遠程登錄服務功能作用
01、telnet服務埠資訊為23
02、telnet服務采用明文方式傳輸資料
03、telnet服務默認不支持root用戶進行遠程登錄
(三)遠程管理服務概念詳解
1)SSH遠程管理服務加密技術
ssh連接登錄程序
①. ssh客戶端發出連接請求
>/root/.ssh/known_hosts
②. ssh服務端會發出確認資訊,詢問客戶端你是否真的要連接我
③. ssh客戶端輸入完成yes,會等到一個公鑰資訊
cat /root/.ssh/known_hosts
④. ssh服務端將公鑰資訊發送給ssh客戶端
⑤. ssh客戶端利用密碼進行登錄
加密技術分為v1和v2兩個版本
sshv1版本不會經常更換鎖頭和鑰匙,因此會有安全隱患
sshv2版本會經常更換鎖頭和鑰匙,因此提高了遠程連接安全性
2)SSH遠程管理服務認證型別
基于密鑰方式實作遠程登錄
①. ssh管理服務器上創建密鑰對資訊(公鑰 私鑰)
②. ssh管理服務器上將公鑰發送給被管理服務器
③. ssh管理服務器向被管理服務器發送連接請求
④. ssh被管理服務器向管理服務器發送公鑰質詢
⑤. ssh管理服務器處理公鑰質詢請求,將公鑰質詢結果發送給被管理主機
⑥. ssh被管理服務器接收公鑰質詢回應資訊,從而確認認證成功
⑦. ssh管理服務端可以和被管理服務端建立基于密鑰連接登錄
(四)基于密鑰登錄方式部署流程
第一個里程:在管理主機上創建密鑰對資訊
ssh-keygen -t dsa <-- 創建密鑰對命令 -t dsa表示指定密鑰對加密型別
Generating public/private dsa key pair.
Enter file in which to save the key (/root/.ssh/id_dsa): <-- 確認私鑰檔案所保存的路徑
/root/.ssh/id_dsa already exists.
Overwrite (y/n)? y <-- 如果已經存在了密鑰對資訊,是否進行覆寫
Enter passphrase (empty for no passphrase): <-- 確認是否給私鑰設定密碼資訊(一般為空)
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_dsa.
Your public key has been saved in /root/.ssh/id_dsa.pub.
The key fingerprint is:
46:c8:21:b9:99:6e:0c:59:39:66:38:7a:97:29:51:76 root@m01
The key's randomart image is:
+--[ DSA 1024]----+
| o+oE |
| +.B+ o |
| . B Bo . |
|. = B . |
| . * S |
| + . |
| . |
| |
| |
+-----------------+
第二個里程:將管理主機上公鑰資訊發送給被管理主機
ssh-copy-id -i /root/.ssh/id_dsa.pub 172.16.1.31
[email protected]'s password:
Now try logging into the machine, with "ssh '172.16.1.31'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
第三個里程:進行遠程管理測驗(基于密鑰的方式進行遠程管理)
ssh 172.16.1.31 <-- 可以不用輸入密碼資訊,就能登陸成功
ssh 172.16.1.31 uptime <-- 可以不用登陸到遠程主機,就可以直接查看遠程主機資訊
(五)SSH服務端組態檔資訊說明(/etc/ssh/sshd_config)
Port 52113 <- 修改ssh服務埠號資訊
ListenAddress 0.0.0.0 <- 主要作用提升網路連接安全性
PS:監聽地址只能配置為服務器網卡上擁有的地址
PermitRootLogin no <- 是否允許root用戶遠程登錄
PermitEmptyPasswords no <- 是否允許空密碼
UseDNS no <- 是否進行DNS反向決議(提升ssh遠程連接效率)
GSSAPIAuthentication no <- 是否進行遠程GSSAPI認證(提升ssh遠程連接效率)
(六)sftp常用操作命令總結
bye Quit sftp <-- 表示退出sftp傳輸模式
cd path Change remote directory to 'path' <-- 改變遠程目錄資訊
pwd Display remote working directory <-- 顯示遠程主機當前目錄資訊
lcd path Change local directory to 'path' <-- 改變本地目錄路徑資訊
lpwd Print local working directory <-- 輸出本地目錄路徑資訊
get [-P] remote-path [local-path]
Download file <-- 下載檔案命令
put [-P] local-path [remote-path] <-- 上傳檔案命令
Upload file
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/89812.html
標籤:Linux
