Skip to content
This repository has been archived by the owner on Dec 18, 2022. It is now read-only.
/ ssl_monitor Public archive

Мониторинг работоспособности ssl сертификатов

Notifications You must be signed in to change notification settings

smalex86/ssl_monitor

Repository files navigation

Мониторинг сертификатов SSL

Описание функционала

Приложение реализует следующий функционал:

  • В базу добавляются домены, для которых нужно отслеживать проблемы с SSL сертификатами
  • Нельзя дважды добавить один и тот же домен
  • У домена есть два статуса - "Всё хорошо" и "Всё плохо"
  • По результатам проверки у домена меняется статус
  • Текст ошибки сохраняется в той же модели
  • Проверки происходят в фоне, раз в 20 минут
  • Подключен веб-интерфейс sidekiq и закрыт Basic-авторизацией
  • Для проверки используется openssl, проверка происходит внутри приложения без использования сторонних API и сервисов
  • Интерфейс не реализовыван, только API

API

Реализованы следующие методы:

  • GET /status - выводит все домены с их текущим состоянием
  • POST /domain - добавляет новый домен в список, при добавлении домена выполняется его проверка

Запуск приложения

1. Установка гемов

bundle install

2. Запуск служб

Если в системе не установлены postgresql и redis, то запустить их через docker-compose:

cd docker
./services-up.sh

Для остановки контейнеров docker использовать следующий скрипт:

cd docker
./services-down.sh

3. Создание базы данных и ее структуры

rails db:create
rails db:migrate

4. Запуск приложения

rails s

5. Запуск sidekiq

bundle exec sidekiq