CentOS 7 開啟SSH遠程登錄


一. 修改SSH配置文件

  1. 因為Linux安裝的時候會默認安裝openssh,所以基本不需要再次安裝。

    可以使用命令檢查是否已經安裝: yum list installed | grep openssh-server 

  2. 用文本編輯器打開配置文件:/etc/ssh/sshd_config  修改以下項:

// 文本編輯器打開配置文件
nano /etc/ssh/sshd_config // 取消以下配置的注釋 // 監聽端口號,為了隱蔽性可以修改,但是需要同步修改防火牆
Port 22
// 監聽地址,全部監聽
ListenAddress 0.0.0.0 
// 使用SSH v2版本
Protocol 2
// 禁用DNS反向解析
UseDNS no

  3. 需要重啟sshd服務: systemctl restart sshd 

  4. 檢查sshd服務是否啟動: systemctl status sshd 

  5. 檢查設置的22端口是否已經被監聽(前提是安裝了net-tools套件): netstat -an | grep 22 

  6. 現在已經可以使用密碼遠程登陸Linux服務器了,如果有防火牆一定要開啟防火牆,否則訪問會被攔截。

  7. 考慮到SSH是要隨着系統啟動的重要工具,所以建議加入開啟自啟中。不過安裝系統的時候一般Linux會默認加入開機自啟。

// 檢查是否已經在自啟清單
systemctl list-unit-files | grep sshd
// 如果“sshd.service”已經是“enabled”就不需要執行下面的命令
// 加入自啟
systemctl enable sshd.service

 

 

二. 使用Linux創建密鑰並且限制登陸方式

  1. 進入需要登陸的用戶ssh目錄: cd /root/.ssh 

    如果沒有這個目錄,需要先進行登陸才會生成: ssh localhost 

  2. 在客戶端生成SSH密鑰對,這個不需要說明,流程很簡單。

  3. 上傳公鑰id_rsa.pub到Linux服務器端的.ssh文件夾中。

  4. 檢查服務器端的.ssh文件夾中是否有authorized_keys文件,如果沒有,使用如下方式創建。

// 創建文件
touch authorized_keys // 賦予權限
chmod 600 /root/.ssh/authorized_keys

  5. 將上傳的公鑰追加到公鑰數據中:

     cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys 

  6. 再次回到服務器端SSH配置文件,進行配置

// 打開配置文件
nano /etc/ssh/sshd_config // 修改以下配置 // 啟用密碼驗證
PasswordAuthentication yes // 啟用密鑰對驗證(配置了密鑰會優先使用密鑰)
PubkeyAuthentication yes // 指定公鑰庫文件
AuthorizedKeysFile      .ssh/authorized_keys // 同時為了保證登陸安全,需要做以下配置 // 登錄驗證時間為2分鍾
LoginGraceTime 2m // 最大重試次數為6次
MaxAuthTries 6
// 禁止空密碼登錄
PermitEmptyPasswords no

  7. 重啟sshd服務: systemctl restart sshd 


免責聲明!

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



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