Barman сжатие WAL

Barman это утилита для бекапирования кластера PostgreSQL.

В Barman доступно сжатие WAL-логов бекапов. (Сжатие FULL (base) бекапов, на текущий момент, средствами Barman недоступно.)
Для включения сжатия есть два варианта:
1. Включить сжатие глобально для всех бекапов, для этого нужно в конфиге /etc/barman.conf прописать в блоке [barman]:
[barman] …
compression = gzip

2. Включать сжатие только для нужных проектов (бекапов), для этого в конфиге конкретного бекапа нужно указать:
[backup_name] …
compression = gzip

Читать далее

0

Памятка по командам netstat

Список портов, которые «слушает» сервер:

netstat -an | grep -i listen

Список активных соединений TCP:

netstat -at

UDP:

netstat -au

Список активных соединений с отображением используемой службы, сервиса:

netstat -tp
0

OpenVPN за 5 минут одной командой

Скрипт подходит для Debian, Ubuntu и CentOS.
Позволяет выполнить как первоначальную настройку сервера, так и добавление openvpn клиентов.

wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh

Репозиторий автора скрипта https://github.com/Nyr/openvpn-install

0

Алерты Grafana в Telegram через прокси

В моём случае Grafana работает на CentOs7.
На данный момент в Grafana (v6.1.4) не реализовано подключение прокси-сервера для отправки оповещений в telegram. При поиске в Google можно найти ряд статей (раз,два,три) в которых утверждается что она станет ходить через прокси, если его добавить переменные окружения с указанием прокси сервера:

export http_proxy="http://myproxy:3128"
export https_proxy="http://myproxy:3128"

но по какой-то причине этот способ у меня так и не заработал, графана игнорирует прокси и пытается отправить уведомление напрямую на api.telegram.org

Если способ выше вам так же не помог, предлагаю ознакомиться с «костылём» описанным ниже.
Суть кратко: будем отправлять все запросы в сторону https://api.telegram.org на свой сервер с Apache и на нём делать proxy_pass на реальный api.telegram.org.
Можно, конечно, просто на уровне IPTABLES редиректить все обращения на 443 порт на реальную API, но при таком раскладе мы займём 443 порт на нашей VPS, что не очень кошерно, сайтики с HTTPS уже не похостишь..
Читать далее

0

pg_stat_activity хранение истории запросов PostgreSQL

View pg_stat_activity позволяет посмотреть текущие запросы в PostgreSQL. Настроим автоматический сбор и хранение этой информации.

https://habr.com/ru/post/413411/
https://github.com/dbacvetkov/PASH-Viewer/wiki/How-to-create-pg_stat_activity-historical-table

Создаем таблицу pg_stat_activity_history для исторических данных:

--create table for historical data PG10+
create table pg_stat_activity_history as 
SELECT clock_timestamp() as sample_time, datname, pid, usesysid, usename, backend_type, application_name, client_hostname, client_addr, wait_event_type, wait_event, query, query_start, 1000 * EXTRACT(EPOCH FROM (clock_timestamp()-query_start)) as duration
from pg_stat_activity where 1=2;

--create table for historical data PG9.6
create table pg_stat_activity_history as 
SELECT clock_timestamp() as sample_time, datname, pid, usesysid, usename, application_name, client_hostname, client_addr, wait_event_type, wait_event, query, query_start, 1000 * EXTRACT(EPOCH FROM (clock_timestamp()-query_start)) as duration
from pg_stat_activity where 1=2;

create index pg_stat_activity_history_idx on pg_stat_activity_history(sample_time);

Читать далее

0

pgsentinel настройка (хранение истории активных сессий PostgreSQL)

Компиляция и добавление pgsentinel в PostgreSQL

Расширение pgsentinel предоставляет возможность собирать и просматривать историю активных сессий в PostgreSQL.

https://habr.com/ru/post/416909/
https://github.com/pgsentinel/pgsentinel

Для успешной компиляции библиотеки, необходимо чтобы на сервере был установлен пакет postgresql11-devel (для каждой версии PostgreSQL естественно будет свой пакет). Так же потребуются пакеты gcc, пакет openssl-devel (начиная с 10-й версии PostgreSQL) и пакеты llvm и clang (начиная с 11-й версии PostgreSQL). О том, каких пакетов не хватает в конкретном случае, можно узнать из сообщений об ошибках при компиляции.

