supahotfire
V2EX  ›  macOS

Terminal 如何管理多个带密钥的 ssh 会话以方便连接

  •  
  •   supahotfire · Feb 2, 2022 via iPhone · 4232 views
    This topic created in 1581 days ago, the information mentioned may be changed or developed.
    甲骨文创建了两个实例,之前都用的 Tabby ,想换成自带的终端,只会 ssh -i 私钥 用户名 @ip 这样连接,想把两个实例都保存起来,用 ssh 实例名称这样连接,请问各位大佬具体该怎么操作?
    19 replies    2022-02-07 23:44:41 +08:00
    Bingchunmoli
        1
    Bingchunmoli  
       Feb 2, 2022 via Android
    ssh_config
    mschultz
        2
    mschultz  
       Feb 2, 2022   ❤️ 1
    supahotfire
        3
    supahotfire  
    OP
       Feb 2, 2022 via iPhone
    @Bingchunmoli 大佬,是 vim 修改 ssh_config 里这个格式吗?
    Host vps (这里是自定义的 host 简称,以后连接远程服务器就可以用命令
    ssh vps

    User 这里填用户名(如:root)
    HostName 这里填服务器地址也可以是域名(如:server.xxoo.com)
    Port 这里填服务器 open-ssh 端口(默认:22 )
    IdentityFile 这里是刚刚生成的私钥文件地址(如~/.ssh/id_rsa )
    IdentityFile 这块我就是不知道怎么填😓,甲骨文的公钥私钥都有,都在本地
    supahotfire
        4
    supahotfire  
    OP
       Feb 2, 2022 via iPhone
    @mschultz 谢谢大佬,我学习一下,大概知道怎么做,具体操作又不太会😓😓
    rabenda
        5
    rabenda  
       Feb 2, 2022   ❤️ 1
    https://github.com/fitztrev/shuttle

    你看看这个 shuttle 是否符合你的需求
    supahotfire
        6
    supahotfire  
    OP
       Feb 2, 2022 via iPhone
    @rabenda 谢谢大佬,我研究研究
    Zhouisme
        7
    Zhouisme  
       Feb 2, 2022 via Android
    简单 alias
    GuuJiang
        8
    GuuJiang  
       Feb 2, 2022 via iPhone
    歪个楼,如无特殊需求,应该是多个主机共用一对密钥,把公钥添加到各个主机
    boris93
        9
    boris93  
       Feb 2, 2022 via iPhone   ❤️ 1
    @supahotfire #4 参考下我总结的 ssh config 用法?

    https://www.boris1993.com/tools/ssh/ssh-config-file.html
    XTTX
        10
    XTTX  
       Feb 3, 2022   ❤️ 1
    写个 make file, 同目录下建一个.envrc

    ```
    include .envrc

    .PHONY:ssh-node1
    ssh-node1:
    ssh -i ${SSHKEYLOCATION1} root@${REMOTE_IP1}

    .PHONY:ssh-node2
    ssh-node2:
    ssh -i ${SSHKEYLOCATION2} root@${REMOTE_IP2}


    ```

    .envrc
    export REMOTE_IP1=..............
    export REMOTE_IP2=..............
    export SSHKEYLOCATION1=C:\\Users\\xx\\.ssh\\gc\\id_rsa
    export SSHKEYLOCATION2=C:\\Users\\xx\\.ssh\\gc\\id_rsa
    XTTX
        11
    XTTX  
       Feb 3, 2022
    vs code 开个 terminal, make ssh-node1 就连了
    GoodRui
        12
    GoodRui  
       Feb 3, 2022   ❤️ 2
    SteveLee
        13
    SteveLee  
       Feb 3, 2022 via iPhone
    @supahotfire IdentityFile 就是对应 host 的私钥文件路径
    ltkun
        14
    ltkun  
       Feb 3, 2022 via Android
    直接两个脚本保存起来 不过不安全 最近在用 2fa 登录 ssh
    supahotfire
        15
    supahotfire  
    OP
       Feb 3, 2022 via iPhone
    感谢楼上各位大佬,本人不是码农相关专业的,有些教程对我来说还是有些门槛,只能慢慢研究学习了
    jorneyr
        16
    jorneyr  
       Feb 3, 2022   ❤️ 2
    iTerm 中使用 expect 脚本实现 ssh 自动登录: http://qtdebug.com/mac-iterm-ssh/
    expect 是系统自带的脚本,不需要安装其他软件。
    Bingchunmoli
        17
    Bingchunmoli  
       Feb 3, 2022 via Android   ❤️ 1
    @supahotfire 公钥上传服务器改个 auth 开头的那个名字,私钥放本地默认用户目录下.ssh 可不写配置自动读取
    lecia
        18
    lecia  
       Feb 6, 2022
    写入.ssh 文件夹下
    coagent
        19
    coagent  
       Feb 7, 2022
    Tabby 比自带的终端好用多了呀,iTerm2 也比自带终端好用啊。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5863 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 65ms · UTC 06:32 · PVG 14:32 · LAX 23:32 · JFK 02:32
    ♥ Do have faith in what you're doing.