配了挺多次免密登录,老是忘了,备份一下

转载自知乎,如侵删。https://zhuanlan.zhihu.com/p/32279976

-----------------------------------------------------转载分割线-----------------------------------------------------------------------

Ok,是时候写一个教程让后人不被坑了。

首先,明确一下我们要做什么,让mac连接免密码ssh连上远程的机子,一般是ubuntu系统的(就是你买的阿里云,腾讯云之类的)。

note(给不懂ssh的新手们):ssh就是让你的自己在远程机子上打开一个shell,ssh就是secure shell。linux作为服务器是没有桌面系统的,所以你只要通过一个ssh工具在远程机子上打开一个shell,你就能控制这个远程的机子了。

我们把本地机子叫做为mac,远程机子叫做ubuntu(这个ubuntu也可以是centos,debian之类的)。

1. 首先在你的本地mac上打开一个shell,进入到~/.ssh目录,然后看一下该目录下的文件

cd ~/.ssh
ls // 看一下文件,看看有没有已经生成过的公私钥对

2.这边做分a,b两种情况:

(a). 第一种情况你没有生成过公私钥对(生成过这个目录下会有类似 xxx xxx.pub 的文件),或者你生成过,但是你想创建一个新的公私钥对。

ssh-keygen
// 根据交互,输入你想要的名字(默认id_rsa),然后是密码,可以为空,生成公私钥对 ls // 这时候当前目录下会多了一对公私钥对(.pub结尾的是共钥匙)。

(b). 已经有一组公私钥对的可以不生成。

3.这一步是要把共钥复制到服务器上,可以使 ssh-copy-id 这个脚本工具

ssh-copy-id -i [公钥文件] user@host
// user是你的ssh的用户,host是服务器地址,这时候还要输入密码。
// 例子:ssh-copy-id -i id_rsa.pub root@111.111.111.111

4.好一般别的系统到第三步就可以免密登陆了,但是mac并不这样。还要调用ssh-add。

ssh-add -K [你的私钥文件,就是那个不加.pub结尾的文件]
// 例如ssh-add -K id_rsa

注意上面的shell命令都在~/.ssh目录下,中途请不要切换目录。

公私钥简介

公私钥是一个很聪明的发明,公钥是公开的。就像用户名,私钥则跟密码一样。比特币也是用了公私钥,比特币中公钥是钱包地址,但是你光有钱包地址不能证明你拥有这个钱包。只有你同时拥有对应的私钥,这个钱包才是你的。而要破解这个公私钥很难,需要极大的计算量。

【转】MAC 配置ssh免密登录的更多相关文章

  1. Ubuntu16.04下配置ssh免密登录

    Ubuntu16.04下配置ssh免密登录 环境准备:新建两台虚拟机,而且两台虚拟机上都装有Ubuntu16.04的系统,使两台虚拟机之间保持互通状态.分别为两台虚拟机命名为A,B.假设我们要使A虚拟 ...

  2. 【Linux】配置SSH免密登录

    环境说明 假设我们有三台机器分别为bigdata111,bigdata112,bigdata113,三台机器均为centos 7系统. 配置SSH免密登录 (1)利用Xshell的发送键输入到所有会话 ...

  3. 记一次Xshell配置ssh免密登录时的问题

    问题: 今天在配置SSH免密登录连接自己的阿里云服务器,在将RSA加密生成的公钥放到服务器后,用Xshell连接服务,出现所选的用户密钥未在远程主机上注册这样的提示,一时懵逼,不知所措,后面终于找到了 ...

  4. 配置ssh免密登录遇到的问题——使用VMware多虚拟机搭建Hadoop集群

    搭建环境: 虚拟机 VMware12Pro      操作系统  centos6.8        hadoop 1.2.1 1.导入镜像文件,添加java环境 1.查看当前系统中安装的java,ls ...

  5. Ubuntu如何配置SSH免密登录

    前言 在搭建hadoop集群时,需要主机和副机之间实现SSH免密登录 一.环境准备 1.ubuntu两台 二.安装SSH 1.首先检测一下本机有没有安装SSH服务,如果没有任何打印说明未安装 sudo ...

  6. 配置ssh免密登录后,仍需要密码才能登陆其中某台机器

    提示:如果是三台机器A.B.C配置了ssh免密登录,从A和B上登录C需要密码,则需要修改C的配置 修改配置文件如下: sudo vi /etc/ssh/sshd_config #禁用root账户登录, ...

  7. Centos7配置ssh免密登录群发

    ssh免密登录是客户端发送自己的公钥到服务器.用公钥进行解密,自己生成的私钥进行加密. 首先在客户端查看sshd服务是否启动 [zhiwei@zhiwei1 ~]$ ps -Af|grep sshd; ...

  8. linux(十)配置ssh免密登录实现

    知道ssh的朋友应该知道它是用来干什么的,如果你不知道什么是ssh远程登录的话,可以去看一下我的上一篇博客,关于linux的网络基础的知识.备注:ssh是用于远端登入.执行ssh指令开启终端机阶段作业 ...

  9. CentOS配置SSH免密登录

    假如我们有两台CentOS机器,192.168.199.101,192.168.199.102,要想在101上远程连接102可以通过ssh命令来实现 ssh 192.168.199.102 如果没有配 ...

