【Linux生成SSH秘鑰實現遠程連接】Linux生成SSH秘鑰對與修改服務配置文件實現無密碼遠程連接

文章目錄

    • 前言
    • 1. Linux 生成SSH秘鑰對
    • 2. 修改SSH服務配置文件
    • 3. 客戶端秘鑰文件設置
    • 4. 本地SSH私鑰連接測試
    • 5. Linux安裝Cpolar工具
    • 6. 配置SSHTCP公網地址
    • 7. 遠程SSH私鑰連接測試
    • 8. 固定SSH公網地址
    • 9. 固定SSH地址測試

前言

在數字化江湖中,企業對各種技術的需求就像武林高手對絕世武功的追求一樣,永無止境。遠程辦公已經成為了一股不可阻擋的趨勢,無數公司紛紛加入這場云端盛宴。然而,在大家享受著云上辦公帶來的便捷與高效時,一個棘手的問題卻悄然而至 —— 傳統的密碼登錄方式簡直就是漏洞百出!不僅容易被黑客攻破,還可能因為員工的疏忽而泄露重要信息,給企業的信息安全蒙上了厚厚的陰影。

面對既要保障工作效率又要確保數據安全的雙重挑戰,你是否感到束手無策?別擔心,答案其實簡單得讓人驚訝 —— 采用私鑰進行身份驗證,并搭配一款強大的內網穿透工具 Cpolar。今天,就讓我們一起探索如何用這些秘籍,讓你的遠程服務器管理既安全又酷炫,輕松應對遠程辦公的各種煩惱,助你在數字化浪潮中乘風破浪!

請添加圖片描述

1. Linux 生成SSH秘鑰對

本地ssh連接上Linux ,執行ssh-keygen -t rsa 命令生成秘鑰對,執行命令后,一路回車即可,執行完成后,我們可以看到生成的秘鑰的文件都放在/root/.ssh/這個文件夾下面(具體以自己的路徑為準)

image-20241011160037118

生成后,我們執行:cd ~/.ssh 命令進入這個文件夾,然后列出目錄,可以看到有兩個文件,第一個是私鑰 第二個.pub結尾是公鑰

image-20241011160333154

然后我們把公鑰.pub結尾的那個文件改個名稱,執行下面命令,把id_rsa.pub改為authorized_keys

mv id_rsa.pub authorized_keys

修改后,我們再次查看列表,id_rsa.pub文件變成了authorized_keys,這樣就修改成功了,接下來我們修改一下ssh配置文件

image-20241011160655433

2. 修改SSH服務配置文件

上面秘鑰對生成設置好后,我們打開ssh 配置文件,輸入命令:vim /etc/ssh/sshd_config,按i 鍵進入編輯,然后開啟公鑰驗證,把密碼驗證改為no,表示關閉,然后記得保存

image-20241011135955512

然后重啟一下ssh服務,下面我們開始在windows設置連接

systemctl restart sshd

3. 客戶端秘鑰文件設置

本例是使用windows來連接Linux,我們需要在windows設置一下Linux的私鑰,首先回到Linux,在Linux中我們輸入下面命令查看id_rsa私鑰內容

cat ~/.ssh/id_rsa

執行命令后,我們可以看到這個id_rsa私鑰文件的全部內容,把這些內容全部復制下來

image-20241011161742062

然后我們在windows任意文件夾下,這個文件夾路徑自己要知道,比如我這邊是放在E:/ssh/文件夾下面,具體以自己設置為準,然后創建一個名稱為id_rsa的文件.不用指定后綴

image-20241011162019622

創建好后,我們用記事本或者文本工具打開,把我們在Linux上看到的那個秘鑰文件的內容全部粘貼進去,然后保存

image-20241011162133240

接下來設置這個秘鑰文件的權限,縮小權限的范圍,選中右鍵點擊屬性,打開安全,點擊高級

image-20241011162510712

首先點擊禁用繼承

image-20241011162609878

然后點擊選擇第一個選項

image-20241011162646411

然后我們把這些全部的權限一個個刪除掉,全部刪掉

image-20241011162801677

全部刪除后我們點擊添加一個用戶權限

image-20241011162837155

然后點擊選擇主體,輸入自己電腦用戶名,再點擊確定按鈕

image-20241011163008874

然后會默認勾選兩個權限,直接點擊確定即可

image-20241011163138448

然后我們可以看到添加了一個用戶權限,直接點擊應用再點擊確定即可

image-20241011163228044

再點擊確定就全部設置完成了,下面我們就可以本地測試連接了

image-20241011163330329

