配置和保護SSH

使用SSH訪問遠程命令行

描述Secure Shell

SSH(Secure Shell) 是一種網絡協議,用于在不安全的網絡上安全地進行系統管理和數據傳輸。它最初由 Tatu Yl?nen 于1995年設計,并成為保護網絡服務免受攻擊的標準。SSH提供了多種功能,包括遠程登錄、命令執行、文件傳輸和端口轉發。

Secure Shell示例

使用root用戶遠程登錄;

使用exit命令可以注銷遠程系統。

[root@hcss-ecs-huawei ~]# exit
logout
Connection to 1.94.13.218 closed.
[root@servera ~]#

?使用普通用戶遠程登錄;

識別遠程用戶

w命令可以顯示當前登錄系統的用戶列表。它還顯示遠程系統位置和用戶運行的命令。

?

嚴格的主機密鑰檢查

StrictHostKeyChecking參數在用戶特定的~/.ssh/config文件或系統范圍內的/etc/ssh/sshd_config文件中設置。或者通過指定ssh命令的-o StrictHostKeyChecking=選項來設置。

如果 StrictHostKeyChecking參數設置為yes,則ssh命令會在公鑰不匹配的情況下始終中斷SSH連接。

如果 StrictHostKeyChecking參數設置為no,則ssh命令將啟用連接并將目標主機的密鑰添加到~/.ssh/known_hosts文件。

SSH已知主機密鑰管理

有關已知遠程系統及其密鑰的信息存儲在以下任一位置:

  • 系統范圍的/etc/ssh/ssh_known_hosts文件;
  • 每個用戶的主目錄中的~/.ssh/known_hosts文件。
[root@servera ~]# cat ~/.ssh/known_hosts
1.94.13.218 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIVQneajIfzXxzxwfgHPFu+rixWH7ll/Oxl3N7UMyuan
1.94.13.218 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBLyCtDY9KkbQ/t5jwp63LyYHY9CptamUFV2pTlQQh2Geu7
HrMMQ7aDBv5mLCaHazxu15Ka3rBuykP77qy7po2ko=

每個已知主機密鑰條目包含一行,其中有三個字段:

  • 第一個字段是共享該公鑰的主機名和IP地址的列表;
  • 第二個字段是公鑰的加密算法;
  • 最后一個字段是公鑰本身。

主機密鑰問題故障排除

如果遠程系統的IP地址或公鑰發生更改,并且您嘗試再次通過SSH連接該系統,則SSH客戶端會檢測到~/.ssh/known_hosts文件中用于該系統的密鑰條目不再有效。系統會顯示一條警告消息,指出遠程主機表示已更改,您必須修改密鑰條目。

解決辦法:

如果是從Windows終端使用xshell或其他遠程工具連接Linux服務器,請按照以下路徑找到.ssh文件夾C:\Users\\.ssh,將known_hosts中的主機舊條目刪除。

如果是Linux客戶端登錄Linux服務器出現以上類似的情況,請使用ssh-keygen -R remotesystemname -f ~/.ssh/known_hosts進行操作。

配置基于SSH密鑰的身份驗證

SSH密鑰生成

使用ssh-keygen命令創建一個密鑰對。默認情況下,ssh-keygen命令將您的私鑰和公鑰保存在~/.ssh/id_rsa和~/.ssh/id_rsa.pub文件中。

使用ssh-keygen -t rsa -b 2048 命令在 Linux 中用于生成一個 2048 位的 RSA 密鑰對。

?

ssh-keygen:這是一個用于創建新的認證密鑰對的命令行工具。它是 OpenSSH 套件的一部分。

-t rsa:指定要生成的密鑰類型為 RSA(Rivest-Shamir-Adleman)。RSA 是一種常見的公鑰加密算法,廣泛用于 SSH 和其他安全協議。

-b 2048:指定密鑰長度為 2048 位。密鑰長度越長,安全性越高,但計算復雜度也增加。2048 位是目前被認為安全且性能良好的常用長度。

可以選擇向ssh-keygen提供密語,用于加密私鑰。一旦設置了密語,則每次使用私鑰時都必須輸入密語。

?

ssh-keygen命令-f選項指定用于保存密鑰的文件。

共享公鑰

ssh-copy-id命令可將SSH密鑰對的公鑰復制到遠程系統上。可以使用ssh-copy-id命令指定特定的公鑰,或使用默認的~/.ssh/id_rsa.pub文件。

?

如果配置了密語來保護私鑰,SSH將在第一次使用時請求密語。但是,如果密鑰身份驗證成功,則不會要求您輸入帳戶的密碼。

SSH客戶端配置

SSH 客戶端配置文件位于 ~/.ssh/config。如果該文件不存在,可以創建它。

vim ~/.ssh/config

?在配置文件中,可以為不同的遠程服務器添加不同的配置項。以下是一個示例配置:

