ssh私鑰文件登錄問題:Load key invalid format

問題

在mac上面使用私鑰文件登錄時候,出現了如下錯誤:
加載私鑰文件錯誤

Load key “xxx.pem”: invalid format

但是,這個私鑰文件在win上面能夠正常使用ssh進行遠程登錄。在mac上面不能。而且,分別在win和mac上面分別查看了這兩個私鑰文件的md5值,都是一樣的。但是,在mac上面就會報無效格式錯誤。

原因

在換行百科查看如下內容:

MS-DOS(1981年)為了兼容采用了遵循DEC小型機標準的CP/M的CR+LF,而這個約定也被微軟后來的Windows操作系統繼承了。

1964年開始開發的Multics操作系統使用單獨的LF作為換行符。Multics使用設備驅動程序將LF字符轉換為打印機所需的任何字符序列(包括額外的填充字符),且單字節更便于編程。CR字符提供了將一行與另一行疊印以創建粗體、下劃線和刪除線效果的有用功能。單獨使用LF作為行終止符已經被納入最終的ISO/IEC 646標準草案中。Unix遵循了Multics的做法,后來類Unix系統也遵循了Unix。 這在Windows和類Unix操作系統之間造成了沖突,在一個操作系統上編寫的文件無法正確格式化或由另一個操作系統解釋。

通過這對這段歷史的了解,我們大概了解到,win系統以CR+LF字符進行換行的,而類Unix系統是以LF字符進行換行的,也就是說Mac的系統是以LF字符進行換行的。

解決

接下來我們通過VS Code來檢查我們的pem私鑰文件查看換行字符模式,右下角換行模式,如下圖:
win的CRLF換行
可以知道這個私鑰文件使用的是CRLF換行。如果用這個文件在mac上面使用ssh私鑰文件遠程登錄,這會出現問題:

invalid format

這里只需要修改CRLF換行格式為LF字符換行即可。然后,再次嘗試登錄即可。

測試

測試驗證

總結

對mac和win的換行區別又加深了。

參考

  • 換行
  • github使用ssh密鑰訪問出現error in libcrypto等問題

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

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

相關文章

AI戰略群與星際之門:軟銀AI投資版圖計劃深度解析

一、星際之門:萬億美元級 AI 基礎設施革命 1.1 項目背景與戰略定位 在 AI 技術迅猛發展的今天,算力已成為推動其前進的核心動力。軟銀聯合 OpenAI、甲骨文、英偉達、微軟、arm推出的 “星際之門”(Stargate)計劃,無疑是 AI 領域的一顆重磅炸彈。作為 AI 領域史上最大單筆…

教務系統ER圖

實體 1. 學生:具有姓名、學號、性別、系編號、電話、出生年月等屬性。學號通常是學生的唯一標識。 2. 課程:包含課程編號、課程名稱、課程學分、課程學時等屬性。課程編號一般用于唯一標識一門課程。 3. 教師:屬性有教師編號、教師名字、性別…

大數據(4.4)Hive多表JOIN終極指南:7大關聯類型與性能優化實戰解析

目錄 背景一、Hive JOIN類型與語法詳解1. 基礎JOIN類型2. 高級JOIN類型 二、JOIN實戰案例與調優案例1:兩表內連接(訂單與用戶關聯)案例2:多表鏈式JOIN(用戶-訂單-商品)案例3:處理數據傾斜&#…

【28BYJ-48】STM32同時驅動4個步進電機,支持調速與正反轉

資料下載:待更新。。。。 先驅動起來再說,干中學!!! 1、實現功能 STM32同時驅動4個步進電機,支持單獨調速與正反轉控制 需要資源:16個任意IO口1ms定時器中斷 目錄 資料下載:待更…

[Lc6_記憶化搜索] 不同路徑 | 解決智力問題 | 有序三元組中的最大值

目錄 1.不同路徑 題解 2140. 解決智力問題 題解 2873. 有序三元組中的最大值 題解 1.不同路徑 鏈接:62. 不同路徑 一個機器人位于一個 m x n 網格的左上角 (起始點在下圖中標記為 “Start” )。 機器人每次只能向下或者向右移動一步…

軟件重構與項目進度的矛盾如何解決

軟件重構與項目進度之間的矛盾可以通過明確重構目標與范圍、采用漸進式重構策略、優化項目管理流程、提高團隊溝通效率、建立重構意識文化等方式解決。其中,采用漸進式重構策略尤為關鍵。漸進式重構是指在日常開發過程中,以小步驟持續進行重構&#xff0…

多臺服務器上docker部署 Redis 集群

規劃集群節點 確保你的服務器有固定 IP,比如: 172.16.17.100 172.16.17.101 172.16.17.102 每臺服務器運行 2 個 Redis 節點,總共 6 個節點,滿足 Redis Cluster 最小節點數要求。 2. 在每臺服務器上運行 Redis 在每臺服務器上執行…

