freefd

В поисках средства хранения сегментированных Nginx access логов для аналитики нашего Wifire CDN обратил внимание на InfluxDB.

За ночь получилось:
Со стороны Nginx штатной функциональностью пишутся фрагментарные access_log'и в syslog на удалённый хост, где ловятся rsyslog и пересылаются без лишней информации (timestamp, severity, facility, etc) в InfluxDB через UDP Input (https://docs.influxdata.com/influxdb/v0.10/write_protocols/udp/). Правда, предварительно формат логирования у Nginx пришлось привести к тому, что в InfluxDB называется Line Protocol (https://docs.influxdata.com/influxdb/v0.10/write_protocols/line/). И InfluxDB неожиданно справляется c потоком в 16GB логов в день со всего CDN. Но вылезла вторая сторона медали — ну очень медленная выборка на таких объёмах.

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


freefd

Обнаружили прекрасную offline реализацию Reflection Amplification атаки.

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

Схема проста до безобразия. Организаторы DDoS берут телефонные номера из реестра Россвязи и подменяют А-номер. Выбранный номер используется для не более 5 звонков, по нашим наблюдениям, после чего следует циклическая смена. Через некоторое время атакующие прекращают атаку и делают несколько контрольных звонков, проверяя возможность дозвона на номер. Если атакуемый всё ещё доступен и готов принимать звонки, атака продолжается, но, что интересно, только в рабочее время жертвы.

Честно на днях наблюдали, как порядка 400 одновременных входящих звонили атакуемой мини-АТС, правда, попадали уже в ловушку с echo. Номер жертвы к тому моменту уже был сменён.

freefd

Вынесу из комментариев, пожалуй.

Давайте пофантазируем о ближаших перспективах информационных технологий.

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

Серверная часть, уже сейчас очевидно, за гипервизорами. Причём, за приложениями на голом гипервизоре без дополнительных прокладок в виде стандартного стека оверлея операционной системы (в этом месте следует читать про unikernel).

Сетевое оборудование, независимо от того, SMB/SME ли это или Carrier Grade, будет постепенно трансформироваться из standalone hardware в классический стек SDN/NFV (особенно, если Application over Hypervisor заработает так, как того ожидает индустрия). Очень вероятно, что это будут как раз контейнеры c приложениями поверх гипервизора. Intel DPDK уже машет нам растущими руками, а Docker подмигивает.

Ещё одним трендом, который может наконец-то выстрелить в ближайшее десятилетие (и я отчаянно этого жду), может стать компактная мобильная платформа в виде телефона, которая сможет служить полноценным PC при подключении к ней монитора, клавиатуры и мыши (посмотреть на зачатки можно в Microsoft Continuum). Возможно, в этот момент телефон будет служить обычными терминалом к DaaS (посмотреть можно на Amazon WorkSpaces).

Если есть желание — продолжайте в комментариях :)

freefd

В Пскове и Находке в процессе интеграций приобретённых активов нашлись Dell R410/R610/R710, преобразившиеся в гипервизоры.

И тут я понял, что Dell не нужно.

Установленные "Dell OpenManageServer Administrator vSphere Installation Bundle (VIB) for ESXi 5.5, V7.4" не доставляют racadm в комплектацию ESXi. Ручные приготовления из пакетов для RHEL5/6 x86 с добавлением требующихся им библиотек тоже не принесли особых успехов:

# strace -f -T /opt/dell/srvadmin/bin/racadm5 2>&1 | grep ' = 3'
open("/lib/libdl.so.2", O_RDONLY) = 3 <0.000025>
open("/lib/libpthread.so.0", O_RDONLY) = 3 <0.000025>
open("/lib/libstdc++.so.6", O_RDONLY) = 3 <0.000028>
open("/usr/lib/libargtable2.so.0", O_RDONLY) = 3 <0.000032>
open("/lib/libgcc_s.so.1", O_RDONLY) = 3 <0.000027>
open("/lib/libc.so.6", O_RDONLY) = 3 <0.000025>
open("/lib/libm.so.6", O_RDONLY) = 3 <0.000030>
Segmentation fault

Из коробки на хост после установки OMSA Bundle приезжает idracadm. Ощущает он себя идентично racadm.

Забыли/не знали доступы до OOB iDRAC? Перезагрузка и локальный доступ к серверу, и страдашки.

freefd

В продолжение #2773110

