ServerAdmin.ru
30.8K subscribers
514 photos
45 videos
20 files
2.8K links
Авторская информация о системном администрировании.

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

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

Регистрация в РКН: https://vk.cc/cG1Urj
Download Telegram
​​Многим известны сетевые хранилища Synology. У меня достаточно большой опыт работы с ними. Всегда рекомендую приобрести именно их под файловые хранилища или бэкапы. В разное время я использовал самодельные samba сервера, freenas, truenas, qnap. Но Synology всегда нравились больше. Если есть возможность, всегда их предпочту. Они отлично заводятся в домен AD, чтобы настраивать права на файлы стандартными средствами Windows.

Минус у Synology один - высокая цена при очень скромной производительности. Заметку я эту пишу для того, чтобы рассказать тем, кто не знает, о проекте Xpenology. С его помощью можно установить операционную систему Synology DSM на любое железо. Я пробовал, это отлично работает. Даже статью писал на сайте, но она сильно устарела, так что ссылку не привожу.

Xpenology это по сути небольшой загрузчик, который ставится на флешку и система загружается с неё. После этого на железо можно установить Synology DSM. Она будет воспринимать его как родное. Я не рекомендую ставить Xpenology в прод, так как есть проблемы с обновлением. Не знаю, может сейчас они решены, но когда я пробовал, обновлять было небезопасно, поэтому рассчитывать на обновления не приходилось. Так что решение может подойти кому-то для дома, чтобы просто посмотреть, попробовать Synology.

Xpenology можно поставить в виртуалку. Куча инструкций отлично гуглятся. Я так понял, что сама Synology не сильно против подобного проекта, так как не слышал, чтобы она противодействовала. Мне кажется, это отличная реклама для распространения своего продукта. Так что есть хорошая возможность всё проверить, чтобы потом не возникали популярные вопросы на тему того, почему устройства Synology такие дорогие. Потому что удобные и функциональные.

Сайт - https://xpenology.com/forum/forum/99-%D0%B4%D0%BE%D0%B1%D1%80%D0%BE-%D0%BF%D0%BE%D0%B6%D0%B0%D0%BB%D0%BE%D0%B2%D0%B0%D1%82%D1%8C/

#fileserver
​​Лень разбираться в SQL?

Для вас уже всё сделали.
📌 Канал @databases_secrets рассказывает обо всех возможностях, приёмах и лайфхаках Баз Данных, SQL и Big Data.

Подписывайтесь и прокачивайте свои навыки: @databases_secrets

#реклама
​​В одном из обсуждений на тему Asterisk кто-то упомянул сборку Issabel PBX. Я не сразу понял, что это вообще такое и пошёл разбираться. Мне этот продукт не знаком. Сейчас самое популярное готовое решение для организации voip связи - FreePBX. Лично я очень не люблю эту панель. Мне не нравится интерфейс, неинтуитивная настройка, сложности с кастомизацией. Я быстрее обычный Asterisk настрою.

Когда стал смотреть внешний вид Issabel, понял, что он мне что-то напоминает. И вспомнил - Elastix. Мне доводилось много лет назад управлять телефонией на основе этой панели управления. Лично мне она нравилась больше, чем FreePBX. Но потом Elastix был куплен 3CX и перестал быть бесплатным. Точнее, там большие ограничения появились для бесплатной версии и фактически её перестали использовать.

Походил по сайту Issabel. Проект показался не очень живым. Информации мало, какие-то ссылки битые. Кто-нибудь пользуется им? Можете дать обратную связь? Стоит обратить на него внимание или можно уже забыть?

Сайт - https://www.issabel.org

#asterisk
​​Посмотрите прикреплённую к посту картинку. Это список правил блокировок рекламы, наложенные на мой сайт serveradmin.ru. На текущий момент фактически он сломан этими блокировщиками. Расскажу обо всём по порядку. Большинство не понимают до конца, какую роль блокировщики сейчас играют.

