bitwarden
Ansible Роль: Bitwarden
Развертывание Bitwarden с помощью Docker и Docker-Compose, используя bitwarden.sh
.
Эта роль является автоматизированной оберткой вокруг скриптов настройки Bitwarden. Она активно использует обработчики для запуска задач настройки и обновлений.
Если вам нужна какая-либо задача, не охваченная этой ролью, вы можете напрямую использовать скрипт настройки на машине. Используйте официальную документацию как справочник: https://bitwarden.com/help/article/install-on-premise/
Использование
Добавьте роль в свой плейбук:
- hosts: server
roles:
- { role: breuninger.bitwarden }
Известные проблемы
Certbot
В настоящее время мы поддерживаем только статические TLS сертификаты для Nginx. Интеграция с Certbot не настроена. Вы можете добавить эту функцию в качестве PR, если это необходимо.
Версия Bitwarden
Версия Bitwarden в файлах настройки отличается от версии, указанной в тэге репозитория. Это связано с их стратегией выпуска, при которой фактическая версия увеличивается только в основной ветке. Мы уже ведем переговоры с Bitwarden и надеемся на другой способ выпуска.
Режимы SSL
Скрипт установки Bitwarden позволяет настраивать SSL четырьмя различными способами: пользовательский SSL сертификат, сертификат SSL, созданный Let's Encrypt, самоподписанный сертификат, сгенерированный контейнером установки, и отсутствие SSL (не рекомендуется для обычных установок).
Пользовательский
Для сохранения обратной совместимости этот режим является значением по умолчанию для этой роли. Хотя скрипт установки Bitwarden позволяет использовать неподписанные сертификаты, эта роль требует, чтобы сертификат был доверенным (подписанным ЦС, а не самоподписанным).
- hosts: server
roles:
- role: breuninger.bitwarden
vars:
bitwarden_ssl_mode: provided
bitwarden_nginx_cert_path: /path/to/ssl/cert
bitwarden_nginx_key_path: /path/to/ssl/key
Если требуется использование неподписанного сертификата, это можно добавить с новым ssl_mode и соответствующими параметрами в defaults/main.yml
.
Let's Encrypt
Используйте интеграцию SSL Certbot, которая идет с скриптом установки Bitwarden.
- hosts: server
roles:
- role: breuninger.bitwarden
vars:
bitwarden_ssl_mode: lets_encrypt
bitwarden_lets_encrypt_email: [email protected]
Сгенерированный самоподписанный
Скрипт установки Bitwarden позволяет генерировать самоподписанный SSL сертификат для использования SSL, но из недоверенного источника. Два вышеперечисленных метода лучше подходят для запуска Bitwarden в производственной среде. Пожалуйста, выберите один из них, вместо того, чтобы использовать этот вариант, если это совершенно необходимо.
- hosts: server
roles:
- role: breuninger.bitwarden
vars:
bitwarden_ssl_mode: generate
Без SSL
Пожалуйста, внимательно рассмотрите ваш случай использования перед выбором этой опции. Один из законных случаев использования — это завершение SSL на обратном прокси.
- hosts: server
roles:
- role: breuninger.bitwarden
vars:
bitwarden_ssl_mode: disable
Установите и настройте Bitwarden локально в стиле docker-compose.
Содержание
Переменные по умолчанию
bitwarden_domain_name
Доменное имя, используемое для Bitwarden
Значение по умолчанию
bitwarden_domain_name: localhost
bitwarden_global_env
Карта глобальных переменных окружения Bitwarden. Каждое значение соответствует global.override.env. См. https://bitwarden.com/help/article/environment-variables/
Значение по умолчанию
bitwarden_global_env: {}
Пример использования
bitwarden_global_env:
globalSettings__mail__smtp__host: localhost
globalSettings__mail__smtp__port: 25
bitwarden_lets_encrpyt_email
Email-аккаунт Let's Encrypt, если bitwarden_ssl_mode установлен на "lets_encrypt".
bitwarden_lets_encrypt_email
Значение по умолчанию
bitwarden_lets_encrypt_email:
bitwarden_nginx_cert_path
Путь к файлу сертификата, используемого для контейнера Nginx (обязателен, если bitwarden_ssl_mode == "provided"
). Пользователь роли отвечает за предоставление действительного файла сертификата. Файл копируется из указанного места в домашнюю директорию Bitwarden для обеспечения корректного отображения внутри контейнера.
Значение по умолчанию
bitwarden_nginx_cert_path:
bitwarden_nginx_key_path
Путь к файлу ключа для контейнера Nginx (обязателен, если bitwarden_ssl_mode == "provided"
). Пользователь роли отвечает за предоставление действительного файла ключа. Файл копируется из указанного места в домашнюю директорию Bitwarden для обеспечения корректного отображения внутри контейнера.
Значение по умолчанию
bitwarden_nginx_key_path:
bitwarden_region
Регион, используемый для Bitwarden. Опции: US, EU
Значение по умолчанию
bitwarden_region: US
bitwarden_script_version
Значение по умолчанию
bitwarden_script_version: v2023.12.0
bitwarden_setup_config
Карта значений конфигурации установки Bitwarden для переопределения. Используйте это для изменения значений в сгенерированном config.yml файле от Bitwarden.
Значение по умолчанию
bitwarden_setup_config: {}
Пример использования
bitwarden_setup_config:
database_docker_volume: true
bitwarden_ssl_mode
Значение по умолчанию
bitwarden_ssl_mode: provided
bitwarden_ssl_provider
Указывает режим SSL для настройки установки. Опции: provided, generate, lets_encrypt, disable
bitwarden_test_install_script
Флаг для отключения загрузки скрипта bitwarden.sh
. Используется в случаях, когда требуется протестировать режим ssl Let's Encrypt без боязни достигнуть лимита Let's Encrypt. Или для тестирования изменений в скриптах bitwarden.sh
или run.sh
. Надеемся, что этот флаг можно будет добавить в скрипт bitwarden.sh
в будущем, а не использовать здесь.
Значение по умолчанию
bitwarden_test_install_script: false
Зависимости
Нет.
Лицензия
MIT
Автор
Operations Core Toolig ops-core-tooling@breuninger.de
ansible-galaxy install e-breuninger/ansible-role-bitwarden