摘要:系統(tǒng)服務器的登錄方式最常見的有兩種通過用戶密碼登錄或者采用密鑰對登錄。服務器打開密鑰登錄功能編輯文件,進行如下設置阻止用戶通過登錄以密鑰方式登錄下下當你完成全部設置,并以密鑰方式登錄成功后,再禁用密碼登錄最后,重啟服務
Linux 系統(tǒng)服務器的SSH登錄方式最常見的有兩種:通過用戶密碼登錄或者采用密鑰對登錄。其中使用用戶密碼方式登錄,容易有密碼被暴力破解的問題。為了安全,可以使用 1Password 密碼生成器 生成長度 30位,包含大小寫字母、數(shù)字和符號的用戶密碼,并且定期更換密碼,這樣就導致密碼總是記不住,每次登錄服務器都需要找一下密碼。所以我們在遠程 SSH 登錄時采用第二章方式:使用密鑰對登錄服務器。
密鑰形式登錄的原理是:利用密鑰生成器制作一對密鑰(公鑰+私鑰)。將公鑰添加到服務器的某個賬戶上,然后在客戶端利用私鑰即可完成認證并登錄。這樣一來,沒有私鑰,任何人都無法通過 SSH 暴力破解你的密碼來遠程登錄到系統(tǒng)。此外,如果將公鑰復制到其他賬戶甚至主機,利用私鑰也可以登錄。
密鑰形式登錄的過程:
~/.ssh/authorized_keys
文件中。Windows 下需要安裝 Git 后才能生成,不想安裝 Git 的可以直接使用 Xshell 工具生成。
輸入以下命令(替換為您的電子郵件地址)。
$ ssh-keygen -t ed25519 -C "your_email@example.com"
#如果您使用的是不支持 Ed25519 算法的舊系統(tǒng),請使用以下命令:
$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
這將創(chuàng)建以所提供的電子郵件地址為標簽的新 SSH 密鑰。
> Generating public/private ed25519 key pair.
提示您 “Enter a file in which to save the key
(輸入要保存密鑰的文件)”時,按 Enter 鍵。 這將接受默認文件位置。
> Enter a file in which to save the key (/home/you/.ssh/id_ed25519): [Press enter]
在提示時輸入安全密碼。
> Enter passphrase (empty for no passphrase): [Type a passphrase]
> Enter same passphrase again: [Type passphrase again]
查看并復制公鑰內容。
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tjom/BWDSU
GPl+nafzlHDTYW7hdI4yZ5ew18JH4JW9jbhUFrviQzM7xlELEVf4h9lFX5QVkbPppSwg0cda3
Pbv7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8V6RjsNAQwdsdMFvSlVK/7XA
t3FaoJoAsncM1Q9x5+3V0Ww68/eIFmb1zuUFljQJKprrX88XypNDvjYNby6vw/Pb0rwert/En
mZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r3+1nKatmIkjn2so1d01QraTlMqVSsbx
NrRFi9wrf+M7Q== schacon@mylaptop.local
如果您的私鑰沒有存儲在默認位置之一(如~/.ssh/id_rsa
),您需要告知 SSH 身份驗證代理其所在位置。 要將密鑰添加到 ssh-agent,請輸入ssh-add ~/path/to/my_key
。
authorized_keys
是linux 操作系統(tǒng)下,專門用來存放公鑰的地方,只要公鑰放到了服務器的正確位置,并且擁有正確的權限,你才可以通過你的私鑰,免密登錄 linux 服務器。
登錄服務器。
ssh ryanpd5i@13.229.188.59
將公鑰內容追加到 ~/.ssh/authorized_keys
文件中。
echo "公鑰內容" >> ~/.ssh/authorized_keys
更改文件權限。
chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh
編輯 /etc/ssh/sshd_config
文件,進行如下設置:
RSAAuthentication yes
PubkeyAuthentication yes
#bash
sudo sed -i /#PubkeyAuthentication yes/iRSAAuthentication yes /etc/ssh/sshd_config
sudo sed -i s/#PubkeyAuthentication yes/PubkeyAuthentication yes/g /etc/ssh/sshd_config
阻止 root 用戶通過 SSH 登錄:
PermitRootLogin yes
#bash
sudo sed -i s/#PermitRootLogin yes/PermitRootLogin yes/g /etc/ssh/sshd_config
Linux 下:
ssh ryanpd5i@13.229.188.59
Windows Xshell下:
當你完成全部設置,并以密鑰方式登錄成功后,再禁用密碼登錄:
PasswordAuthentication no
#bash
sudo sed -i s/PasswordAuthentication yes/PasswordAuthentication no/g /etc/ssh/sshd_config
最后,重啟 SSH 服務:
service sshd restart
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/125994.html
摘要:具體操作參見創(chuàng)建主機密鑰對。當該密鑰對綁定某臺實例時,如果沒有私鑰,您將無法登錄實例。用戶采用密鑰對生成器生成。導入的密鑰對僅支持加密方式。 密鑰對本篇目錄功能優(yōu)勢使用限制生成方式使用方法密鑰對(KeyPair)是一種常用于企業(yè)服務器批量管理的安全便捷的登錄方式。 密鑰對通過加密算法生成一對密鑰(公鑰和私鑰),默認采用RSA 4096位的加密方式。功能優(yōu)勢相對于密碼登錄,密鑰登錄有以下優(yōu)勢:...
閱讀 3514·2023-04-25 20:09
閱讀 3720·2022-06-28 19:00
閱讀 3035·2022-06-28 19:00
閱讀 3058·2022-06-28 19:00
閱讀 3131·2022-06-28 19:00
閱讀 2859·2022-06-28 19:00
閱讀 3014·2022-06-28 19:00
閱讀 2610·2022-06-28 19:00