Создадим директорию под папки с версиями pgsentinel:

mkdir /var/lib/pgsql/11/ext

Далее копируем туда папку с релизами pgsentinel (с любой доступной версией,на данный момент это beta, релиза нет, копируем репозиторий. В репозитории нас интересует диреткория src).
Заходим в директорию pgsentinel и выполняем там команду (для PG_CONFIG указать путь к нужной версии PostgreSQL):

make PG_CONFIG=/usr/pgsql-11/bin/pg_config USE_PGXS=1 install

Читать далее

1+

IPSec на CentOs 7 с помощью LibreSwan

Ниже небольшой гайд по настройке IPSec в двух топологиях с помощью LibreSwan:

  • для сервера с публичным IP на интерфейсе;
  • для сервера c локальным IP и за маршрутизатором с NAT, используя NAT Traversal (NAT-T)


Подготовительный этап одинаков в обоих случаях:

  1. Устанавливаем libreswan:
    yum install libreswan
    
  2. Включаем IP forwarding, а IP redirects отключаем, перезагружаем параметры:
    # Открываем файл
    nano /etc/sysctl.conf
    
    # и добавляем параметры:
    net.ipv4.ip_forward = 1
    net.ipv4.conf.all.accept_redirects = 0
    net.ipv4.conf.all.send_redirects = 0
    
    # Применяем новые параметры
    sysctl -p
    
  3. Разрешаем IPSec траффик в firewalld:
    firewall-cmd --zone=public --add-service=ipsec
    
  4. Добавляем сервис в автозагрузку и запускаем
    systemctl enable ipsec
    systemctl start ipsec
    

Дальнейшая конфигурация отличается от топологии. Оба случая описаны ниже.
Читать далее

0

Zabbix — Мониторинг лицензии Octopus

Порой лицензия на Octopus Deploy заканчивается неожиданно, особенно если вы используете триальную лицензию на 30 дней и постоянно её продляете 😉
Для мониторинга срока действия лицензии я написал скрипт на Python, который обращается на API октопуса и забирает информацию о дате окончания лицензии и конвертирует её в Unix time. После чего это значение получает Zabbix и, если дата окончания лицензии наступает менее чем через 3 дня, отображает алерт.
Ниже подробнее.
Читать далее

0
Запись опубликована автором в рубрике Zabbix.

Удаление checkpoint(snapshot) VM без опции «Удалить» через PowerShell

Бывает что у чекпоинта(снапшота) отсутствует опция «Удалить» в контекстном меню, а удалить чекпоинт надо — негоже чтобы он занимал место.

Пример подобного снапшота

Для удаления запускаем PowerShell с правами администратора и выполняем:

Get-VMSnapshot -ComputerName ИМЯ-ГИПЕРВИЗОРА -VMName ИМЯ-ВМ | Remove-VMSnapshot

Опции ИМЯ-ГИПЕРВИЗОРА и ИМЯ-ВМ, разумеется, меняем на свои.

Источник — https://www.zubairalexander.com/blog/removing-backup-checkpoint-in-hyper-v-that-has-no-delete-option/

0

Мониторинг ssl сертификатов, хранящихся локально

Данное решение потенциально является брешью в безопасности организации,
рекомендую использовать с осторожностью
исключительно внутри локального сегмента сети, с базовой авторизацией и по HTTPS.
За возможные проблемы автор не несёт ответственности.

Возникла необходимость как-то следить за сроком действия сертификатов, которые мы используем внутри организации, как правило они выданы нашем локальным CA. Так же имеется ряд сертификатов, выданных сторонними CA — для аутентификации в банках, на различных порталах итп.

Так появилось на свет решение в виде веб-страницы, на которую можно выгрузить сам сертификат, закрытый ключ (при необходимости) и оставить комментарий к сертификату.
Можно загружать сразу несколько сертификатов с ключами или без — не важно, страница определит если есть ключ и отобразит это в таблице.
ВАЖНО: для определения пары ключ+сертификат имена фалов должны быть одинаковыми до расширения, например cert.crt и cert.key
Если дней действия сертификата остаётся менее 14 — строчка с записью выделяется красным цветом — и это можно мониторить хоть тем же Zabbix.

Конфиденциальные данные искажены

Под катом инструкция как поднять эту страницу у себя.

Читать далее

0