Если у Вас случайно появились серверы HP с lo100 под управлением RHEL4, то единственная версия lo100cfg, которая не будет говорить при запуске "Floating point exception", находится в пакете downloads.linux.hp.com

Более новые в RHEL4 уже неработоспособны.

freefd

В интернетах не расскажут этого.

lo100cfg от RHEL6 работает и в VMware ESXi 5.5, достаточно его загрузить на гипервизор по scp. Последний набор HP STK, в котором ещё наличествовала утилита lo100cfg доступен по downloads.linux.hp.com в пакете hp-scripting-tools-9.50-97.rhel6.i686.rpm. Документация утилиты доступна по h20565.www2.hp.com

freefd

Показательная история о привычке решения простых задач сложными методами.

Так случилось, что ещё одна изумительная история вынудила нас обновить VMware vSphere c 5.1U2 до 5.5U2. Обновление до 5.5U2 вынудило обновить Symantec NetBackup с версии 7.6.0.1 до 7.6.0.3, которая уже научилась vSphere 5.5.

Не трудно представить себе топологию кусочка среды резервного копирования: Master-сервер NetBackup (VM), который, к тому же, является и backup-host, то есть гоняет через себя весь трафик от VMware ESXi (а значит и с их Datastore, подключенных по Fibre Channel) к Media-серверу (тоже VM) с томами NFS, экспортированными, например, с какой-нибудь low-entry СХД Huawei или HP MSA. Используется обычный в NetBackup тип передачи данных по LAN — NBD (Network Block Device).

Упрощённая схема хождения данных при резервном копировании VM может быть такая, например:

HP 3PAR --FCP--> HP c7000 (VirtualConnect --FCoE--> BLXXX) --FCP--> VMware ESXi 5.5U2 --NFC--> NB Master --TCP/UDP--> NB Media --NFS--> Huawei OceanStor FileEngines --FC--> Huawei OceanStor Enclosure

Где

FCP — Fibre Channel Protocol
FCoE — Fibre Channel over Ethernet
NFC — VMware Network File Copy Protocol
TCP/UDP — подразумевается проприетарный стек протоколов NetBackup.
NFS — Network File System

(Продолжение в комментариях)

freefd

Суровые выходные у людей в Сибири. Выдержка из треда центра мониторинга по ликвидации аварии на ВОЛС:

"Сотрудники попали на опору ЛЭП. Ящик с муфтой был расстрелян из оружия. Запас ВОЛС на опоре тоже поврежден. Необходимо перетягивать несколько пролетов кабеля."

freefd

При попытке выехать из бизнес-центра обнаружился фатальный недостаток велосипеда: переднее колесо спущено. Хотя я отлично помню, что ещё 9 часов назад по приезду и постановке на парковку оно было OK.

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

Пока единственная адекватная моя теория: кому-то не понравилось, что я мог занять его место на парковке. И так ненавязчиво попытался мне намекнуть.

freefd

Уже второй год мы ищем замену сто́ящему как золотой самолёт CommuniGate Pro, что обслуживает бесплатную почту клиентов. Весь функционал нам не требуется, только стандартный для почты.

И вот, кажется, iRedMail-Pro — это то, что нам нужно. В бесплатной версии не работают белые/черные списки, грейлистинг и некоторые другие фичи. Но расценки очень демократичные: iredmail.org

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

Вдруг я понял, невыносимо грустно, что какой-то набор кода на python в виде .pyc работает с ограничениями по времени. Один убитый вечер на декомпиляцию всех .pyc, обзора работы кода и подмены нескольких значений в 3 файлах с последующей обратной компиляцией:

# find . -name "*.bak"
./libs/__init__.pyc.bak
./controllers/decorators.pyc.bak
./controllers/panel/log.pyc.bak

Самые печальные моменты:

1. Оно не проверяет тип лицензии, оно просто показывает строки из XML-файла, которым отвечает ей сервис разработчика по REST-запросу. Подменил на свой сервер, теперь показывает, что безлимитная версия ^_^

2. Триальность версии скрывалась лишь в строках вида

sft = datetime.datetime.now() — datetime.timedelta(days=14)
expd = datetime.datetime(2014, 7, 23, 0, 0, 1)
if expd < sft:
session.kill()
raise web.seeother('/expired')

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

В итоге имеем абсолютно "лицензионную" последнюю версию iRedMail-Pro. И стыдно. Надо будет обязательно купить максимальную лицензию для успокоения совести.