前言

我们平常使用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

【Mac】小技巧:实现ssh服务器别名免密登录的更多相关文章

  1. SSH远程登录:两台或多台服务器之间免密登录设置

    有两台(或多台)同局域网的服务器A:192.168.2.21,B:192.168.2.25.让A,B这两台服务器之间能两两互相免密登录,并且每台服务器都可以自我免密登录(自我免密登录即:ssh loc ...

  2. linux 安装ssh以及ssh用法与免密登录

    想要免费登录就是把本地机器的id_rsa_pub的内容放到远程服务器的authorized_keys里面 一.配置yum和hosts文件 配置hosts文件: 命令:vi /etc/hosts 在文件 ...

  3. 两个linux服务器之间免密登录

    服务器A(假设为10.64.104.11) 免密登录服务器B(10.64.104.22) 1.登录服务器A 2.生成公私钥 ssh-keygen -t rsa 3.将生成的.pub文件发送到服务器B上 ...

  4. docker ssh秘钥免密登录

    一.概述 有一台跳板机,已经实现了免密登录后端服务器.但是我写了一个django项目,它是运行在容器中的,也需要免密登录后端服务器. 虽然可以在容器中手动做一下免密登录,但是容器重启之后,之前做的设置 ...

  5. Linux服务器之间免密登录设置

    说明: A为linux服务器a B为linux服务器b 每台linux都有ssh的服务端和客户端,linux下的ssh命令就是一个客户端 我们常用ssh协议来进行登陆或者是文件的拷贝,都需要密码 A要 ...

  6. 【原】linux两台服务器之间免密登录方法

    搭建集群机器192.168.0.100和192.168.0.200里,需要两台机器中间相互拷贝文件: 方式一:下载192.168.0.100机器文件到本地,再将本地文件拷贝到B机器 方式二:192.1 ...

  7. Hadoop SSH+IP、SSH+别名 免密登录配置

    1.为什么要进行 SSH 无密码验证配置? Hadoop运行过程中需要管理远端Hadoop守护进程,在Hadoop启动以后,NameNode是通过SSH(Secure Shell)来启动和停止各个Da ...

  8. ssh通过密钥免密登录linux服务器

    由于经常要登录远程服务器,每次都要把密码重输一遍,如下所示: # ssh 用户名@服务器IP # 用户名@服务器IP's password:这里需要手动输入密码然后回车 作为一个懒货,必须要想个办法免 ...

  9. kerberos&ssh 原理、免密登录搭建

    原理 详细介绍 参考oracle文档:Kerberos 服务 安装过程 1.安装krb5 yum install -y krb5-server yum install krb5-workstation ...

随机推荐

  1. 剑指offer3

    输入一个链表,从尾到头打印链表每个节点的值. 思路:首先借助一个栈,遍历链表中的每一个值,然后存储到栈中,利用栈的先进后出特点,然后添加到数组中返回. package demo3; import ja ...

  2. #C++初学记录(ACM试题1)

    A - Diverse Strings A string is called diverse if it contains consecutive (adjacent) letters of the ...

  3. 20155239 2016-2017-2 《Java程序设计》第5周学习总结

    教材内容学习 第八章 JAVA异常架构 Java异常是Java提供的一种识别及响应错误的一致性机制. Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程序健壮性 ...

  4. Wireshark图解教程(简介、抓包、过滤器)(转)

    本文转自:http://www.cnblogs.com/observer/archive/2011/11/04/2235219.html 下面是一张地址为192.168.1.2的计算机正在访问&quo ...

  5. 如何加固linux NFS 服务安全的方法

    NFS(Network File System)是 FreeBSD 支持的一种文件系统,它允许网络中的计算机之间通过 TCP/IP 网络共享资源.不正确的配置和使用 NFS,会带来安全问题. 概述 N ...

  6. 计算概论(A)/基础编程练习1(8题)/5:鸡兔同笼

    #include<stdio.h> int main() { // 鸡兔同笼中脚的总数:a < 32768 int a; scanf("%d", &a); ...

  7. Java ftp上传文件方法效率对比

    Java ftp上传文件方法效率对比 一.功能简介: txt文件采用ftp方式从windows传输到Linux系统: 二.ftp实现方法 (1)方法一:采用二进制流传输,设置缓冲区,速度快,50M的t ...

  8. 20145225《网络对抗》Exp6 信息搜集与漏洞扫描

    基础问题回答 哪些组织负责DNS,IP的管理: 全球根服务器均由美国政府授权的ICANN统一管理,负责DNS和IP地址管理.全球一共有5个地区性注册机构:ARIN(北美地区业务),RIPE(负责欧洲地 ...

  9. jQuery 源码分析:当 selector 传来一个函数时,怎么进行处理?

    本文章为 0.9 版本,将会在稍后润色更新.本文使用的 jQuery 版本为 3.4.0 我们知道使用 $ 操作符时,可以往里面塞很多类型的参数,字符串,对象,函数...,jQuery 会根据不同的参 ...

  10. SQLSERVER 数据从一张那个表复制到另一张表

    insert into 表名1 ( 字段A ,字段B ,字段C) SELECT 字段A ,字段B ,字段C FROM 表名2 (where条件看情况而定)