• Centos7配置ssh免密登录群发


      ssh免密登录是客户端发送自己的公钥到服务器。用公钥进行解密,自己生成的私钥进行加密。

      首先在客户端查看sshd服务是否启动

      

    1 [zhiwei@zhiwei1 ~]$ ps -Af|grep sshd;
    2 root       6983      1  0 08:21 ?        00:00:00 /usr/sbin/sshd -D
    3 root      16949   6983  0 10:13 ?        00:00:00 sshd: zhiwei [priv]
    4 zhiwei    16951  16949  0 10:13 ?        00:00:00 sshd: zhiwei@pts/0
    5 zhiwei    16998  16952  0 10:14 pts/0    00:00:00 grep --color=auto sshd

      检查是否安装了有关ssh的三个软件包:openssh-server,openssh-client,openssh

    [zhiwei@zhiwei1 ~]$ yum list installed | grep ssh
    libssh2.x86_64                          1.4.3-12.el7                   @anaconda
    openssh.x86_64                          7.4p1-16.el7                   @anaconda
    openssh-clients.x86_64                  7.4p1-16.el7                   @anaconda
    openssh-server.x86_64                   7.4p1-16.el7                   @anaconda

     

      然后查看有没有ssh-keygen命令 whick ssh-keygen;

      之后生成秘钥:

    ssh-keygen -t -rsa -P  '' -f  ~/.ssh/id_rsa 

      其中-t参数是使用的算法名字,-P参数为设置密码,这里密码为空,也可以不写,-f参数是设置秘钥生成路径。

      生成完之后,将id_rsa.pub分发到各个服务器的~/.ssh/下,并将其追加到authorized_keys中(没有这个文件可以创建)。

      因为博主要配置的服务端比较多,为了省事,可以用类似的脚本:

    #/bin/bash
    if [[$# -lt 1]];then echo no params;exit;fi
    p=$1
    q=$2
    for((i=242;i<=250;i=$i+1));do
            scp -r $p zhiwei@192.168.118.$i:$q
    done;
    

      可以直接将id_rsa.pub群发到各台服务器。然后用另一个脚本,类似这个:

    #/bin/bash
    params=$@
    i=1
    for((i=242;i<=250;i=$i+1));do
            echo 192.168.118.$i======================================================
            ssh zhiwei@192.168.118.$i "$params"
            echo 192.168.118.$i======================================================
    done
    

     可以比较方便的将id_rsa.pub里面的内容追加到authorized_keys。

     然后坑来了~

     在Centos7中,.ssh的权限最好是711,或者700,只有当前用户能看到,其他用户最多有个执行权限。

     .ssh里面的authorized_keys最好是600,最多644权限。而ubuntu可以不用这么搞。。。。(博主也不知道为啥,下面有知道的小伙伴可以留言)

     。。。。。今天配ssh免密登录卡在这个地方卡了半天。。。。。

     搞定~

     

  • 相关阅读:
    反正我是猜错,关于javascript包装对象的一个坑
    《编写可维护的javascript》推荐的编码规范之——编程实践
    《编写可维护的javascript》推荐的编码规范之——编程风格
    35行的山寨版jQuery
    Css进度条
    nginx的location和proxy_pass是否带斜杠的区别
    mongodb笔记
    在安装完 docker for windows 之后,hype-v打开,之后再关闭,vmware无法使用,虚拟机报错:传输(vmdb)错误-32:pipe:read failed
    awk笔记备忘
    sed命令笔记备忘
  • 原文地址:https://www.cnblogs.com/zhiweiXiaomu/p/11810547.html
Copyright © 2020-2023  润新知