V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
InDom
V2EX  ›  分享创造

另一种添加 ssh-key 到 authorized_keys 的方案。

  •  
  •   InDom · 317 天前 · 2384 次点击
    这是一个创建于 317 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前几天那个利用 Github 进行加密聊天的,看到这个接口后,找到了一种新的应用。

    执行以下命令获取使用帮助:

    curl -s keys.qs5.org | sh

    本来是 OSS+CDN 的,考虑到 V2EX 上有一群小可爱,所以目前是放在 Github Pages 上,可能不是很快。

    简单来说,就是 curl https://github.com/{USER_ID}.keys >> ~/.ssh/authorized_keys 的封装。

    15 条回复    2024-01-13 11:13:08 +08:00
    totoro625
        1
    totoro625  
       317 天前
    国外的很多云服务都支持 cloudinit 的
    你可以编辑一个新机器通用脚本,一键设置机器
    就算不支持 cloudinit ,你也可以复制粘贴执行
    selca
        2
    selca  
       317 天前
    https://github.com/selcarpa/mountain/blob/master/scripts/init_pub_ssh.sh

    我也早就打包成一行来添加 key 了,还包含了检查文件是否存在
    hash
        3
    hash  
       317 天前
    虽然很多时候 SSH 和 Git 使用不同 Key,
    但够用了
    weijancc
        4
    weijancc  
       317 天前
    有点意思, 不过我自己是将公钥上传到 OSS, 然后 curl 复制 key, 用不上
    AirCrusher
        5
    AirCrusher  
       317 天前
    请问一下,`https://github.com/{USER_ID}.keys`对应的私钥是哪个?
    SHF
        6
    SHF  
       317 天前
    SHF
        7
    SHF  
       317 天前   ❤️ 1
    加上这几个选项比较有用
    -s: 静默模式
    -S: 在发生错误时显示错误信息
    -L: 自动跟随重定向
    -f: 或 --fail 用于在发生 HTTP 错误时使 curl 终止执行,并返回非零的退出代码
    SHF
        8
    SHF  
       317 天前
    @selca 添加 authorized_keys 不需要重启 sshd 服务吧?
    SHF
        9
    SHF  
       317 天前
    类似还有一条命令安装 node.js 的

    curl -fsS https://shenhongfei.com/files/nodejs.sh | bash
    ratazzi
        10
    ratazzi  
       317 天前 via iPhone
    ssh-import-id gh:github 用户名就好了
    imzcc
        11
    imzcc  
       317 天前   ❤️ 3
    我是直接放 dns txt 记录上,然后用 dig 解析后面就类似了
    zhaojun1998
        12
    zhaojun1998  
       317 天前
    看看这个,更全面:

    bash <(curl -fsSL git.io/key.sh) [选项...] <参数>

    -o - 覆盖模式,必须写在最前面才会生效
    -g - 从 GitHub 获取公钥,参数为 GitHub 用户名
    -u - 从 URL 获取公钥,参数为 URL
    -f - 从本地文件获取公钥,参数为本地文件路径
    -p - 修改 SSH 端口,参数为端口号
    -d - 禁用密码登录


    如下面的命令将禁止密码登录,拉取 github 用户公钥,修改 ssh 端口:
    bash <(curl -fsSL git.io/key.sh) -og zhaojun1998 -d -p 2233


    作者博客(不是我): https://p3terx.com/archives/ssh-key-installer.html
    duzhuo
        13
    duzhuo  
       317 天前 via Android
    学习一个
    headwindx
        14
    headwindx  
       316 天前
    ssh-copy-id 不够用吗?
    selca
        15
    selca  
       316 天前
    @SHF #8 确实,我是让 ai 写的,所以,也没去详细调整
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2779 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 06:18 · PVG 14:18 · LAX 22:18 · JFK 01:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.