Методы установки приложений, компиляция приложений и ядра, библиотеки

  • Через средство управления пакетами ОС (Ubuntu: apt-get, CentOS: yum, Gentoo: emerge). Пакет чаще всего имеет не последнюю версия приложения/компилятора (ruby, phantomjs), но она почти гарантированно stable и легко ставится.
Для установки приложений в среде операционной системы GNU/Linux лучше всего пользоваться средствами управления пакетами вашего дистрибутива.
<br><br> Читать дальше

Editors и IDE (ee, mcedit, nano; google docs, office 360; gedit, vs code, sublime, atom; pycharm, rubymine)

  • При запуске утилит (например crontab -e, vipw, vigr), которые вызывают системный редактор кода, может потребоваться выбор этого редактора при первом запуске, при последующем будет запускаться то, что выбрано. Изменить можно по select-editor
# vipw
Select an editor. To change later, run 'select-editor'.
<br><br> Читать дальше

Security: основная статья

Карта РФ ИБ База

Коварно ввели admin/admin, обстоятельства непреодолимой силы не позволяли обновить php, хак утилита cat и привилигерованный контейнер 🤣😁

https://disk.yandex.ru/i/Pn4ToLvOz7pMVg

  • (Wifi, IoT, security) Изоляция умной техники дома (защита от взлома хостов домашней сети с уязвимого устройства умного дома) возможна на роутере без отдельного ssid через функционал Изоляция Wi-Fi сети по SSID.
<br><br> Читать дальше

Linux: обновление приложений, ОС и драйверов в UBUNTU/Debian, установка системы

  • Аналог статьи про CentOS
  • Debian 10 в web VM: https://webvm.io/
  • (ubuntu/debian, OS loading) В ubuntu есть lifepatching, который позволяет обновить ядро и systemd без перезагрузки как системы, так и сервисов!
  • (Centos, Ubuntu) PackageKit — открытый и свободный набор приложений для обеспечения высокоуровнего интерфейса для различных пакетных менеджеров.
<br><br> Читать дальше

Coding: архитектура, программирование и разработка, devops, ITIL/IT management

  • (c) В каждом айтишнике живет два волка:
    1. Чистый код, SOLID, взвешенные архитектурные решения
    2. Работает – не трогай, а то хер его знает где отвалится в этом легаси обосранном
  • о code review / код ревью

  • (GitHub, coding best practices) Google держит миллиарды строк кода в одном репозитории

    Google хранит весь код в монорепозитории Piper: около 2 млрд строк и 86 ТБ истории.
<br><br> Читать дальше

Linux: ядро (kernel), процессы /proc в ОС и работа с ними (proc, ps, lsof, nice, kill, killall, top, lscpu, interrupts, smp irq affinity, isolcpus, taskset, cpuset/cset shield), утилизация процессора (user/system/idle/iowait/softirq)

  • kernel parameters /proc/cmdline (можно редактировать конфигом GRUB)
  • kernel parameters modification /etc/sysctl.conf
  • (Linux Kernel, Security, Coding practices/релизные циклы)
    Интересное из https://portal.linuxtesting.ru/about-linux-kernel.html#main
    • У ядра Linux примерно двухмесячный релизный цикл. Согласно статистике собранной за 10 последних лет, в работе над каждой версией ядра принимает участие более 1600 различных разработчиков, которые делают в среднем 7 изменений в ядро каждый час (непрерывно в течение 10 лет!),
<br><br> Читать дальше

Network: работа с pcap – сбор и анализ (Wireshark/tshark, tcpdump, packetdump, capinfos), редактирование (hex editor, tcprewrite, bittwiste, editcap, mergecap, wireedit), воспроизведение (tcpreplay, bittwist), анонимизация, комплексные продукты (moloch, observer)

СБОР и АНАЛИЗ