Host myserverHostName 192.168.72.10User rootPort 22IdentityFile ~/.ssh/id_rsaStrictHostKeyChecking yesUserKnownHostsFile ~/.ssh/known_hosts

Host:給遠程服務器起一個別名(例如 myserver),以后可以用這個別名來連接服務器。

HostName:遠程服務器的 IP 地址或域名。

User:用于連接的用戶名。

Port:SSH 服務監聽的端口,默認為 22。

IdentityFile:私鑰文件路徑。

StrictHostKeyChecking:啟用嚴格的主機密鑰檢查。

UserKnownHostsFile:指定已知主機文件的路徑。

自定義OpenSSH服務配置

禁止超級用戶進行登錄

在生產環境中,一般不會以root用戶身份進行遠程登錄,這樣會有很大的安全風險。

OpenSSH服務器使用/etc/ssh/sshd_config文件中的PermitRootLogin配置設置,以允許或禁止用戶以root身份登錄系統。

PermitRootLogin  yes

當PermitRootLogin參數設置為yes時(默認設置),用戶被允許以root用戶身份登錄系統。要防止這種情況,可將該值設置為no。

禁止將基于密碼的身份驗證用于SSH

為了提高 SSH 連接的安全性,可以禁用基于密碼的身份驗證,強制使用基于公鑰的身份驗證。這可以防止攻擊者通過暴力破解密碼來訪問你的服務器。

打開 /etc/ssh/sshd_config 文件進行編輯:

vim /etc/ssh/sshd_config

找到以下配置項,并確保它們的值如下:

PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no

確保 PubkeyAuthentication 是啟用的:

PubkeyAuthentication yes

保存并關閉文件后,重啟 SSH 服務使配置生效:

 systemctl restart sshd

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/46439.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/46439.shtml
英文地址,請注明出處:http://en.pswp.cn/web/46439.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

開始構建我們自己的大語言模型:數據處理部分

關注本專欄(NLP簡論:手搓大語言模型實踐) 繼續學習從頭編寫、訓練自己的大語言模型。 接上集,本章我們將深入說一下大語言模型數據處理部分的細節,并直接提供本部分的完整代碼。 【配套資源】 暫時的詞匯表&#xff1…

GNN論文粗讀

論文 文章目錄 論文基于異構圖的GNN論文GNN領域論文環境領域GNN論文 隨緣更新 基于異構圖的GNN論文 Distance Information Improves Heterogeneous Graph Neural Networks:DOI: 10.1109/TKDE.2023.3300879 轉導和歸納任務,創新點:異構距離編碼HDE提高GN…

關于Vue中涉及到大量數據的級聯菜單樹狀結構的數據多選勾選頁面卡頓卡死問題

項目場景:如題 提示:有個需求,級聯菜單樹狀結構的數據高達3萬多條,多選,只需要最后一層級value 原因分析:頁面一下子渲染大量數據會導致瀏覽器內存暴漲100%,導致頁面卡死,而且eleme…

常見Linux目錄和配置文件

目錄 /boot/:開機配置文件,也是存放核心vmlinuz的地方 /bin/:系統可執行文件目錄,CentOS7后合并到/usr/bin中,并鏈接過去 /sbin/:系統管理員常用指令存放目錄,例如開關機、磁盤分區等指令&am…

基于SpringBoot+Vue的廣場舞團系統(帶1w+文檔)

基于SpringBootVue的廣場舞團系統(帶1w文檔) 基于SpringBootVue的廣場舞團系統(帶1w文檔) 廣場舞團,為用戶隨時隨地查看廣場舞團信息提供了便捷的方法,更重要的是大大的簡化了管理員管理廣場舞團信息的方式方法,更提供了其他想要了解廣場舞團…

基于Trace的類型特化動態語言JIT編譯

文章目錄 Explain一、簡介二、一個跟蹤運行的示例三、跟蹤樹3.1 Traces類型特化(Type specialization) 3.2 Trace Trees3.3 黑名單(Blacklisting) 四、嵌套跟蹤樹4.1 Nesting Algorithm4.2 Blacklisting with Nesting 五、跟蹤樹優…

Java NIO 面試題及答案整理,最新面試題

Java NIO中的Buffer有哪些主要類型? Java NIO中的Buffer用于與NIO通道進行交互,作為基本的數據容器。主要類型包括: 1、ByteBuffer: 最常用的類型,用于存儲字節數據。 2、CharBuffer: 用于存儲字符數據。 3、DoubleBuffer、FloatBuffer、IntBuffer、LongBuffer、Short…

【Pytorch】一文向您詳細介紹 torch.randn_like()

🎉🔥【Pytorch】一文向您詳細介紹 torch.randn_like() 🔥🎉 下滑即可查看博客內容 🌈 歡迎蒞臨我的個人主頁 👈這里是我靜心耕耘深度學習領域、真誠分享知識與智慧的小天地!🎇 …

滑動窗口題目

