资讯专栏INFORMATION COLUMN

Mac使用ssh-key免密码登录服务器

n7then / 3494人阅读

摘要:记录一次完整的部署服务到远程服务器上的过程第一篇首先,我用的是,我不喜欢每次登陆服务器都输入密码,有点恶心,那么听说可以免密登陆。

记录一次完整的部署服务到远程服务器上的过程 - 第一篇

首先,我用的是 macbook ,我不喜欢每次登陆服务器(Unix)都输入密码,有点恶心,那么听说可以 ssh 免密登陆。之前操作过,但是很久不用,绝对的想不起来啊。

终极目标: ssh user@host -p port 直接进入服务器

1.确认自己是否有公/私钥

    hallluck:~ faithfairy$ cd .ssh  
    // 输入 cd .ssh 回车,进入 .ssh 文件夹 “hallluck:~ faithfairy$”是iTerm的前缀,不用理会
    
    hallluck:.ssh faithfairy$ ls -al  
    // 输入 ls -al 回车,查看当前文件夹的所有文件,寻找一个叫做 id_rsa.pub 的文件, 要是有,就直接看 2,要是没有,继续往下看
    
    hallluck:.ssh faithfairy$ ssh-keygen -t rsa  
    // 输入 ssh-keygen -t rsa 回车,之后就可以一路回车,一般都不设置密码,即可在~/.ssh目录中生成私钥文件(id_rsa)和公钥文件(id_rsa.pub)。如果熟悉git ssh-key配置的朋友,可能已经很熟悉这个步骤了,所以我们只要把公钥上传到我们的服务器的~/.ssh目录就好了  

2.上传我们的公钥文件

    hallluck:.ssh faithfairy$ scp id_rsa.pub user@8.8.8.8 -p 2222:~/.ssh/
    // 输入 scp id_rsa.pub user@8.8.8.8 -p 2222:~/.ssh/ 回车,本地公钥上传到服务器 .ssh 文件夹
    
    // 如果服务器上的 ~/ 目录下没有 .ssh 文件夹,那么请登录服务器后创建即可
        1. hallluck:~ faithfairy$ ssh user@8.8.8.8 -p 2222   回车后提示输入密码
        2. 显示下面内容:
            Last login: Tue Jun 18 02:54:58 2019 from 192.168.888.888
        3. 输入 mkdir .ssh 创建 .ssh 文件夹    
            [user@localhost ~]$ mkdir .ssh

3.登录服务器修改设置公钥

    hallluck:~ faithfairy$ ssh user@8.8.8.8 -p 2222
    // 登录服务器
    
    [user@localhost ~]$ cd .ssh
    // 进入 .ssh 文件夹
    
    [user@localhost .ssh]$ mv id_rsa.pub authorized_keys
    // 将~/.ssh目录下的id_rsa.pub文件改名为authorized_keys 
    
    chmod 700 ~/.ssh/
    chmod 600 ~/.ssh/authorized_keys
    //修改文件权限

4.完成后的尝试

    hallluck:~ faithfairy$ ssh user@192.168.888.888
    // 重新打开iTerm,输入并回车,这时不再提示“请输入密码”了

5.后续
如果服务器上已经有 authorized_keys 文件,并且里面已有其他人的公钥了,那么就不能用刚才的“改文件夹”的方法去操作了,而要选择“追加”的方法,如下操作

    hallluck:.ssh faithfairy$ scp id_rsa.pub user@8.8.8.8 -p 2222:~/.ssh/
    // 输入 scp id_rsa.pub user@8.8.8.8 -p 2222:~/.ssh/ 回车,本地公钥上传到服务器 .ssh/ 文件夹
    
    [user@localhost .ssh]$ cat id_rsa.pub >> authorized_keys
    // 进入服务器的 .ssh 文件夹,执行下面的操作

大功告成

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/63821.html

相关文章

  • 阿里云 CentOS 环境下 Node 环境搭建

    摘要:阿里云环境下环境搭建最近在学习微信开发,为了方便调试以及后期部署决定买一个轻量的服务器和域名折腾一下。设置成功后即可利用该密码登录远程云服务器。 阿里云 CentOS 环境下 Node 环境搭建 最近在学习微信开发,为了方便调试以及后期部署决定买一个轻量的服务器和域名折腾一下。毕竟对于以后的学习来说,一个域名和一个云服务器还是很必要的。大概折腾了一天吧,终于把这个环境搭好了,不过安全方...

    lyning 评论0 收藏0
  • Git自由之章 - 关于SSH 公钥

    摘要:关于首先是一种网络协议,用于计算机之间的加密登录。第二种级别是基于公开密匙加密机制的安全验证。前者是私钥,注意保管,后者是公钥如下添加到登录之后。 简述 什么是 Git 的 ssh key?这个问题其实我也很困惑,所以我才专门分享这篇关于 ssh key 的文章,着重分析了解什么是 ssh key,它有什么用,怎么能用好它?本文主要由从网上收集资料加上自己的经验汇总而成的经验干货,可以...

    IamDLY 评论0 收藏0
  • Mac OS X上如何实现到Linux主机的ssh登陆

    摘要:所谓的免登陆其实是不存在的,只是说,从验证密码的登录方式,改为公私钥对的登录验证方式。下一步,就是把公钥拷贝到目标主机上。你今后要用哪个帐户登录主机,就在哪个帐户的目录下操作,如果要免登陆,就要去下操作。前面我在我的 代码笔记本过 如何用MAC 的 终端 软件链接 linux 服务器。但是吧,对我来说,这样的操作太麻烦了,不习惯。 本文要讲的,就是如何简化从Mac登录Linux主机的操作步...

    sshe 评论0 收藏0
  • Linux 登录务器

    摘要:成功后会出现如下图所示注意是机器的地址,小白在这里花了不少时间。或者直接到文件新增。服务器复制内容服务器粘贴复制的内容测试是否免密成功示例 一、gitLab生成秘钥 输入:ssh-keygen 按三次回车,完成生成私钥和公钥 注意: 生成秘钥:ssh-keygen -t rsa -C your_email@youremail.com 命令中的your_email@youremai...

    马永翠 评论0 收藏0
  • Mac下SSH密码连接NAS设置

    摘要:页面可以选择设置免密登录,并提供了服务器的公钥文件下载,然而一搜,正常配置密钥免密登录都是客户端上传公钥的啊,这下晕了,放狗依然不得其解,只好回归正道。   //原博_20160610  ReadyNas没有ssh简直没法玩,虽然提示开通root的ssh访问网件会拒绝给予支持,还是义无反顾地开了,laf。页面可以选择设置免密登录,并提供了服务器的公钥文件下载,然而一搜,正常配置密钥免密...

    xiongzenghui 评论0 收藏0

发表评论

0条评论

n7then

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<