zoukankan      html  css  js  c++  java
  • linux配置 ssh 免密 登录

    1:第一步给每一台电脑生成公私钥

        使用   在 root 目录下面 使用  ssh-keygen -t rsa ,然后不停敲回车。就可以生成公私钥。默认放在  .ssh 目录下面。

    2:进入.ssh ,  使用  吧公钥 复制到 /root/.ssh/authorized_keys 文件里面

      cd /root/.ssh

      cp id_rsa.pub authorized_keys

    3: 把每一台电脑的 授权文件都 复制到 其中一台(centos1)的 authorized_keys 文件里面

      ssh-copy-id -i centos1

    4:  这时候 centos1 已经可以被其他任意机器连接了。 复制 cenos1 的 authorized_keys 文件到其他机器,所有的机子之间就可以相互免密 登录了。

      scp authorized_keys  root@centos2:/root/.ssh

    备注:第4 步需要复制给所有机器。

    备注: 使用 最好使用 centos1 是因为给主机取了名字(修改了 /ets/hosts),默认可以使用ip

    备注2: 如果需要指定登陆用户  那么 就是  ssh ubuntu@centos1

    备注:上面的对 root 用户有效。如果不是root 用户。比如 ubuntu 默认不允许 root 用户 登陆 。如果用  sudo   ssh-keygen -t rsa ,生成 的  .ssh 是 root  和 需要 高边 .ssh  和里面你的 文件的 所属用户和用户组。

      ubuntu 中 。你可以需要 sudo chown  -R ubuntu .ssh   和  sudo chgrp -R ubuntu .ssh。 实测,只要有权限就可以邓登陆的,并且直接复制到 /root/.ssh/authorized_keys 里面 ,即便没有设置root 密码也可以登陆。

    原理猜想: 主机A生成一对公私钥, 吧公钥复制到 机子B的.ssh/authorized_keys 。 然后A 登陆 B的 时候 用私钥加密一段信息。如果  B 能用 .ssh/authorized_keys 里面的公钥组解密,那么就能登陆成功。

  • 相关阅读:
    MyGeneration的NHibernate代码生成模版
    ASP.NET页面控制回车触发按钮
    操作NHibernate进行多事务并发处理的一些小经验
    mysql之sql_mode =only_full_group_by 设置问题
    1、一维数组排序
    使用正则表达式构造定制的HTML5输入框
    JavaScript加密库CryptoJS的使用
    安全密码存储,该怎么做,不该怎么做?
    google 站内搜索
    导入导出xls数据
  • 原文地址:https://www.cnblogs.com/cxygg/p/9602111.html
Copyright © 2011-2022 走看看