vagrant ubuntu 22.04 ansible 配置

复制代码
sudo apt update
sudo apt install sshpass -y

安装SSH工具

执行以下命令安装sshpass工具,用于非交互式SSH密码验证:

bash 复制代码
sudo apt update
sudo apt install sshpass -y

主机清单配置

/etc/ansible/hosts文件定义了主机分组和连接变量:

ini 复制代码
[master]
192.168.56.106

[node]
192.168.56.107
192.168.56.108

[master:vars]
ansible_user=vagrant
ansible_password=vagrant
ansible_become=yes
ansible_become_method=sudo
ansible_become_password=vagrant

[node:vars]
ansible_user=vagrant
ansible_password=vagrant
ansible_become=yes
ansible_become_method=sudo
ansible_become_password=vagrant

配置文件优化

/etc/ansible/ansible.cfg禁用SSH主机密钥检查:

ini 复制代码
[defaults]
host_key_checking = False

安全改进建议

  1. 使用SSH密钥认证替代明文密码 在目标主机上部署公钥后,移除ansible_passwordansible_become_password参数

  2. 启用vault加密敏感数据 对密码等敏感信息使用ansible-vault加密:

    bash 复制代码
    ansible-vault encrypt_string 'vagrant' --name 'ansible_password'
  3. 最小权限原则 在sudoers文件中限制权限:

    ini 复制代码
    vagrant ALL=(ALL) NOPASSWD: /usr/bin/apt,/usr/bin/systemctl

连接测试方法

验证节点连通性:

bash 复制代码
ansible all -m ping

变量管理替代方案

考虑使用group_vars目录替代内联变量:

bash 复制代码
mkdir -p /etc/ansible/group_vars/{master,node}

每个组变量文件示例(/etc/ansible/group_vars/master/main.yml):

yaml 复制代码
ansible_user: vagrant
ansible_become: yes
相关推荐
运维全栈笔记18 小时前
Ansible 自动化 Nginx 集群部署实战:动态 Inventory、滚动发布与 Role 工程化
nginx·自动化·ansible
小此方19 小时前
告别云服务器连接困扰——Windows下利用VirtualBox安装配置Ubuntu虚拟机详细教程
服务器·windows·ubuntu
Soari2 天前
Linux 内核对比:PREEMPT_DYNAMIC vs PREEMPT_RT
linux·运维·ubuntu
明月不会写代码2 天前
Ubuntu 下 Kitty 终端配置记录
linux·ubuntu
weipt2 天前
利用wsl给windows电脑上安装一个ubuntu
linux·运维·ubuntu
阿钱真强道2 天前
01 嵌入式操作系统 | 课程导论与虚拟机安装 Ubuntu
linux·ubuntu·嵌入式·虚拟机
IT菜鸟程3 天前
Ubuntu 下 apt 版 Nginx 升级为源码编译版本完整操作指南(1.24.0 → 1.30.4 实战)
linux·nginx·ubuntu
Mr-Apple3 天前
系统找不到指定的文件-CreateInstance/CreateVm/HCS/ERROR_FILE_NOT_FOUND
linux·windows·ubuntu·wsl
自律最差的编程狗3 天前
Ubuntu下Docker部署Ollama 轻量模型
linux·ubuntu·docker
阿钱真强道3 天前
04 嵌入式操作系统 | 常用命令Ⅱ:用户权限、进程与网络
linux·ubuntu·进程管理·用户权限·网络排查