• SSH无密码登录


    client 192.168.1.10(ansible@client无密码登录到ansible@server)

    server   192.168.1.20

    首先在客户端上创建一对公私钥(公钥文件:~/.ssh/id_rsa.pub;私钥文件:~/.ssh/id_rsa),然后把公钥放到服务器上(~/.ssh/authorized_keys),自己保留好私钥。当ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配。如果匹配成功就可以登录了.

    第一次登陆后,ssh就会把登陆的ssh指纹存放在用户home目录的.ssh目录的know_hosts文件中,如果ssh指纹已经改变,你需要把 .ssh 目录下的know_hosts中的相应指纹删除,再登陆回答yes,方可登陆

    ssh public key解决密码登录问题

    openssh的ssh-keygen命令用来产生私钥和公钥(非对称加密)

    #ansible@client产生公钥和私钥(生成的私钥和公钥在家目录的.ssh文件夹下)

    [ansible@client]ssh-keygen -b 1024 -t dsa

    #client把公钥分发到ansible@server家目录的.ssh文件夹下 .ssh的权限必须为700 否则ssh会拒绝无密码登录

    [ansible@server]mkdir /root/.ssh;chmod 700 /root/.ssh

    [ansible@client]scp -p 10002 /home/ansible/.ssh/id_dsa.pub ansible@192.168.1.20:~/.ssh/authorized_keys #以后添加其它主机的公钥叠加到authorized_keys文件 >>

    #test

    [ansible@client]ssh -p 10002 ansible@192.168.1.20 'sudo cat /etc/shadow'

    #相关脚本

     1 #!/bin/bash
     2 #2014-8-13
     3 
     4 stuff="gtv_ma_1029_M325.apk"
     5 
     6 array_node[0]="*"#ip以*代替 保护隐私
     7 array_node[1]="*"
     8 array_node[2]="*"
     9 array_node[3]="*"
    10 array_node[4]="*"
    11 array_node[5]="*"
    12 array_node[6]="*"
    13 #到各节点上找出$stuff文件 并计算出md5值
    14 for i in ${array_node[*]}
    15 do
    16         printf "$((++n)):%s	%s
    " $i $(ssh -p 10002 root@$i "find / -name $stuff -type f -exec md5sum {} ; 2>/dev/null | cut -d ' ' -f1")
    17 done
  • 相关阅读:
    判断质数
    猜拳三局两胜
    输入年月日判断是这一年的哪一天
    switch case
    猜拳
    判断年月日是否正确
    老狼老狼几点了
    判断是否中奖
    平滑部署war包到tomcat-deploy.sh
    只用120行Java代码写一个自己的区块链-3挖矿算法
  • 原文地址:https://www.cnblogs.com/metasequoia/p/3899645.html
Copyright © 2020-2023  润新知