1.公钥验证出现问题一般检查selinux是否关闭,还有就是authorized_keys权限是否为600。

2.我出现的问题:执行指令ansible test -m command -a 'w'发现本机127.0.0.1不能成功打印指令,而另外一个机器却可以

[root@CentOS3 .ssh]# ansible test -m command -a 'w'

127.0.0.1 | UNREACHABLE! => {

    "changed": false, 

    "msg": "Failed to connect to the host via ssh.", 

    "unreachable": true

}

192.168.200.134 | SUCCESS | rc=0 >>

 23:29:28 up  1:51,  2 users,  load average: 0.00, 0.00, 0.00

USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT

root     pts/0    192.168.200.1    22:03    4:00   0.05s  0.05s -bash

root     pts/1    192.168.200.132  23:29    0.00s  0.10s  0.00s /bin/sh -c LANG

解决:

曾经在做秘钥验证的时候,/etc/ssh/sshd_config写了AuthorizedKeysFile 和AuthorizedKeysCommand,这2个对应的路径以及文件名必须写对才可以,否则会影响现在这个ansible验证,经过多次验证,我把authorized_keys写错成authorized_key,再次输入指令虽然依旧可以,但是过几分钟之后就会失败了,再次改回来之后,再次输入ansible test -m command -a 'w'就可以了。

spacer.gif