Архив за месяц: Май 2019

AWS: ротация ключей IAM пользователей, EC2 IAM Roles и Jenkins

30 мая 2019
 

 Сегодня просматривал IAM-пользователей в AWS, и вспомнил, что с точки зрения безопасности иногда полезно менять ключи доступа: Но тут встал вопрос: хорошо, задать ключам expire, и периодически их обновлять в AWS IAM – это одно… Но эти ключи используются в куче скриптов, которые запускаются в Jenkins-джобах. Например – провижен бекенда выполняется из Ansible и модуля… Читать далее »

OpenVPN: Let’s Encrypt DNS verification с certbot и AWS Route53 и обновление сертификата в OpenVPN Access Server

24 мая 2019
 

 В продолжение темы об установке и настройке OpenVPN Access Server, см. OpenVPN: настройка SSL и hostname. Прошло три месяца, строк действия сертификата от Let’s Encrypt закончился, надо его обновить (см. Prometheus: Alertmanager и blackbox-exporter — проверка срока действия SSL и нотификация в Slack). Можно было бы использовать привычную мне схему с webroot, но OpenVPN AS… Читать далее »

Debian: автоматические обновления с помощью unattended-upgrades и отправка почты через AWS SES

23 мая 2019
 

 Пакет unattended-upgrades выполняет автоматическую установку обновлений на Debian/Ubuntu. Представляет собой Python-скрипт (1500 строк), расположенный в /usr/bin/unattended-upgrade (при этом /usr/bin/unattended-upgrades является симлинком на /usr/bin/unattended-upgrade). Аналог для CentsOS/RHEL – yum-cron. Устанавливаем: [simterm] $ sudo apt -y install unattended-upgrades [/simterm] Основной файл настроек – /etc/apt/apt.conf.d/50unattended-upgrades, в нём настраиваются тип обновлений, отправка почты и прочее. Настройки самих обновлений выполняются… Читать далее »

Sentry: запуск self-hosted версии системы мониторинга ошибок на AWS EC2

18 мая 2019
 

 Для проекта мы пользовались Cloud-based версией Sentry, но в один прекрасный день исчерпали лимит на отправку сообщений, и бекенд-команда, по сути, осталась без мониторинга. Давно собирались запустить Sentry на своём сервере, появился повод. В посте описывается запуск Sentry с Docker Compose, настройка почты и пример перехвата ошибок в Python. Используем репозиторий Sentry. Запускаем AWS EC2,… Читать далее »

AWS: VPC peering DNS resolution и настройки DNS для OpenVPN AS

17 мая 2019
 

 Имеется VPC с OpenVPN. Эта VPC через VPC Peering объединена с другими VPC в нашем AWS-аккаунте. Проблема в том, что для разрешения DNS имён на приватные, а не публичные IP, сейчас используется dnsmasq на хосте с VPN-сервером, для которого создан файл /etc/dnsmasq.hosts, в котором вручную приходится вносить приватные IP для доменов. Подробнее см. в посте… Читать далее »

Linux: A stop job is running for Session c1 of user setevoy (1min 30s)

15 мая 2019
 

 Имеется свежеустановленная система Arch Linux, но проблема и решение подходят для любого дистрибутива с systemd. При рестартах – висит 1.5 минуты с сообщением вида: A stop job is running for Session c1 of user setevoy (1min 30s) Для проверки того, какой именно процесс мешает нормальному ребуту – после загрузки можно вызвать journalctl с опцией -p5… Читать далее »

AWS: MariaDB RDS – kill: You are not owner of thread

14 мая 2019
 

 Имеется AWS RDS с MariaDB. Ошибка и решение не специфичны ни для AWS RDS, ни для MariaDB. При попытке убить процесс – RDS сообщает, что: [simterm] MariaDB [(none)]> kill 759; ERROR 1095 (HY000): You are not owner of thread 759 [/simterm] Решение – использовать процедуру mysql.rds_kill(): [simterm] MariaDB [(none)]> SHOW CREATE PROCEDURE mysql.rds_kill\G *************************** 1.… Читать далее »

TestRail: сброс пароля admin

13 мая 2019
 

 Имеется установленный TestRail, к которому потеряли пароля админа, а опция Reset Password сообщает, что “Email sending failed” – хотя почта настроена, и работает – пользователи письма получают. Лог /var/www/testrail.example.com/logs/log-2019-05-13.php ничего внятного не сообщает, поэтому поступим проще – обновим пароль прямо в базе данных. Создаём бекап базы: [simterm] root@bttrm-testrail:/home/admin# mysqldump testrail > testrail.sql-13.05.2019.bkp [/simterm] Подключаемся к… Читать далее »

Bitwarden: менеджер паролей организации – установка self-hosted версии на AWS EC2

1 мая 2019
 

 Мы рассматриваем Bitwarden как менеджер паролей для проекта, основная цель которого – разделение доступа к различным секретам по ролям и/или ACL. Т.е. Pass и/или KeePass – это хорошо для одного пользователя, но у них нет главного – нормального веб-интерфейса, и разделения доступа к секретам для пользователей, а всякие 1Password/LastPass не имеют возможности установки на свой… Читать далее »