網站首頁 編程語言 正文
這里服務器使用 Ubuntu 20.04.6 LTS aarch64,這篇文章就不說使用工具連接了,工具直接添加就好了,這里說下終端命令操作
SSH 命令使用密碼連接
使用以下命令在終端進行密碼連接
ssh username@hostname
如果是第一次連接 SSH 客戶端會提示你是否確認繼續連接。
這個提示表明服務器的主機密鑰(fingerprint)在你的計算機上沒有其他已知的名稱(即之前沒有連接過同一個主機名)。
因此,SSH 客戶端不確定你是否已經信任這個服務器。
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])?
yes: 表示你確認繼續連接。如果你信任這個服務器,且你確定服務器的主機密鑰是正確的,可以輸入 “yes” 并繼續連接。
no: 表示你不希望繼續連接。如果你不信任或不確定服務器的主機密鑰,可以輸入 “no” 來中斷連接嘗試。
fingerprint: 如果你之前連接過同一個主機名的服務器,這里會顯示服務器的指紋(fingerprint)。你可以檢查這個指紋是否與你預期的一致,以確認服務器的真實性。
如果輸入 yes,后面會讓輸入密碼進行連接,密碼正確即可連接成功
SSH 命令使用私鑰連接
這里記錄本地生成密鑰對,然后將公鑰放到服務器,使用本地私鑰連接服務器
本地生成密鑰對
使用以下命令生成密鑰對,過程會讓輸入生成的路徑,私鑰的密碼短語,再次輸入私鑰的密碼短語,我這里都默認,密碼短語為空
ssh-keygen -t rsa
-t keytype:指定要生成的密鑰類型,例如 rsa、dsa、ecdsa 或 ed25519。
-b bits:指定生成的密鑰的位數。默認情況下,RSA 密鑰為 2048 位。
-C comment:添加一個注釋,通常用于標識密鑰的用途或所有者。
-f output_file:指定生成的密鑰文件的文件名。
-N passphrase:設置私鑰的密碼短語(口令)。
-P old_passphrase -N new_passphrase:更改私鑰的密碼短語。
-q:靜默模式,減少輸出信息。
-y:顯示公鑰的內容而不生成密鑰對。
-E hash:指定用于生成指紋的哈希算法,如 sha256、md5 等。
-t ecdsa -b bits:用于生成 ECDSA 密鑰時,指定橢圓曲線的位數。
添加公鑰到服務器
把生成的公鑰的內容放在服務器的/root/.ssh/authorized_keys
文件中
使用私鑰連接服務器
使用下面命令使用私鑰連接服務器,如果設置了私鑰的密碼短語,系統會要求你輸入密碼短語以解鎖私鑰
ssh -i /path/to/private_key username@hostname
修改登錄密碼
修改當前用戶的登錄密碼
修改當前登錄用戶的密碼,只需在終端中輸入以下命令,然后按照提示輸入新密碼兩次即可
passwd
修改其他用戶的登錄密碼
修改其他用戶的密碼,需要使用 passwd 命令并指定用戶名,修改其他用戶的密碼通常需要管理員權限
sudo passwd username
修改 SSH 連接配置
配置文件路徑為/etc/ssh/sshd_config
,下面是一些常用修改的配置
Port:指定 SSH 服務器監聽的端口號。默認是 22,但為了安全性,可以考慮修改為其他端口
PermitRootLogin:控制是否允許 root 用戶通過 SSH 登錄。建議設置為 no,使用普通用戶登錄后再切換到 root 用戶
PasswordAuthentication:控制是否允許使用密碼進行身份驗證。建議設置為 no,使用密鑰進行身份驗證更安全
PubkeyAuthentication:指定是否允許使用公鑰進行身份驗證。應設置為 yes,以啟用公鑰身份驗證
AuthorizedKeysFile:指定公鑰文件的位置。默認是 ~/.ssh/authorized_keys
MaxAuthTries:設置嘗試驗證的最大次數。默認是 6,可以根據需要進行調整
ClientAliveInterval / ClientAliveCountMax:設置服務器檢測客戶端活動的時間間隔和最大次數
LoginGraceTime:設置登錄超時時間,超過這個時間還未進行登錄則斷開連接
TCPKeepAlive:是否啟用 TCP keep-alive,可以在網絡不穩定時維持連接
原文鏈接:https://blog.csdn.net/sywdebug/article/details/132764259
- 上一篇:沒有了
- 下一篇:沒有了
相關推薦
- 2022-09-24 C++實現并優化異常系統_C 語言
- 2022-06-10 nginx.conf配置文件結構小結_nginx
- 2023-11-15 Latex文獻報錯 Something‘s wrong--perhaps a missing \it
- 2022-04-17 axios token失效刷新token怎么重新請求_Token 刷新并發處理解決方案
- 2022-07-21 Python中直接賦值、淺拷貝和深拷貝的區別
- 2022-06-17 如何使用Python?VTK繪制線條_python
- 2023-04-06 C語言中雙鏈表的基本操作_C 語言
- 2022-06-28 ASP.NET一次性對GridView批量更新多行數據_實用技巧
- 欄目分類
-
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支