Разное
  • (Wireshark, ИИ) ИИ может использоваться для генерации pcap на основе описания трафика корректных с точки зрения протокола (TrafficT5)

    https://www.sciencedirect.com/science/article/abs/pii/S1389128625008242 

    We introduce TrafficT5, a three-stage, self-correcting framework that turns natural-language intents into executable PCAPs. It (i) predicts flow-level features, (ii) generates byte-aligned hex under a fixed 00–FF vocabulary, and (iii) invokes a repair module that deterministically enforces protocol invariants and performs detector-guided, iterative byte-level correction trained with multi-task objectives.
<br><br> Читать дальше

Network/Linux: Shaping, Policing, Impairment, Traffic Control. Ограничение полосы пропускания (Linux: tc, wondershaper; Network: Cisco, Mellanox), внесение задержек и потерь в сетевой трафик

Влияние потери и задержек на Throughput подробно описано в отдельной статье.

Пример кейсов использования impairment:

    • эмуляция гео-распределенной сети
    • эмуляция wireless/satellite/mobile
    • приближение к real world
    • тестирование edge case сценариев

При этом в сетевом тестировании с impairment нужно обращаться “аккуратно”.

EANTC Carsten Rossenhoevel
The benchmarking methodology could be complemented with synthetic loss/delay, but this is out of scope of this draft ((netsecopen)). 
<br><br> Читать дальше

Coding, Network: API и методы работы с ним (SOAP, REST, JSON, XML, YAML, TOML, YANG, TOML, protocol buffers/Apache Thrift, graphQL; SWAGGER, WSDL, WADL; restconf, netconf; Cisco PXGRID)

  • В общем про api и методы взаимодействия с ними (rest, yang, soap, xml, json, restconf/netconf, etc) в отдельной статье
  • CLI зачастую >>> всех других методов, пример яндекс со своей «Аннушкой» работает именно поверх CLI
    • Мы про это расскажем в докладах, но нет, cli – как общий знаменатель для всего.

<br><br> Читать дальше

Linux: DPDK, HYPERSCAN, SNABB; NETMAP DNA, PFRING, XDP; hugepages

  • Хорошие таблицы, взяты отсюда https://habr.com/ru/companies/garda/articles/985596/

Производитель Модель Скорость Ключевые особенности Применение
NVIDIA BlueField-3

 

DPU

400 Gbps 16x ARM Cortex-A78,

 

аппаратный eBPF

Cloud security, Zero-Trust
Intel IPU E2000 200 Gbps Интеграция с Open vSwitch, поддержка QAT Виртуализация,

 

SDN

AMD/Xilinx Alveo SN1000 100 Gbps FPGA + ARM-ядра,

 

анализ TLS/SSL

Финансовый мониторинг
Marvell OCTEON 10

 

DPU

100 Gbps 8x ARM Neoverse N2,

 

аппаратный DPI

Телеком (5G UPF)

Программные методы Аппаратные методы
  AF_PACKET PF_RING /

 

PF_RING ZC

DPDK (PMD) DPDK (AF_XDP) FPGA SmartNIC
Скорость До 10 Gbps 10 Gbps

 

40-100 Gbps

До 200+ Gbps До 100 Gbps Многократные 100G порты (400G, 800G) До 200 Gbps

 

на порт

Задержка

 

(Latency)

Высокая Средняя

 

Низкая

Очень низкая Низкая Экстремально низкая детерминированная Очень низкая детерминированная
Сложность реализации Низкая (стандартный

 

API)

Средняя (свои драйверы и библиотеки) Высокая (выделенные ядра, управление памятью) Высокая

 

(работа с еВРЕ)

Очень

 

высокая (HDL/Verilog/V

HDL, RTL-дизайна)

Высокая (ASIC,

 

C/OpenCL)

Стоимость Бесплатно (входит в состав ОС) Бесплатно /

 

Платная

Бесплатно, но мощные CPU

 

совместимые NIC

Бесплатно Очень высокая Высокая
Ключевые особенности Простота использ-ниЯ, стандартность Улучшенная производите-ть.
<br><br> Читать дальше