ansible连接目标主机时,报sh: .ssh/authorized_keys: Permission denied

这两天在学习ansible,想要用ssh连接另一台linux服务器

#生成ssh,输入以下指令然后一直回车,在 .ssh/下会有公钥和私钥
ssh-keygen 

#发送公钥至目标主机,目标主机的.ssh/下会有authorized_keys,里面存放了公钥
ssh-copy-id root@xxx.xxx.xxx.xxx

刚开始我是用这个方法去向目标主机发送公钥,然后我打算用ansible去ping这个主机的时候

#ping主机的命令
ansible all -m ping

却报错
sh: .ssh/authorized_keys: Permission denied
我查了好多资料,后面是解决了,接下来写出我的解决过程(把之前的.ssh下面的文件都删了,重新再来生成一边,把目标主机authorized_keys也删了)

#生成ssh
ssh-keygen 
#将公钥的内容写入authorized_keys中
cat id_rsa.pub >> authorized_keys

#将公钥发送给目标主机
scp id_rsa.pub xxx.xxx.xxx.xxx:/root/.ssh

#-----------------接下来是目标主机的操作----------
#刚开始删除的时候报Operation not permitted,用这个指令就可以了
chattr -i authorized_keys  
#删除原来的authorized_keys文件
rm -rf authorized_keys
cat id_rsa.pub >> authorized_keys

然后我再ping的时候就成功了
在这里插入图片描述
在我刚毕业的时候也接触了ansible,可是那时候我没有linux基础,那时候也遇到了这个问题,可是解决不了。现在熟悉了linux操作后,才发现这个问题解决的那么简单。学习的路还有很长啊!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值