当前位置: 首页 > news >正文

别再手动复制SSH公钥了,Linux服务器一键从GitHub快速导入公钥

前言

Ubuntu 安装程序(Subiquity)的一大亮点,只要输入 GitHub 用户名,就可以自动导入 SSH 公钥。

它极大地简化了新服务器的初始化配置,让你免去了手动复制粘贴那一大串 SSH Public Key 的烦恼。

原理

GitHub 为每个用户提供了一个公开的 SSH 公钥访问接口。

任何人的公钥都是公开信息的,你只需要在浏览器或终端访问以下 URL 模式: https://github.com/你的用户名.keys

当你输入用户名时,Ubuntu 安装程序在后台执行了类似以下的操作:

  1. 通过网络请求访问 https://github.com/username.keys
  2. 获取该页面返回的纯文本公钥列表。
  3. 将这些公钥追加到服务器对应用户的 ~/.ssh/authorized_keys 文件中。
  4. 确保 .ssh 目录和 authorized_keys 文件的权限正确(通常是 700 和 600)。

如何实现?

方法一:使用 ssh-import-id(最推荐)

Ubuntu 那个功能其实是调用了 ssh-import-id 这个工具,它在 Debian 的官方仓库里也是有的。

  1. 安装工具:

    Bash

    sudo apt update && sudo apt install ssh-import-id -y
    
  2. 导入公钥:

    Bash

    ssh-import-id gh:你的GitHub用户名
    

    注:gh: 前缀代表 GitHub,它也支持 Launchpad(使用 lp:)。

方法二:纯手动万能命令(无需安装任何工具)

如果你不想安装额外的软件包,直接用 curl 配合管道操作也能搞定:

Bash

mkdir -p ~/.ssh && chmod 700 ~/.ssh
curl -L https://github.com/你的用户名.keys >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

Tips

  • 这种方式依赖于 GitHub 的可用性和网络连接。如果你在公司内网或者特殊网络环境下,记得确认服务器能否正常访问 github.com
  • 多平台支持: 除了 GitHub,GitLab 也提供类似的功能,链接格式为 https://gitlab.com/用户名.keys
  • 自动化部署: 如果你经常折腾服务器,可以把上面那行 curl 命令写进你的初始化脚本或 Dockerfile 中,实现真正的“无感”配置。
http://www.jsqmd.com/news/495638/

相关文章:

  • 从安装失败到成功:我的MacBook M1运行Keil C51踩坑全记录
  • 告别Windows AI功能:RemoveWindowsAI实现系统优化的新方案
  • 图像篡改检测技术详解(下篇)--文本与金融图像篡改检测
  • 汽车精密零部件清洁度检测设备选型指南:从精度到重复性的关键考量 - 西恩士工业 - 工业设备研究社
  • 开源眼动追踪技术的颠覆式应用与跨界融合实践
  • python基础学习笔记第四章
  • 工控主板再创新高,龙芯3B5000强势出彩
  • 频谱分析仪测信噪比全攻略:从原理到实战(附普源RSA5065N操作示例)
  • 2026年 干燥机厂家推荐排行榜:桨叶/空心桨叶/污泥/煤泥/液体/真空/多层/撬装式/转筒/高温熔盐干燥机,实力品牌深度解析与选购指南 - 品牌企业推荐师(官方)
  • 2026 AI 框架选型指南:8大主流框架深度对比,小白程序员避坑必看(收藏版)
  • 基于 YOLOv8 的无人机航拍视角车辆行人道路目标检测系统 YOLOV8模型如何训练无人机道路车辆行人目标检测数据集
  • 盒马鲜生卡回收平台精选指南,回收新趋势 - 京回收小程序
  • Activiti7实战:绕过缓存机制,实现已部署流程的在线热更新
  • # 应急响应实战笔记——入侵排查篇
  • 好用的AI硬件开发厂家
  • 零基础部署KART-RERANK:Ubuntu 20.04系统环境保姆级配置指南
  • FreeRTOS信号量详解:从二进制到计数型的实战对比(STM32 CubeMx版)
  • 打开网站显示Parse error: syntax error, unexpected variable $xxx错误怎么办|已解决
  • linux matlab r2025a以及questasim 2024.1资源以及安装
  • Qwen-Image-Edit-2511-Unblur-Upscale效果展示:从模糊到高清,人像修复惊艳对比
  • Hypermesh小BUG修复
  • 实验室智能管理平台功能与价值分析 全生命周期管理的数字化能力
  • YOLO实战:model.predict返回结果Results的10个关键属性解析(附代码示例)
  • PHP 网站完整搬家教程(不报错、不断站)
  • Python机器学习空间模拟与时间预测:生态水文实战;地表参数空间模拟(土地利用分类/降尺度)与水文过程时间预测(径流/地下水位)
  • python-flask的家庭成员亲子相册图片照片管理系统的设计与实现_django pycharm vue
  • Vue2项目中如何通过开源组件优化局域网医疗影像大附件的浏览器端分片校验?
  • Sinkhorn算法实战:用Python实现最优传输问题的快速求解(附完整代码)
  • GLM-OCR快速部署:一键启动服务,支持文本、表格、公式识别
  • 本科论文高效通关:Paperxie AI 初稿写作,从选题到定稿的一站式学术助手