ServerAdmin.ru
28.9K subscribers
304 photos
35 videos
13 files
2.63K links
Авторская информация о системном администрировании.

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

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
3 причины подписаться на аккаунт @selectel 🔥

1. Основы программирования простым языком и без снобизма.
2. Полезные факты о железе, дата-центрах и хостингах.
3. Актуальные новости из IT.

Жми на кнопку «Подписаться», чтобы получать больше IT-материалов и каждый день узнавать что-то новое!

#реклама
​​Случилось знаменательное событие. Zabbix научился сам мониторить время жизни TLS сертификатов. Реализуется это средствами Zabbix Agent 2 и нового шаблона для него. Данный шаблон был зарелизен вместе с версией 5.4.4. Поддержка также добавлена в LTS версию 5.0.15. Реализуется данный функционал с помощью нового айтема web.certificate.get.

Настройка подобных проверок там следующая. Добавляете новый хост, на котором установлен Zabbix Agent 2. Добавляете к нему шаблон Website certificate by Zabbix agent 2. Взять можно в репе. В макросе указываете dns имя сайта и сохраняете хост.

Раньше приходилось всякие костыли применять - https://serveradmin.ru/monitoring-sroka-deystviya-ssl-sertifikata-v-zabbix/ Оцените количество комментов к статье. Такими темпами скоро писать будет не о чём. Zabbix покрывает готовыми шаблонами все основные потребности. Все мои костыли стали больше не нужны. Все из коробки работает.

Видео процесса настройки - https://www.youtube.com/watch?v=QwEDWk0Ky64

#zabbix
​​Рекомендую к просмотру интересное выступление с HighLoad ++ Даниила Захлыстова (Яндекс) - Надежные и быстрые бэкапы PostgreSQL. Речь там идёт про всем известный инструмент WAL-G для бэкапов баз PostgreSQL.

Выступление короткое и достаточно ёмкое. Рассказано в основном про нововведения готовящегося релиза на момент записи трансляции, так как в целом про WAL-G много информации. Релиз v1.0 в итоге состоялся 31 мая.

WAL-G один из лучших бесплатный инструмент для резервного копирования PostgreSQL. Поддерживает полные и инкрементные бэкапы. Его отличает хорошая поддержка современных облачных хранилищ для хранения архивов.

В видео помимо непосредственно рассказа о WAL-G дана общая информация по бэкапам баз данных, что может быть интересно для тех, кто не сильно разбирается в этой теме.

📌 Полезные ссылки:
Youtube - https://www.youtube.com/watch?v=DcIq7H622dQ
Тэзисы выступления - https://www.highload.ru/spring/2021/abstracts/7276
Исходники WAL-G - https://github.com/wal-g/wal-g
Статья с настройкой и примерами - https://habr.com/ru/post/486188/

В связи с тем, что сейчас многие переезжают на PostgreSQL, в том числе с 1С, информация актуальна. Стоит сохранить в закладках.

#backup #postgresql
​​Недавно к какой-то из заметок с докером у меня кто-то спрашивал в комментариях, есть ли для него удобный веб интерфейс. Я так сходу не назвал, так как сам не пользуюсь. Но вчера разбирал заметки старые, нашёл закладку сервиса, который хотел проверить - Portainer.

Это оказался отличный веб интерфейс для контейнеров. Причем, поддерживает он не только Docker, но и Swarm, Kubernetes. Ставится очень просто - в контейнере 😁 Достаточно ему docker.sock пробросить.

docker run -d -p 8000:8000 -p 9443:9443 --name portainer \
  --restart=always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v portainer_data:/data \
  portainer/portainer-ce:latest

Идём в веб интерфейс - https://192.168.13.157:9443 и создаём учётную запись администратора. Дальше все достаточно просто и интуитивно понятно. Можете управлять своим локальным хостом - создавать контейнеры, просматривать images, volumes, создавать сети, смотреть логи и т.д. В общем, полное управление докером через веб интерфейс.

