ServerAdmin.ru
31.8K subscribers
932 photos
56 videos
25 files
3.04K links
Авторская информация о системном администрировании.

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

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

Ресурс включён в перечень Роскомнадзора
Download Telegram
DevOps-инженер — следующий шаг в карьере сисадмина

Вы уже умеете администрировать системы. Добавьте навыки разработки — и откроете дверь в профессию, где спрос значительно превышает предложение.

На курсе Нетологии «DevOps-инженер с нуля» вы будете перенимать опыт у экспертов из ведущих компаний: Яндекса, VK, Alibaba Group. В течение всего обучения сможете бесплатно пользоваться Yandex Cloud.

На курсе вы:

- научитесь разворачивать кластер Kubernetes;
- поймёте, как работать с Docker и Docker Compose;
- разберётесь в процессах CI/CD;
- получите навыки мониторинга и логирования инфраструктуры;
- подготовите дипломный проект в Yandex Cloud.

А ещё освоите ispmanager: получите 3 месяца доступа к панели управления, +1 проект в портфолио и приоритет при отборе на вакансии партнёра.

Сейчас на курс действует скидка 40%. Записаться

Реклама. ООО “Нетология” ОГРН 1207700135884 Erid: 2VSb5wJ85RT
👎20👍5
Судя по прошедшему в этом году опросу на тему ОС на рабочей машине, у 24% ответивших это Linux, что в целом немало. Мне лично интересно узнать, какое окружение рабочего стола (DE, Desktop Environment) на сегодняшний день наиболее развито, популярно.

В первую очередь на ум приходит Gnome. Но сколько я им пользовался, всегда не нравилось. Не знаю, в чём тут дело. Может просто непривычно, а может он реально неудобен. Постоянно на Linux в качестве рабочей станции я никогда не работал, на сервера тоже DE практически никогда не ставлю. Весь мой опыт ситуативный и очень малый.

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

Меня в основном интересует, чем лучше сейчас пользоваться, чтобы иметь минимум проблем с настройкой, поддержкой, функциональностью. У вас какая DE на рабочей машине? Опрос ниже.

👇👇👇👇👇👇👇

#опрос
👍19👎1
Какое DE (Desktop Environment, окружение рабочего стола) вы используете на рабочей машине с Linux?
Anonymous Poll
30%
GNOME
31%
KDE Plasma
14%
Cinnamon
8%
MATE
0%
Deepin DE
16%
XFCE
1%
LXQt
0%
Budgie
7%
Fly (Astra Linux)
15%
Другое
👍43👎2
Одним из ключевых сервисов в инфраструктуре является DNS. Он же и наиболее простой в настройке, особенно если речь идёт о локальном кэширующем и рекурсивном DNS сервере. При этом его отказ может в один момент парализовать всю работу.

Мне один раз досталась в наследство компания, где периодически падал локальный DNS сервер. Когда это случилось первый раз, было стрёмно. Я ещё только изучал инфраструктуру. Там и кластер виртуализации был, и DRBD диски, и домен на Samba. Разом всё сломалось, мониторинг спамит, пользователи жалуются техподдержке, она теребит меня. Быстро догадался зайти по IP на сервер и перезапустить тогда ещё использовавшийся Bind, если не ошибаюсь. Потом уже всё перенастроил, но Bind успел упасть ещё пару раз. На серваке, где он работал, как потом выяснилось, банально кончалась память.

Сам я потом тоже использовал какое-то время Bind, потом перешёл на DNSmasq, если в инфре была винда, то использовал её DNS сервер, если есть железный роутер, то DNS сервер обычно на нём. На базе DNSmasq собран небезызвестный Pi-hole. Я немного пользовался им, даже запускал его в контейнере на Mikrotik. В итоге отказался, так как всё это ненадёжно работало на моём железе.

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

Technitium DNS - современный сервер, который поддерживает всевозможные технологии и настройки:

▪️DNS-over-TLS, DNS-over-HTTPS, and DNS-over-QUIC, DNSSEC.
▪️Блокировки по готовым спискам доменов.
▪️Быстрый запуск через готовый Docker контейнер (есть и другие способы).
▪️Расширение функциональности через встроенный магазин приложений (может, к примеру, логи запросов писать в MySQL).
▪️Встроенный DHCP сервер.
▪️Управление доступом на основе ролей (RBAC).
▪️API с доступом по токенам.
▪️Поддержка работы через HTTP и SOCKS5 прокси.

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