У меня на сайте с самого начала стоит реклама от Яндекса и Гугла. Никакой экзотики. Те, у кого блокировщики, понятное дело, её не видят. Для таких людей я показывал тематическую рекламу курсов Otus и Mikrotik (которые сам проходил). В разделе Devops реклама Devops курсов, в Mikrotik - Mikrotik и т. д. Со всеми рекламодателями договаривался лично, давно их знаю.

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

В последний год активность листа блокировок RU AdList сильно увеличилась. Стали блокировать все мои объявления и даже ссылки на мой же Telegram канал. Из блокировок я выходил. Закончилось тем, что для моего сайта написали whitelist элементов и js скриптов, которые можно отображать. И теперь любое изменение сайта, обновление вёрстки, установка плагинов и т.д. ломает отображение. Прямо сейчас, к примеру, с включенным блокировщиком не видно правый сайдбар вообще.

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

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

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

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

❗️ Блокировщики рекламы не такие безобидные, как кажется на первый взгляд. Они меняют, перекраивают интернет. Причём меняется он не в лучшую сторону и как бы ни удивительно это звучало, но делается это руками самих пользователей. На этом примере наглядно видно, что на самом деле НАРОД И ЕСТЬ ВЛАСТЬ, так как в его власти менять мир вокруг себя. В политике и реальном мире всё работает точно так же, хотя люди не понимают этого и думают, что от них ничего не зависит, но на самом деле всё именно от них и зависит, просто они не понимают механизма и не видят полностью всех обратных связей.

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

#мысли
​​С удивлением обнаружил, что существует огромное количество всевозможных chmod калькуляторов. С одной стороны это можно понять. Для тех, кто далёк от мира Linux, права доступа, выраженные в численных значениях, могут быть не понятны. С другой стороны, одной из первых программ на Linux, которую я поставил, был Midnight Commander и там визуальное управление правами доступа представлено аж в двух различных вариантах. Так что у меня никогда не было заминок и проблем с ними.