題目描述&#xff1a; 計算兩個字符串str1和str2在給定的含有n個元素的字符串數組strs中出現的最短距離。 詳細解釋&#xff1a; 定義整數變量n&#xff0c;用于存儲字符串數組strs的長度。定義一個vector<string>類型的變量strs&#xff0c;用于存儲輸入的字符串。定義…

破解反爬蟲策略 /_guard/auto.js(一) 原理

背景 當用代碼或者postman訪問一個網站的時候&#xff0c;訪問他的任何地址都會返回<script src"/_guard/auto.js"></script>&#xff0c;但是從瀏覽器中訪問顯示的頁面是正常的&#xff0c;這種就是網站做了反爬蟲策略。本文就是帶大家來破解這種策略&…

輕松搞定一鍵切換主題色?分享 1 段優質 CSS 代碼片段!

本內容首發于工粽號&#xff1a;程序員大澈&#xff0c;每日分享一段優質代碼片段&#xff0c;歡迎關注和投稿&#xff01; 大家好&#xff0c;我是大澈&#xff01; 本文約 800 字&#xff0c;整篇閱讀約需 1 分鐘。 今天分享一段優質 CSS 代碼片段&#xff0c;輕松實現一鍵切…

4.3 最小二乘近似

一、最小二乘解 A x b A\boldsymbol x\boldsymbol b Axb 經常無解&#xff0c;一般是因為方程太多了。矩陣 A A A 的行比列要多&#xff0c;即方程要多余未知數&#xff08; m > n m>n m>n&#xff09;。 n n n 個列只能張成 m m m 空間的一小部分&#xff0c;除非…

spring中的依賴注入

文章目錄 spring中的依賴注入一、Autowired二、Qualifier三、Resource四、總結 spring中的依賴注入 這里主要講述三個注解裝配 一、Autowired 作用&#xff1a;自動按照類型注入。只要容器中唯一的一個bean對象類型和要注入的變量類型匹配&#xff0c;就可以注入成功。 如果i…

MySQL5.7社區版本在CentOS7系統上的安裝

MySQL5.7社區版本在CentOS7系統上的安裝 1.配合yum倉庫 rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm 2.使用yum安裝MySQL5.7 yum -y install mysql-community-server 3.安裝…

面向鐵路、地鐵旅客信息系統(PIS)的上架型整機,鐵路專用M12網絡接口,滿足歐洲鐵路應用標準

上架型整機 2U 19寸上架型整機&#xff0c;采用高性能低功耗處理器&#xff0c;能應用在寬溫環境下&#xff0c;并滿足歐洲鐵路應用標準EN50155關于電磁兼容性&#xff0c;沖擊和振動測試試驗的要求&#xff0c;是一款面向鐵路、地鐵旅客信息系統&#xff08;PIS&#xff09;的…

C# 關于 PaddleOCRSharp OCR識別的疲勞測試

目錄 關于 PaddleOCRSharp 應用范例演示 ?范例運行環境 疲勞測試 添加組件庫 方法設計 調用示例 小結 關于 PaddleOCRSharp PaddleOCRSharp 是百度飛槳封裝的.NET版本 OCR dll 類庫&#xff0c;OCR&#xff08;Optical Character Recognition&#xff09;工具可以將…

【Java面向對象】抽象類和接口

文章目錄 1.抽象類2.常見的抽象類2.1 Number類2.2 Calendar 和GregorianCalendar 3.接口4.常見接口4.1 Comparable 接口4.2 Cloneable 接口4.3 深淺拷貝 5.類的設計原則 1.抽象類 在繼承的層次結構中&#xff0c;每個新的子類都使類變得更加明確和具體。如果從一個子類向父類追…

Unty 崩潰問題(Burst 1.8.2)

錯誤代碼&#xff1a; Assertion failed on expression: exception SCRIPTING_NULL UnityEngine.StackTraceUtility:ExtractStackTrace () Unity.Burst.BurstCompiler:SendRawCommandToCompiler (string Unity版本&#xff1a;2021.3.17F1&#xff0c;Burst 1.8.2 表現&…

python安裝talib庫教程

【talib介紹】 Talib介紹 Talib&#xff0c;全稱“Technical Analysis Library”&#xff0c;即技術分析庫&#xff0c;是一個廣泛應用于金融量化領域的Python庫。該庫由C語言編寫&#xff0c;支持Python調用&#xff0c;為投資者、交易員和數據分析師提供了強大的技術分析工…

酷炫末世意境背景404單頁HTML源碼

源碼介紹 酷炫末世意境背景404單頁HTML源碼&#xff0c;背景充滿著破壞一切的意境&#xff0c;彷佛末世的到來&#xff0c;可以做網站錯誤頁或者丟失頁面&#xff0c;將下面的代碼放到空白的HTML里面&#xff0c;然后上傳到服務器里面&#xff0c;設置好重定向即可 效果預覽 …