При этом, всё это настраивается очень просто, особенно в базовой функциональности. Я развернул на двух нодах и собрал сервер в кластер. Использовал следующий docker-compose.yml, изменив только имя хостов:

services:
 dns-server:
  container_name: technitium-01
  hostname: technitium-01
  image: technitium/dns-server:latest
  ports:
   - "5380:5380/tcp" # Web console (HTTP)
   - "53:53/udp"   # DNS service
   - "53:53/tcp"   # DNS service
   - "53443:53443/tcp" # Web console (HTTPS)
   # - "853:853/udp"   # DNS-over-QUIC
   # - "853:853/tcp"   # DNS-over-TLS
   # - "443:443/udp"   # DNS-over-HTTPS (HTTP/3)
   # - "443:443/tcp"   # DNS-over-HTTPS (HTTP/1.1, HTTP/2)
   # - "67:67/udp"    # DHCP service
  environment:
   - DNS_SERVER_DOMAIN=home.local
   - DNS_SERVER_ADMIN_PASSWORD=your_password
   - DNS_SERVER_PREFER_IPV6=false
   - DNS_SERVER_RECURSION=AllowOnlyForPrivateNetworks
   - DNS_SERVER_FORWARDERS=62.76.76.62,77.88.8.1,62.76.62.76,77.88.8.8
  volumes:
   - ./config:/etc/dns
  restart: unless-stopped
  sysctls:
   - net.ipv4.ip_local_port_range=1024 65000


Запустил, зашёл на веб интерфейс http://server-ip:5380/, собрал в кластер, настроил списки блокировки и другие настройки. Подключил нескольким пользователям. Проверил - отлично работает, никаких проблем не возникло. Выключил одну ноду, кластер продолжил работать на второй, запросы резолвил.

Продукт однозначно хорош. Я не знаю, что сейчас есть лучше для рекурсивного кэширующего DNS сервера. Если знаете - подскажите.

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

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

#dns
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍132👎5
Девопсы, сисадмины, архитекторы, техлиды (и вообще все, кто принимает технические или бизнесовые решения в ИТ-сфере), обратите внимание на канал Кучевые АйТи. Здесь команда “Облакотеки” пишет о развитии облачных технологий и о том, как превратить инфраструктурный хаос в удобные виртуальные решения для бизнеса.

S3 и HDFS — чем разница и что выбрать? Рассказываем о двух технологиях, которые пришли из разных миров, но плотно сплелись в общем поле задач и функций.
Читать в канале

Как выбрать сеть для Kubernetes. Делимся обзором сетевых инструментов и критериями их выбора.
Читать в канале

Российские ИТ-компании собрались в коалицию и запускают быстро реализуемый облачный SOC (БРОSOC).
Читать в канале

А также записи вебинаров ”Импортозамещение в ИБ: больше развития или шумихи” и “Почему людей всегда не хватает — и что с этим делать?

👉Подписаться t.me/oblakoteka
👎9👍5
У Windows в какой-то момент появилось интересное техническое решение под названием Песочница (Windows Sandbox). Она сделана на базе Hyper-V. Можно запустить любой исполняемый файл в этой песочнице. На практике будет создана временная виртуальная машина с Windows, где вы сможете проверить работу приложения. А после закрытия виртуальной машины, она удаляется со всеми сделанными изменениями.

Реализовано, в принципе, удобно. Правой кнопкой мыши нажимаешь на файле и выбираешь Запустить в песочнице. Я первое время пользовался, потом перестал. У меня и так полно тестовых виртуальных машин. Нет нужды что-то у себя локально запускать. К тому же у меня есть постоянные локальные виртуальные машины. Установить песочницу можно через Панель управления, в разделе компонентов Windows. Он так и называет - Песочница Windows.

Несколько лет не пользовался песочницей. Недавно заметил, что осталось мало места на системном диске. Стал разбираться, куда оно ушло. Кстати, удивительно, что в Винде до сих пор нет удобного встроенного инструмента для этого. Заметил, что директория

C:\ProgramData\Microsoft\Windows\Containers\Layers


занимает 80 гигов. По названию это похоже на слои контейнеров того же Docker, но я его не устанавливал на эту машину и точно не запускал контейнеры.

Если посмотреть на содержимое слоёв, то там располагаются системные файлы из директории Windows. Контейнеров, как и слоёв к ним, много - пару десятков точно, может больше.

