centos7上安装,配置ansible的坑

栏目: 服务器 · 发布时间: 5年前

内容简介:一、首先要准备好repo源1.从阿里云下载Centos的仓库源

一、首先要准备好repo源

1.从阿里云下载Centos的仓库源

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

2.从阿里云下载第三方epel源 (这里直接下载,未使用rpm -Uvh方式安装epel源)

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

二、安装expect命令

后期要通过expect进行自动交互式批量下发到被监管机上,由于centos7最小化安装没有自带expect命令,用下面命令安装:

yum -y install expect

三、往远程机 linux 批量分发公钥

看了很多资料,往远程机批量分发都是需要输入ssh协议的密码;既然是自动化运维,如果还需要手动输入,岂不是扯淡了;废话少说,给大家一个自动分发公钥的脚本:

#!/bin/bash
#注:此脚本可能只适用于centos系统,其他可能不适用,因为scp的提示信息可能不一样
export password=123
#rm -rf /root/.ssh/known_hosts

function pub_key () {
#创建.ssh目录,有些系统可能没有.ssh目录
/usr/bin/expect -c "
    spawn ssh root@$1
    expect \"(yes/no)?\" {send \"yes\n\"}
    expect \"*assword:\" {send \"$2\n\"}
    expect \"#\" {send \"rm -rf /root/.ssh/authorized_keys\n\"}
    expect \"#\" {send \"mkdir /root/.ssh\n\"}
    expect \"#\" {send \"exit\n\"}
    expect eof
    "
#远程拷贝公钥文件
/usr/bin/expect -c "
    spawn ssh-copy-id -i /root/.ssh/id_rsa.pub root@$1
    expect \"*assword:\" {send \"$2\n\"}
    expect eof
    "
#远程机公钥文件重新改变权限
/usr/bin/expect -c "
    spawn ssh root@$1
    expect \"*assword:\" {send \"$2\n\"}
    expect \"#\" {send \"chmod 0400 /root/.ssh/authorized_keys\n\"}
    expect \"#\" {send \"exit\n\"}
    expect eof
    "
}

j=1
for i in $(cat iplist.txt);do
    rm -rf /root/.ssh/known_hosts
    echo 第 $j 台 ip 是 $i 正在分发公钥,请稍后...
    pub_key $i $password
    echo $i 已完成分发公钥 
    let j++
done

1.iplist.txt文件是和此脚本同目录下的IP列表文件,每行都是一个IP地址

2.这里假设机器密码都是123,其实生产环境的密码都是统一的;

四、ssh协议相关命令补充

1.ssh-copy-id,ssh root@xxx.xxx.xxx.xxx,scp等命令都属于ssh协议簇里命令;如果首次对某台远程机使用其中的命令,则会出现(yes/no):的提示;输入yes之后,以后再对此台机器使用ssh协议中的命令,则不会再提示(yes/no):,因为在/root/.ssh/目录下生成了known_hosts,记录了远程连接记录;


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Algorithms in C++

Algorithms in C++

Robert Sedgewick / Addison-Wesley Professional / 1992-05-10 / USD 64.99

This version of Sedgewick's bestselling book provides a comprehensive collection of algorithms implemented in C++. The algorithms included cover a broad range of fundamental and more advanced methods:......一起来看看 《Algorithms in C++》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具