zoukankan      html  css  js  c++  java
  • ubuntu ssh

    客户端

    Client端生成公钥和密钥

    在Ubuntu服务器上安装ssh

    安装方法:

    apt-get install ssh

    安装完成后验证是否SSH安装成功

    验证方法:

    在命令行模式下执行命令:ssh -V 

    我们使用RSA密钥认证的目的是:从Client端登陆Server端时,不需要密码认证。

    所以,我们在进行认证时首先需要在Client端建立属于Client端自己的一对密钥(公钥和私钥),建立方法如下:

    在命令行下执行:ssh-keygen 

    执行过程中,它先要求你确认保存公钥的位置(默认为:.ssh/id_rsa),

    然后它会让你重复输入一个密码两次,如果不想在使用公钥的时候输入密码,可以留空

    执行完毕后,就会生成数据Client端的一对密钥。

    执行过程如下图:

    SSH 密钥默认储存在账户的家目录下的 ~/.ssh 目录中

    关键是看有没有用 xxx_rsa 和 xxx_rsa.pub 来命名的一对文件,有 .pub 后缀的文件就是公钥,另一个文件则是密钥。

    生成的一对公私钥,顾名思义:

    公钥是公开的,不需要保密,而私钥是由个人自己持有,并且必须妥善保管和注意保密。

    ssh-add id_rsa

    系统如果提示:Identity added: id_rsa (id_rsa) 就表明加载成功了

    下面有几个异常情况处理:

    –如果系统提示:could not open a connection to your authentication agent

    则需要执行一下命令:

    ssh-agent bash

    然后再执行上述的ssh-add id_rsa命令

    服务端:

    通过腾讯后台把公钥加进去。会出现~/.ssh/authorized_keys   通过sudo ls -all查看隐藏的文件。

    /etc/ssh/sshd.config

    PermitRootLogin no     # 是否允许 root 登入!预设是允许的,但是建议设定成 no!

    PubkeyAuthentication yes  # 是否允许 Public Key ?当然允许啦!只有 version 2 
    AuthorizedKeysFile      .ssh/authorized_keys 
                  # 上面这个在设定若要使用不需要密码登入的账号时,那么那个 
                  # 账号的存放档案所在档名!

    PasswordAuthentication yes # 密码验证当然是需要的!所以这里写 yes 啰! 
    PermitEmptyPasswords no  # 若上面那一项如果设定为 yes 的话,这一项就最好设定 
                  # 为 no ,这个项目在是否允许以空的密码登入!当然不许

    StrictModes=no  如果是yes就是对文件权限等等严格检查。

  • 相关阅读:
    键盘弹出与隐藏对TextView的影响
    iOS9 警告框
    计时器的写法
    iOS提交被拒
    新生活
    批量删除wps文档里的回车符的方法!WPS使用技巧分享!
    学习笔记计划
    监控服务器的注册及登陆并邮件通知的代码(go / python)
    Python调用C代码
    导入用户到Discuz论坛
  • 原文地址:https://www.cnblogs.com/102442/p/7257245.html
Copyright © 2011-2022 走看看