Я немного потестировал и в итоге оставил эту панель на своем тестовом хосте для Docker. Хороший продукт, мне понравился. Рекомендую.

Сайт - https://www.portainer.io/
Исходники - https://github.com/portainer/portainer
Demo - http://demo.portainer.io/ (admin / tryportainer)

#docker #devops
​​Времена, когда были очень актуальны ISO образы на флешках безвозвратно уходят. Сейчас всё реже и реже приходится именно с внешних носителей выполнять установки ОС. Тем не менее, иногда приходится это делать. Я помню раньше был единственный рабочий способ получить загрузочный носитель с кучей ISO образов, которые можно выбирать по своему желанию, это купить какой-то известный внешний хард, умеющий эмулировать CD-ROM. Не помню производителя и модель.

Сейчас с этим проще. Есть программа Ventoy, которая позволяет сделать загрузочную флешку, накидать в неё образов и потом выбирать, с какого из них грузиться. Причём она поддерживает не только ISO, но и прочие образы, типа IMG, VHD(x) и другие. Программа бесплатная, open source.

Настраивается все достаточно просто. Качаете Ventoy из репозитория под свою систему. Поддерживается как Windows, так и Linux. Создаёте с его помощью загрузочную флешку. Программа всё сделает сама. Причём будет поддерживаться загрузка как на MBR, так и UEFI системах. Затем в основной раздел флешки загружаете нужные вам образы дисков. После загрузки с этой флешки, вы сможете выбрать один из образов для загрузки системы.

Из минусов то, что не на всём железе работает, и иногда какие-то образы могут глючить, не грузиться. Но в общем и целом лучше всё равно ничего нет (я не видел).

Сайт - https://www.ventoy.net/
Исходники - https://github.com/ventoy/Ventoy
​​Для управления IP адресами существует специальный инструмент (у меня это обычно excel 😁) - TeemIP. Авторы этой программы те же самые, что и у известного iTop. Так что TeemIP может быть установлен как отдельный standalone сервис, либо как модуль к iTop.

TeemIP полностью бесплатен и распространяется без ограничений. Можно без проблем развернуть у себя. Работает на базе php + mysql, запустить можно на обычном веб сервере. Достаточно установить LAMP, скачать исходники и запустить инсталлятор.

Не знаю, насколько TeemIP актуален как отдельный продукт. Наверное кому-то нужен, раз его создали. А вот как часть iTop очень гармонично смотрится. К последнему, кстати, стоит внимательно присмотреться. С его помощью можно создать сервисно-ресурсную модель IT инфраструктуры. Я не писал про него обзор, а продукт интересный и полезный. Есть интеграция с Zabbix. Надо будет отдельно написать.

Сайт - https://www.combodo.com/teemip-194
Demo - https://www.combodo.com/teemip-online-demo
Исходники - https://github.com/TeemIp

#IPAM #управление
​​Мониторинг сервера 1С на Windows в Zabbix

Мне понадобилось замониторить некоторые параметры сервера 1С, установленного на Windows. Не часто приходится подобным заниматься, так что готового решения под рукой не было. Стал разбираться. Расскажу, какой способ в итоге использовал лично я. Как это обычно бывает с Zabbix, вариантов настройки мониторинга может быть много.

У 1С в комплекте есть служба ras, которая выдаёт инфу о кластере. И есть клиент к этой службе rac, который с помощью различных ключей получает от службы нужную информацию.

Регистрируем ras как службу Windows (у меня порты кластера нестандартные, 1640 и 1645 вместо 1540 и 1545):

sc create "1C RAS" binpath= "C:\Program Files (x86)\1cv8\8.3.18.1208\bin\ras.exe cluster --port=1645 localhost:1640 --service" displayname= "1C RAS" start=auto

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

"C:\Program Files (x86)\1cv8\8.3.18.1208\bin\rac.exe" localhost:1645 cluster list