4. 本地SSH私鑰連接測試

首先我們本地輸入ssh 用戶名@局域網IP 測試,可以看到 密碼的方式已經無法連接了

image-20241011163646940

現在我們加上指定秘鑰文件路徑再次連接,命令格式ssh 用戶名@局域網IP -i 秘鑰文件全路徑,可以看到成功連接上了Linux.其中 -i E/ssh/id_rsa 這個參數就是指定我們上面在windows創建設置的秘鑰文件全路徑.本地測試就成功了,這樣Linux ssh連接就設置只能秘鑰登錄,無法使用密碼登錄,極大的提高了安全性,下面我們在Linux安裝cpolar,實現遠程也可以連接訪問

image-20241011163935910

5. Linux安裝Cpolar工具

上面在本地成功設置了無密碼使用私鑰方式ssh 連接,并本地局域網測試成功,下面我們在Linux安裝Cpolar內網穿透工具,通過Cpolar 轉發本地端口創建公網地址,我們可以很容易實現遠程訪問,而無需自己注冊域名購買云服務器.下面是安裝cpolar步驟

cpolar官網地址: https://www.cpolar.com

  • 使用一鍵腳本安裝命令
sudo curl https://get.cpolar.sh | sh
  • 安裝完成后,可以通過如下方式來操作cpolar服務,首先執行加入系統服務設置開機啟動,然后再啟動服務
# 加入系統服務設置開機啟動
sudo systemctl enable cpolar# 啟動cpolar服務
sudo systemctl start cpolar# 重啟cpolar服務
sudo systemctl restart cpolar# 查看cpolar服務狀態
sudo systemctl status cpolar# 停止cpolar服務
sudo systemctl stop cpolar

Cpolar安裝和成功啟動服務后,內部或外部瀏覽器上通過局域網IP加9200端口即:【http://192.168.xxx.xxx:9200】訪問Cpolar管理界面,使用Cpolar官網注冊的賬號登錄,登錄后即可看到cpolar web 配置界面,接下來在web 界面配置即可

image-20240220142041422

6. 配置SSHTCP公網地址

登錄cpolar web UI管理界面后,點擊左側儀表盤的隧道管理——創建隧道:

  • 隧道名稱:可自定義,注意不要與已有的隧道名稱重復
  • 協議:tcp
  • 本地地址:22 (ssh 默認端口)
  • 域名類型:臨時隨機TCP端口 (首次使用 選擇隨機地址測試)
  • 地區:選擇China vip

點擊創建 (注意點擊一次即可!)

image-20241011165228961

然后打開左側在線隧道列表,查看剛剛創建隧道后生成的遠程 TCP連接地址,這個地址就是遠程連接的地址,在其他設備上使用該地址進行遠程連接,下面進行遠程地址連接測試

image-20241011165252709

7. 遠程SSH私鑰連接測試

創建好公網地址后,我們打開cmd窗口 ,使用公網地址進行連接,輸入命令格式:ssh 用戶名@cpolar公網域名 -p 域名對應的端口 點擊回車,我們可以看到,同樣密碼的方式已經無法連接了

image-20241011165927418

下面我們指定一下私鑰文件全路徑,可以看到成功連接上了Linux,不需要輸入密碼,同時也是公網連接,如果其他電腦要連接Linux,我們只要把這個私鑰文件拷貝去其他電腦,在連接的時候指定這個私鑰文件全路徑,就可以在其他電腦進行遠程連接Linux了,到這里初步設置就全部完成了!

image-20241011170204514

小結

為了更好地演示,我們在前述過程中使用了Cpolar生成的隧道,其公網地址是隨機生成的。這種隨機地址的優勢在于建立速度快,可以立即使用。然而,它的缺點是網址是隨機生成,這個地址在24小時內會發生隨機變化,更適合于臨時使用。

我一般會使用固定TCP域名,原因是我希望將地址發送給同事或客戶時,它是一個固定、易記的公網地址,這樣更顯正式,便于交流協作。

8. 固定SSH公網地址

上面步驟在cpolar中使用的是隨機臨時tcp端口地址,所生成的公網地址為隨機臨時地址,該公網地址24小時內會隨機變化。我們接下來為其配置固定的TCP端口地址,該地址不會變化,設置后將無需每天重復修改地址。

登錄Cpolar官網,點擊左側的預留,找到保留的tcp地址,我們來為遠程聯機地址保留一個固定的地址:

  • 地區:選擇China vip
  • 描述:即備注,可自定義

點擊保留

image-20241011170717240

地址保留成功后,系統會生成相應的固定公網地址,將其復制下來

