Let’s Encrypt получаем wildcard. Client with the currently selected authenticator does not support any combination of challenges that will satisfy the CA. You may need to use an authenticator plugin that can do challenges over DNS.

При попытке получить wildcard получаем ошибку «Client with the currently selected authenticator does not support any combination of challenges that will satisfy the CA. You may need to use an authenticator plugin that can do challenges over DNS.»

Можно использовать plugin для DNS челленджа, но плагины есть только для крупных сервисов. Если плагина нет, придется проходить челлендж в ручную.

 certbot certonly -d *.domain.com --manual --preferred-challenges dns

Вместо «domain.com» нужно указать свой домен. Далее certbot предупредит о том, что ваш IP будет сохранен и попросит создать TXT запись для вашего домена:

Please deploy a DNS TXT record under the name
_acme-challenge.domain.com with the following value:

cxAGAsIvxQggW5FRAqUJfjsnknsYBjb3

Before continuing, verify the record is deployed.

Бывает что certbot не сразу видит запись. В таком случае нужно просто повторно запустить процесс получения сертификата, но в этот раз после добавления записи подождать 5-10 минут.

Nextcloud не отправляет почту. stream_socket_enable_crypto(): SSL operation failed with code 1

Nextcloud не отправляет письма. При попытке отправить тестовое письмо получаем ошибку:
«stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed at /var/www/nextcloud/3rdparty/swiftmailer/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php#94»

Читать далееNextcloud не отправляет почту. stream_socket_enable_crypto(): SSL operation failed with code 1

Linux. Меняем кодировку mp3 тегов.

Большинству плееров необходима кодировка тегов UTF-8, иначе вместо кириллических названий треков мы будем видеть кракозябры.

Для начала нужно установить пакет который поможет нам конвертировать теги:

А теперь натравим его на папку с музыкой:

Easy-RSA 3.0.3. Создание ключей для OpenVPN.

После обновления утилиты Easy-RSA изменился процесс создания ключей.

Переходим в директорию Easy-RSA, по умолчанию /usr/share/easy-rsa/3.0.3.

Создаем CA:

После создания попросят придумать пароль. Этот пароль необходимо запомнить т.к. он понадобится для создания клиентских сертификатов.

Читать далееEasy-RSA 3.0.3. Создание ключей для OpenVPN.

iptables. Forward трафика.

Задача выпустить компьютеры локальной сети в интернет через сервер с Linux и двумя интерфейсами. Eth0 — внешний интерфейс, Eth1 внутренний.

Разрешаем форвардинг для всей локальной сети. В этом примере локальный интерфейс eth1. Первое правило разрешает форвард входящего трафика, второе исходящего.

Теперь нужно поднять NAT. В данном примере в роли внешнего интерфейса выступает eth0:

Не забываем включить форвардинг в системе. Для этого редактируем /etc/sysctl.conf и исправляем параметр net.ipv4.ip_forward = 0 на net.ipv4.ip_forward = 1
В итоге получаем функционал гейтвея во внешнюю сеть.

Bash. Добавление строк в таблицу MySQL.

Как добавить строку в таблицу MySQL при помощи Bash скрипта на примере добавления пачки доменов в blacklist. Исходные данные:

1. Файл со списком доменов
2. Таблица в бд с двумя полями(имя домена и действие)

 

CentOS. Не работает Yum. base/$releasever/x86_64.

Попытка воспользоваться Yum приводит к ошибке:

Читать далееCentOS. Не работает Yum. base/$releasever/x86_64.

Linux. Выясняем куда делось дисковое пространство.

Что делать, если в Linux системе кончилось место на диске? Как выяснить какие файлы заняли свободное место? Большинство рекомендуют использовать утилиту «ncdu«, но если она не установлена и свободное место на диске отсутствует… В общем, придется идти другим путем. В консоли есть штатные средства просмотра информации о дисковом пространстве. Например утилита «df«.  Но по умолчанию она покажет общую информацию, и понять какая именно папка или файл «съели» все место не выйдет. Для того чтобы это выяснить будем использовать утилиту с набором ключей: «du -smh *| sort -nr«. Так мы получим список каталогов с сортировкой по размеру.

Создание Self-Signed сертификатов в *nix.

Краткая заметка, чтобы не потерялось:

Вместо %name% указать имя файла сертификата и ключа. После ключа -days указывается срок жизни сертификата, в данном примере 3650 дней или 10 лет.

openssl req -new -outform PEM -out %name%.cert -newkey rsa:2048 -nodes -keyout %name%.key -keyform PEM -days 3650 -x509