ServerAdmin.ru
31.9K subscribers
943 photos
56 videos
27 files
3.05K links
Авторская информация о системном администрировании.

Информация о рекламе: @srv_admin_reklama_bot
Автор: @zeroxzed

Второй канал: @srv_admin_live
Сайт: serveradmin.ru

Ресурс включён в перечень Роскомнадзора
Download Telegram
Я думал, что из Windows 11 старый Internet Explorer выпилили окончательно. И тут мне в ВК прилетает уведомление о комментарии к заметке 2023 года, где я рассказываю, как можно зайти в старое оборудование, интерфейс которого работает только в IE. Я там речь веду про расширение IE Tab.

А в комментариях человек предложил более простое решение. Создаём файл с расширением .vbs следующего содержания:

Set objIE = CreateObject("InternetExplorer.Application")
objIE.Visible = 1

Запускаем его и получаем старый добрый Internet Explorer. От нечего делать проверил у себя на самой свежей Windows 11. Просто любопытно стало, заработает или нет. До сих пор работает, к камерам можно подключиться.

Если надо, используйте. Способ рабочий. Несмотря на то, что он давно известен, я как-то мимо ушей его пропускал и ни разу не пробовал. Какие-то другие варианты искал. Хотя это решение максимально простое. Думаю, тут сейчас найдётся немало людей, кто напишет или подумает, мол автор, ты чего, такую банальщину не знаешь. На самом деле не знал, не придумываю.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX

#windows
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍290👎1
Хороший сервер — это современное оборудование, с предсказуемыми планами по апгрейду, из надежных и максимально совместимых комплектующих.
Именно такие серверы компания WIT поставляет уже более 30 лет - с 1994 года.

wit.ru
сайт из первых 4000 в рунете (по признанию Computer Magazine за декабрь 1996 года, "Потому, что кончается на RU"), посвященный серверам и СХД.

❗️ Видеоуроки по базовой настройке серверов и систем хранения данных.
— Удобный калькулятор подсчета емкости RAID-массивов.
— Уникальный обзор первого сервера 1996 года выпуска на процессоре Pentium P54C (До сих пор работает. Для ностальгирующих, 45+).
— Лучший* конфигуратор серверов на новейших платформах и процессорах.

*(по нашему мнению)

👨‍🔬 Предлагаем продвинутую экспертизу/консультации по подбору комплектующих.
Проверили на практике, в каких случаях можно доверять декларациям производителей “о совместимости”, а каких сочетаний комплектующих лучше избегать.
Гарантия на оборудование до 3 лет (1+2 года).

Мощные новинки: серверы на AMD EPIC 9005 и на Intel Xeon 5/6

🧩 Также предлагаем СХД, термошкафы, сетевое и другое оборудование.
Лицензионное российское ПО. Есть варианты импортного ПО.

Работаем только с юрлицами. Доставка по всей РФ.
WIT Company, wit.ru
+7 800 250-3379 (бесплатно по России)

@vkomen

Реклама, ООО "Вит Компани", ИНН 7722741498, erid: 2SDnjc8WgCx
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍12👎4
Написал очередную статью из цикла про настройку своего почтового сервера:

Roundcube Fetchmail plugin - сбор почты с других почтовых ящиков

Я в ней настраиваю плагин для веб клиента Roundcube, с помощью которого можно собирать в свой ящик почту с других внешних серверов. И настроить этот сбор может каждый пользователь самостоятельно в своём аккаунте. Работает всё это на базе известного и популярного решения Fetchmail.

В настоящий момент цикл моих статей про почтовый сервер выглядит следующим образом:

▪️Настройка сервера на базе ОС Debian
▪️Защита от перебора учётных данных с помощью Fail2Ban
▪️Мониторинг Postfix в Zabbix
▪️Автоматическая загрузка почтовых вложений в Nextcloud при отправке через RoundCube и Thunderbird
▪️Roundcube Fetchmail plugin - сбор почты с других почтовых ящиков

Это свежие статьи, обновлённые в течении последних двух месяцев. Есть более старый, но актуальный материал:

◽️Выбор сервера для отправки в зависимости от получателя
◽️Настройка маршрута отправки в зависимости от домена
◽️Ограничение на отправку писем в единицу времени
◽️Перенос почтового сервера
◽️Как изменить тему письма и адрес отправителя через Postfix
◽️Удаление из писем заголовков с локальными IP адресами
◽️Защита почтовых алиасов с множеством получателей от спама
◽️Очистка и обслуживание почтовой базы Postfix

Как думаете, какой ещё темы не хватает в контексте своего почтового сервера? По идее не хватает бэкапа, но я почтовую базу формата maildir бэкаплю обычным rsync, про который было много заметок и добавить нечего. Подумываю написать ещё про сбор и анализ логов. Больше ничего в голову не приходит. По идее, всё наиболее актуальное я описал.

