• 【Mac】小技巧:实现ssh服务器别名免密登录


    前言

    我们平常使用ssh user@host然后输入密码的方式来远程链接一个服务器,但是,如果要管理的服务器太多,记住这些服务器的IP和用户名、密码就是一个复杂的工作。当然,我们可以把这些信息用文档记录下来,然后一个个的复制粘贴。

    那么难道就没有更简便的方法吗?答案肯定是有的,让我们先来看看效果:

    bingo@Mac ~$ ssh k8s  
    Last login: Sun Sep 30 10:12:32 2018 from 10.0.*.*  
    [root@test173vm1@docker ~]# 
    

    如上所示,直接ssh ️k8s就完成了登陆k8s服务器的操作。下面我们来介绍怎么进行配置。

    给服务器配置别名

    配置

    配置别名(alias)的过程比较简单,在~/.ssh/config这个文件(如果目录下没有这个文件,可以新建一个)接着按下面格式添加服务器信息:

    # 服务器1
    Host 别名
        HostName IP地址
        Port 22
        User 用户名
    # 服务器2
    Host 别名
        HostName IP地址
        Port 22
        User 用户名
    ...
    # 更多服务器
    

    测试

    信息添加保存后,不用做其他任何操作,就可以直接在终端使用了,比如前文演示的命令:

    ssh k8s
    

    但是这一步只是省去了记忆IP的过程,要想登陆服务器还是要输入密码的:

    我们接着来介绍配置免密登陆的方法。

    配置免密登陆

    我们都知道Mac的终端没有保存密码的功能,但是可以使用Linux通用的方法来配置免密登陆。

    假设我们现在有两台机器:

    • 机器A:我们平常使用的主机
    • 机器B:我们想要远程链接的机器

    生成密匙

    首先我们在机器A上面执行下面的命令来生成密匙:

    ssh-keygen -t rsa
    

    如果没有特殊配置,一路回车之后会此命令会在用户~/.ssh/目录下生成两个文件:id_rsa || id_rsa.pub前者是私钥,后者是公钥。可以这么来理解这两个文件, id_rsa.pub 是一把锁,id_rsa是这把锁的钥匙,我们可以把这把锁给别人用,但是只有掌握钥匙的我们才能打开这把锁。关于RSA更多内容大家可以自行搜索。

    配置密匙

    说到这里,可能很多人已经猜到了,我们接下来要做的就是id_rsa.pub里面的内容添加到 机器B 的~/.ssh/目录下的authorized_keys(如果没有这个文件我们可以创建一个)。

    在机器B添加这个文件就像是在它上面给我们开了一扇用id_rsa.pub锁上的小门,而我们拿着钥匙id_rsa可以开锁。

    完成上面这一步之后我们就实现了ssh 别名来登陆某台服务器了。是不是很简单?快点试试吧!

    上面的这些配置在每一个Linux系统中基本都可以完成。

    总结

    • RSA
    • ssh-keygen
    • ~/.ssh

    参考资料:
    https://www.jianshu.com/p/13545fd41849
    https://blog.csdn.net/ljfrocky/article/details/46280455
    https://baike.baidu.com/item/RSA算法/263310?fromtitle=RSA&fromid=210678&fr=aladdin

  • 相关阅读:
    HDU 3436 Queuejumpers
    POJ 3580 SuperMemo
    HDU 2871 Memory Control
    Android 实现显示文字的Gallery
    Android 使用地图
    Android 深入的研究一下蓝牙
    手机录制视频demo
    用android来实现图片的绘制以及旋转缩放案例分析
    TextView 自动滚动(跑马灯)
    Android腾讯微博客户端开发一:在下方的Tab的实现
  • 原文地址:https://www.cnblogs.com/Detector/p/9728632.html
Copyright © 2020-2023  润新知