常常要登录多台Linux服务器,过去在Windows下使用SecureCRT,比较省心,配置还可以放到云盘,实时同步。现在改用MAC貌似就没有那么好用的东西了,每次ssh命令登录都需要输入密码,很烦。最终找到iTerm + 以证书方式登录ssh,基本能解决需要记忆ip和用户名密码的问题。具体步骤如下:

一、以证书的方式登录ssh

假设要从机器A ssh到 机器B,则称A为客户端,B为服务器。

1、首先在客户端生成证书,运行命令,会得到如下内容:

$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/palance/.ssh/id_rsa): <name>
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in <name>.
Your public key has been saved in <name>.pub.
The key fingerprint is:
SHA256:7ut9SExi8YHdgUlGnpFgZaq8w8cLlBiBr6ZVFTamAV8 xxxx@xxxxdeMacBook-Pro.local

该命令会在当前目录生成私钥文件(<name>)、公钥文件(<name>.pub),同时要求你输入一个私钥的密码,这在后面会用到。

2、在客户端执行

scp <name>.pub <username>@<ssh_server_ip>:~
cp <name> ~/.ssh/

把公钥文件拷到服务器,私钥文件拷到本地~/.ssh下面。

3、在服务器执行

cat  <name>.pub >> ~/.ssh/authorized_keys

搞定!

在客户端执行

ssh -i ~/.ssh/<name> <username>@<ssh_server_ip>

第一次会让输入私钥密码,加入本地钥匙串,以后就可以直接登录。

二、使用iTerm添加新的Profile,在Command中填入:ssh -i ~/.ssh/<name> <username>@<ssh_server_ip>

即可。

以证书的方式登录ssh的更多相关文章

  1. ssh证书免认证登录

    思路: 客户端私钥存放于客户端,/root/.ssh/id_rsa 将客户端公钥存放于要远程控制服务器上:将客户在公钥id_rsa.pub内容追加到 /root/.ssh/authorized_key ...

  2. 使用SSH密钥方式登录ubuntu Linux,指令(ssh-keygen 和 ssh-copy-id)

    实验目的 从myVM1(本地主机)上登录myVM2(远程主机).采用密钥方式,不输入密码. 测试环境 主机:window7 sp1 64位 专业版 虚拟机:VMware workstation 12 ...

  3. SSH限制与更改端口、限制ROOT方式登录

    ssh中如何配置只允许某个IP以某个账号登录服务器 只要在ssh的配置文件:sshd_config中添加如下一行即可Allowusers username@192.168.1.100上述只允许IP地址 ...

  4. SSH服务及通过SSH方式登录linux

    SSH服务及通过SSH方式登录linux 1.检查SSH服务转自:[1]Linux之sshd服务https://www.cnblogs.com/uthnb/p/9367875.html[2]Linux ...

  5. ssh公钥认证原理及设置root外的其他用户登录ssh

    1)创建其他用户 useradd [-d 登录目录] [-G ssh][用户名]  一定要将用户添加到ssh组不然无法没有权限登录ssh 2)设置ssh不允许root登录 vi /etc/ssh/ss ...

  6. 阿里云ECS安全改造:改用AWS EC2私钥方式登录

    阿里云ECS有多烂,用过AWS的人都知道,ECS有什么问题呢,简单总结一下: 1)ubuntu居然root直接访问 2)端口全开 3)WEB控制台无法定义安全组及关闭端口 4)云盾黑洞 的确用起来很糟 ...

  7. Linux限制某些用户或IP登录SSH、允许特定IP登录SSH

    说明:一般要实现这种功能时,先安装VPN,然后客户端登录VPN,然后通过内网IP登录SSH. 搭建OpenVPN: 参考:http://www.cnblogs.com/EasonJim/p/83338 ...

  8. 已授予账号 "以服务方式登录"的权限

    已授予账号.\Cliff "以服务方式登录"的权限 --------------------------------------------------- 进入服务管理器(Serv ...

  9. Linux远程登录ssh免密码配置方法(仅供参考)

    这篇文章主要介绍了linux远程登录ssh免密码配置方法,需要的朋友可以参考下(http://www.0834-3659999.com) 一.情景 公司刚上几台Linux,现在要把主机之间都能远程ss ...

随机推荐

  1. Hibernate检索方式(转载)

    我们在项目应用中对数据进行最多的操作就是查询,数据的查询在所有ORM框架中也占有极其重要的地位. 那么,如何利用Hibernate查询数据呢?Hibernate为我们提供了多种数据查询的方式,又称为H ...

  2. flask之全局对象

    from flask import current_app, g g is a special object that is unique for each request. It is used t ...

  3. 一行删除所有docker container的命令

    ns=`docker | awk '//{print $1}'`;for n in $ns;do docker rm -f $n;done docker | awk '{print $1}'|xarg ...

  4. Erlang pool management -- RabbitMQ worker_pool

    在RabbitMQ中,pool 是以worker_pool 的形式存在的, 其主要用途之一是对Mnesia transaction 的操作. 而在RabbitMQ 中, pool 中的worker 数 ...

  5. C语言 字符串中数字的运算

    主函数中输入字符串"32486"和"12345",在主函数中输出的函数值为44831. #include <stdio.h> #include &l ...

  6. Unreal Engine 4 Radiant UI 入门教程(一)制作Radiant HUD

    请注意:本篇教程的编号是从零开始的,如果没有看第零篇教程,请前往学习. 本教程介绍如何制作Radiant HUD,这是指将网页元素直接加入到HUD中,效果为: 对应的网页元素为: 第一步: 将之前下载 ...

  7. Mongodb 副本集的节点详细操作

    副本集操作 官方文档:https://docs.mongodb.com/v3.2/reference/method/js-replication/ 1 rs.add(){ _id: <int&g ...

  8. JAVA基础知识(13)-----Lock接口

    Lock接口:多线程在JDK1.5版本升级时,推出一个接口Lock接口.解决线程安全问题使用同步的形式,(同步代码块,要么同步函数)其实最终使用的都是锁机制. 到了后期版本,直接将锁封装成了对象.线程 ...

  9. Windows_Server_2008远程桌面多用户登陆的配置方法

    开启远程桌面后,Windows Vista(或Windows 2008)下默认只支持一个administrator用户登陆,一个登录后另一个就被踢掉了,下面提供允许同一个用户名同时多个用户登录的配置方 ...

  10. Python类(四)-多态

    多态即一个接口,多种实现 按照平常直接调用 # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" class Person(obje ...