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 !

    简单好记! 

  • 相关阅读:
    OleDbCommand 的用法
    递归求阶乘
    C#重写窗体的方法
    HDU 5229 ZCC loves strings 博弈
    HDU 5228 ZCC loves straight flush 暴力
    POJ 1330 Nearest Common Ancestors LCA
    HDU 5234 Happy birthday 01背包
    HDU 5233 Gunner II 离散化
    fast-IO
    HDU 5265 pog loves szh II 二分
  • 原文地址:https://www.cnblogs.com/luckyliulin/p/12771000.html
Copyright © 2011-2022 走看看