CentOS8 配置SSH使用密鑰登錄並禁止密碼登錄


CentOS8 配置SSH使用密鑰登錄並禁止密碼登錄

概念

SSH 為 Secure Shell 的縮寫,SSH 為建立在應用層基礎上的安全協議。SSH 是較可靠,專為遠程登錄會話和其他網絡服務提供安全性的協議。

SSH提供兩個級別的認證:

  • 基於口令的認證
  • 基於密鑰的認證

基本使用:

# p 端口號,user:用戶名,host:主機地址
ssh -p port user@host
ssh -p 1022 wzs@192.168.1.1

配置

這邊主要是使用基於密鑰的認證方式。
步驟方法:

  • 首先在服務器生成密鑰對
  • 服務器安裝公鑰
  • 配置ssh配置
  • 將服務器私鑰下載到客戶端進行導入
  • 登錄完成
  1. 服務器端生成密鑰對
[root@centos84 .ssh]# ssh-keygen  # 創建密鑰對
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):  # 回車
Enter passphrase (empty for no passphrase): # 是否設置私鑰密碼,可以留空直接回車或者自行設置
Enter same passphrase again:  # 確認輸入私鑰密碼,同上
Your identification has been saved in /root/.ssh/id_rsa. # 私鑰路徑
Your public key has been saved in /root/.ssh/id_rsa.pub. # 公鑰路徑
The key fingerprint is: # 下面是密鑰指紋
SHA256:HQMUGGtCReiEpejPSRc8XIeXEq4lB9G0hMI4dlsT+/Q root@centos84
The key's randomart image is:
+---[RSA 3072]----+
|  oooBXO*o.      |
| =.*=+B=o+       |
|o +o=B+*o o      |
|.  ..oX .. o     |
| . . o .SE.      |
|  + o            |
|   +             |
|                 |
|                 |
+----[SHA256]-----+
[root@centos84 .ssh]# 
到此會在當前用戶的家目錄下創建一個.ssh的隱藏文件夾,密鑰存放在里面。

2.服務器安裝公鑰

# 認證文件配置中指定讀取.ssh/authorized_keys,因此我們需要將公鑰寫入到authorized_keys文件中
cat id_rsa.pub >> authorized_keys

3.檢查ssh配置文件

#  /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
PermitRootLogin yes

4.使用工具將服務器的.id_rsa文件下載到客戶端電腦,進行putty導入
下載回來的id_rsa是沒有后綴的文件,但是使用putty需要.ppk格式,這里可以使用putty的密鑰生成器進行轉換。

轉換:

將文件保存好。

導入.ppk格式的私鑰文件。


后面只需要輸入用戶不需要輸入密碼即可登錄。

5.禁用密碼登錄

# /etc/ssh/sshd_config文件修改配置,然后保存
PasswordAuthentication no
systemctl restart sshd

使用密碼提示登錄失敗

OK!


免責聲明!

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



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