Стал гуглить и спрашивать ИИ на тему, что тут хранится. На удивление, информации не так много. В основном везде говорится, что это хозяйство Docker, который можно установить и на Windows. Но это не мой случай.

Оказалось, что это Песочница плодит контейнеры со слоями. Зачем и почему, не нашёл подробной информации. Как и не нашёл, как всё это можно корректно почистить. В итоге песочницу просто удалил через тот же раздел с компонентами Windows. После удаления и перезагрузки, каталог с контейнерами и слоями сам очистился, место освободилось, хотя и не все 80 ГБ. Судя по всему там в том числе и ссылки были, а не только файлы.

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

#windows
8👍98👎3
Я часто упоминал в различных заметках систему по сбору логов Loki. Например, вот в этой подборке подобных систем (там сразу можете посмотреть аналоги). При этом у меня нет ни одной заметки на тему того, как её быстро развернуть. Решил написать краткое руководство по этой теме.

Проект относительно новый, стартовал в 2018 году в противовес стеку ELK. Grafana решила сделать более простой и легковесный вариант хранения логов немного с другой моделью анализа, без полной индексации текстов логов, используя вместо этого метки для потоков. На деле получился хороший продукт, интегрированный в стек Grafana + Prometheus с похожей идеологией хранения и поиска (язык запросов LogQL по аналогии с PromQL).

Для начала выполню базовые действия для запуска Loki и Grafana и настрою отправку логов в Loki от различных Docker контейнеров. Большее в одну заметку не уместить. Думаю, что далее я эту тему разовью.

Я не буду запускать Loki и Grafana в одном Docker Compose файле, так как им не обязательно быть установленными вместе. Grafana поддерживает весь стек своих продуктов, так что нет особого смысла поднимать её рядом со сборщиком логов.

Сначала запустим Loki. Готовим для него compose.yaml и конфигурацию в config.yaml. Не буду приводить здесь содержимое. Оно будет отправлено следующим сообщением в архиве со всеми остальными конфигурациями. Для удобства скопировал её же в gitflic.

# curl https://get.docker.com | bash -
# git clone https://gitflic.ru/project/serveradmin/grafana-loki.git
# cd grafana-loki/loki/

В файле compose.yaml укажите актуальную версию image на момент установки. Запускаем проект:

# docker compose up -d

Проверим, что сервис стартовал:

# curl http://192.168.137.29:3100
404 page not found

Это нормальный ответ. 404 нам ответил Loki. Запустим теперь Grafana:

# cd ../grafana

Указываем нужную версию в compose.yaml и запускаем:

# docker compose up -d

Идём браузером по IP сервера, где запущена Grafana на порт 3000. Учётка по умолчанию - admin / admin. Заходим в Grafana, идём в раздел ConnectionsData sourcesAdd data source. Выбираем Loki. В качестве настроек достаточно указать только url. В моём случае это http://192.168.137.30:3100/. Мотаем страничку в самый низ и нажимаем Save & Test. Ошибок быть не должно.

Стек поднят и готов к приёму логов. Отправим туда логи контейнеров Docker. Для этого у Docker существует драйвер. Его необходимо установить на хосте:

# docker plugin install grafana/loki-docker-driver:3.6.0-amd64 --alias loki --grant-all-permissions

Проверяем, что он установился:

# docker plugin ls
018395707e37  loki:latest  Loki Logging Driver  true

Всё в порядке. Теперь мы можем в самом демоне Docker настроить отправку всех логов в Loki через правку его конфигурации в /etc/docker/daemon.json. Для этого туда надо добавить:

{
"debug": true,
"log-driver": "loki",
"log-opts": {
"loki-url": "http://192.168.137.30:3100//loki/api/v1/push",
"loki-batch-size": "400"
}
}


Это не очень удобно, если у нас нет желания собирать логи абсолютно всех контейнеров. Удобнее управлять этим для каждого контейнера отдельно. Для этого в compose файл достаточно добавить ещё одну секцию logging. Покажу сразу итоговый пример для запуска Grafana из этой публикации:

services:
 grafana:
  image: docker.io/grafana/grafana-oss:12.3.1
  container_name: grafana
  logging:
   driver: loki
   options:
    loki-url: "http://192.168.137.30:3100/loki/api/v1/push"
    loki-retries: 2
    loki-max-backoff: 800ms
    loki-timeout: 1s
    keep-file: "true"
    mode: "non-blocking"
  ports:
   - "3000:3000"
  volumes:
   - grafana-data:/var/lib/grafana
  restart: unless-stopped
