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

场景:

有时候经常需要登录到另外一台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 "your_email@example.com"
    # 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

如图:


生成公钥与私钥

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

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

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

3.测试:
接下来你直接就可以:
-> ssh root@xxx.xxx.xxx.xxx

tips:

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

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

远程登录设置

Enjoy it~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容