Linux系統的ssh與sshd服務
當主機中開啟openssh服務,那麼就對外開放了遠端連線的介面
ssh為openssh服務的客戶端,sshd為openssh服務的服務端
遠端管理工具ssh具有資料加密傳輸、網路開銷小以及應用平臺範圍廣的特點,是遠端管理中最常見的控制工具
ssh? 遠端主機使用者@遠端主機ip,連線陌生主機時需要建立認證關係,同時需要訪問密碼
當前主機第一次連線陌生主機時會自動建立.ssh/know_hosts,這個文中記錄的是連線過的主機資訊
輸入yes進入 ,然後輸入遠端主機的密碼即可
exit表示退出當前連線
ssh 遠端主機使用者@遠端主機ip?-X ?呼叫遠端主機圖形工具
給ssh服務新增新的認證方式 KEY認證
生成公鑰私鑰: ssh-keygen ? ?##生成金鑰的命令
id_rsa ##私鑰,就是鑰匙
id_rsa.pub ##公鑰,就是鎖
新增key認證方式
#在服務端?? ssh-copy-id ? -i /root/.ssh/id_rsa.pub [email protected]
ssh-copy-id ? ?##加密命令
-i ? ? ? ? ? ? ? ##指定金鑰
/root/.ssh/id_rsa.pub ?##金鑰
root ? ? ? ##加密使用者
172.25.254.200 ? ?##被加密主機ip
分發金鑰給客戶端主機
scp /root/.ssh/id_rsa?
在客戶端測試
ssh [email protected] #連線不需要密碼
#在服務端
rm -fr /root/.ssh/authorized_keys ?##當此檔案被刪除,客戶端解密檔案失效
需要重新輸入密碼連線
#在服務端
cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys ?##從新生成鎖檔案,解密檔案功能恢復
在客戶端直接實現遠端連線
1.openssh-server配置檔案? vim /etc/ssh/sshd_config
78 PasswordAuthentication no|yes ?##開啟或關閉ssh的預設認證方式
48 PermitRootLogin no|yes ? ?##開啟或關閉root使用者的登陸許可權
79 AllowUsers westos ? ? ?##使用者白名單,當前設定是隻允許westos登陸
80 DenyUsers linux ? ? ?##使用者黑名單,當前設定是隻不允許linux登陸
2.控制ssh客戶端訪問
vim /etc/hosts.deny
sshd:ALL ##拒絕所有人鏈接sshd服務
效果如下:
vim /etc/hosts.allow
設定允許連線的主機