volumes:
 grafana-data:
  driver: local


Перезапускаем проект:

# docker compose stop
# docker compose up -d

Идём в Grafana, раздел DrilldownLogs. Выбираем в выпадающем списке service имя контейнера и смотрим его логи.

Настройка простая и быстрая, легко автоматизируется. Далее я разовью эту тему и добавлю логи из других систем.

———
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
1👍79👎5
grafana-loki.zip
1.8 KB
Конфигурации к предыдущей заметке про Grafana Loki 👆👆👆👆👆👆
👍45👎2
Освойте UserGate и повысьте уровень защиты своей ИТ-инфраструктуры!

Бесплатный онлайн-курс поможет вам шаг за шагом освоить внедрение и настройку UserGate — без лишней теории, с упором на практику.

В программе курса:
Настройка сетевых зон, NAT, VPN, кластеров, фильтрации на уровне приложений и правил межсетевого экрана
Интеграция с LDAP и Active Directory, фильтрация контента, системы обнаружения вторжений и обратный прокси
Пошаговые видеоуроки, практические упражнения и итоговое тестирование

По завершении курса Вы получите:
⭐️ именной сертификат
📕 PDF-инструкции
📋 чек-листы и готовые конфигурации, которые помогут в дальнейшей работе

Пройдите курс в удобное время — запись уже доступна.
👎31👍12
▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал интересными/полезными. Это видео из моих подписок за последнее время (обычно беру период в 2 недели), что мне понравились.

Proxmox VE 9 — Создание и настройка Ceph кластера | Распределённое хранилище и отказоустойчивость
Proxmox + Ceph: как заменить отказавший диск шаг за шагом
Продолжение цикла видео автора о настройке HA кластера на базе PVE. Эти два ролика про Ceph.

Я целый год использовал Proxmox и VMware одновременно (что меня больше всего удивило).
Сравнение двух платформ виртуализации. Вывод автора - для небольших инфраструктур PVE однозначно удобнее и функциональнее.

Web FileBrowser Quantum + OnlyOffice.
Обзор файлового менеджера через браузер, что лично для меня не очень интересно. А вот его связка с OnlyOffice выглядит уже интересным и функциональным решением для каких-то ситуаций.

Palmr - Simple File Sharing that keeps your files off the big guys' cloud.
Простая open source система для совместного доступа к файлам. Загружаете туда свой файл и настраиваете доступ к нему другим людям. Можно ограничить по кол-ву скачиваний, времени жизни ссылки, закрыть паролем и т.д. Это более простой аналог Seafile или полный аналог Pwndrop.

Dockhand Deep Dive: The NEW Docker Management Tool Explained
Обзор новой панельки для управления Docker контейнерами. Выглядит прикольнее Portainer. Если для вас это актуально, рекомендую посмотреть. Я привык запускать Docker контейнеры в LXC контейнерах Proxmox, каждый в отдельном контейнере, так что мне не подходит такой софт. Мне кажется, так, как у меня, удобнее, нежели собирать все контейнеры в одной виртуалке. Хотя раньше именно так делал.

Netbox как источник достоверной информации о Zabbix: статья Эндрю Нельсона / Zabbix Summit 2025
Интересное выступление, где автор рассказал, как у них Netbox выступает как источник истины для мониторинга. Всё, что туда добавляется автоматически заводится в мониторинг через интеграцию с Ansible.

Кастомизация Angie (NJS, Lua, Perl)
Расширение функциональности веб сервера с помощью модулей для поддержки различных языков программирования, используемых для написания тех или иных функций. Как обычно автор приводит конкретные наглядные примеры.
Запуск CGI-скриптов в Angie
Пример настройки CGI скриптов. Не знаю, кто и где их сейчас использует. Я уже очень давно не настраивал и не запускал их.

Звонки без блокировок - Свой мессенджер на homelab
Автор разворачивает у себя для общения Nextcloud Talk, рассказывает про него, объясняет почему его выбрал.

Self-hosted Cloudflare + VPN replacement! Pangolin Tutorial
Обзор и настройка Pangolin - необычная система на базе обратного прокси Traefik со своей системой аутентификации или IAM (Identity and Access Management). Он способен объединять разрозненные веб сервера с помощью встроенной интеграции с Wireguard.

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

#видео
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2👎1