postgresql: выполнение запроса из командной строки

Задача: периодически необходимо подрезать логи

Решение: самое простое подготовить скрипт на bash и разместить ссылку на его выполнение в crontab:

Android: Не работает диалог выбора файла в webview

Задача: в контексте webview приложения для android, не открывается диалоговое окно выбора файла, в виду отсутствия в «базовом» варианте работы webview необходимых обработчиков. Решение описываемое в статье 2020года не работает в 2022 году

Решение: в конце 2022 года, рабочая минимальная обвязка для обработки выбора файлов такова:

Android Studio: в эмуляторе не работает интернет

Задача: По не понятной причине, в эмуляторе андроида перестает работать интернет

Решение: небольшое исследование показало, что эмулятор при запуске андроида, автоматом выставляет сервера DNS не те которые указаны у операционной системы хоста, а DNS гугла. Однако оные могут быть запрещены в политике организации.

Выход: принудительно указать DNS сервер при запуске эмулятора. Однако не всё так просто, из самой Android Studio это в настоящий момент не возможно. Однако можно запустить эмулятор из командной строки:

1C: Программное прикрепление файла к документу / справочнику

Работает только на БСП 3.1 и выше

Защита сайта сертификатом p12

Задача: обеспечить вход на сайт только при наличии действующего сертификата формата p12.

Решение:

Инструкция создана на основе нескольких источников, в т.ч. этого и этого, но с внесением поправок что год уже конец 2022, и появились некоторые нюансы, что старые инструкции не работают по умолчанию для новых дистрибутивов.

Сначала создадим корневой сертификат сервера и необходимые для дальнейшей работы файлы и папки. Для этого создадим в любой папке файл root_cer.sh с содержимым вида:

, где:

rsa:2048- длина ключа, -days — сколько дней действителен сертификат, -x509 — создаём самоподписаный сертификат, /C — страна, /ST — область, /L — город, /O — организация, /OU — отдел,

Результатом работы будут два файла в папке certs: servert.crt (сертификат) и serverk.key (закрытый ключ). Данные закрытого ключа можно посмотреть при помощи:

В файле db/serial записывается текущий серийный номер
подписываемого сертификата в шестнадцатиричном формате.

В файл db/index.txt сохраняются данные о подписываемых сертификатах.

Далее необходимо создать файл с настройками для генерации пользовательских сертификатов ca.config:

Для автоматизации генерации клиентских сертификатов можно собрать небольшой bash скрипт:

На входе скрипта необходимо задать email, имя пользователя без пробелов и пароль на установку сертификата. На выходе будет запись в БД сертификатов и непосредственно сам контейнер p12 в папке p12 для передачи клиенту.

И ещё один полезный скрипт, для автоматизации отзыва сертификатов revote.sh:

Посмотреть список отозваных сертификатов можно при помощи команды:

Осталось только настроить apache для того что бы он пускал на сайт, только при наличии сертификата, добавив:

1 41 42 43 44 45 293