Не хватает материала по аутентификации через LDAP, но лично я всегда для почтового сервера использую отдельную базу данных учётных записей. Почтовые сервера всегда открыты для всего интернета, клиенты настроены на различных устройствах пользователей. Учётные данные нередко утекают. Мне не нравится идея объединять их с другими сервисами. Конкретно для почты я считаю, лучше использовать отдельную базу данных с учётными записями, хотя это и не совсем удобно. Для больших масштабов, наверное, не подойдёт, но для малых и средних компаний вполне.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX

#mailserver #postfix #подборка
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍78👎2
Подписчик поделился интересной реализацией OTP (One Time Password) для подключений по RDP. При подключении пользователь сначала вводит свой основной пароль от учётной записи, а потом одноразовый через приложение на смартфоне. Это неплохо страхует сервер, доступный из интернета. Способ отлично подойдёт в том случае, когда по какой-то причине доступ по RDP нельзя убрать из прямого доступа через интернет.

Ничего особенного в этом нет, подобных систем много. Но обычно это отдельный сервис, который надо разворачивать, настраивать, и это не всегда просто и быстро сделать. А описанный ниже способ очень простой. Всё устанавливается локально на ОС Windows как серверных, так и десктопных редакций. Разницы в настройке нет.

Для реализации 2FA через OTP на Windows нам понадобится open source продукт под названием multiOTP, а точнее его отдельный компонент multiOTPCredentialProvider. Покажу сразу полную настройку. Я у себя всё проверил. Долго провозился, потому что разбирался, как всё это работает, собирал нужные команды, читал help. Повторить можно будет намного быстрее. ИИ не помог, тупо выдумал все команды. Вообще все.

Со страницы загрузки скачиваете свежую версию multiOTP Credential Provider. Это обычный .msi пакет. Устанавливаете в системе. Во время установки ставите галочку, что не используете никакой сервис, а только локальную версию. Не запомнил, как точно настройка называлась. А на втором экране отмечаете галочками, для каких процессов будет запрашиваться одноразовый пароль. Это могут быть:

- локальные и удалённые входы
- локальные или удалённые разблокировки сеансов
- локальный или удалённый запуск приложений в режиме "Запустить от администратора (Run as Administrator)"

Я выбрал только один случай - remote logon, то есть удалённое подключение, в данном случае по RDP.

После установки запускаем cmd от администратора и переходим в каталог с программой:

> cd C:\Program Files\multiOTP

Выбираем любого системного пользователя и задаём ему вход через TOTP:

> multiotp.exe -debug -display-log -create totp_user TOTP 34443E4948A3C06A1CFB 6

◽️totp_user - имя пользователя
◽️34443E4948A3C06A1CFB - любой 160 битный ключ (Hexadecimal, Шестнадцатеричный ключ, 20 символов), можно создать в онлайн генераторе.
◽️6 - количество символов в одноразовом пароле

И сразу же создадим пользователю qr код для добавления в аутентификатор:

> multiotp.exe -qrcode totp_user c:\multiotp\totp_user.png

❗️Теперь важный момент. После установки multiOTP Credential Provider для всех удалённых подключений будет требоваться TOTP, даже если вы их не добавили в базу multiotp. Я попался на этом. Пришлось подключаться локально и добавлять TOTP для остальных учёток.

Только после того, как вы выполнили создание пользователя через multiotp, вы сможете отключить для отдельных пользователей использование TOTP:

> multiotp -iswithout2fa zerox

Для пользователя zerox отключили одноразовые пароли. Он заходит как обычно.

Собственно, на этом настройка и окончена. Приведу список команд, которыми пользовался во время настройки.

Список пользователей в базе multiotp:
> multiotp -userslist

Информация о пользователе:
> multiotp -user-info totp_user

Настроить длину пароля по умолчанию:
> multiotp -config default-2fa-digits 6

Выпустить список одноразовых паролей. Могут пригодиться, если пользователь потерял смартфон или не может воспользоваться аутентификатором:
> multiotp.exe -scratchlist totp_user

Я проверил одноразовые пароли. По ним нормально заходит.

Пользователю нужно установить на смартфон или компьютер какой-то аутентификатор. Их очень много. Я проверял Google Authenticator и FreeOTP. Последний можно через RuStore установить.

В самой программе достаточно отсканировать qr код пользователя и генератор одноразовых паролей для multiotp будет добавлен. Если нет возможности отсканировать qr код, то можно hexadecimal ключ сконвертировать в base32 и добавить вручную.

multiOTP - масштабный сервис. Может быть развёрнут в связке с AD, или по аналогии настроен в Linux для SSH.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX

#windows #security
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍215👎2
⚡️Серверная ОС SelectOS теперь включена в реестр российского ПО Минцифры. Её можно использовать в корпоративной инфраструктуре и при этом получать поддержку от вендора.