随机推荐

  1. HDU 4085 斯坦纳树+DP

    https://cn.vjudge.net/problem/HDU-4085 给你n,m,k ,分别表示有n个点,m条边,每条边有一个权值,表示修复这条边需要的代价 从前k个点中任取一个使其和后k个点 ...

  2. udp广播,单播,多播

    一.单播 (1)简介 两个节点之间的通信,一个发送者一个接收者 (2)特点 1.服务器及时响应客户机的请求. 2.服务器针对每个客户不通的请求发送不通的数据,容易实现个性化服务. 3.允许在Inter ...

  3. 【高维前缀和】8.15B. 组合数

    题目分析 没有接触过高维前缀和的话会有一点抽象

  4. 详解Object.create(null)

    在Vue和Vuex的源码中,作者都使用了Object.create(null)来初始化一个新对象.为什么不用更简洁的{}呢? 在SegmentFault和Stack Overflow等开发者社区中也有 ...

  5. WINCE7 SYMBOL MC32N0 SDK,VS2008调试程序,连接设备时,出现bootstrap 未能加载时

    开发工具:visual studio 2008 手持设备: SYMBOL  MC32NO工具->连接到设备->WINCE 7.00连接设备出现bootstrap 未能加载时,试下安装Mot ...

  6. @Import注解的作用

    在@Import注解的参数中可以填写类名,例如@Import(Abc.class),根据类Abc的不同类型,spring容器有以下四种处理方式: 1. 如果Abc类实现了ImportSelector接 ...

  7. SecureFX中文目录乱码问题解决方案

    1.点击菜单栏中Options 2.找到General下的Configuration Paths并点击 3.在我的电脑打开 右面视图Configuration data is stored in th ...

  8. Luogu P2114_[NOI2014]起床困难综合症 贪心

    思路:按位贪心. 提交:1次 题解: 可以先处理出对于全$0$串和全$1$串最后每一位的结果.(每一位 从 $0$ $or$ $1$ 变成 $0$ $or$ $1$) 对于每一位,若不能变成$1$,则 ...

  9. .NET大文件分片上传

    需求:项目要支持大文件上传功能,经过讨论,初步将文件上传大小控制在500M内,因此自己需要在项目中进行文件上传部分的调整和配置,自己将大小都以501M来进行限制. 第一步: 前端修改 由于项目使用的是 ...

  10. 洛谷P1436 棋盘分割

    洛谷题目链接 动态规划: 我们设状态$f[i][j][o][p][k]$表示一个矩形,左上角顶点坐标为$(i,j)$,右下角顶点坐标为$(o,p)$时分割了$k$次,也就是说现在是$k+1$块 我们考 ...