nginx — распространение сертификатов
Содержание
nginx — распространение сертификатов#
Плейбук: playbooks/maintenance/nginx/nginx_update_certs.yml
Роль: roles/nginx_update_certs_BETA
Команда для запуска:
ansible-playbook -i inv/production \
--vault-id keys@~/.secrets/keys \
playbook/maintenance/nginx/update_certs_BETA.yml
Добавить новый сайт:#
vim inv/production/group_vars/PROD_NginxFront.yml
Добавляем fqdn сайта в одну из двух переменных:
inv_nginx_srv_sites— список всех актуальных вебсайтов;inv_nginx_additional_certs— список доп. сертификатов, например, api.appindex.ru.
Для генерации нового сертификата есть helper script
roles/nginx_update_certs_BETA/files/prod/generate_new_cert.sh, подробнее:
Скрипт для ПРОДа
Описание#
Сами сертификаты хранятся в roles/nginx_update_certs_BETA/files/.
Закрытые / частные / приватные ключи зашифрованы с помощью ansible-vault
(расшифровываются при выполнении плейбука).
Пароль для расшифровки хранится в ~/.secrets/keys (вне репозитория
git!).
Команда для шифрования нового ключа:
ansible-vault encrypt \
--vault-id keys@~/.secrets/keys \
rustories.appworks.ru.key
Просмотреть зашифрованный файл ключа:
ansible-vault view \
--vault-id keys@~/.secrets/keys \
rustories.appworks.ru.key