基本介紹
ssh:安全的遠程登錄shell
要有客戶端與服務器端,客戶端主動連接服務端,那麼服務端地址是不能變的。windows
socket:套接字 標識應用惟一的地址centos
tcp/udp port端口號安全
cat /etc/service查看全部的端口號服務器
備註:經過IP找到了這臺機器,經過端口號找到相對應的應用程序ssh
注意:IP和端口號要固定socket
centos默認opensshtcp
格式
ssh[user@]host[COMMAND]工具
ssh root@192.168.10.6‘IP a’網站
#查看這個主機的IP地址,查詢完自動退出
選項
-p port:遠程服務器監聽端口
-b:指定連接的源IP
兩塊網卡的時候,指定但願的網卡連接對方
-v:調試模式
看詳細的過程
-C:壓縮方式
-X:支持x11轉發
-Y:支持信任x11轉發
ForwardX11Trusted yes
-t:強制僞tty分配
ssh -t remoteservre1 ssh remoteservre2
配置文件
服務器端配置文件
/etc/ssh/sshd_config
客戶端配置文件
/etc/ssh/ssh_config
openssh軟件組成
相關包:
openssh
openssh-clients
openssh-server
工具:
clients:ssh,scp,sftp,slogin
windows客戶端:
xshell,putty,securecrt,sshsecureshellclient
Server:sshd
ssh驗證兩種方式
一、基於password
二、基於key
當用戶遠程鏈接ssh服務器時,會複製ssh服務器/etc/ssh/ssh_host*key.pub
(CentOS7默認是ssh_host_ecdsa_key.pub)文件中的公鑰到客戶機的
~./ssh/know_hosts中。下次鏈接時,會自動匹配相應私鑰,不能匹配,將拒
絕鏈接
第一種是說帳號密碼驗證,咱們第一次用ssh連接一臺主機的時候,會出現詢問如圖
試問這是什麼意思?
這是詢問你連接的機子是否是真實機器呢,不是假冒的機器,確認下,沒問題鍵入 y,當咱們鍵入y,它會記錄你的信息,如IP 公鑰等等。
第二次連接的時候就不會出現提示,爲何?
由於當咱們第一次連接時鍵入」y「後,記錄了你的信息,當咱們再次連接時,它會拿你記錄的信息和你當前的信息作比較,看是否仍是原來的那臺電腦,若是不是,它會認爲你這臺機器是一個假冒的,拒接連接,解決了釣魚網站的威脅。
試想
假若有三臺主機分別是192.168.43.六、192.168.43.七、192.168.43.17,6這臺主機正常連接7主機,當6斷開與7的連接後,咱們用17來冒充7與6創建連接。有沒有效果?
說明:咱們是把192.168.43.17主機IP改爲了192.168.43.7來與192.168.43.6創建連接。
會出現下圖
有人會說改物理地址,那也是會出現上圖。咱們來了解下它的底層原理就知道了。
底層原理:在第一次連接的時候,會記錄改主機的公鑰信息,放在當前用戶的家目錄ssh目錄裏,當你連接的時候,用私鑰簽名,讓公鑰解密。
因此:只要拿到對方的私鑰就可假冒這臺主機。
全部說私鑰安全很重要!
基於用戶名口令驗證方式工做原理
當用戶發送ssh請求到ssh服務端時,服務端迴應客戶端,並把本身的公鑰發給客戶端,客戶端接收到服務端的公鑰後,並用服務端的公鑰對本身的密碼加密發給服務端,服務端接收後,用本身的私鑰進行解密,獲得的密碼,去驗證對不對,正確就能正常登錄。如圖
精彩內容請看下一篇