Перейти к основному содержанию

Ansible is being run in a world writable directory

Ansible

Поймал WARNING при попытке запустить ansible-playbook. Я бы даже назвал это ERROR. Горе-разработчики сделали очередную палку в колёса. Теперь нельзя просто так взять и запустить команду из директории, доступной всем на запись. Команда запустится, но конфигурационный файл ansible.cfg применён не будет.

ansible

Дело в том, что разработчики курнули фанты и решили, что кто-то заменит в директории ansible.cfg на свой и заставит вас выполнить совсем не то, что вы собирались сделать (serious security risk). А чего тогда ещё и антивирус себе не встроили, раз так пекутся о моей безопасности?

https://docs.ansible.com/ansible/latest/reference_appendices/config.html#avoiding-security-risks-with-ansible-cfg-in-the-current-directory

Настойчиво предлагают отобрать права на запись в директорию у всех, ограничить конкретными группами или пользователями. А если вы, как я, пользуетесь системами, эмулирующими Linux, типа Windows Subsystem for Linux (WSL) или Vagrant, то вам не повезло. Там всякие chmod, chown и chgrp не работают, так как диск монтируется с наивысшими привилегиями 777. В таком случае разработчики Ansible рекомендуют перемонтировать диск иначе.

Естественно, мы так поступать не будем, а просто явно укажем путь к нужному нам конфигурационному файлу Ansible в переменной ANSIBLE_CONFIG:

export ANSIBLE_CONFIG=/mnt/c/devops/kubespray/ansible.cfg

Теперь можно запустить ansible-playbook.

Теги

 

Похожие материалы