Из преимуществ:
🔹поддержка по SLA,
🔹предсказуемая совместимость с 500+ конфигурациями выделенных серверов,
🔹доступ к расширенной документации с помощью ИИ-ассистента в manpages

Скачайте бесплатно и протестируйте у себя: https://slc.tl/5kg3c

Реклама. АО "Селектел". erid:2W5zFJM5KXn
👎50👍27
Продолжу тему со сбором логов в Loki. Хочу написать законченный цикл заметок, в которых будет показан сбор логов популярных сервисов. В прошлой заметке я установил Loki + Grafana и отправил в Loki логи контейнеров Docker. Сегодня передам туда системные логи формата journald или текстовых файлов от syslog. Я покажу пример с обоими типами логов, а вы уже по месту сможете выбрать, какие использовать.

Изначально у Grafana для сбора логов с хостов была небольшая программа Promtail. Её и сейчас можно использовать, но больше её не развивают и не обновляют. На замену предложен Alloy - огромный комбайн, который включает в себя и сбор логов, их обработку и насыщение дополнительными данными, и преобразование, сбор трейсов, а также отправку системных метрик в Prometheus вместо Node Exporter. То есть Alloy объединяет логи и метрики.

В итоге вместо легковесного и простого в настройке продукта мы получаем комбайн всё в одном. Если используется полный стек Grafana в виде мониторинга, логов и трассировки, то наверное это удобно. Если собираются только логи, то не очень. Вместо Alloy можно взять Fluent Bit, Fluentd или Vector. Последние два легковесны, популярны, с простой настройкой. Можно взять и их. Но я в своём примере ограничусь стеком Grafana и буду использовать Alloy.

Репозиторий Grafana для IP адресов из России заблокирован. В общем случае он добавляется вот так:

# mkdir -p /etc/apt/keyrings
# wget -O /etc/apt/keyrings/grafana.asc https://apt.grafana.com/gpg-full.key
# chmod 644 /etc/apt/keyrings/grafana.asc
# echo "deb [signed-by=/etc/apt/keyrings/grafana.asc] https://apt.grafana.com stable main" > /etc/apt/sources.list.d/grafana.list

Мы же подключим копию репозитория из зеркала Яндекса. Для краткости я подключу его без ключа. Если вам это не подходит, то скачайте ключ и как-то передайте его на целевые машины:

# echo "deb [trusted=yes] https://mirror.yandex.ru/mirrors/packages.grafana.com/oss/deb/ stable main" > /etc/apt/sources.list.d/grafana.list
# apt update
# apt install alloy

Как я уже упомянул, конфигурация Alloy немного замороченная. Не сказать, что прям сильно сложная, но лично мной воспринимается тяжело. Нужно вникать, когда читаешь и постоянно мотать туда-сюда конфиг, чтобы удостовериться в том, что не запутался в сущностях и названиях.

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

Забирайте config.alloy из моего репозитория, копируйте в /etc/alloy и перезапускайте службу. Заодно добавьте в автозагрузку. По умолчанию она вроде не делает этого:

# systemctl restart alloy
# systemctl enable alloy

Больше ничего делать не надо. На все хосты Alloy устанавливается и настраивается аналогично. В Loki логи будут прилетать с метками в виде %hostname%-logs и %hostname%-journal. Соответственно, по именам серверов вы и сможете их там выбирать. Метки, если что, можно изменить. Они настраиваются в параметрах labels и job соответственно. В конфигурации это всё наглядно видно.

По аналогии можно добавить любые текстовые логи. Тут никакой привязки к syslog нет. Просто забираем текстовые логи, определённые параметром:

  __path__  = "/var/log/{syslog,messages,*.log}",

Теперь можно идти в Grafana, раздел DrilldownLogs. Выбираем в выпадающем списке service с нужным именем и типом логов и смотрим.

Единственное, что мне не нравится тут, так это то, что в тексте лога есть метки времени, и в самом хранилище есть метки времени, когда запись была добавлена. Иногда они не совпадают и это неудобно. В Logstash есть модуль date для того, чтобы выделять дату из текста поступающих логов и использовать ее в качестве даты документа в Elasticsearch.
Кто-нибудь настраивал подобное в Loki, чтобы время документа совпадало со временем в логе?

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX

#loki #logs #devops
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71👎2
config.alloy
1.3 KB
Конфигурация к заметке выше 👆👆👆👆👆👆👆👆
То же самое есть в репозитории: https://gitflic.ru/project/serveradmin/grafana-loki
👍27👎1
Очередная подборка статей авторов, которые согласились в ней участвовать. Кто не понимает, о чём идёт речь, может прочитать прошлые публикации по этой теме (раз, два).