Запишите полученный uuid кластера. Ниже пример запроса, который покажет все активные сессии:
"C:\Program Files (x86)\1cv8\8.3.18.1208\bin\rac.exe" localhost:1645 session --cluster=62734fb4-f267-4708-9ccf-e929b480b9f4 list

Можно посчитать их количество и на выходе получить просто число:

"C:\Program Files (x86)\1cv8\8.3.18.1208\bin\rac.exe" localhost:1645 session --cluster=62734fb4-f267-4708-9ccf-e929b480b9f4 list | find /c "1CV8C"

Это число мы и передаём в Zabbix с помощью UserParameter. Дальше как обычно - шаблон, айтемы, графики, триггеры. По аналогии вытаскиваются любые другие метрики, которые умеет получать rac. Мне помимо подключений нужна была инфа по BackgroundJob и licenses:

rac session --cluster=uuid list --infobase=uuid | find /c "BackgroundJob"

rac session --licenses --cluster=uuid list

Забирайте в закладки. Zabbix постоянно меняется, но принципы и подходы остаются те же. Когда надо будет, на основе этой инфы под любую версию Zabbix можно быстро сделать мониторинг.

#zabbix #1с #windows
​​Курс "Основы сетевых технологий": почему его стоит пройти всем?

Посмотрите на схему сети и ответьте:

На каком уровне модели OSI работают коммутаторы SW1 и SW2?
Компьютеры отдела продаж и руководства находятся в одном широковещательном домене или в разных?
Какой из коммутаторов SW1 и SW2 хранит в себе информацию об IP-адресах, а какой нет?
Может ли коммутатор SW2 передавать через себя информацию о VLAN?
Зачем сервер вынесли в DMZ?
Зачем для подключения удаленного ноутбука использовали связку из двух VPN одновременно: L2TP/IPSec?

Если вы не уверены, что правильно ответили на все вопросы, то курс вам точно нужен.

То, что заумно и занудно преподают в институте 4 года, максимально доступно упаковано в 9 часов видеоуроков.

Емкий и логичный курс по доступной цене, рекомендую.
👉 Забирать тут.

❗️p.s. от автора канала: Я этот курс проходил, так что могу рекомендовать.

#реклама #рекомендация
​​У меня тут сайт на днях ддоснули. Не знаю, специально или нет. Длилось недолго, минут 10-15. Никакой защиты у меня не стоит, так как нет смысла. С меня не убудет, если сайт полежит какое-то время. Защита стоит дороже, чем доход с сайта.

Как-только сайт начал лагать и пришли алерты от мониторинга о том, что на прокси сервере CPU в потолок ушел, сразу же пошел смотреть дашборд в ELK. Картина из него во вложении. Увидел количество запросов и разных IP, сразу расслабился. Я тут сделать ничего не могу. Канал в 1 гиг сразу забили весь. При этом инфра достойно держалась, хотя всё крутится на дешманском сервере chipcore с двумя обычными ssd.

Пользователям отдаётся чистая статика из кэша напрямую через nginx. Так что 500-е полезли из-за того, что на proxy-nginx было всего 2 CPU и они были загружены полностью. Может быть вообще переварили бы весь этот траф. Другое дело, что меня бы провайдер отрубил, если бы атака продлилась чуть дольше.

Важно иметь мониторинг и логи где-то во вне от наблюдаемого объекта. Если бы они висели на том же ip и канале, то посмотреть бы ничего не смог. Пришлось бы разбираться. А так я сразу же всё понял и оценил обстановку. Так как был вечер, приготовился лечь спать 😎

#ddos #elk
​​Мне иногда нужно с разных IP подергать какой-нибудь API или хост. Для этого нужно либо пул своих адресов иметь, либо где-то прокси искать и использовать их. Всё это хлопотно и трудозатратно. Я нашёл сервис, который позволяет это всё упростить и автоматизировать - https://zenrows.com

