linux ssh遠程連接控制 linux(centOS) 口令、密鑰連接


sshd服務提供兩種安全驗證的方法:

基於口令的安全驗證:經過驗證帳號與密碼即可登陸到遠程主機。

基於密鑰的安全驗證:需要在本地生成”密鑰對“后將公鑰傳送至服務端,進行公共密鑰的比較(相對安全)。

首先:無論通過哪一種安全驗證方法進行遠程控制都需要配置遠程主機sshd服務的文件:

[root@lhbza ~]#vim /etc/ssh/sshd_config

並且在遠程主機上啟動sshd服務並加入到開機啟動項:

[root@lhbza ~]# systemctl start sshd

[root@hbza ~]# systemctl enable sshd

sshd服務的配置文件解析:

 

參數

作用

#Port 22

默認的sshd服務端口。

#ListenAddress 0.0.0.0

設定sshd服務端監聽的IP地址。

#Protocol 2

SSH協議的版本號。

#HostKey /etc/ssh/ssh_host_key

SSH協議版本為1時,私鑰存放的位置。

HostKey /etc/ssh/ssh_host_rsa_key

SSH協議版本為2時,RSA私鑰存放的位置。

#HostKey /etc/ssh/ssh_host_dsa_key

SSH協議版本為2時,DSA私鑰存放的位置。

#PermitRootLogin yes

設定是否允許root用戶直接登錄。

#StrictModes yes

當遠程用戶私鑰改變時則直接拒絕連接。

#MaxAuthTries 6

最大密碼嘗試次數

#MaxSessions 10

最大終端數

#PasswordAuthentication yes

是否允許密碼驗證

#PermitEmptyPasswords no

是否允許空密碼登陸(很不安全)

 

 

一、口令驗證:

ssh命令用於遠程管理Linux主機,格式為:“ssh [參數] 主機”。

參數

作用

-p

指定連接端口(默認為22)

-v

顯示連接過程的詳細信息

指定用戶登錄 :

 ssh 用戶@主機

[root@yyd~]# ssh sdy@192.168.38.100

 

 

 

root登錄:

[root@yyd ~]# ssh 192.168.38.100

 

 

 

二、密鑰驗證:

使用密碼驗證終歸會存在着被駭客暴力破解嗅探監聽的危險,其實也可以讓ssh服務基於密鑰進行安全驗證可無需密碼驗證)。

第1步:在本地主機中生成“密鑰對”並將公鑰傳送到遠程主機中:

1、在本地生成密鑰

[root@yyd ~]# ssh-keygen

 

 

 

2、將生成好的公鑰密鑰傳送至遠程主機:

[root@yyd ~]# ssh-copy-id 192.168.38.100

 

 

 

 

第2步:首先要在遠程主機中修改sshd服務的配置文件(修改后記得重啟服務):

1、編輯ssh服務程序主配置文件。

 

 

2、將允許密碼驗證的參數設置為no。

   <1>、進如vi編輯器 ’:/PasswordAuthentication'  回車,搜索文件內容:

 

<2>、搜索結果:

 

 <3>、設置配置

PasswordAuthentication no    運行設置為no

#PasswordAuthentication yes  注釋設置yes

 

 

 第3步:將允許密鑰驗證的參數設置為yes。

vim  esc 切換命令模式 同上步驟運行 PubkeyAuthentication yes

 

第4步:保證設定是否允許root用戶直接登錄 

  運行PermitRootLogin yes

 

第5步:保存並退出配置文件。

 :wq

第6步:重啟ssh服務程序后即可生效。

 

 

 

第7步:最后來嘗試無需密碼的遠程登錄吧:

[root@yyd ~]# ssh 192.168.38.100

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM