博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ansible-playbook权限提升多种方式
阅读量:4339 次
发布时间:2019-06-07

本文共 1890 字,大约阅读时间需要 6 分钟。

ansible-playbook 可以方便快速的批量执行部署和运维任务,对于不同的场景和服务器,需要使用不同的权限提升方式。

最佳实现:为了提高playbook的兼容性,跟功能没有直接关系的权限提升脚本,不要出现在palybook正文中,可以在ansible-playbook运行的时候,通过-e传入

场景一:我们有服务器的root密码,而且允许root直接登陆。

ansible-playbook -i 'aliyun.lihuanhuan.net,' ./ansible_playbook_test/site.yml -e "ansible_ssh_user='root' ansible_ssh_pass='password'"
#切换到app_user,并执行java程序- name: run app by java_user  shell: java -jar hello.jar  become: yes  become_method: su  become_user: app_user

场景二:我们有服务器的root密码,但是只允许普通用户user1使用su切换到root。

ansible-playbook -i 'aliyun.lihuanhuan.net,' ./ansible_playbook_test/site.yml -e "ansible_ssh_user='user1' ansible_ssh_pass='user1_password' ansible_become='yes' ansible_become_method='su' ansible_become_user='root' ansible_become_pass='root_password' " -vvv
#切换到app_user,并执行java程序- name: run app by java_user  shell: java -jar hello.jar  become: yes  become_method: su  become_user: app_user

场景三:我们只有服务器的app_user密码,而且只允许普通用户user1使用su切换到app_user。

ansible-playbook -i 'aliyun.lihuanhuan.net,' ./ansible_playbook_test/site.yml -e "ansible_ssh_user='user1' ansible_ssh_pass='user1_password' ansible_become='yes' ansible_become_method='su' ansible_become_user='app_user' ansible_become_pass='app_user_password' " -vvv
#切换到app_user,并执行java程序- name: run app by java_user  shell: java -jar hello.jar  become: yes  become_method: su  become_user: app_user

场景四:我们只有user1和password,但是允许使用特定的实用程序切换到root,例如:dzdo su -

ansible-playbook -i 'aliyun.lihuanhuan.net,' ./ansible_playbook_test/site.yml -e "ansible_ssh_user='user1' ansible_ssh_pass='user1_password' ansible_become_exe='dzdo su -' ansible_become='yes' ansible_become_method='su' ansible_become_user='root' ansible_become_pass='user1_password' " -vvv
#切换到app_user,并执行java程序- name: run app by java_user  shell: java -jar hello.jar  become: yes  become_method: su  become_user: app_user

refer to

转载于:https://www.cnblogs.com/lihuanhuan/p/11154845.html

你可能感兴趣的文章
搜索框键盘抬起事件2
查看>>
阿里百川SDK初始化失败 错误码是203
查看>>
透析Java本质-谁创建了对象,this是什么
查看>>
BFS和DFS的java实现
查看>>
关于jquery中prev()和next()的用法
查看>>
一、 kettle开发、上线常见问题以及防错规范步骤
查看>>
eclipse没有server选项
查看>>
CRC码计算及校验原理的最通俗诠释
查看>>
使用Gitbook来编写你的Api文档
查看>>
jquery扩展 $.fn
查看>>
Markdown指南
查看>>
influxDB的安装和简单使用
查看>>
JPA框架学习
查看>>
JPA、JTA、XA相关索引
查看>>
机器分配
查看>>
php opcode缓存
查看>>
springcloud之Feign、ribbon设置超时时间和重试机制的总结
查看>>
观看杨老师(杨旭)Asp.Net Core MVC入门教程记录
查看>>
UIDynamic(物理仿真)
查看>>
Windows下安装Redis
查看>>