Работает он очень просто. Вам дают API, с помощью которого вы делаете запросы через указанный сервис. Проще всего проверить его работу через какой-нибудь сайт, позволяющий узнать ваш внешний ip:

# curl "https://api.zenrows.com/v1/?apikey=96527c63b65ea&url=https://ifconfig.me/ip"

Каждый запрос будет показывать разный внешний IP. То есть по сути zenrows это просто набор прокси серверов, обёрнутых в сервис, которым удобно пользоваться.

Есть бесплатный тариф, который позволяет сделать 1000 запросов в месяц. Для тестовых целей лично мне этого хватает. Дальше цены достаточно высокие - 49$ за 250 000 запросов.

Сервис практически уникальный. Я не видел раньше подобного и приходилось как-то в рамках своих серверов и ip крутиться, когда нужно было с разных адресов что-то подёргать и протестировать доступ, защиту и т.д. Применения можно много найти, в том числе и для всяких пакостей. Но я верю, что ты, дорогой мой читатель, не такой 🙅🏻‍♂️

#бесплатно #сервис
Капец, что творится. Сегодня ночью приснился сон по мотивам вчерашней заметки про ddos сайта. Мне приснилось, что сайт взломан, залит вредоносный код. Ddos был для того, чтобы отвлечь внимание и заливка шелла прошла незаметно на фоне сотен тысяч строк логов и прочих мероприятий.

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

А однажды приснилось то, что произошло с коллегой, который только утром пришёл и рассказал всем о случившемся. Тогда я конкретно удивился и понял, что мир устроен не так, как мы себе представляем. И теперь меня ничем "сверхъестественным" не удивишь. С тех пор пришлось не раз столкнуться с необычными вещами. Когда ты веришь в них и воспринимаешь как должное, лучше выхватываешь подобное из окружающего мира.

У вас бывало такое?

#мысли
​​На днях со мной поделились классным сервисом Whois API, который всю инфу о домене выдает в json. Бесплатный тариф позволяет сделать 3000 запросов в месяц, что для мониторинга за доменами более чем достаточно. Запросы можно делать раз в день.

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

Я и так, и эдак подходил к теме, пока не придумал, как же это реализовать. Дело в том, что автообнаружение в Zabbix работает через какие-то внешние запросы, откуда будет приходить список значений. То есть нельзя просто взять в каком-то макросе указать список и использовать его для автообнаружения. Раньше я сохранял список доменов в текстовом файле, парсил его скриптом и передавал на Zabbix Server через UserParameter. Хотелось от этого уйти.

В итоге я сделал вот что. Взял для автообнаружения в качестве источника данных внутреннюю проверку и ключ zabbix[uptime], просто чтобы выбрать что-то, не важно что. Список доменов передал с помощью предобработки в виде javascript, которая список доменов берет из макроса, где они перечислены через запятую. Ну а дальше все распарсить, разбить по элементам, добавить триггеры было делом техники. По ходу дело пришлось и с новым синтаксисом разобраться (есть неочевидные нюансы), и javascript подтянуть.

Прикладываю сам шаблон. Чтобы все заработало, необходимо в макросах указать свой API KEY от сервиса promptapi и список доменов через запятую. Больше ничего делать не надо, только шаблон прикрепить к какому-нибудь хосту. После того, как прикрепите, запустите вручную правило автообнаружения доменов и потом айтемы сбора данных, так как там интервал стоит в 1 день. Замучаетесь ждать результата работы :)

В шаблоне настроены триггеры на:
- 7 и 30 дней до окончания делегирования;
- изменение списка NS серверов;
- изменение регистратора.

Соответственно, все эти значения собираются. Можно вывести куда-то на дашборд, если вам они интересны.

https://serveradmin.ru/files/zabbix/zabbix-domain-paid-till-with-discovery.yaml

#zabbix
​​2048, только с серверами — игра от Selectel

Ещё никогда собирать серверы не было так просто и приятно.

https://tprg.ru/U14X

#реклама