Initramfs в Astra Linux на практике. Загрузка по USB ключу.
Хороший пример для практического понимания принципа загрузки ОС на базе Linux. Эти знания пригодятся, когда надо будет разобраться, почему система не грузится, к примеру, после восстановления или переноса на другом гипервизоре. Автор настроил запрет загрузки ОС, если не уставлена определённая флешка. Отдельно отмечу, что очень приятно видеть mcedit на скринах 😁.

Настройка восстановления пароля в Authentik
Настройка процессов регистрации и приглашений пользователей в Authentik
Настройка двухфакторной аутентификации в Authentik
Настройка Cloudflare Turnstile для защиты формы входа в Authentik без CAPTCHA
Очередные статьи про настройку Authentik. У автора большой цикл статей и видео на эту тему. Тема непростая для самостоятельного изучения, так что материалы вам сильно помогут, если осваиваете этот продукт.

Сети в Docker
Docker Compose — установка и базовое использование
Тоже продолжение цикла на заявленную тематику. У автора несколько заметок про основы докера.

Как установить Passbolt на Ubuntu 24.04
Passbolt: базовая настройка и начало работы
Установка и настройка бесплатного менеджера паролей Passbolt с открытым исходным кодом. Он позволяет совместно вести базу данных с паролями, управлять учётными записями для доступа к ним.

Linux. Утилиты. Нестандартные. convert
Пример конвертации изображений из директории в единый pdf файл с помощью консольной утилиты.

FreeBSD. Установка
FreeBSD. Первоначальная настройка
Краткие инструкции по установке и настройке FreeBSD. Мне уже очень давно хочется сесть и написать цикл статей по FreeBSD. Нравилась эта система, скучаю по ней. Я её неплохо знал, так как не просто интересовался, а поднимал и администрировал реальные сервисы на ней - почтовый, веб, шлюз, мониторинг и т.д. Делал у заказчиков миграции с FreeBSD, когда они ещё попадались, на Linux.

SSH Pilot - Современный менеджер SSH сессий для Linux
Linux не балует пользователей удобными менеджерами подключений. Это обзор на один из них.

PostgreSQL. Troubleshooting. Data corrupted: 7 ERROR: invalid page in block
Решение очень неприятной ошибки, когда в логе ты видишь Data corrupted. Часто это означает, что надо расчехлять бэкапы. В данном случае обошлось без этого. Как я понял, данные не пострадали, просто невозможно было записать новые.

Если кто-то из авторов хочет присоединиться к этой подборке, то пишите мне в личные сообщения.

———
ServerAdmin:
📱 Telegram | 🌐 Сайт | 📲 MAX

#статьи
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍55👎2
В своих заметках и статьях про почтовый сервер я ни разу не касался темы резервного сервера, который в рамках возможностей DNS записей вида MX реализуется очень просто. Для каждого домена могут быть указаны несколько почтовых серверов, используя разные приоритеты. Например:

# dig 1c.ru MX +short
20 relay.1c.ru.
30 mx1-ksmg.1c.ru.

Нашёл случайный пример. Для домена прописаны 2 сервера с разными приоритетами: 20 и 30. У кого приоритет меньше - туда по умолчанию отправляется письмо. Если первый сервер из списка недоступен, письмо отправляется на следующий в списке приоритетов сервер.

На практике я не знаю, насколько активно сейчас это применяется. Я проверил с десяток популярных доменов и только у 1С нашёл 2 сервера. В основном у всех один, либо несколько но с одинаковыми приоритетами для распределения нагрузки. Думаю, я знаю, в чём причина.

Когда я только начинал настраивать почтовые сервера, делал резервные сервера и MX записи к ним. На практике это приводило к серьёзным заботам и хлопотам:

1️⃣ По хорошему, вам нужно синхронизировать информацию о ящиках и пользователям между двумя серверами. Можно этого не делать и собирать всю почту в один ящик-ловушку для всех писем домена, но потом придётся каким-то образом раскладывать её по пользователям.

2️⃣ В случае, если ваш основной сервер по каким-то причинам был недоступен и письма попали на резервный, вам придётся потом каким-то образом вернуть эти письма на основной в ящики пользователей. Решения для этого есть - тот же fetchmail. Он может на основании адреса получателя раскладывать письма по пользователям. Но всё это надо поддерживать в актуальном состоянии, следить, что нормально работает. На практике это не так то просто реализовать, если это не какое-то готовое решение.

3️⃣ На резервный MX сервер спамеры могут слать спам вопреки более высокому приоритету основного сервера. Это отдельные хлопоты по администрированию.

Надо ещё понимать особенность обмена письмами по SMTP. Стандартной настройкой почтовых серверов является многократные попытки доставить почту. Если у вас упал почтовый сервер, то отправитель, не доставив с первого раза письмо, будет пытаться доставить его ещё какое-то время. Причём существенное время, если администратор сервера отправителя для каких-то целей сильно не урезал время нахождения недоставленного письма в очереди. Обычно письма в очереди на отправку с периодическими попытками доставить находятся день-два, могут и больше.

