zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    MD5算法MFC实现
    asp.net2.0新特点
    file format
    C专家编程第二章学习笔记
    Bye Czech golden generation
    中间层
    学完谭C之后
    C语言学习之路
    荀子劝学篇
    C语言常用转义字符表
  • 原文地址:https://www.cnblogs.com/metasequoia/p/3899645.html
Copyright © 2011-2022 走看看