zoukankan      html  css  js  c++  java
  • Mac终端配置免密码登陆云服务器

    一、前言
    个人购买了阿里云服务器,配置好远程连接密码和登陆密码后,使用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

    如果有,该步骤跳过。

    2. 将本机公钥文件上传至服务器
    scp .ssh/id_rsa.pub root@ip:/home/.ssh

    3. 添加公钥到authorzied_keys文件

    cat id_rsa.pub >> .ssh/authorized_keys

    4. 删除临时文件

    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 !

    简单好记! 

  • 相关阅读:
    转 通过 spring 容器内建的 profile 功能实现开发环境、测试环境、生产环境配置自动切换
    call_grant_sel.sql
    sql server 2008 评估期已过期解决办法
    (2.3)学习笔记之mysql基础操作(表/库操作)
    (2.2)学习笔记之mysql基础操作(登录及账户权限设置)
    Red Gate系列
    教你使用SQL数据库索引(1-15)
    cache与buffer的区别
    (4.17)什么情况下应该使用索引
    windows server2003/2008中权限账户
  • 原文地址:https://www.cnblogs.com/luckyliulin/p/12771000.html
Copyright © 2011-2022 走看看