【Pandas】pandas DataFrame dtypes

Pandas2.2 DataFrame Attributes and underlying data 方法描述DataFrame.index用于獲取 DataFrame 的行索引DataFrame.columns用于獲取 DataFrame 的列標簽DataFrame.dtypes用于獲取 DataFrame 中每一列的數據類型 pandas.DataFrame.dtypes pandas.DataFrame.dtypes 屬性用…

如何實現局域網內無痛訪問Jupyter Notebook?

Jupyter Notebook是數據科學和機器學習領域非常常用的交互式開發環境。默認情況下,Jupyter Notebook啟動后只能本地訪問,并且會自動生成一個token用于身份驗證。當需要從其他電腦遠程訪問時,往往需要對配置進行修改。 本文將詳細介紹如何通過…

[Windows] eDiary 4.3.6 日記軟件

[Windows] eDiary 鏈接:https://pan.xunlei.com/s/VOMq6xmKTbEJtNaW-BXZ7KKSA1?pwdcrvu# 【應用功能】 加密 無論本地還是云端,都可以選擇高強度加密。系統以用戶密碼為種子,對數據進行…

掌握 Flexbox 布局:為容器添加豎向滾動條的完美方案

掌握 Flexbox 布局:為容器添加豎向滾動條的完美方案 前言 在現代網頁設計中,Flexbox 布局因其靈活性和強大的對齊功能而備受歡迎。然而,在實際開發過程中,我們有時會遇到需要在一個具有最小高度的 Flex 容器中實現內容溢出時顯示…

Node.js v22.14.0 多平臺安裝指南:Windows、Linux 和 macOS 詳細教程

Node.js作為現代Web開發的基石,持續為開發者帶來性能提升和新特性支持。本文將詳細介紹在Windows、macOS和Linux系統上安裝最新Node.js的多種方法,助您快速搭建高效的JavaScript開發環境。 📦 當前最新版本 截至2025年4月,Node.…

動態規劃學習——回文子串系列問題【C++】

一,回文子串 題目鏈接:LCR 020. 回文子串 - 力扣(LeetCode) 【問題描述】 求一個字符串中有多少個回文子串,其中一個字符也算是一個回文子串。 【解法】 動態規劃 求一個字符串中回文子串的個數,我么可…

My first day in QT programming

My first QT code this->setWindowTitle("HelloWorld"); //設置窗口名稱 this->resize(400, 300); //設置窗口大小 QPushButton* btn new QPushButton; //新建按鈕組件 btn->setParent(this); //為按鈕指定父對象 …

基于python開發的郵箱合并群發工具

智能郵件群發系統 一個基于Python和PyQt5開發的智能郵件群發工具,支持Word模板和Excel數據源的自動匹配,具有現代化UI界面和友好的用戶體驗。 Github項目地址:https://github.com/liugang926/Auto-mail-sent.git dist目錄有編譯好的exe程序&…

大模型-提示詞(Prompt)技巧

1、什么是提示詞? 提示詞(Prompt)是用戶發送給大語言模型的問題、指令或請求,用來明確地告訴模型用戶想要解決的問題或完成的任務,是大語言模型理解用戶需求并據此生成相關、準確回答或內容的基礎。對于大語言模型來說…

Android開發:support.v4包與AndroidX

Android中的support.v4包與AndroidX support.v4包概述 Android Support Library中的android.support.v4包是Google為保持Android應用向后兼容而提供的重要支持庫集合。它主要解決以下問題: API版本兼容:讓新版API能在舊版Android系統上使用功能增強&a…

TCP-IP模型

書接上回(OSI通信模型) TCP-IP協議結構 (略講) ARP:IP-->MAC RARP:MAC-->IP ICMP:控制報文信息協議,主要是涉及到主機就去連接路由器時控制傳輸報文&#xff08…

雪花算法生成的主鍵存在哪些問題,為什么不能使用自增ID或者UUID做MySQL的主鍵

MySQL 分布式架構中的主鍵選擇:自增ID、UUID與雪花算法 為什么MySQL分布式架構中不能使用自增主鍵? 在分布式架構中,自增主鍵存在以下問題: 主鍵沖突風險:多個數據庫實例同時生成自增主鍵會導致ID重復分片不均勻&am…

RapidJSON 處理 JSON(高性能 C++ 庫)(四)

第四部分:RapidJSON 處理 JSON(高性能 C++ 庫) ?? 快速掌握 JSON!文章 + 視頻雙管齊下 ?? 如果你覺得閱讀文章太慢,或者更喜歡 邊看邊學 的方式,不妨直接觀看我錄制的 RapidJSON 課程視頻!?? 視頻里會用更直觀的方式講解 RapidJSON 的核心概念、實戰技巧,并配有…