• Linux SSH免密登录


    SSH无密码登录要使用公钥与私钥。Linux可以用ssh-keygen生成公钥/私钥对,下面以Ubuntu为例说明配置过程。

    有两个节点:node01(172.17.0.14)和node02(172.17.0.17),node01节点想通过ssh免密登录到node02节点。

    1. 在node01节点生成公钥/私钥对

    ubuntu@node01:~$ ssh-keygen -t rsa -P ''

    -P表示密码,-P '' 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车。完成后会在/home/ubuntu下生成.ssh目录,.ssh下有id_rsa和id_rsa.pub。

    2. 把node01的id_rsa.pub复制到node02,并追加到node02的.ssh/authorized_keys文件。(若node02没有.ssh和authorized_keys文件则创建该文件夹和文件)

    ubuntu@node01:~$ scp .ssh/id_rsa.pub ubuntu@node02:/home/ubuntu

    3. 在node02节点把从node01复制的id_rsa.pub追加到.ssh/authorzied_keys文件

    ubuntu@node02:~$ cat id_rsa.pub >> .ssh/authorized_keys

    4. node01登录node02

    ubuntu@node01:~$ ssh 172.17.0.17

    至此,node01就可以免密登录node02了。

    登录机器拥有私钥,被登录机器需要拥有登录机器的公钥。这个公钥/私钥对一般在私钥宿主机产生。上面是用rsa算法的公钥/私钥对,当然也可以用dsa(对应的文件是id_dsa,id_dsa.pub)。想让node01和node02相互免密登录,那node02用上述方式同样配置即可。

    当然,IP相对于主机名要难记的多,我们也可以直接以 ssh hostname 方式来进行远程登录,在 /etc/hosts 文件中添加以下配置:

    172.17.0.14 node01
    172.17.0.17 node02

    配置完成后就可以直接以主机名登录了

    ubuntu@node01:~$ ssh node02
  • 相关阅读:
    ILockBytes Windows Mobile 6.5
    C# 中 in,out,ref 的作用与区别
    riched32.dll riched20.dll msftedit.dll 解析
    C# 解决窗体假死的状态
    testform
    ParallelProgramming-多消费者,多生产者同时运行并行
    C# 多线程控制 通讯
    C# 多线程
    iSpy免费的开源视频监控平台
    核心J2EE模式
  • 原文地址:https://www.cnblogs.com/warehouse/p/10672379.html
Copyright © 2020-2023  润新知