Some checks failed
		
		
	
	Ansible Testing / lint (push) Has been cancelled
				
			Ansible Testing / test (default) (push) Has been cancelled
				
			Ansible Testing / test (minimal) (push) Has been cancelled
				
			Ansible Testing / test (performance) (push) Has been cancelled
				
			Ansible Testing / deploy-check (push) Has been cancelled
				
			- Создана роль devops с функциями: * Создание пользователя devops * Генерация безопасного пароля (30 символов) * Настройка SSH доступа по ключу * Добавление в sudoers без пароля * Полная документация и тесты - Оптимизирована структура проекта: * Удален Dockerfile из корня (сборка из dockerfiles/ansible-controller) * Заменены внешние образы на локальные ansible-controller * Обновлен Makefile для использования локальных образов * Зашифрован vault/secrets.yml с помощью ansible-vault - Добавлена документация: * Руководство по работе с vault (docs/vault-guide.md) * Подробная документация роли devops * Примеры использования и тесты - Улучшена безопасность: * Все секреты зашифрованы * Обновлен .gitignore для vault файлов * Добавлены инструкции по безопасности
		
			
				
	
	
		
			51 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| ---
 | ||
| # Пример playbook для роли devops
 | ||
| # Автор: Сергей Антропов
 | ||
| # Сайт: https://devops.org.ru
 | ||
| 
 | ||
| - name: "Создание пользователя devops с безопасным паролем и SSH доступом"
 | ||
|   hosts: all
 | ||
|   become: true
 | ||
|   gather_facts: true
 | ||
| 
 | ||
|   vars:
 | ||
|     # Переменная для SSH ключа (должна быть передана из vault)
 | ||
|     devops_ssh_public_key: "{{ devops_ssh_keys.public_key }}"
 | ||
| 
 | ||
|   roles:
 | ||
|     - devops
 | ||
| 
 | ||
|   post_tasks:
 | ||
|     - name: "Проверка создания пользователя devops"
 | ||
|       command: "id {{ devops_user.name }}"
 | ||
|       register: user_check
 | ||
|       failed_when: user_check.rc != 0
 | ||
|       changed_when: false
 | ||
| 
 | ||
|     - name: "Проверка SSH директории"
 | ||
|       stat:
 | ||
|         path: "{{ devops_ssh.ssh_dir }}"
 | ||
|       register: ssh_dir_check
 | ||
| 
 | ||
|     - name: "Проверка authorized_keys"
 | ||
|       stat:
 | ||
|         path: "{{ devops_ssh.authorized_keys_file }}"
 | ||
|       register: auth_keys_check
 | ||
|       when: devops_ssh_public_key is defined
 | ||
| 
 | ||
|     - name: "Проверка sudo прав"
 | ||
|       command: "sudo -l -U {{ devops_user.name }}"
 | ||
|       register: sudo_check
 | ||
|       become: true
 | ||
|       changed_when: false
 | ||
| 
 | ||
|     - name: "Вывод результатов проверки"
 | ||
|       debug:
 | ||
|         msg: |
 | ||
|           Пользователь {{ devops_user.name }} создан: {{ user_check.rc == 0 }}
 | ||
|           SSH директория создана: {{ ssh_dir_check.stat.exists }}
 | ||
|           {% if devops_ssh_public_key is defined %}
 | ||
|           authorized_keys создан: {{ auth_keys_check.stat.exists }}
 | ||
|           {% endif %}
 | ||
|           Sudo права настроены: {{ sudo_check.rc == 0 }}
 |