場景:因為需要回收root管理員權限,禁止root用戶遠程登錄,辦公環境只允許普通用戶遠程登錄,且不允許使用密碼登錄。
一、生成與配置ssh-key
?1.使用root管理員權限登錄到目標系統。
?2.創建一個新的普通用戶,和設置密碼用于遠程登錄和執行sudo提權。
useradd username #替換密碼passwd和用戶名username echo "passwd" |passwd username --stdin
?3.授予新用戶sudo權限,以便執行特權操作。
查詢/etc/sudoers文件查看系統有哪些sudo權限組。
我這里的為wheel組;把新用戶加入這個組
?usermod -aG wheel username
4.禁用root用戶的遠程登錄,編輯SSH服務器配置文件,通常位于/etc/ssh/sshd_config
?
sed -i 's/PermitRootLogin yes/PermitRootLogin no/g' /etc/ssh/sshd_config
?5.禁用密碼登錄,只允許使用密鑰進行身份驗證。
sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config
?6.重新加載SSH服務器配置,使更改生效。
systemctl restart sshd
?7.使用puttygen生成RSA密鑰對。
?
?8.把公鑰上傳Linux服務器,把公鑰內容追加到/home/username/.ssh/authorized_keys
替換username
mkdir -p /home/username/.ssh cat my.pub >> /home/username/.ssh/authorized_keys chmod 600 /home/username/.ssh/authorized_keys chown -R username:username /home/username/.ssh/authorized_keys
二、putty使用SSH私鑰登錄服務器
?三、使用CRTsecure登錄服務器
?
四、使用Xshell登錄服務器
Xshell不能直接使用生成的key,需要轉換格式: