V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
lswang
V2EX  ›  程序员

命令行下的 SSH List 和登录(适合 mac 和 Linux )

  •  
  •   lswang · Nov 14, 2019 · 4382 views
    This topic created in 2368 days ago, the information mentioned may be changed or developed.

    介绍

    这个工具可以在命令行下保存 ssh 列表,还可以直接访问。 代码地址: https://github.com/longshengwang/msh

    安装

    # 方式一
    pip install msh
    
    # 方式二
    git clone https://github.com/longshengwang/msh
    cd msh
    python setup.py install
    
    

    用法

    演示视频: https://imgur.com/fw40MYT

    1. 添加 ssh 信息

    ✗ msh -a [email protected]:2341@test_alias
    Input Your Password:
    

    说明:

    • 如果是默认端口,可以不需要指定端口
    • 最后的alias 是别名

    2. 查看 ssh 列表

    ✗ msh -l
    

    3. 访问 ssh

    msh < ip or alias>
    

    说明:后面可以直接加 IP 其中的一段,也可以是 alias 中的部分或者全部。如果有多个匹配项,会让用户选择想要登录的Host

    4. 删除 ssh

    # 方法一
    msh -d < host ip >
    # 方法二
    msh -D
    
    30 replies    2019-11-25 23:48:15 +08:00
    lswang
        1
    lswang  
    OP
       Nov 14, 2019
    inhzus
        2
    inhzus  
       Nov 14, 2019   ❤️ 4
    ~/.ssh/config 命令行下的 ssh 登录

    介绍
    这个工具可以在命令行下保存 ssh 列表,还可以直接访问。

    安装
    ssh 原生支持,不需要安装

    用法
    1. 添加 / 查看 / 删除 ssh 列表

    $ vim ~/.ssh/config

    2. 访问 ssh

    $ ssh {name}

    bash 支持自动补全
    lswang
        3
    lswang  
    OP
       Nov 14, 2019
    @inhzus 还真不知道 ssh 还有这功能。。。
    66450146
        4
    66450146  
       Nov 14, 2019
    明文保存密码不太好吧……
    lswang
        5
    lswang  
    OP
       Nov 14, 2019 via iPhone
    @66450146 就内网用用,Python 写的也没法加密,一看代码就知道怎么解密了。还有公网的主机也不能用密码啊
    KentY
        6
    KentY  
       Nov 14, 2019
    这个比在 .ssh/config 中预设各种 alias 优越性在哪里?
    KentY
        7
    KentY  
       Nov 14, 2019
    @inhzus 对对,看到马上也是这个感觉... 没看到你的回复... 发了条重复信息..
    v2ex 不能删除回复么?
    KentY
        8
    KentY  
       Nov 14, 2019
    @lswang 怎么可能一看代码就知道怎么解密了?
    最简单的, 你用 md5 的库, 难道人家看到你用 md5sum, 就能解密了? 而且那么多加密算法呢. 我还用 python 写了个密码管理程序在 keepass 前用了很多年呢.
    hanxiV2EX
        9
    hanxiV2EX  
       Nov 14, 2019 via Android
    可以写个脚本读取 config 文件里的 Host 列表,并支持 ctrl+r 搜索,ctrl+j/k 上下移动选中,enter 执行选中目标。
    C0VN
        10
    C0VN  
       Nov 14, 2019
    这轮子造的。。。
    lswang
        12
    lswang  
    OP
       Nov 14, 2019
    @KentY 大哥,登录的时候你要取出来填进去啊。这个和用户验证不一样
    lswang
        13
    lswang  
    OP
       Nov 14, 2019
    @hanxiV2EX 这个可以有
    Chingim
        14
    Chingim  
       Nov 14, 2019 via Android
    老铁,闭门造车了呀
    tankren
        15
    tankren  
       Nov 14, 2019
    zsh 不是很方便。
    tomychen
        16
    tomychen  
       Nov 14, 2019
    .ssh/config 不好用么?
    lswang
        17
    lswang  
    OP
       Nov 14, 2019
    @Chingim 😆 是的,要是知道 ssh config,就不写这个了
    ipwx
        18
    ipwx  
       Nov 14, 2019
    @lswang 那还有个,ssh-copy-id 这个命令行你知道么
    lswang
        19
    lswang  
    OP
       Nov 14, 2019
    @tomychen 看文档是很好用,我的想法它都有了 😆
    lswang
        20
    lswang  
    OP
       Nov 14, 2019
    @ipwx 这个只是免密码登录,登录的时候还是要输全部的 IP 地址,我这个工具只需要其中一段(1/4)就行了
    ipwx
        21
    ipwx  
       Nov 14, 2019
    @lswang 嘛,一般来说我都是先写 ~/.ssh/config 再用 ssh-copy-id 的。
    tomychen
        22
    tomychen  
       Nov 14, 2019
    @lswang 哈哈...我以前也想过要写类似的,查文档才知道有这个,所以...
    Vegetable
        23
    Vegetable  
       Nov 14, 2019
    kde 下使用 ssh-copy-id+konsole 书签功能.
    jmperdev
        24
    jmperdev  
       Nov 14, 2019
    我没忍住。。
    masker
        25
    masker  
       Nov 14, 2019 via Android
    SSH config 能虐你 10 条街吧
    hei1000
        26
    hei1000  
       Nov 14, 2019
    github repo readme 都没有,为什么不把这个页面的 readme 贴上去, 最好英文的, 用户范围广一点
    KentY
        27
    KentY  
       Nov 14, 2019 via iPhone
    @lswang 如果你做开源的密码管理怎么办?密码都保存着,用的时候取出来。开源跟加密解密是俩概念。
    lswang
        28
    lswang  
    OP
       Nov 25, 2019
    @KentY 因为登录的时候,内部还是 ssh 登录,取密码的代码的逻辑都可以看到。不管用对称加密还是非对称加密,秘钥或者公私钥 要么是保存数据库要么写死,别人都是可以看到的。
    lswang
        29
    lswang  
    OP
       Nov 25, 2019
    @hei1000 多谢建议
    lswang
        30
    lswang  
    OP
       Nov 25, 2019
    @masker 十条街,不至于吧。大部分情况下我只需要 5、6 个字符就能登录了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3049 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 60ms · UTC 14:09 · PVG 22:09 · LAX 07:09 · JFK 10:09
    ♥ Do have faith in what you're doing.