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_password和ansible_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
相关推荐
水饺编程1 小时前
第1章:下载 Linux 0.12 内核
linux·c语言·汇编·ubuntu
水饺编程1 小时前
第1章:开发环境搭建,在 Windows 中安装 Git
linux·c语言·汇编·git·ubuntu
сокол4 小时前
【Python-基础-环境搭建】Ubuntu Python 开发环境搭建:编译、pipenv、pyenv、远程连接
开发语言·python·ubuntu
刘胡子大叔21 小时前
1Panel 部署 ThinkPHP8 踩坑实录
linux·ubuntu
刘胡子大叔1 天前
grep -n 行号辨换行
ubuntu
zhangrelay1 天前
ubuntu图形化和命令行查看硬件参数方式汇总-Surface Go
linux·笔记·学习·ubuntu
MicrosoftCloud1 天前
用户权限 02|/etc/passwd、/etc/shadow、/etc/group:三个文件讲透 Linux 用户体系
linux·运维·ubuntu·用户管理·权限·useradd
zhangrelay2 天前
机械臂末端规划智能模型的误区演示
linux·笔记·学习·ubuntu·ros2
水饺编程2 天前
第1章,了解乌班图环境,使用浏览器和邮箱
c语言·汇编·ubuntu
ken22322 天前
ubuntu 24.04, audacity 4 AppImage 加载 libavdevice.so.62 /.61 /.63 失败:依赖缺失?
linux·运维·ubuntu