美文网首页
Mac终端配置免密码登陆云服务器

Mac终端配置免密码登陆云服务器

作者: 佛系千树 | 来源:发表于2020-04-24 23:39 被阅读0次

    前言

    个人购买了阿里云服务器,配置好远程连接密码和登陆密码后,使用iTerm2终端ssh root@ip,每次都需要输入密码,实在是麻烦。

    所谓的ssh免密登陆,其实是将本机的公钥存到服务器上,authorized_keys文件是Linux系统默认生成的用来保存远程登录设备的公钥。初始时为空,在.ssh目录下。

    环境准备

    1. 阿里云ECS服务器
    2. macOS系统
    3. 本机SSH公钥
      (1)查询本地是否生成过
    cat ~/.ssh/id_rsa.pub
    

    如果没有,则继续执行(2)
    (2)生成公钥

    ssh-keygen -t rsa
    或
    ssh-keygen -t rsa -C "email地址"
    

    说明:第二个引号内是邮箱mail,生成后可以作为Git远程仓库使用。该指令回车后需要输入键值对和密码,直接回车就行。

    执行(1),查看是否公钥是否生成。

    配置

    下面提供了两种方法,二选一即可。

    方法一
    1. 如果是第一次配置,先查看远程服务器 /home下是否有.ssh文件夹,如果没有,执行:
    mkdir .ssh
    

    如果有,该步骤跳过。

    1. 将本机公钥文件上传至服务器
    scp .ssh/id_rsa.pub root@ip:/home/.ssh
    
    1. 添加公钥到authorzied_keys文件
    cat id_rsa.pub >> .ssh/authorized_keys
    
    1. 删除临时文件
    rm id_rsa.pub
    
    方法二

    终端执行:

    ssh-copy-id root@ip
    

    输入登陆密码(即实例密码)即可。

    配置成功信息如下:

    Number of key(s) added:        1
    
    Now try logging into the machine, with:   "ssh 'root@xxx.xx.xxx.xxx'"
    and check to make sure that only the key(s) you wanted were added.
    

    这里我使用的是方法二。需要说明的是,如果使用该方法,不需要查看服务器是否有.ssh文件夹。

    测试

    上面的方法二选一即可,终端执行ssh root@ip就可以实现免密码登陆了。

    其他

    在本机.zshrc中配置别名

    alias[别名]=[指令名称]
    如:
    alias liulinde='ssh root@xxx.xx.xxx.xxx'
    

    保存退出后,执行命令使改动生效。

    source .zshrc
    

    回到终端,示例如下:

    ~ liulinde
    Last failed login: Fri Apr 24 22:24:18 CST 2020 from 138.204.122.220 on ssh:notty
    There were 2 failed login attempts since the last successful login.
    Last login: Fri Apr 24 21:38:32 2020 from 117.100.126.53
    
    Welcome to Alibaba Cloud Elastic Compute Service !
    

    简单好记!

    相关文章

      网友评论

          本文标题:Mac终端配置免密码登陆云服务器

          本文链接:https://www.haomeiwen.com/subject/lkycwhtx.html