Написано даже консольное приложение для вычисления прав доступа - chmod-cli (https://github.com/Mayowa-Ojo/chmod-cli). Выглядит красиво и удобно, но как минимум для тех, кто использует MC, совершенно не нужное. Если захотите попробовать, то достаточно скачать бинарник из репы и запустить.

Кстати, если назначать права доступа в консоли, то у меня давняя привычка писать именно цифрами
chmod -R 777
а не буквами:
chmod -R a+rwx
Мне цифрами кажется нагляднее. А вы как чаще пишите? Пользовались когда-то подобными калькуляторами?

#terminal
Вчера был ОЧЕНЬ удивлён огромной активности под постом на тему блокировщиков. Это самый обсуждаемый пост за всю историю канала. Я не собирался развивать эту тему, но раз она получила такой отклик, хочу сделать дополнение, так как вчера у меня не было возможности участвовать в дискуссии, но я увидел, что по той или иной причине меня неправильно поняли.

1️⃣ Я благодарен тем, кто отправил мне вчера донат, хотя я этого не просил. Более того, я и не нуждаюсь в этом, поэтому и форму убрал с глаз долой. Многие написали, что добавили сайт в список исключений. Спасибо за участие, хотя для меня это не имеет принципиального значения.

2️⃣ Блокировщики существуют давно. Когда начинал вести сайт, я сам пользовался. Для меня не откровение, что всем надоела реклама и люди не хотят её смотреть. Я в браузере убрал блокировщики не так давно, может 2-3 года назад. Просто понял, к чему они ведут и альтернатива мне нравится меньше. Буду с вами откровенен, у меня есть платная подписка Adguard и я иногда использую её на смартфоне, чтобы сохранить заряд батареи. Рекламные скрипты выедают её очень активно. Я полностью осознаю, какой вред может приносить даже стандартная реклама Adsense, обвешанная JS.

3️⃣ Я пробовал и исследовал разные способы монетизации. Абсолютно все, что были предложены вчера. Более того, у меня была идея объединить владельцев it сайтов. Знаком со многими лично и обсуждал эту тему. Я знаю их, в том числе мотивацию, подход к делу и многое другое, чего не знают и не понимают те, кто никогда этим не занимался! У меня тут практический опыт, а не теоретический. Среднестатистический писатель it сайта это специалист, которому нравится писать статьи и делиться знаниями, но не нравится заниматься всякими рекламодателями, партнёрками, платежами и т.д. Ему хочется писать статьи и по возможности максимально просто получать доход. Никто не собирается из этого строить бизнес и открывать какой-то закрытый клуб или идти ещё дальше.

4️⃣ Примерно года 3 у меня настроен через Zabbix мониторинг списков блокировок. Как только туда попадает что-либо, касающееся моего сайта, я начинаю разбираться. Мне даже стал нравиться этот процесс. Получаю блокировку, смотрю, как она работает, что можно сделать чтобы обойти и обхожу, иногда нет. Теперь сам могу писать правила, изучил синтаксис. Блокировки иногда появляются, иногда исчезают. Нормальный рабочий процесс, без негатива. Но в определённый момент стали появляться правила, которые ломали вёрстку и в целом работу сайта. То есть брали и просто отрубали целые разделы сайта, к примеру, сайдбар. Запрещали менять порядок и имена элементов.
❗️Конкретно это, по моему мнению, перебор и та черта, которая превращает блокировку рекламы в явное вредительство, потому что зайти здесь можно очень далеко и уже зашли. Погуглил немного и увидел, что подобные скандалы с блоком не только рекламы уже были.

Именно этот момент меня возмутил и побудил написать. Я не хочу, чтобы блокировщики превратились в инструмент шантажа "мелких собственников", потому что страдать от этого будут только небольшие сайты. Никто не будет эти методы применять против того же Яндекса или Мейла (потому что слабо), которые успешно показывают рекламу через блокировки (специально проверил, на Яндексе вся реклама видна). А владельцы небольших сайтов, которые могли бы в одно лицо создавать какую-то ценность, если бы получали за это доход, выпадают.

Я много читаю англоязычный интернет. Там мало содержательных авторских статей в выдаче гугла. Одни how to со step1, step2 и т.д. с пересказом мануала. Можно сравнить выдачу elk install confiure в буржунете и elk установка и настройка в рунете. Выдача у нас будет более разнообразна и от реальных авторов, а не копипастеров мануала или сео статей DigitalOcean. Но всё плавно идёт к замещению на говноконтент.

Чтобы подсветить эту проблему, написал заметку, а не чтобы отстоять свои личные интересы или обиды. Я уже сказал и повторю, для меня не сюрприз массовое наличие блокировщиков и нежелание смотреть рекламу.
Расскажу историю своего самого большого факапа в карьере. Давно собирался это сделать, но забывал. А на днях что-то вспомнилось. Это история про то, как я потерял прод и бэкапы одновременно 😱 🤡. Но всё закончилось хорошо.

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

Мониторинг Zabbix показал ошибку смарта одного из дисков рейд массива, где жила большая (2-3TB) файловая шара (samba на Linux, введена в домен AD), которой пользовался весь офис. У юзеров на компах не было файлов вообще. Всё только там. Я пошёл проверять и понял, что эта ошибка связана с катастрофически большим количеством парковок головок жёсткого диска. Сам диск на тот момент уже не был виден в системе. Проверяю остальные диски, а там всё то же самое. Был какой-то баг в прошивках дисков WD, в итоге они в Linux парковались каждые 8 секунд. И так несколько лет. Я понимаю, что могу потерять в ближайшее время весь массив, так как он может просто развалиться или не пережить ребилда.

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

Надо принимать решение, так как на носу новый рабочий день. Есть еще один тестовый сервер, но диск нужного объёма там один, без рейда. Прикинул в уме и решил, что degraided raid5 с убитыми дисками менее надёжен, чем одиночный рабочий диск и переезжаю на него. Права доступа нормально восстанавливаю. Утром приходят люди и начинают работать уже на новом диске. Изменения накапливаются на нём.

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

Принимаем решение оперативно купить новые диски и заменить вообще все, которые потенциально убитые из-за парковок. Там вроде 6 дисков по 3TB было. На сервере помимо файловой шары что-то ещё менее критичное лежало. На следующий день мой помощник едет покупать диски. Сам сервер в ЦОД, так что он забирает его и притаскивает в офис, включает.

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

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

Продолжение в следующем посте 👇

#backup
Продолжение (Начало выше 👆)

Утро нового дня (пятница) начинается с сообщения помощника о том, что сетевой диск не доступен. Как обычно бывает, идёшь проверять, не ожидая какой-то подставы. Смотрю и правда не доступен. Захожу на сервер и не вижу его. И вот тут у меня пробежал холодок по спине. Я понял, что ПОПАЛ 😱. Не хотел бы пережить это ещё раз.

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

Тут я не стал юлить и терять время. Сразу же позвонил генеральному и сказал, как есть. Он, конечно, офигел от таких новостей, но стоит отдать ему должное, не стал ругаться и что-то выговаривать. Сказал, ищите срочно компанию по восстановлению данных. Стали оперативно искать, нашли неподалёку в тот же день и отвезли диск. Оплатили (~$700).

Первичный осмотр показал, что вышла из строя какая-то механика. Можно починить с помощью донора. В этот же день начинают ремонт и в субботу выдают нам отремонтированный диск. Помощник едет в офис, вставляет его в то же место. Гипервизор загружается, диск виден, виртуалка стартует, все файлы на месте. ОТЛЕГЛО.

Доделываю сервер с новыми дисками и возвращаю туда файлы. Всё на месте и всё работает. В понедельник приходят люди и успешно грузят документы для тендера.

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

Сам ошибся только в одном месте. Надо было срочно отправлять кого-то ребутать сервер с бэкапами. Но я не думал, что именно в эти 2-3 дня что-то пойдёт не так 😁 Думал дождаться планового приезда человека туда. Прикинул, что даже если вдруг всё умрёт, то бэкапы то есть, просто не свежие. Подумаешь, 2-3 дня, пережить можно в самом крайнем случае. Кто же знал, что тендер на носу. Без него реально бы пережили, хотя и было бы неприятно. Ну и затянулось всё в итоге на 4 дня, что не планировалось.

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

Добрый день. Такой вопрос: как лучше всего организовать доступ к конфигурации различных устройств в сети, с разным типом конфигурации: http, ssh, telnet и прочее? Несколько админов, разный уровень доступа, необходимо ввести аудит (кто, когда, что), недоступность конфигурации пользователям. Просто кинуть админки в vlan не подходит, админы перемещаются, плюс некоторые на удалёнке. Виртуальная машина с доступом пока кажется самым логичным, но может ещё что то есть?
Как лучше всего безопасно организовать доступ в админку либо cli для пары десятков активных устройств нескольким (до 10) админам с разными правами?

Подобную задачу можно решить либо с помощью банального jump host, но нужно будет продумать все ограничения и запреты. Если протоколов много, то может быть сложно, либо вообще что-то не получится реализовать.

Второй способ, использовать готовое приложение для этого. Как вариант: Apache Guacamole или Trasa. Единственное, тут http протокол идёт мимо, так как предложенные мной решения, если не ошибаюсь, с ним не работают. Но для него можно отдельно какую-то прокси сделать, например на nginx (proxy_pass), со своей авторизацией или подцепить весь предложенный софт к AD.

А как вы бы решали подобную задачу?
Задать свой вопрос - @srv_admin_vopros_bot

#вопрос_читателя #security
Большая IT-Библиотека для каждого айтишника - BZD • Книги для программистов
👉Больше 3500 книг;
👉Хорошая категоризация книг на английские и русские;
👉Литература по программированию Python, Java, C, C++, JavaScript, C#, R, Go, информационной безопасности и других IT направлений. 

Работаем для вас! Подписывайтесь @bzd_channel
​​Лёгкая, весёлая и необычная игрушка на шпионскую и хакерскую тематику - Hacktag. Игра проходится вдвоем! Один должен быть хакером, другой шпионом, и только так. Можно играть с женой 🙀 Не знаю только, как роли распределить в данной конкретно ситуации. Мы то по идее хакеры, но жена-шпион мне как-то не очень. Неженатым в этом плане проще.

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

Отзывы:
📌Наконец-то появилось что-то новое кооперативное, подойдёт для игры с девушкой. Рандомно генерируемые уровни. Поддержка геймпада. Весёлая. Древо навыков для прокачки. Также есть таблица лидеров мировая/друзей. Можно играть как на 1 компе, так и по сети/инету.

📌Игруля редкость для наших дней. Почему? Да потому как жанр нечто среднее между стелс и симулятором хацкера, а с учетом, что в игру могут играть только 2 человека и только одновременно (не знаю сфигали стим пишет для одного игрока). Знаю из подобных только 2 еще. Больше за все время моих скромных 35 лет и из них 25 лет игровых подобных не встречал. Да, есть симуляторы какинга, хакера и т.д. и т.п. разной степени интересности, сложности, реалистичности и проработки. Да, есть просто море селсов шпионских и не шпионских. Но сочетаний и того и другого в 1 игре с мультиплеером на 2х, можно буквально пересчитать по пальцам.

📌Играть с тяночкой самый сок, но я не шпрехен дедович в ваших там инглишь из вери матч...

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

Steam - https://store.steampowered.com/app/622770/Hacktag/
Посмотреть, как играют - https://www.youtube.com/watch?v=P5o4UHuPmFc

#игра
Всем известно, что настоящие админы в наше время используют устройства Mikrotik. Они наверняка знают, что уже вышел долгожданный релиз RouterOS 7. А вот стоит или не стоит на него переходить, думаю наверняка никто не скажет.

Я лично ни одно из своих устройств не обновлял на 7-ю версию. И в ближайшее время точно не буду. Тут я просто мягким местом чую, что ещё не время.

Дмитрий Скоромнов, автор курсов по Mikrotik, которого я неоднократно рекомендовал для обучения, привёл наглядные примеры багов, которые прямо перед глазами в таблице маршрутизации. Думаю, после изучения его поста, у вас на какое-то время будет закрыт вопрос на тему перехода на RouterOS 7.

https://t.me/mikrotik_sensei/110

Но если вы отважный и смелый, то стоит ли обращать внимание на такие мелочи? Один раз живём (но это не точно).

#mikrotik
Я знаю, что почти все линуксовые админы любят хорошенько грепнуть. Да я и сам команду grep использую почти каждый день. Но грепать можно не только текстовую информацию. С помощью Python грепать можно видеоролики. Есть возможность автоматически находить в видео нужные фразы и делать из них нарезки.

Идею, о которой дальше пойдёт речь, я увидел в видеоролике на канале Чёрный Треугольник - VideoGREP — магия автоматизации на Python. Когда смотрел ленту youtube, обратил внимание именно на GREP. Сразу стало интересно, что там грепать собираются. Видео в итоге посмотрел и оно меня заинтересовало. Решил с вами поделиться.

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

Там же в консоли с помощью очень простого и короткого скрипта можно проанализировать пачку видео и сделать из них нарезку с фрагментами какой-то конкретной фразы. Для обычного человека это может показаться настоящей магией. Можно кого-то удивить такой штукой.

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

#видео
​​Я потестировал ещё один бесплатный открытый софт для удалённого управления компьютерами под названием RustDesk. У него есть несколько полезных особенностей, из-за которых на него имеет смысл обратить внимание.

1️⃣ Самое важное. RustDesk умеет открывать TCP туннели. Программа автоматом при подключении создаёт TCP туннель до удалённого RDP порта, так что можно подключиться к удалённому рабочему столу прямо через интерфейс программы. Довольно удобно сделано. Для тех, кто не пользовался подобным и не понимает, как это работает, поясню.

Допустим, в сети, куда вы подключаетесь через RustDesk, есть какой-то ssh сервер 10.20.30.5. У вас нет туда прямого доступа, но нужно подключиться по ssh напрямую со своего компа. Вы создаёте в RustDesk TCP туннель и указываете, что будете использовать локальный порт 222 для того, чтобы соединиться с удалённым портом 10.20.30.5:22. После того, как RustDesk подключиться к любому компьютеру в локальной сети, от которого есть соединение до 10.20.30.5, вы сможете подключиться на свой локальный порт 222 и попасть на удалённый ssh сервер.

У меня были ситуации, когда я много работал через подобные туннели. Использовал для этого AnyDesk. У него есть такой же функционал. Это было очень удобно, так как заказчику не надо было заморачиваться с доступом к каждой машине в закрытом периметре. Он вручную запускал Anydesk и контролировал мой доступ. А я создавал до десятка разных туннелей и спокойно подключался со своего компа туда.

2️⃣ Помимо того, что что код открыт, в репозитории есть инструкции по сборке. Теоретически, это можно делать самостоятельно, если есть такое желание. Часто бывает, что код открыт, но если ты не разбираешься в теме, то хрен ты сам соберёшь, даже если есть исходники.

Есть легковесные портированные версии под винду. Запускаются без установки и прав администратора.

3️⃣ Есть свой ID и Relay сервер. То есть можно поднять всё у себя. Я это сделал, проблем не возникло, так как всё упаковано в Docker. Не понял только одно. Указано, что сейчас разрабатывается новый сервер и пока его можно использовать бесплатно. Потом, судя по всему, будет стоить денег. А может и оставят какую-то бесплатную версию, хз.

Мобильный клиент тоже есть.

Сайт - https://rustdesk.com
Исходники - https://github.com/rustdesk/rustdesk
Инструкция по запуску сервера - https://github.com/rustdesk/rustdesk-server/blob/master/id-relay-set.md
Мобильный клиент - https://play.google.com/store/apps/details?id=com.carriez.flutter_hbb

#remote
​​Ещё не успел перейти на nftables, а оказывается, что может и не придётся, так как на смену спешит eBPF, который уже много где используется. Например, в cilium.io (одна из реализаций сети для контейнеров в kubernetes). У них подробный материал есть на эту тему - Why is the kernel community replacing iptables with BPF.

Я уже почти созрел и давно запланировал переход на nftables. Уже и примеры конфигураций смотрел, и понял, зачем мне это надо. Nftables действительно удобнее iptables. Рекомендую погуглить различия, если ещё не делали этого. Из того, что сходу помню и на что обратил внимание: единый конфиг для ipv4 и ipv6, более короткий и наглядный синтаксис, больше не нужен ipset, так как nftables умеет быстро работать с огромными списками, экспорт правил в json и т.д.

И вот на сцене появляется ещё один пакетный фильтр bpfilter. Он не новый, но как я понял из некоторых новостей, которые погуглил, его активно развивают и уже много куда внедряют. Его используют в том числе Facebook и Netflix. Понятно, что они много чего используют и это не показатель реальной популярности и скорого роста использования того или иного продукта.

Написал эту заметку не только, чтобы поделиться информацией, но и спросить тех, кто разбирался уже в этом вопросе. Мне сейчас реально не понятно, eBPF это реально наше будущее в Linux и переходить на nftables не имеет большого смысла. Или не всё так однозначно? Если посмотреть презентацию с недавней конфы линуксоидов, то там прям на пальцах объяснили, что bpfilter это будущее. И там же указано, что будет переход From nft to bpfilter. Во разогнались как 😄 Я ещё на nft не перешёл, а они уже на bpfilter переезжают.

#iptables #nftables #bpfilter #firewall
На днях у меня случилась неприятная история с одним из серверов Asterisk. Пользователи стали жаловаться на то, что не работает межгород. Звонят по нему редко, так что заметили не сразу. Я проверил, и правда не звонит. Сервер оператора возвращает 500-ю ошибку:
Got SIP response 500 "Service Unavailable"

Звоню в тех. поддержку. Там ответили, что мы вас отключили ещё 2 недели назад за подозрительные звонки на Кубу. Тут я запереживал немного, стал проверять. Действительно было немного звонков туда от одной учётной записи. Пароль сменил, международные звонки вообще отключил. Позвонил оператору и попросил нас разбанить.

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

Потом пришла удалёнка и люди со своими аппаратами разъехались по домам. Ограничить доступ стало невозможно, потому что каждому дома не настроишь VPN до офиса на его железе. Пришлось разрешить все звонки и таким удалёнщикам. Международные звонки по прежнему были отключены, но они нужны. Открывал их вручную по заявкам, но в какой-то момент это надоело, так как оперативно не получалось решить вопрос, а звонить надо здесь и сейчас. Открыл для всех. Закончилось это историей, с которой я всё начал.

На сервере настроен мониторинг исходящих звонков и активных подключений. Спам звонками заметил бы. Fail2ban тоже был и работал для защиты от переборов и некоторой другой активности. Подстраховался как мог, но всё равно не помогло. Слитая учётка особо не отсвечивала и звонила редко, раз в 5-10 минут. Повезло, что у оператора стояла защита на подозрительные направления. Международные звонки отключили сразу.

Как на 100% защититься от такой ситуации - не знаю. Сейчас все по домам сидят, работают. Всем нужна связь. Спасти может только сам оператор своими методами защиты и лимитом дневного бюджета. Рекомендую заранее связаться с провайдером и спросить, что будет, если учётка уйдёт на сторону и начнутся звонки на Кубу. Как уже сказал, я у себя международные звонки опять отключил, настроил уведомление себе на почту при попытке позвонить по 8-10... Раньше так и было, но расслабился. Так хотя бы сразу засветится проблемный пир.

Кстати, косвенно помогла моя педантичность в выписывании масок для звонков. Я не разрешаю одним правилом всё подряд, а аккуратно выписываю разрешённые направления. В логах была куча попыток позвонить через номера, начинающиеся с 00, 01, 02, 03, ~1, +1, +2 и т.д. То есть куча левых направлений. Но все они отфутболились, потому что для них не было настроенных масок для звонков. Только _810X. и внутрироссийские.

А вы как защищаетесь от таких атак? Понятно, что самый надёжный способ подключать пиров только через VPN, но мне кажется, это малореально в текущих условиях. Придётся преднастроенные смартфоны и телефоны сразу с настроенными роутерами выдавать. Я, кстати, так тоже делал, но это немассовое решение (юзеру выдавался настроенный mikrotik и sip телефон комплектом). Также покупал аппараты с поддержкой OpenVPN внутри. Были такие Грандстримы. Но ненадёжно работало и трудно дебажить проблемы связи, пришлось отказаться.

Напишите в комментариях, кому интересно, стоит мне отдельным постом написать, как я мониторю и защищаю сервер Asterisk. Тема узкая и, думаю, что мало кому интересная в наши дни.

#asterisk #sip #security
​​Когда речь заходит про бесплатный программный Firewall, сразу же на ум приходит старый, проверенный временем firewall на базе Freebsd - pfSense. Там все настройки можно натыкать мышкой, но всё равно получится хорошо.

А вот если вы заядлый консольщик и не уважаете нубские GUI, то вам подойдёт другое решение - VyOS. Там только консоль, как в суровых профессиональных железках, типа Cisco или Juniper. Причём VyOS очень сильно напоминает синтаксис JunOS.

Из функционала в VyOS есть практически всё, что можно только пожелать:
 Routing: BGP (IPv4 and IPv6), OSPF (v2 and v3), RIP and RIPng, policy-based routing.
 VPN: IPsec, VTI, VXLAN, L2TPv3, L2TP/IPsec and PPTP servers, tunnel interfaces (GRE, IPIP, SIT), OpenVPN in client, server, or site-to-site mode, Wireguard.
 Firewall and NAT: Stateful firewalls, zone-based firewall, all types of source and destination NAT (one to one, one to many, many to many).
 Network services: DHCP and DHCPv6 server and relay, IPv6 RA, DNS forwarding, TFTP server, web proxy, PPPoE access concentrator, NetFlow/sFlow sensor, QoS.
 High availability: VRRP for IPv4 and IPv6, ability to execute custom health checks and transition scripts; ECMP, stateful load balancing.

Если во всём этом разобраться и настроить, то не стыдно будет признаться кому-нибудь прилюдно. Это не про Mikrotik упомянуть, за который сразу могут нахамить те, кто не смог с ним разобраться.

Под капотом у VyOS Debian и Iptables. Хотя сейчас уже возможно Nftables. Есть два режима обновлений: rolling (для отважных) и long term (для всех остальных). В общем, продукт известный, надежный и зрелый. Тут без шуток, рекомендую попробовать. Отлично заходит в качестве шлюза виртуальных машин гипервизора.

Сайт - https://vyos.io

#gateway
​​Для тех, кто ещё не сконвертировал все свои Centos 8 в какую-то другую систему, небольшая инструкция. Я ещё в декабре всё основное перевёл, что так или иначе контактирует с внешним миром. Теперь доделал потихоньку всё остальное (в основном свои системы - elk, gitlab и т.д.). Рекомендую всем это проделать, кто отложил на потом. Обновлений для Centos 8 больше нет. Более того, и репы основные закрыли.

Теперь перед конвертацией, нужно изменить репозитории. Идём в yum.repos.d и отключаем у всех базовых реп mirrorlist:
# cd /etc/yum.repos.d/
# sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*

Вместо него раскомментируем baseurl и заменим mirror.centos.org на vault.centos.org:
# sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

CentOS-Linux-BaseOS.repo должен выглядеть так:

[baseos]
name=CentOS Linux $releasever - BaseOS
baseurl=http://vault.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

Теперь можно конвертировать в Oracle Linux:
# git clone https://github.com/oracle/centos2ol.git
# cd centos2ol
# screen
# bash centos2ol.sh

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

Как уже ранее говорил, я все Centos 8 перевёл на Oracle Linux, а все новые установки теперь делаю на Debian.

#centos
​​Для Prometheus существует множество готовых решений для учёта SLA или SLO. Я уже помнится писал про одну - SLO tracker. Сейчас посмотрел похожую панельку, но она мне понравилась больше - Pyrra (https://github.com/pyrra-dev/pyrra). Выглядит симпатичнее и настраивается проще.

Для тех, кто захочет попробовать, в репе лежит пример с готовым docker-compose.yaml и конфигом pyrra, где в качестве примера взята метрика prometheus_http_requests_total и 5XX ошибки для неё. Сам конфиг в директории pyrra. Можно наглядно оценить, насколько просто и быстро она настраивается.

Готовая демка есть тут - https://demo.pyrra.dev. Можно посмотреть, как всё это выглядит. В репозитории есть все инструкции и описание, так что запустить не трудно. Мне хотелось бы что-то подобное получить для Zabbix, но ничего похожего и раньше не видел, и сейчас не смог найти. Всё самое современное, удобное, быстро настраиваемое пишут под пром.

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

#devops #prometheus
​​Расскажу вам про маленькую, но очень полезную утилиту, которая пригодится любому пользователю Windows, будь то десктопная или серверная система. Речь пойдёт про BlueScreenView (https://www.nirsoft.net/utils/blue_screen_view.html). Это маленькая программа, не требующая установки для запуска.

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

Например, антивирусы запросто могут вызывать синий экран. Много раз сталкивался с подобным и BlueScreenView тут же показывает проблемный файл, а по нему можно выяснить, какому софту он принадлежит. Удаляешь или обновляешь проблемный софт или драйвер и проблема тут же решена.

Конечно, так бывает не всегда. И если проблемным окажется файл ntoskrnl.exe, что бывает нередко, то тут простого решения нет, так как ntoskrnl.exe - ядро самой ОС. Для более детальной и вдумчивой отладки придётся использовать другой инструмент - Debugging Tools for Windows. Но с ним уже нужно разбираться и так просто не понять причину проблем, просто запустив отладчик.

Вспомнил про эти средства, потому что дома один из компов постоянно падает в синий экран при запуске. Потом автоматом перезагружается и нормально работает. Всё время откладываю решение вопроса, потому что комп особо не нужен никому, к тому же после перезагрузки работает. В некоторых дампах увидел упоминание драйвера usb. Решил пока отключить от компа все устройства, кроме клавы и мышки. Посмотрю, поможет ли. Проблема возникает не всегда, а время от времени. Такие ошибки труднее всего дебажить.

#windows