美文网首页
ansible 普通用户提权执行命令

ansible 普通用户提权执行命令

作者: 与狼共舞666 | 来源:发表于2022-01-28 16:16 被阅读0次

    1.uncommnet以下配置项

    [privilege_escalation]
    become=True
    become_method=sudo
    become_user=root
    become_ask_pass=False
    

    2.受控端:sudo visudo

    sysadmin ALL=(ALL) NOPASSWD:ALL ##无密码登陆,可以调整

    ansible test2 -m yum -a "name=polkit state=latest update_only=yes" -u sysadmin --become-method sudo --become-user root -k -K
    SSH password: 
    BECOME password[defaults to SSH password]: 
    10.42.1.10 | CHANGED => {
        "ansible_facts": {
            "discovered_interpreter_python": "/usr/bin/python"
        }, 
        "changed": true, 
        "changes": {
            "installed": [], 
            "updated": [
                [
                    "polkit", 
                    "0.112-26.el7_9.1.x86_64 from updates"
                ]
            ]
        }, 
        "msg": "", 
        "rc": 0, 
        "results": [
            "Loaded plugins: fastestmirror, langpacks\nLoading mirror speeds from cached hostfile\nResolving Dependencies\n--> Running transaction check\n---> Package polkit.x86_64 0:0.112-26.el7 will be updated\n---> Package polkit.x86_64 0:0.112-26.el7_9.1 will be an update\n--> Finished Dependency Resolution\n\nDependencies Resolved\n\n================================================================================\n Package        Arch           Version                    Repository       Size\n================================================================================\nUpdating:\n polkit         x86_64         0.112-26.el7_9.1           updates         170 k\n\nTransaction Summary\n================================================================================\nUpgrade  1 Package\n\nTotal download size: 170 k\nDownloading packages:\nDelta RPMs disabled because /usr/bin/applydeltarpm not installed.\nRunning transaction check\nRunning transaction test\nTransaction test succeeded\nRunning transaction\n  Updating   : polkit-0.112-26.el7_9.1.x86_64                               1/2 \n  Cleanup    : polkit-0.112-26.el7.x86_64                                   2/2 \n  Verifying  : polkit-0.112-26.el7_9.1.x86_64                               1/2 \n  Verifying  : polkit-0.112-26.el7.x86_64                                   2/2 \n\nUpdated:\n  polkit.x86_64 0:0.112-26.el7_9.1                                              \n\nComplete!\n"
        ]
    }
    
    
    -m:要执行的模块,默认为command
    -a:指定模块的参数
    -u:ssh连接的用户名,默认用root,ansible.cfg中可以配置
    -b,--become:变成那个用户身份,不提示密码
    -k:提示输入ssh登录密码,当使用密码验证的时候用
    -s:sudo运行
    -U:sudo到哪个用户,默认为root
    -K:提示输入sudo密码,当不是NOPASSWD模式时使用
    -C:只是测试一下会改变什么内容,不会真正去执行
    -c:连接类型(default=smart)
    -f:fork多少进程并发处理,默认为5个
    -i:指定hosts文件路径,默认default=/etc/ansible/hosts
    -I:指定pattern,对已匹配的主机中再过滤一次
    -list-host:只打印有哪些主机会执行这个命令,不会实际执行
    -M:要执行的模块路径,默认为/usr/share/ansible
    -o:压缩输出,摘要输出
    --private-key:私钥路径
    -T:ssh连接超时时间,默认是10秒
    -t:日志输出到该目录,日志文件名以主机命名
    -v:显示详细日志
    
     
    
     
    
    ansible server1 -m setup   #产看指定主机server1上的facts变量信息
    ansible * -m setup           #查看指定的所有主机上的facts变量信息
    ansible-doc -l:列出有哪些可用的模块,按q退出
    ansible-doc -l | wc -l:列出有多少个可用的模块
    ansible-doc -l | grep user:列出与user有关的模块
    ansible-doc user:查看user模块的帮助文档,按q退出。也可以在最后一行输入/passwd,来过滤与passwd有关的内容
    ansible test -a 'df -h'  在test组执行df -h命令
    

    相关文章

      网友评论

          本文标题:ansible 普通用户提权执行命令

          本文链接:https://www.haomeiwen.com/subject/vmltkrtx.html