При таких вводных получается, что даже если ваш почтовый сервер недоступен час-два, с большой долей вероятности вы не потеряете переписку. Все письма упадут в почтовые ящики пользователей, когда сервер вернётся в онлайн. И вам не придётся потом разбираться с синхронизацией почтовых ящиков между двумя серверами.

Собственно, я поэтому и перестал держать резервные сервера, когда один раз столкнулся с такой ситуацией. За пару часов на резервный сервер нападало писем, которые потом нужно было возвращать на основной. Вроде бы и хорошо, что ничего не потерял, но на деле я бы скорее всего и так ничего бы не потерял. Тем более если это рядовой сервер с перепиской пользователей. Обычно потеря письма некритична. Бывает, что письма не доходят. Если письмо не дошло до адресата из-за недоступности сервера, отправитель получит об этом уведомление.

Крупные же компании, где к почте предъявляются высокие требования по доступности, насколько я понимаю, предпочитают настраивать отказоустойчивые кластера основного сервера, а не выстраивать инфраструктуру с основным и резервными, так как это приводит к описанным выше хлопотам. Либо же это должно быть готовое программное обеспечение, которое автоматически реализует такую схему работы. Мне таковое неизвестно.

❗️Написанное выше исключительно моё мнение и опыт. Не претендую на правоту и истину. Если кто-то поделится своим опытом настройки основного и резервного MX серверов, с удовольствием прочитаю и приму к сведению.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX

#mailserver
Please open Telegram to view this post
VIEW IN TELEGRAM
👍73👎1
Приключилась со мной на днях неприятная история. Расскажу о ней. Возможно, кому то это позволит сохранить время и нервы в похожей ситуации.

Был вечер, закончил все свои дела, собирался потихоньку спать. Приходит уведомление в Telegram, что недоступен один из сайтов. Потом второй. В Телеграме у меня очень мало уведомлений, только ключевые о конечных точках так сказать. Подобные уведомления должны сопровождаться более многочисленными оповещениями от Zabbix в почту. Захожу туда, там пусто. Проверяю сайты - реально недоступны, соединения сбрасываются.

Пробую зайти в мониторинг по доменному имени, не получается. Поясню, что сайты, мониторинг, некоторая другая инфраструктура располагаются в ЦОД на своих серверах на услуге colocation. Там пачка внешних IP адресов, софтовый шлюз на Linux и для подстраховки ещё один физический в стойке на Mikrotik.

Подключаюсь к шлюзу по VPN (OpenVPN), попадаю во внутреннюю инфраструктуру. Всю её вижу, никаких проблем с доступностью. Открываю Zabbix по локальному IP адресу машины, где он работает, попадаю в веб интерфейс. Там всё красное, куча алертов на разные темы. Невозможно понять, что происходит. Обращаю внимание на растущую очередь сообщений на почтовом сервере, они не уходят. Это в основном уведомления от мониторинга.

Запускаю у себя почтовый клиент, нормально подключаюсь к серверу, вижу новую почту. Посмотрел выборочно некоторые логи сервисов, у кого-то что-то работает, у кого-то нет. Не понимаю, что происходит. Пытаюсь сфокусироваться на какой-то одной проблеме, чтобы её решить. Параллельно замечаю, что по внешнему IP адресу шлюза не могу подключиться к нему по SSH ни из одной локации, добавленной в белый список. То есть по внутреннему адресу через VPN я на него захожу, а по внешнему не получается. Соединение происходит, получаю приветствие от SSH сервера, а дальше сеанс не открывается. То есть с сетевой связностью проблем нет. Телнетом я нормально подключаюсь к SSH порту.

В первую очередь захотел разобраться с сайтами. На шлюзе стоит проброс порта на Nginx Proxy, с него уже на веб сервер. В логах прокси пусто, запросы не приходят. При этом на шлюзе я вижу, что по правилам проброса через NAT летят пакеты, счётчики растут. Ситуация странная.

В первую очередь подумал на шлюз, что с ним какие-то проблемы. Там старая уже неподдерживаемая система CentOS 7. Аптайм ОЧЕНЬ большой. Всю эту структуру когда-то давно настроил я, но последние несколько лет развитием и обновлением не занимался. Задач и финансов под это дело не было. Шлюз полностью скрыт от посторонних глаз и доступ туда сильно ограничен, так что реальных проблем это не доставляло.

Проверил у шлюза логи, таблицу conntrack на переполнение, сетевые соединения, нагрузку, что-то ещё. Уже не помню точно. Ничего подозрительного не заметил. Нигде ничего не переполнено, не нагружено, ошибок нет. Шлюз как-будто бы в порядке. Перезапустил сервис iptables - не помогло. Внешне всё выглядит так, как-будто соединения где-то внутри iptables или сервера застревают.

Решил, что от большого аптайма системе стало плохо и её надо перезагрузить. Так как это шлюз и точка входа в инфраструктуру, сделать это надо аккуратно. Все IPMI тоже скрыты за VPN, прямого доступа нет. Проверил на всякий случай резервный шлюз. Предупредил администратора, который на месте (офис и ЦОД - одно здание) всё это поддерживает, чтобы он был готов если что утром приехать пораньше и начать разбираться с проблемой.

Перезагрузка не помогла, а точнее вообще всё развалила. Не поднялись VPN с филиалами, которые до перезагрузки работали. Мониторинг покраснел ещё сильнее. Всё, что не работало, так и продолжало не работать. При этом я лично нормально подключился по VPN. Плюс, видел по логам VPN сервера, что некоторые клиенты тоже подключились, в том числе из-за границы.

Была ночь за окном, на термометре -35. Всё это меня вообще сбило с толку, и я взял паузу, чтобы обдумать ситуацию. А как я её решил, читайте ниже. Тут лимит на длину публикации исчерпан.

👇👇👇👇👇👇👇👇

#история #цод
👍98👎1
Это продолжение. Начало выше 👆👆👆👆👆👆👆👆

Походил по кабинету, посмотрел в окно, прикинул, что теперь делать. Ситуация нестандартная и неприятная. Утром вся работа организации встанет.

Я вроде бы неплохо всё настроенное знаю, но не понимаю, как решить проблему и самое главное, а в чём собственно проблема? Идея была смотреть дампы трафика, но я трезво оценивал свои возможности. Постоянной практики анализа дампов у меня нет. Что я там должен увидеть и понять?

Решил зайти с другой стороны и обратиться к поддержке хостера. Хоть я и не рассчитывал особо на помощь, так как ночью обычно все существенные проблемы откладывают на утро, но решил попытаться. С удивлением обнаружил, что сайт хостера открывается через раз, а личный кабинет вообще не работает.

Нашёл телефон горячей линии. Повезло, что он круглосуточный и там сидит живой человек. Он подтвердил, что вроде как реально наблюдаются какие-то проблемы и дал прямой контакт в ЦОД, куда можно позвонить ответственному человеку. Позвонил туда и он подтвердил, что наблюдаются сетевые проблемы с частью провайдеров. Это и объясняло то, что я сам и некоторые клиенты нормально подключались по VPN, а часть - нет.

Со слов сотрудника ЦОДа, они стали наблюдать проблемы примерно в то же время, что я получил уведомления от мониторинга. Точную причину они пока не знают, но подозревают, что это проблемы с ТСПУ Роскомнадзора. Они оставили им заявку и ждут рассмотрения.

В этот момент я расслабился и понял, что ничего делать больше не надо и можно спать. У меня всё работает нормально, а проблемы на другой стороне. Написал отбой другому администратору и лёг спать.

Утром встал, проверил, всё уже работает. Все VPNы поднялись, почтовая очередь рассосалась, сайты и всё остальное работают. В чём была реальная причина проблем - не знаю. Может ТСПУ, может что-то ещё.

Подобная история - наглядная иллюстрация минусов работы в поддержке инфраструктуры/эксплуатации. Никогда не знаешь, где возникнут проблемы. Постоянно сидишь на пороховой бочке. Даже если ты всё настроишь идеально, зарезервируешь, замониторишь, может возникнуть внешний фактор, а разбираться всё равно придётся тебе.

В общем, если столкнётесь с похожей проблемой, посмотрите в сторону этой истории. Если бы у меня сразу отвалилась VPN, я бы может и подумал в первую очередь на ТСПУ. Но у меня отвалились сайты, не работали подключения по SSH, часть почты не ходила, а VPNы отвалились уже потом после перезагрузки. Судя по всему установленные соединения держались, а новые уже не могли установиться. Хотя не везде и не со всеми.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX

#история #цод
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍209👎1
🔝 ТОП постов за прошедший месяц январь. Публикаций было немного, но решил не нарушать порядок, чтобы что-то интересное не затерялось. Я пересмотрел своё отношение к ведению канала и решил снизить активность. Поднадоело за столько лет, переключусь на другие дела.

Несколько лет практически без перерыва публиковал по 1-2 заметки каждый день, причём по нарастающей в плане проработки материала и его объёма. Перечитываю заметки за 20-21-е года. Это небо и земля по сравнению с сегодняшними. Подумать только, я уже 5+ лет пишу сюда каждый будний день 😱.

Все самые популярные публикации по месяцам можно почитать со соответствующему хэштэгу #топ. Отдельно можно посмотреть ТОП за прошлые года: 2023 и 2024 и 2025.