image-20241011170751597

再次打開cpolar web ui管理界面,點擊左側儀表盤的隧道管理——隧道列表,找到我們上面創建的TCP隧道,點擊右側的編輯

image-20241011170844227

修改隧道信息,將保留成功的固定tcp地址配置到隧道中

  • 端口類型:修改為固定tcp端口
  • 預留的TCP地址:填寫官網保留成功的地址,

點擊更新(只需要點擊一次更新即可,不要重復點擊)

image-20241011170912822

隧道更新成功后,點擊左側儀表盤的狀態——在線隧道列表,可以看到公網地址已經更新成為了和我們在官網固定的TCP地址和端口一致。這樣表示地址已經成功固定了,下面測試固定地址連接

image-20241011170937126

9. 固定SSH地址測試

固定地址設置好后,我們再次使用固定的tcp地址進行連接,同樣也需要指定私鑰文件全路徑,可以看到,成功連接上了Linux ,固定地址測試連接就完成了,不用再擔心地址端口會變化了.

image-20241011171425316

固定地址設置好后,我們再次使用固定的tcp地址進行連接,同樣也需要指定私鑰文件全路徑,可以看到,成功連接上了Linux ,固定地址測試連接就完成了,不用再擔心地址端口會變化了. 有了私鑰認證和Cpolar這兩大法寶的加持,你的信息系統安全性不僅直線飆升,還能讓遠程辦公變得輕松愉快。希望這篇文章能幫你在這場數字化轉型的大戲中走得更加穩健。如果你對這些技術有任何疑問或需要更多秘籍,請在評論區留言,我們保證第一時間為你答疑解惑!別忘了點贊、關注和分享哦,讓我們一起成為遠程工作的武林高手,笑傲云上江湖,讓工作變得既高效又有趣!

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

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

相關文章

# linux 設置寬容模式

linux 設置寬容模式 在Linux系統中,通常沒有直接稱為“寬容模式”的設置選項,但你可以通過幾種方式來模擬或調整系統行為,使其表現得更加“寬容”,特別是在處理錯誤、權限問題或其他潛在問題時。以下是一些常見的方法&#xff1a…

【C++】——lambda表達式

🌟 前言:??C Lambda表達式,當函數開始"叛逆期"?? 你是否有過這樣的崩潰瞬間? 為了寫個??只用到一次??的排序規則,被迫定義了一個類在std::for_each里塞函數指針,代碼瞬間變成"古董級"寫法看著層的循環…

深入解析B站androidApp接口:從bilibili.api.ticket.v1.Ticket/GetTicket到SendMsg的技術分析

前言 最近一段時間,我對B站的App接口進行了深入分析,特別是關注了認證機制和私信功能的實現。通過逆向工程和網絡抓包,發現了B站移動端API的底層工作原理,包括設備標識生成機制、認證流程和消息傳輸協議。本文將分享這些研究成果…

從零開始學A2A一:A2A 協議概述與核心概念

A2A 協議概述與核心概念 學習目標 基礎理解 掌握A2A協議的基本概念和背景理解協議的設計原則和核心思想了解協議在AI領域的重要性 技術掌握 熟悉A2A協議的核心功能組件掌握能力發現和任務管理機制理解多模態交互和安全通信原則 實踐應用 能夠設計基于A2A的智能體系統掌握協議…

2025.04.10-拼多多春招筆試第三題

?? 點擊直達筆試專欄 ??《大廠筆試突圍》 ?? 春秋招筆試突圍在線OJ ?? 筆試突圍OJ 03. 數字重排最大化問題 問題描述 LYA是一位專業的數字設計師。她手中有兩個數字序列 s 1 s_1

蒼穹外賣day04

Spring Task實現定時處理訂單狀態 作用:不需要輸入提示信號,便可定時自動執行程序 使用步驟 1、啟動類上加上注解(EnableScheduling)開啟定時任務調度 2、專門創建一個包來管理執行定時任務的類,該類需要交給IOC容…

BFD:網絡鏈路檢測與聯動配置全攻略

目錄 BFD簡介 BFD會話建立方式和檢測機制 BFD會話建立過程 BFD工作流程 聯動功能 BFD與OSPF聯動配置需求 BFD與OSPF聯動配置實現 BFD與VRRP聯動配置需求 BFD與VRRP聯動配置實現 單臂回聲 BFD默認參數及調整方法 BFD簡介 一種全網統一、檢測迅速、監控網絡中鏈…

【LLM】A2A 與 MCP:剖析 AI Agent 互聯時代的兩種關鍵協議

