<dl id='tkwsq'></dl>
<acronym id='tkwsq'><em id='tkwsq'></em><td id='tkwsq'><div id='tkwsq'></div></td></acronym><address id='tkwsq'><big id='tkwsq'><big id='tkwsq'></big><legend id='tkwsq'></legend></big></address>

<code id='tkwsq'><strong id='tkwsq'></strong></code>

  • <ins id='tkwsq'></ins>

      <fieldset id='tkwsq'></fieldset>
        <i id='tkwsq'><div id='tkwsq'><ins id='tkwsq'></ins></div></i>
        <i id='tkwsq'></i>
          <span id='tkwsq'></span>
        1. <tr id='tkwsq'><strong id='tkwsq'></strong><small id='tkwsq'></small><button id='tkwsq'></button><li id='tkwsq'><noscript id='tkwsq'><big id='tkwsq'></big><dt id='tkwsq'></dt></noscript></li></tr><ol id='tkwsq'><table id='tkwsq'><blockquote id='tkwsq'><tbody id='tkwsq'></tbody></blockquote></table></ol><u id='tkwsq'></u><kbd id='tkwsq'><kbd id='tkwsq'></kbd></kbd>

            Linux使用ssh公钥实现免密码登录实例

            • 时间:
            • 浏览:9
            • 来源:124软件资讯网

                ssh 无密码登录要使用公钥与私钥  。linux下可以用用ssh-keygen天生公钥/私钥对  ,下面我以CentOS为例  。

                有机械A(192.168.1.155)  ,B(192.168.1.181)  。现想A通过ssh免密码登录到B  。

                首先以root账户上岸为例 。

                1.在A机下天生公钥/私钥对 。

                [root@A ~]# ssh-keygen -t rsa -P ''

                -P表现密码  ,-P '' 就表现空密码  ,也可以不用-P参数  ,这样就要三车回车  ,用-P就一次回车  。

                该下令将在/root/.ssh目录下面发生一对密钥id_rsa和id_rsa.pub  。

                一样平常接纳的ssh的rsa密钥:

                id_rsa 私钥

                id_rsa.pub 公钥

                下述下令发生差别类型的密钥

                ssh-keygen -t dsa

                ssh-keygen -t rsa

                ssh-keygen -t rsa1

                2.把A机下的/root/.ssh/id_rsa.pub 复制到B机的 /root/.ssh/authorized_keys文件里  ,先要在B机上建立好 /root/.ssh 这个目录  ,用scp复制 。

                [root@A ~]# scp /root/.ssh/id_rsa.pub root@192.168.1.181:/root/.ssh/authorized_keys

                root@192.168.1.181's password:

                id_rsa.pub 100% 223 0.2KB/s 00:00

                由于还没有免密码登录的  ,以是要输入一次B机的root密码  。

                3.authorized_keys的权限要是600!!!

                [root@B ~]# chmod 600 /root/.ssh/authorized_keys

                4.A机登录B机  。

                [root@A ~]# ssh -l root 192.168.1.181

                The authenticity of host '192.168.1.181 (192.168.1.181)' can't be established.

                RSA key fingerprint is 00:a6:a8:87:eb:c7:40:10:39:cc:a0:eb:50:d9:6a:5b.

                Are you sure you want to continue connecting (yes/no)? yes

                Warning: Permanently added '192.168.1.181' (RSA) to the list of known hosts.

                Last login: Thu Jul 3 09:53:18 2008 from root

                [root@B ~]#

                第一次登录是时要你输入yes  。

                现在A机可以无密码登录B机了  。

                小结:登录的机子可有私钥  ,被登录的机子要有登录机子的公钥 。这个公钥/私钥对一样平常在私钥宿主机发生 。上面是用rsa算法的公钥/私钥对  ,固然也可以用dsa(对应的文件是id_dsa ,id_dsa.pub)

                想让A  ,B机无密码互登录  ,那B机以上面同样的方式设置即可 。

                SSH-KeyGen 的用法

                假设 A 为客户机械  ,B为目的机;

                要到达的目的:

                A机械ssh登录B机械无需输入密码;

                加密方式选 rsa|dsa均可以  ,默认dsa

                做法:

                1、登录A机械

                2、ssh-keygen -t [rsa|dsa]  ,将会天生密钥文件和私钥文件 id_rsa,id_rsa.pub或id_dsa,id_dsa.pub

                3、将 .pub 文件复制到B机械的 .ssh 目录  , 并 cat id_dsa.pub >> ~/.ssh/authorized_keys

                4、大功告成  ,从A机械登录B机械的目的账户  ,不再需要密码了;

                ssh-keygen做密码验证可以使在向对方机械上ssh ,scp不用使用密码.

                详细要领如下:

                ssh-keygen -t rsa

                然后所有回车,接纳默认值.

                这样天生了一对密钥 ,存放在用户目录的~/.ssh下 。

                将公钥考到对方机械的用户目录下  ,并拷到~/.ssh/authorized_keys中 。

                要保证.ssh和authorized_keys都只有用户自己有写权限  。否则验证无效  。(今天就是遇到这个问题  ,找了很久问题所在)  ,实在仔细想想  ,这样做是为了不会泛起系统毛病  。