Пользуясь случаем, хочу попросить проголосовать за мой канал, так как это открывает некоторые дополнительные возможности по настройке: https://xn--r1a.website/boost/srv_admin.

📌 Больше всего пересылок:
◽️2FA в виде OTP для RDP соединений в Windows (629)
◽️Как вернуть IE в Windows 11 (530)
◽️Сетевой сканер Scanopy (486)
◽️Игра Tower Networking Inc. - симулятор провайдера (467)
◽️Выпуск сертификатов Let's Encrypt для IP адресов (437)

📌 Больше всего комментариев:
◽️Опрос на тему Desktop Environment в Linux (208)
◽️Выпуск сертификатов Let's Encrypt для IP адресов (134)
◽️Обзор DNS сервера Technitium DNS (63)

📌 Больше всего реакций:
◽️Как вернуть IE в Windows 11 (287)
◽️Выпуск сертификатов Let's Encrypt для IP адресов (213)
◽️2FA в виде OTP для RDP соединений в Windows (211)

📌 Больше всего просмотров:
◽️Как вернуть IE в Windows 11 (11880)
◽️Проблемы с песочницей Windows (9350)
◽️Сертификаты для аутентификации в Angie (9200)

#топ
👍62👎1
▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал интересными/полезными. Это видео из моих подписок за последнее время (обычно беру период в 2 недели), что мне понравились.

Termix — Возьмите управление сервером в свои руки.
Обзор интересной системы для доступа к серверам через браузер. Это аналог Apache Guacamole. Я писал о нём год назад, когда он только вышел. Сейчас посмотрел, изменений не так много. Продукт выглядит удобным, но местечковым, не для большого прода, скорее для себя или небольшого коллектива.

ALT Linux 11 сервер видеонаблюдения zoneminder + MySQL + apache
Инструкция по настройке бесплатного софтового видеорегистратора Zoneminder. Я лично себе настроил Frigate и очень доволен. Разобрался в нюансах, постоянно пользуюсь. Думаю, сделаю ещё одну заметку по нему.

Восстановление GRUB и MBR в Linux
Автор ломает таблицу разделов, соответственно, загрузку, а потом всё восстанавливает с помощью загрузочного ISO и утилиты testdisk. Я когда-то давно писал статью на эту тему.

Восстановление GPT, GRUB, NVRAM в режиме UEFI (без Secure Boot) в Linux
Продолжение и усложнение предыдущей темы.

Установка ALT Linux 11 на Repka Pi4
Установка ОС на известный в нашей стране одноплатник Repka Pi4. Всё руки не доходят написать производителям. Может подарят мне тоже на обзор. Покупать смысла нет, а так, поиграться и заметку сделать можно было бы. У Альта сборка есть под этот одноплатник.

ALT Linux 11 обновление PVE с 8 на 9
Наглядная процедура обновления PVE на Альте. Если я правильно понял, это платная редакция виртуализации от Альта, потому что все используемые репозитории в видео его же.

Настройка Eltex ESR-15VF для двух провайдеров в режиме балансировки
Ни разу в руках не держал и не работал с устройствами этой фирмы. Было любопытно посмотреть, что они из себя представляют. Автор в режиме реального времени всё настроил. Настройка выглядит простой. На рабочем столе тестового компа ярлык на игру Мир Танки 😁.

Разбор инфраструктуры реального проекта. Стоит ли внедрять Kubernetes?
Интересное видео. Заголовок привлёк, а на деле там переводят в режим HA магазин на Wordpress, который сейчас работает на одиночном сервере. Мне эта тема хорошо знакома, новое для себя не вынес, но было интересно послушать автора. Забавно увидеть, как заказчика с инфры за 15к рублей в месяц хотели пересадить в кубер за 195к + оплата работы и поддержки.

Dockhand. Лучший докер менеджер!?
Я уже упоминал ранее про этот менеджер. Внешне и функционально он выглядит интереснее Portainer.

ASUS GX10 (NVIDIA DGX Spark): честный тест для инференса нейросетей
Обзор NVIDIA DGX Spark (ASUS GX10), компактного компьютера для нейросетей с 128 ГБ памяти и его тесты на реальных задачах. Цена в России сейчас ~ 350 000₽.

Всё закончилось, работ нет. Ухожу из АйТи после 20 лет. Серия первая
Конец АйТи в Америке. Работы кончились. Вторая серия
Из программиста в короля мусора в Америке! Третья серия
Из программиста в грузчика на пикап траке, 4 серия
Сериал от русского программиста Романа Пушкина из Сан-Франциско. Я уже как-то упоминал его у себя на канале. Он уже давно не может найти нормальную работу по специальности, поэтому купил пикап и начинает подрабатывать переездами и вывозом мусора. Не знаю, насколько соответствует действительности всё то, что он рассказывает, но как минимум мне смотреть интересно. А как максимум заставляет задуматься, что кризис в ИТ нас настигнет в ближайшем будущем. И его признаки видны уже сейчас. Работы всё меньше - резюме всё больше. 10 раз подумайте, прежде чем увольняться сейчас и искать что-то другое. Можно и не найти. Тенденция общемировая, не только наша. У нас наоборот всё это с запозданием идёт из-за региональной специфики и отсутствия мигрантов-айтишников со знанием русского языка.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX

#видео
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍50👎2
Продолжу одновременно две темы, которые развиваю последнее время - почтовый сервер на базе Postfix и сбор логов в Loki. Покажу, как очень просто и быстро собирать логи Postfix в Loki с базовым анализом содержимого и простенькой визуализацией в дашборде.

Напомню, что у меня есть подробная статья про мониторинг Postfix с помощью Zabbix. Там в том числе выполняется и анализ логов, но локально, а в систему мониторинга уходит результат локальной обработки. Сами логи Postfix не хранятся.

Сегодня я рассмотрю другой вариант - непосредственно хранение логов на внешнем сервере Loki, который сам будет парсить данные и выполнять некоторую аналитику. Я выведу на дашборд метрики:

◽️Количество доставленных и отклонённых писем в виде соотношения и временной шкалы
◽️Статистика по доменам внешних получателей писем от нас
◽️Статистика по полученным письмам локальных доменов нашего сервера
◽️Статистика по отклонённым письмам в разрезе ошибок и доменов

Помимо этого Loki автоматически будет парсить поступающие логи, что позволит выполнять группировки по 24 распознанным полям: имя получателя, имя отправителя, домен отправителя, IP адрес, ID сообщения, статусы и т.д.

Данную заметку я пишу на примере реального почтового сервера, который я настроил по этой своей статье. Это важно, так как в разных версиях Postfix немного отличается формат логов. Я за основу взял готовый Dashboard из базы Grafana и подправил его под свою версию сервера и настроек Alloy, которые я возьму из этой заметки. А сам Loki установлен и настроен так же, как тут.

Первым делом устанавливаем Alloy на почтовый сервер с Postfix. Посмотреть установку можно в предыдущей заметке. Для сбора только почтовых логов достаточно такой конфигурации:

loki.write "default" {
  endpoint {
    url = "http://195.20.47.169:3100/loki/api/v1/push"
  }
  external_labels = {}
}

local.file_match "postfix" {
 path_targets = [{
  __address__ = "localhost",
  __path__  = "/var/log/mail.log",
  instance  = constants.hostname,
  job     = string.format("%s-maillog", constants.hostname),
 }]
}

loki.source.file "postfix" {
 targets  = local.file_match.postfix.targets
 forward_to = [loki.write.default.receiver]
}


После этого логи сразу потекут в Loki. Их можно смотреть в разделе DrilldownLogs. В качестве service_name в соответствии с настройками Ally будет указано имя сервера и приписка -maillog. В моём случай это будет mail.zeroxzed.ru-maillog. На картинках другое название, но это мне показалось более удачное.

Далее нам нужно импортировать дашборд. Я положил его в свой репозиторий grafana-loki, в раздел grafana/dashboards/, файл Postfix Delivery Status.json. Его нужно скачать и импортировать в Grafana. Во время импорта в качестве источника данных укажите свой Datasource с Loki. Если он не подцепится автоматически, то после импорта зайдите в настройки дашборда, раздел Variables, укажите его явно в переменной DS_LOKI.

Если у вас Loki и Postfix настроены по моим статьям и заметкам, на которые я дал ссылки, то всё должно получиться, потому что все настройки я взял с работающего сервера. Проверил в момент написания заметки. Как это всё выглядит, видно ниже на скриншотах.

Если что-то не работает на дашборде, значит либо лог немного отличается, там локальный парсер прямо в настройках виджетов, либо выборка по меткам не совпадает, если свои метки ставили. Всё это проверяется тут же, в дашборде, в настройках виджетов. Я так всё и правил в изначальном дашборде. У меня после импорта ничего не работало. Поправил и шаблоны парсинга, и метки под свои настройки, добавил ещё один виджет, разделив внешних и внутренних получателей. В итоге всё получилось.

Ниже публикую файлы, которые используются в заметке. Они же продублированы в репозитории.

Подобная настройка максимально простая и быстрая, настраивается буквально за 5 минут по готовым конфигам и шаблонам. Плюс, это всё в формате IaC.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX

#loki #logs #mailserver #postfix
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍51👎1
grafana-loki-postfix.zip
3 KB
Файлы к предыдущей заметке по настройке сбора логов Postfix в Loki с помощью Alloy. Здесь представлен дашборд для Grafana и настройки Alloy в качестве сборщика текстового лога на почтовом сервере.
👍33👎1