sudo提权,ansible批量给所有主机创建系统账户,授权
sudo(superuser or another do)让普通用户可以以超级管理员或其他人的身份执行命令。
sudo基本流程如下:
1.管理员需要先授权(修改/etc/sudoers文件)
2.普通用户以sudo的形式执行命令
3.可以通过sudo -l 查看授权情况
修改/etc/sudoers的方法如下:
1.visudo(带语法检查,默认没有颜色提示)
2.vim /etc/sudoers(不带语法检查,默认有颜色提示)
授权格式:
用户或组 主机列表=(提权身份) [NOPASSWD]:命令列表
NOPASSWD的意思是执行sudo不需要输入自己的密码
注意事项:命令需要写绝对路径,对组授权需要在组名称前面加%
## cat /etc/sudoers
root ALL=(ALL) ALL
tom ALL=(root) /usr/bin/systemctl tom以root身份可以启动关闭重启服务
%wheel ALL=(ALL) ALL
$ sudo systemctl restart sshd 提权以root身份执行
ansible批量给所有主机创建系统账户,授权
远程所有被管理主机批量创建系统账户,账户名称为alice,密码为123456。
# ansible all -m user -a "name=alice password={{'123456' | password_hash('sha512')}}"
配置alice账户可以提权执行所有命令
使用lineinfile模块修改远程被管理端主机的/etc/sudoers文件,line=后面的内容是需要添加到文件最后的具体内容。等于是在/etc/sudoers文件末尾添加一行:alice ALL=(ALL) NOPASSWD:ALL
#ansible all -m lineinfile -a "path=/etc/sudoers line='alice ALL=(ALL) NOPASSWD:ALL'“
验证:在node1上面测试
#su - alice
$sudo systemctl restart sshd
######################
修改ansible配置文件
######################
默认ansible是通过root远程被管理端主机
可以修改配置文件以普通用户远程被管理端主机执行自动化运维
vim ~/ansible/ansible.cfg
[defaults]
inventory = ~/ansible/hosts
remote_user = alice #以什么用户远程被管理主机(被管理端主机的用户名)
#host_key_checking = False #是否校验密钥
[privilege_escalation]
become = true #alice没有特权,是否需要切换用户提升权限
become_method = sudo #如何切换用户(比如用su就可以切换用户,这里是sudo)
become_user = root #切换成什么用户(把alice提权为root账户)
become_ask_pass = no #执行sudo命令提权时是否需要输入密码
远程被管理端主机的alice用户,需要提前配置SSH密钥。
#for i in node1 node2;
do ssh-copy-id alice@$i
done
# ssh alice@node1 #依次远程所有主机看看是否需要密码
########################
修改inventory主机清单配置文件(实验参考)
########################
vim ~/ansible/inventory
[test]
node1 ansible_ssh_port=220 #自定义远程SSH端口
[proxy]
node2 ansible_ssh_user=alice #自定义远程连接的账户名
[webserver]
node[3:4] ansible_ssh_pass=密码 #自定义远程连接的密码
[database]
node5 ansible_ssh_private_key_file=密钥文件
[cluster:children]
webserver
database
sudo提权,ansible批量给所有主机创建系统账户,授权的更多相关文章
- ansible使用普通用户免密登陆+sudo提权
前提:从ansible控制端使用test用户可以免密登陆所有被控制端,并且被控端test用户支持sudo提权 # ansible主机清单 cat /etc/ansible/hosts [online- ...
- Ubuntu无法sudo提权,报当前用户不在sudoers文件中错误
Ubuntu安装后默认root不能登陆系统,密码也是随机生成,其他用户使用root权限,可以使用sudo提权,前提是该用户在/etc/sudoers配置列表中. 但是有时用户名从/etc/sudoer ...
- 2019-10-16,sudo提权漏洞(CVE-2019-14287)实现
sudo是linux系统命令,让普通账号以root身份执行某些命令,比如,安装软件,查看某些配置文件,关机,重启等,如果普通用户需要使用sudo需要修改配置文件,/etc/sudoers,将sudo使 ...
- [提权]sudo提权复现(CVE-2019-14287)
2019年10月14日, sudo 官方在发布了 CVE-2019-14287 的漏洞预警. 0x00 简介 sudo 是所有 unix操作系统(BSD, MacOS, GNU/Linux) 基本集成 ...
- sudo 提权漏洞(CVE-2019-14287)复现 (10.16 第二十二天)
sudo是Linux系统命令,让普通账号以root身份去执行某些命令,比,安装软件.查看某些配置文件.关机.重启等操作,如果普通账号需要使用sudo需要修改配置文件/etc/sudoers,将sudo ...
- sudo 提权漏洞(CVE-2019-14287)复现
(该文参考网络他人资料,仅为学习,不许用于非法用途) 一.环境 1.sudo版本小于1.8.28的Linux系统 2.sudo 是Linux系统命令,让普通账号以root身份去执行某些命令,比如:安装 ...
- Linux文件权限;ACL;Setuid、Setgid、Stick bit特殊权限;sudo提权
相关学习资料 http://blog.sina.com.cn/s/blog_4e2e6d6a0100g47o.html http://blog.csdn.net/aegoose/article/det ...
- Linux使用sudo提权时,出现xx 不在 sudoers 文件中。此事将被报告。visudo 命令简单介绍。
在使用 sudo 临时提权时,出现:不在 sudoers 文件中.此事将被报告. 可以使用 visudo命令 来配置/etc/sudoers文件,将目标用户赋予使用sudo命令的能力. visudo命 ...
- linux CVE-2019-14287 Sudo提权漏洞
CVE-2019-14287 sudo介绍 sudo,也就是以超级管理员身份运行(superuser do)的意思.sudo 是 Linux 中最常使用的重要实用程序之一,它功能十分强大,几乎安装在每 ...
随机推荐
- C#开发笔记之01-为什么开源框架会大量的使用protected virtual?
C#开发笔记概述 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/957 访问. 我们在很多开源框架中会经常看到prote ...
- 水题大战Vol.3 B. DP搬运工2
水题大战Vol.3 B. DP搬运工2 题目描述 给你\(n,K\),求有多少个\(1\)到\(n\) 的排列,恰好有\(K\)个数\(i\) 满足\(a_{i-1},a_{i+1}\) 都小于\(a ...
- 树莓派搭建网站wordpress的url写错 问题解决方法 有效GUI方法
这个时候wordpress的后台已经登陆不了了,所以要对数据库做一些改变. 先说一下我是跟b站韩博士学的,LNMP.如果我们用的不一个方法的话下面就不用看了.下面是具体方法: 1 浏览器登录phpm ...
- JavaScript设计模式之命令模式【命令解耦】
在讲解命令模式之前我们先来了解一个生活中的命令模式场景: 场景1: 医院看病抓药: 当你因为肾虚到医院看医生,医生一番操作之后得出结论:要吃个疗程[夏桑菊].[小柴胡](药名纯属虚构,真的肾虚就找医生 ...
- linux下udev和mdev的使用
linux下设备文件系统有devfs.udev和mdev这三种. 一.devfs devfs是由Linux 2.4内核引入的,引入时被许多工程师给予了高度评价,它的出现使得设备驱动程序能自主地管理自己 ...
- html+css知识点以及常见的坑
float 与 绝对定位 共同点:都脱离文档流,不占用原来的位置,后面的内容占有位置 不同点: float后者居上,补齐,且只能在父级盒子内活动,且不能浮动在照片上. 绝对定位脱离文档流后,直接漂浮到 ...
- Linux环境下安装JDK8
Linux环境下搭建Java项目运行环境,首先要安装JDK,安装JDK8的步骤如下: 1 下载JDK安装包 下载地址:http://www.oracle.com/technetwork/java/ja ...
- windows操作报错:无法启动此程序,因为计算机中丢失api-ms-win-core-winrt-string-l1-1-0.dll
在Windows上做提交svn操作时报错:无法启动此程序,因为计算机中丢失api-ms-win-core-winrt-string-l1-1-0.dll,如下图: 解决办法: 在 https://cn ...
- 结对项目 实现自动生成四则运算题目的程序 (C++)
本次作业由 陈余 与 郭奕材 结对完成 零.github地址: https://github.com/King-Authur/-Automatically-generate-four-arithmet ...
- Java数据结构——AVL树
AVL树(平衡二叉树)定义 AVL树本质上是一颗二叉查找树,但是它又具有以下特点:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树,并且拥有自平衡机制.在AV ...