隨著人工智能技術的飛速發展,AI Agent(智能體)正從理論走向實踐,有望成為提升生產力的關鍵。然而,正如歷史上任何新興技術領域一樣,標準的缺失導致了“筒倉效應”——不同來源、不同框架構建的 Agent 難以有…

免費下載 | 2025清華五道口:“十五五”金融規劃研究白皮書

《2025清華五道口:“十五五”金融規劃研究白皮書》的核心內容主要包括以下幾個方面: 一、五年金融規劃的重要功能與作用 凝聚共識:五年金融規劃是國家金融發展的前瞻性謀劃和戰略性安排,通過廣泛聽取社會各界意見,凝…

滾輪控制目標臂長度調整相機距離

通過鼠標滾輪來控制攝像機目標臂長度 , 調整相機距離 看圖就行,不多說,照著連就完事了

kernel32!GetQueuedCompletionStatus函數分析之返回值得有效性

第一部分://#define STATUS_SUCCESS 0x0返回值為0 } else { // // Set the completion status, capture the completion // information, deallocate the associated IRP, and // attempt to write the…

UE5 Chaos :渲染網格體 (Render Mesh) 和模擬網格體 是如何關聯的?為什么模擬網格體 可以驅動渲染網格體?

官方文獻:https://dev.epicgames.com/community/learning/tutorials/pv7x/unreal-engine-panel-cloth-editor 這背后的核心是一種常見的計算機圖形學技術,通常稱為代理綁定 (Proxy Binding) 或 表面變形傳遞 (Surface Deformation Transfer)。 關聯機制…

老舊測試用例生成平臺異步任務與用戶通知優化

在現代 Web 開發中,異步任務處理和用戶通知是兩個重要的功能。由于老舊測試平臺【測試用例生成平臺,源碼分享】進行智能化升級后,未采用異步任務處理,大模型推理時間較長,導致任務阻塞,無法處理其他任務&am…

Java使用ANTLR4對Lua腳本語法校驗

文章目錄 什么是ANTLR?第一個例子ANTLR4 的工作流程Lua腳本語法校驗準備一個Lua Grammar文件maven配置新建實體類Lua語法遍歷器語法錯誤監聽器單元測試 參考 什么是ANTLR? https://www.antlr.org/ ANTLR (ANother Tool for Language Recognition) is a…

觀察者模式(行為模式)

觀察者模式 觀察者模式屬于行為模式,個人理解:和發布訂閱者魔模式是有區別的 細分有兩種:推模式和拉模式兩種,具體區別在于推模式會自帶推送參數,拉模式是在接收通知后要自己獲取更新參數 觀察者模式(Obs…

內網滲透 --- 之殺軟工具探測

目錄 內網殺軟探測與應對實戰方案 一、總體思路 二、探測階段——殺軟工具與手法 2.1 進程與服務檢測 2.2 注冊表與文件系統檢測 2.3 Nmap 與 NSE 腳本掃描 三、處理階段——探測到殺軟后的應對措施 3.1 分析評估 3.2 應對策略 四、判斷與驗證——注入 webshell 后如…

(2025親測可用)Chatbox多端一鍵配置Claude/GPT/DeepSeek-網頁端配置

1. 資源準備 API Key:此項配置填寫在一步API官網創建API令牌,一鍵直達API令牌創建頁面創建API令牌步驟請參考API Key的獲取和使用API Host:此項配置填寫https://yibuapi.com/v1查看支持的模型請參考這篇教程模型在線查詢 2. ChatBox網頁版配…

【Pandas】pandas DataFrame keys

Pandas2.2 DataFrame Indexing, iteration 方法描述DataFrame.head([n])用于返回 DataFrame 的前幾行DataFrame.at快速訪問和修改 DataFrame 中單個值的方法DataFrame.iat快速訪問和修改 DataFrame 中單個值的方法DataFrame.loc用于基于標簽(行標簽和列標簽&#…

Redis存儲“大數據對象”的常用策略及StackOverflowError錯誤解決方案

Hi,大家好,我是灰小猿! 在一些功能的開發中,我們一般會有一些場景需要將得到的數據先暫時的存儲起來,以便后面的接口或業務使用,這種場景我們一般常用的場景就是將數據暫時存儲在緩存中,之后再…

【Python】讀取xyz坐標文件輸出csv文件

Python讀取xyz坐標文件輸出csv文件 import sys import numpy as np import pandas as pd from tqdm import tqdm import cv2 import argparsedef read_xyz(file_path):with open(file_path, "r") as f: # 打開文件data f.readlines() # 讀取文件datas []for …