Mac中免密码使用SSH登录另一台主机

Mac中免密码使用SSH登录另一台主机_第1张图片

场景:

有时候经常需要登录到另外一台Mac或者是服务器,来查看一下jenkins构建输出或者是日志什么的,Mac上的有诸如SSH Tunnel等SSH登录管理工具,但是一切都在Command Line环境下会减少切换成本,所以介绍一下比较快捷安全的免密码登录。

准备:

  1. 客户端Mac生成公钥和私钥
  2. 目标机为客户端Mac开放的用户名
  3. Command Line
    在macOS Sierra上使用成功

步骤:

1.使用SSH创建公钥和私钥:
Mac自带SSH,所以你需要进入.ssh文件

    -> cd ~
    -> cd .ssh
    -> ls -al //查看一下所有文件,是否带有rsa的文件,如果有就不用生成了。
    -> $ssh-keygen -t rsa -b 4096 -C "[email protected]"
    # Creates a new ssh key, using the provided email as a label
    # Generating public/private rsa key pair.
    -> Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]  // 推荐使用默认地址,如果使用非默认地址可能需要配置 .ssh/config
    -> ls -al

如图:


Mac中免密码使用SSH登录另一台主机_第2张图片
生成公钥与私钥

查看公钥与私钥文件
-> cat id_rsa.pub

查看公钥
复制上面所有的文本
2.分发公钥给目标机:
需要将上一步的公钥添加到目标机器上的 authorized_keys文件中。
在目标机的.ssh文件夹中创建 authorized_keys文件

    -> touch authorized_keys
    -> chmod u+w authorized_keys //如果目标主机上没有,则你需要在创建
    -> nano authorized_keys
    //将复制的公钥粘贴进去

3.测试:
接下来你直接就可以:
-> ssh [email protected]

tips:

你可以在 .bash_profile 或者你装了zsh可以在 .zshrc 文件里alias 短命令。如下:
alias landTarget='ssh [email protected]
重新启动shell或者是:
-> source ~/.bash_profile
然后你就可以:
-> landTarget

注意:
如果目标机器是Mac不要忘记打开远程登录

Mac中免密码使用SSH登录另一台主机_第3张图片
远程登录设置

Enjoy it~

你可能感兴趣的:(Mac中免密码使用SSH登录另一台主机)