美文网首页
SSH key的生成及使用

SSH key的生成及使用

作者: 打代码的小鱼姑娘 | 来源:发表于2018-06-26 10:52 被阅读0次

    SSH key的生成及使用

    SSH key生成及其使用 一、检查是否已经存在ssh key

    通常sshkey会默认生成在用户家目录下,所以查看家目录下是否存在.ssh 文件夹,以及是否存在相关目录就行。(~/.ssh/id_rsa)

    二、生成key

    在控制台输入: 

    ssh-keygen -t rsa 

    Note: -t 的意思是选择kye的type。分别有 RSA 和 DSA 两种。具体请自行百度 

    控制台输出如下: 

    Generating public/private rsa key pair. 

    Enter file in which to save the key (/root/.ssh/id_rsa): 

    Created directory ‘/root/.ssh’. 

    Enter passphrase (empty for no passphrase): 

    Enter same passphrase again: 

    Your identification has been saved in /root/.ssh/id_rsa. 

    Your public key has been saved in /root/.ssh/id_rsa.pub. 

    (为了避免每次进行ssh连接时都需要输入passphrase,这里可以不用输入passphrase。)

    现在你的私钥被放在了~/.ssh/id_rsa 这个文件里,而公钥被放在了 ~/.ssh/id_rsa.pub 这个文件里。

    三、使用ssh key

    使用ssh key的目的是使得两台机器之间建立互信,从其中一台登陆到另一台时不需要密码。具体方式如下:

    1、先在主机A上创建密钥对

    [java]view plaincopy

    ssh-keygen -t rsa  

    这时可以在主机A上看到生成的秘钥~/.ssh/id_rsa 和公钥 ~/.ssh/ id_rsa.pub

    2、把主机A的公钥放在主机B上

    直接去github上添加sshkey  ----------

    -------------.................................................................................................

    扩展: gitgub常见操作和常见错误!

    如果输入$ ssh -Tgit@github.com

        出现错误提示:Permission denied (publickey).因为新生成的key不能加入ssh就会导致连接不上github。

        解决办法如下:

        1、先输入$ ssh-agent,再输入$ ssh-add ~/.ssh/id_key,这样就可以了。

        2、如果还是不行的话,输入ssh-add ~/.ssh/id_key 命令后出现报错Could not open a connection to your authentication agent.解决方法是key用Git Gui的ssh工具生成,这样生成的时候key就直接保存在ssh中了,不需要再ssh-add命令加入了,其它的user,token等配置都用命令行来做。

        3、最好检查一下在你复制id_rsa.pub文件的内容时有没有产生多余的空格或空行,有些编辑器会帮你添加这些的。

        如果输入$ git push origin master

        提示出错信息:error:failed to push som refs to .......

        解决办法如下:

        1、先输入$ git pull origin master //先把远程服务器github上面的文件拉下来

        2、再输入$ git push origin master

        使用git在本地创建一个项目的过程

        $ makdir ~/hello-world    //创建一个项目hello-world

        $ cd ~/hello-world       //打开这个项目

        $ git init             //初始化 

        $ touch README

        $ git add README        //更新README文件

        $ git commit -m 'first commit'     //提交更新,并注释信息“first commit”

    $ git remote add origingit@github.com:dedsf/hello-world.git//连接远程github项目

        $ git push -u origin master     //将本地项目更新到github项目上去


    我是大鱼吃小鱼 || 易冬英 , 前端小渣渣一枚,如有不对,欢迎各位大佬批评指正!

    相关文章

      网友评论

          本文标题:SSH key的生成及使用

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