0xbbeer Blog

Jenkins: Установка на Debian 11

Установим Open-JDK 1sudo apt install openjdk-11-jdk Добавим GPG-Key и репозиторий c Jenkins: GPG Key: 1curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee \ 2/usr/share/keyrings/jenkins-keyring.asc > /dev/null Репозиторий: 1echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \ 2https://pkg.jenkins.io/debian-stable binary/ | sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null Обновляем: 1apt update Устанавливаем Jenkins: 1apt install jenkins По умолчанию сервисы в Debian запускаются автоматически. Запуск Jenkins выполняется небыстро. После запуска сервиса может выдать ошибку по таймауту запуска - если это случилось, можно поправить таймаут в юнит файле Jenkins-a:...

December 17, 2022

SonarQube: Настройка SSO с Keycloak

Для настройки SSO в SonaQube используется плагин: https://github.com/vaulttec/sonar-auth-oidc Установка плагина для аутентификации в SonarQube Установите плагин OpenID Connect Authentication for SonarQube через магазин приложений SonarQube и перезагрузите сервер. Создаем клиента в Keycloak Заходим в админку Keycloak и создаем нового клиента. Заполняем поля: Client ID: sonarqube; Enabled: On; Client Protocol: openid-connect; Access Type: confidential; Valid Redirect URIs: URL вашего LibreNMS, с которого будет осуществляться редирект,например, sonarqube.0xbbeer.ru/* Далее переходим на вкладку Mappers и нажимаем создать mapper....

December 17, 2022

SonarQube: Установка на Debian 11

Установите Java 11 Обновите пакеты. 1$ sudo apt update Установите зависимости. 1$ sudo apt install wget unzip curl gnupg2 ca-certificates lsb-release socat -y Установите Java 11. 1$ sudo apt-get install openjdk-11-jre -y Установите PostgreSQL Добавьте репозиторий PostgreSQL. 1$ sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list' Добавьте ключ PostgreSQL. 1$ wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O - | sudo apt-key add - Обновите систему. 1$ sudo apt update Установите PostgreSQL....

December 17, 2022

Linux: SSH - полезные заметки

Будут дополняться Local Port Forwarding Пробросить порт 5432 c хоста host2.0xbbeer.ru на порт 6432 локальной машины: 1ssh -L 6432:localhost:5432 user@host2.0xbbeer.ru Мы можем пробрасывать порт не только с хоста, к которму подключаемся, но и с хоста, недоступного локальной машине, но доступного удаленной. Пробросим порт 5432 с host3.0xbbeer.ru на порт 6432 локальной машины. 1ssh -L 6432:host3.0xbbeer.ru:5432 user@host2.0xbbeer.ru При пробросе портов в локальную машину можно указать интерфейс на который его делать, например, пробросим порт на все доступные интерфейсы (0....

November 2, 2022

GitLab: SSO с помощью Keycloak

Система на момент настройки: CentOS 7 GitLab 14.7 Создаем клиента в Keycloak Тут все просто: Client ID: gitlab; Enabled: On; Client Protocol: openid-connect; Access Type: confidential; Valid Redirect URIs: https://gitlab.0xbbeer.ru/* Сохраняем созданного клиента и переходим на вкладку Credentials. Копируем значение поля Secret, оно нам пригодится в будущем. Настраиваем GitLab Далее открываем файл gitlab.rb (PATH: /etc/gitlab/gitlab.rb ) и добавляем строки: 1gitlab_rails['omniauth_enabled'] = true 2gitlab_rails['omniauth_allow_single_sign_on'] = true 3gitlab_rails['omniauth_auto_sign_in_with_provider'] = 'openid_connect' 4gitlab_rails['omniauth_block_auto_created_users'] = false 5gitlab_rails['omniauth_auto_link_ldap_user'] = false 6gitlab_rails['omniauth_auto_link_ldap_user] = ["openid_connect"] omniauth_enabled - включает Omniauth (по умолчанию включено);...

November 2, 2022

LibreNMS: настройка SSO с Keycloak

Всем добрый день! Вообще инструкция по настройке SSO в LibreNMS есть в офф.документации, но там нет инфы о настройке связки с Keycloak, поэтому оставлю заметку тут. Создаем клиента в Keycloak Заходим в админку Keycloak и создаем нового клиента. Заполняем поля: Client ID: librenms; Enabled: On; Client Protocol: openid-connect; Access Type: confidential; Valid Redirect URIs: URL вашего LibreNMS, с которого будет осуществлятся редирект,например, librenms.0xbbeer.ru/* Остальные параметры можно оставить по умолчнию или заполнить как нужно Вам....

November 2, 2022

Python: Генерация сертификатов из Microsoft CA в Linux

Те, кто в своей инфраструктуре использует Microsoft CA, могли часто встречаться с проблемой выпуска сертификатов для linux машин\cервисов. Все время приходилось вручную генерировать сертификат с помощью openssl, а далее идти в веб интерфейс MS CA,запрашивать, потом скачивать сертификат и заливать его на машину. К счастью, нашелся модуль python, который облегачет получение сертификатов в Linux- certsrv Документация к модулю Пример получения сертификата При установке модуля по умолчанию используется basic-аутентификация, мы будем рассматривать аутентификацию с помощью NTLM, поэтому установим модуль с добавлением [ntlm] к названию....

November 1, 2022

Netbox: Настройка SSO с помощью Keycloak

Для создания единой точки входа во внутренние сервисы с недавних пор я начал использовать проект Keycloak. Сегодня рассмотрим организацию SSO в Netbox с помощью него. В документации Netbox описана настройка только для двух провайдеров : Microsoft Azure AD Okta Netbox использует библиотеку python-soc-auth для взаимодействия с провайдерами. Список доступных провайдеров можно посмотреть тут Настройка клиента в Keycloak Заходим в веб интерфейс Keycloak, переходим на вкладку Clients и создаем нового клиента:...

October 9, 2022

Python: SSL CERTIFICATE_VERIFY_FAILED

Сертификаты для внутренних сервисов я выпускаю с помощью локального CA. Бывает так, что при работе в виртуальном окружении Python (venv), например, с каким-нибудь внутренним API по средством HTTPS запросов, вылезает ошибка: 1SSL: CERTIFICATE_VERIFY_FAILED Связано это с тем, что наше виртуальное окружение, а точнее модуль certifi, ничего не знает о нашем локальном центре сертификации. К счастью, на просторах инета нашлось простое решение1- добавить информацию о корневом сертификате в виртуальное окружение. Для этого:...

October 9, 2022