TGViewer
Channel Public Channel
Серверная Админа | Компьютерные сети

Серверная Админа | Компьютерные сети

@school_network

Я действующий сетевой инженер, расскажу вам о сетях в доступной форме.

Реклама - @bashmak_media
Мы на бирже: https://telega.in/c/school_network

РКН: https://vk.cc/cHYqt5
Subscribers
26.6K
Photos
1.3K
Videos
8
Links
1.4K

Showing posts older than #2268 · Back to latest

Older Posts 20 shown
Post #2265 7.06K
👋 Привет, сетевой друг!

Сегодня вспомним одну из идей, которая должна была «убить провода», но в итоге просто умерла 🤷‍♂️ - Wireless USB

🟣Почему не взлетел: В середине 2000-х обещали: «USB без кабеля, до 480 Мбит/с по воздуху». Звучало все классно, но на практике скорость падала в разы даже в полуметре от приёмника. Добавьте дорогие адаптеры, неудобство, банкротство WiQuest и закрытие WiMedia Alliance в 2010-м - и проект умер, толком не родившись.

🟣Жизнь без проводов - не всегда праздник: Кабеля нет - это красиво, но на деле же начинаются мелочи: мышка дёргается, звук в Bluetooth прерывается, Wi-Fi ловит «мертвые зоны». А ещё и неожиданные баги на стыке софта и протоколов. В итоге старый добрый провод часто лучше.

🟣Карманный Wi-Fi-портал: Но бывают и классные применения. Например, проект Pocket Wi-Fi на ESP8266: маленькая плата поднимает точку доступа, где вместо интернета открывается офлайн-библиотека или сообщение. Мини-хотспот, который легко собрать самому, хоть для учебы, хоть как арт-объект.

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

Серверная Админа | #WirelessUSB
  • 👍 10
  • ❤ 8
  • 👾 2
Post #2263 6.92K
👋 Привет, сетевой друг!

Сегодня поговорим об образе
docker-network-tools

🟣Что это и зачем: это готовый контейнер с десятками тулзов: tcpdump, tshark, nmap, iperf, mtr, curl/wget, dig/drill, nftables, hping3, ngrep, netcat и кучей утилит iproute2. Удобно, когда на хост ничего ставить нельзя: запускаете контейнер - и сразу меряете полосу, лезете в DNS, трейсите путь, чекаете пакеты. Образы обновляются автоматически (еженедельно и при коммитах), есть amd64 и arm64.

🟣Базовый запуск

docker run --rm -it jonlabelle/network-tools
# для arm64
docker run --rm -it --platform linux/arm64 jonlabelle/network-tools


🟣Три быстрых фишки

Проснифать интерфейс хоста (Linux):

# даёт контейнеру доступ к сетевому стэку хоста
docker run --rm -it --net=host --cap-add=NET_ADMIN --cap-add=NET_RAW \
jonlabelle/network-tools tcpdump -ni eth0 port 443


Замерить пропускную способность iperf3:

# сервер на одной стороне
docker run --rm -it --net=host jonlabelle/network-tools iperf3 -s
# клиент на другой
docker run --rm -it jonlabelle/network-tools iperf3 -c 203.0.113.10 -P 4


Быстрый аудит DNS/маршрута:

docker run --rm -it jonlabelle/network-tools dig +trace example.com
docker run --rm -it jonlabelle/network-tools mtr -rwzc 100 8.8.8.8


🟣Порт-скан и проверка служб

# аккуратный nmap внутри диапазона
docker run --rm -it jonlabelle/network-tools nmap -sS -Pn -T4 10.0.10.0/24
# тест TCP/UDP «на коленке»
docker run --rm -it jonlabelle/network-tools nc -vz 10.0.10.5 22
docker run --rm -it jonlabelle/network-tools nping --udp -c 5 10.0.10.5 -p 53


🟣Диагностика L4/L7 одним контейнером

# HTTP проверка и разбор JSON
docker run --rm -it jonlabelle/network-tools sh -lc \
'curl -s https://api.ipify.org?format=json | jq .'

# трассировка MTU по пути
docker run --rm -it jonlabelle/network-tools tracepath 1.1.1.1


🟣И советую: для сниффинга и низкоуровневых тестов добавляй --net=host и капабилити NET_ADMIN/NET_RAW; для обычных клиентских проверок они не нужны.

Серверная Админа | #Инструмент
  • 👍 22
  • 🔥 6
  • ❤ 4
  • 🤣 1
Post #2262 7.97K
Почтовиков «на мыло»: переходим на личный почтовый сервер

В статье показывают, зачем вообще заводить свой почтовый сервер и чем он лучше привычных Gmail или Yandex. История и про контроль над данными, и про независимость, и даже про имидж - ведь совсем другое ощущение, когда у тебя почта не на @gmail.com, а, например, vasya@pupkin.space. Автор на своём опыте проходит путь от покупки домена и аренды VPS до первой отправки писем.

Серверная Админа | #Статья
  • 👍 30
  • 🔥 8
  • ❤ 5
Post #2259 7.94K
👋 Привет, сетевой друг!

Сегодня разберём, в чём разница между Traffic Policing и Traffic Shaping.

🟣Traffic Policing - «обрезка» трафика. Если поток превышает лимит, лишние пакеты просто отбрасываются или понижается их приоритет. Работает сразу, но при этом есть риск потерь данных, что, очевидно, критично для голосовых звонков, видеоконференций и потокового видео.

🟣Traffic Shaping - «буферизация». Поток немного замедляется через очереди и таймеры, лишние пакеты не теряются, а ждут своей очереди. Сеть остаётся более плавной, приложения типа VoIP и видео тут работают стабильнее, джиттер минимален. И ещё пиковые нагрузки не ломают канал.

🟣Зачем нужны: Policing полезен для строгих лимитов и SLA, Shaping - для предсказуемой передачи данных и минимизации задержек. Часто юзают оба вместе: Policing задаёт жёсткие рамки, Shaping что-то смягчает.

Серверная Админа | #traffic
  • 👍 21
  • ❤ 6
  • 👾 1
Post #2257 7.83K
👋 Привет, сетевой друг!

Смотрим на 3 способа для диагностики сложных WAN и MPLS-сетей.

🟣RTT и jitter на отдельных LSP с MPLS traceroute: МTR покажет распределение задержек по хопам, а TCP-трейс (или TCP port 179 для BGP) выявит, где именно на LSP возникают джиттер и потеря пакетов, что обычно скрыто обычным ICMP ping.

mtr --report --report-cycles=20 192.0.2.1
traceroute -T -p 179 192.0.2.1


🟣Мониторинг QoS и congestion на интерфейсах Linux/RouterOS

tc -s qdisc show dev eth1
watch -n 2 tc -s class show dev eth1


Команда tc покажет насколько реально заполнены очереди и дроп пакетов. Это даёт понимание, как ваши QoS-правила работают в на практике.

🟣Тестирование пропускной способности на деле и jitter с iperf3 в UDP-режиме: UDP-тест показывает, где пропадает трафик при нагрузке, и даёт реальные цифры jitter - особенно мастхэв для VoIP/Video/MPLS VPN. TCP-тест точно не даст полной картины, потому что TCP сам компенсирует потери.

iperf3 -c 10.0.0.1 -u -b 100M -t 60 -i 5


Серверная Админа | #network
  • 👍 16
  • ❤ 4
Post #2255 7.41K
👋 Привет, сетевой друг!

Сегодня расскажу, как поймал коллегу, который передавал пароль в открытом виде через SSH.

🟣Что случилось: Во время проверки процессов на сервере увидел команду:

sshpass -p 'Qwerty123' ssh admin@10.0.5.21


Пароль был явно виден в аргументах - любой юзер мог его прочитать через ps или в /proc. Коллега признался, что так сделал скрипт для удобства, чтобы не вводить пароль каждый раз 🤷‍♂️. Но это классический антипаттерн.

🟣Почему это опасно: Пароли, переданные через аргументы, видны в списке процессов (ps), в файловой системе /proc/[PID]/cmdline, в менеджерах задач и даже в логах CI/CD. Это значит, что хакер может получить доступ без прямого взлома SSH-сервера.

🟣Как искать такие случаи?

На Linux можно использовать:

ps -eo pid,user,command --no-header | while read PID USER CMD; do
if [[ "$CMD" =~ -p ]] || [[ "$CMD" =~ -pw ]] || [[ "$CMD" =~ --password= ]] || [[ "$CMD" =~ /password= ]]; then
echo "PID=$PID USER=$USER CMD=$CMD"
fi
done


На Windows - PowerShell:

$insecureProcs = Get-CimInstance Win32_Process | Where-Object {
$_.CommandLine -match '\-p\s' -or $_.CommandLine -match '\-pw\s' -or $_.CommandLine -match '--password=' -or $_.CommandLine -match '/password='
} | Select-Object ProcessId, Name, CommandLine
$insecureProcs | Format-Table -AutoSize


🟣Чем это закончилось: Мы обнаружили, что ночной бэкап запускался с паролем в cron и команда логировалась в Jenkins. Быстро заменили ключи, почистили конфигурации и усилили контроль доступа.

🟣Как делать правильно: Используйте ssh-ключи с ssh-agent, храните секреты в Vault, ограничивайте видимость процессов, удаляйте утилиты типа sshpass и используйте линтеры и pre-commit хуки, чтобы запретить передачу паролей в аргументах.

Серверная Админа | #network
  • 👍 27
  • ❤ 11
  • 🔥 2
  • 👾 1
Post #2253 7.76K
👋 Привет, сетевой друг!

Сегодня поговорим об инструменте
tailscale

🟣Что и как: По умолчанию Tailscale поднимает интерфейс с MTU 1280, что может резать производительность при передаче больших пакетов, особенно в локальной сети или при высокоскоростных VPN-каналах.

🟣Как работает: На Linux скрипт создаёт udev-правило, которое автоматически меняет MTU интерфейса tailscale0 при его появлении. На Windows используется PowerShell-скрипт с такой же автоматизацией. В итоге настройка закрепляется и не сбрасывается даже после перезапуска системы или сети.

🟣Linux:

echo 'SUBSYSTEM=="net", ACTION=="add", ATTR{mtu}="1420", NAME=="tailscale0"' \
| sudo tee /etc/udev/rules.d/99-tailscale-mtu.rules
sudo udevadm control --reload-rules && sudo udevadm trigger


🟣Windows:

Set-NetIPInterface -InterfaceAlias "tailscale0" -NlMtuBytes 1420


Серверная Админа | #Инструмент
  • 👍 7
  • 👾 2
  • ❤ 1
  • ❤‍🔥 1
Post #2251 8.56K
Чем дешевые роутеры отличаются от дорогих и что нужно знать перед покупкой

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

Серверная Админа | #Статья
  • 👍 19
  • 🤮 7
  • 🥰 2
Post #2248 9.38K
📝 Какие бывают пинги, и зачем их столько?

Когда говорят “пинг”, обычно имеют в виду ICMP Echo Request. Это базовая проверка: жив ли вообще хост и как быстро отвечает. Но на практике пинговать можно разными способами, и каждый вариант помогает чуть по-разному диагностировать сеть.

🟣ICMP Ping — классика. Отправляется ICMP Echo Request, получаем ICMP Echo Reply. Используется в ping, fping, nping.

🟣TCP Ping — вместо ICMP отправляется TCP SYN (как при обычном соединении), и, если порт открыт, приходит SYN/ACK. Полезно, если ICMP заблокирован, но TCP доступен (например, проверка 443 порта).

🟣UDP Ping — отправляется UDP-пакет, а в ответ (если порт закрыт) приходит ICMP “port unreachable”. Если порт открыт, может не прийти ничего, что затрудняет интерпретацию.

🟣ARP Ping — работает в пределах локальной сети. Смотрит, отвечает ли MAC-адрес на ARP-запрос. Работает даже если IP стэк “молчит”.

🟣HTTP Ping — это не пинг в классическом смысле, а HEAD-запрос к HTTP-серверу. Получаем ответ - значит, и веб-приложение работает. Используется в curl, wget, httpping.

Серверная Админа | #network
  • 👍 59
  • 🥰 9
  • ❤ 8
  • 🔥 1
Post #2247 7.8K
  • 👏 9
  • 👍 5
  • 😢 4
  • ❤ 2
  • 🔥 1
Post #2245 7.82K
👋 Привет, сетевой друг!

Сегодня разберём, как быстро проверить производительность маршрутизации на Linux‑роутере без сложных тулов.

🟣Пакеты и дропы на интерфейсе: Сразу видно PPS и дропы. Если есть rx_dropped — смотри IRQ affinity и offload (GRO/LRO/TSO).

ethtool -S eth0 | egrep "rx_packets|tx_packets|rx_dropped|tx_dropped"


🟣Conntrack под нагрузкой:

conntrack -C
nft list ruleset | wc -l


Показывает количество активных соединений и объём правил. При 100k+ соединений без оптимизации хэш‑таблиц роутер может начать тормозить.

🟣CPU на сетевой стек: Даёт PPS, обрабатываемый ядром. Можно сразу оценить, хватает ли процессора для текущего потока пакетов.

perf stat -e net:netif_receive_skb,net:net_dev_xmit sleep 10


🟣Проверка балансировки по ядрам:

mpstat -P ALL 1


Если одно ядро загружено на 100%, а остальные почти пустые — включай RPS/RFS (/proc/sys/net/core/rps_sock_flow_entries) или смотри в сторону XDP.

🟣Latency forwarding path: Если есть XDP, сравниваем задержки. Даже базовый XDP drop/forward даёт выигрыш в десятки процентов.

bpftool prog show | grep xdp


Серверная Админа | #network
  • 👍 19
  • ❤ 7
  • 👾 2
Post #2243 8.78K
👋 Привет, сетевой друг!

Сегодня поговорим про весь путь Bluetooth от громких дыр вроде BlueBorne до современных LE Secure Connections.

🟣BlueBorne - атака без кликов: В 2017‑м уязвимость BlueBorne позволяла заражать устройства буквально «по воздуху». Достаточно было, чтобы Bluetooth был включён. Под угрозой оказались более 5 млрд устройств, от смартфонов до медицинских приборов.

🟣KNOB: ключ длиной в один байт: В 2019‑м исследователи нашли дыру в процедуре согласования ключей: злоумышленник мог навязать длину ключа шифрования всего 1 байт. Такой ключ перебирался за секунды, и весь трафик оказывался открыт.

🟣В 2020‑м всплыла BLESA - атака на повторное подключение BLE‑устройств. Ваш «умный браслет» переподключался, думая, что это тот же телефон, а на самом деле это был хакер. В общем такой MITM без особых усилий.

🟣Теперь же Bluetooth защищённее: с LE Secure Connections, шифрованием рекламных пакетов и механизмами вроде Encrypted Advertising Data и PAwR он стал куда надёжнее, особенно для IoT и корпоративных сетей.

🟣Но проблемы остаются: Главный минус - обновления. iPhone и топовые Android‑модели патчи получают быстро, а вот бюджетные смартфоны и IoT‑гаджеты (умные лампочки, браслеты, сенсоры) остаются уязвимыми годами. Многие даже не умеют обновляться.

Серверная Админа | #Bluetooth
  • 👾 18
  • 👏 5
  • ❤ 4
  • 🤓 4
  • 👍 1
Post #2241 9.51K
👋 Привет, сетевой друг!

Сегодня поговорим об инструменте
ttyd

🟣Что это: ttyd запускает веб-интерфейс, через который можно работать в терминале удалённо. Он поддерживает CJK, IME, передачу файлов по ZMODEM, SSL, базовую аутентификацию и даже вывод картинок через sixel. Работает почти везде, а именно: на Linux, macOS, Windows, BSD и OpenWrt.

🟣Как это работает: Вы поднимаете ttyd на сервере, а коллега просто заходит по ссылке, и видит ваш терминал. Можно сделать его только для чтения или разрешить ввод команд. Удобно для админских демонстраций, удалённого обучения или совместной отладки.

🟣Как использовать:

Обычный запуск bash:

ttyd bash


С паролем для защиты:

ttyd -c admin:qwerty bash


На своём порту:

ttyd -p 8080 bash


Через HTTPS (если безопасность на первом месте):

ttyd -S -C cert.pem -K key.pem bash


Серверная Админа | #Инструмент
  • 👍 28
  • ❤ 6
  • 💩 3
  • 👾 1
Post #2240 8.92K
Cisco TRex. Сетевое тестирование в Stateless и Stateful сценариях

В статье будет история о том, как мы решили «пощупать» реальную производительность оборудования с помощью Cisco TRex. Сначала в stateless‑режиме всё выглядело идеально: графики ровные, потерь нет, цифры радуют глаз. Но когда перешли к stateful‑сценариям с настоящими TCP‑сессиями и NAT, устройство неожиданно начало «задыхаться»: задержки выросли, пакеты терялись, а некоторые соединения и вовсе не устанавливались.

Серверная Админа | #Статья
  • 😁 10
  • ❤ 5
  • 🤔 5
  • 👍 1
Post #2239 9.73K
📝 NTP vs PTP: сравним протоколы синхронизации времени

NTP:
🟣Старый добрый протокол синхронизации, работает с 1980‑х.
🟣Даёт точность в пределах миллисекунд — этого хватает для логов, серверов, интернет‑сервисов.
🟣Использует иерархию stratum: сверху — эталонные атомные часы, ниже — обычные устройства.
🟣Работает по UDP (порт 123), софт‑базированный, железо не нужно.
🟣Стандарт — RFC 5905 (NTPv4).

PTP
🟣Более «продвинутая версия» — синхронизирует время с точностью до субмикросекунд и даже наносекунд.
🟣Система «лидер‑фолловер»: выбирается лучший источник (грандмастер), остальные устройства синкаются с ним напрямую.
🟣Использует Ethernet (EthType 0x88F7) или UDP (порты 319 и 320).
🟣Важна поддержка на уровне железа — нужны PTP‑совместимые сетевые карты и коммутаторы.
🟣Стандарт — IEEE 1588‑2019 (PTPv2.1).

Серверная Админа | #network
  • ❤ 23
  • 👍 20
  • 👾 5
  • 🐳 3
Post #2236 9.34K
👋 Привет, сетевой друг!

Поговорим о 3 способах защититься от ARP-спуфинга.

🟣Включить Dynamic ARP Inspection (DAI) на Cisco: DAI проверяет ARP-пакеты и блокирует подозрительные.

conf t
ip arp inspection vlan 10
interface GigabitEthernet0/1
ip arp inspection trust
exit


🟣Задать статические ARP-записи на Linux-сервере: Фиксируем IP и MAC, чтобы не подставили чужой.

sudo arp -s 192.168.1.1 00:11:22:33:44:55


🟣Включить 802.1X и IPSec для шифрования трафика (пример с strongSwan на Linux):

Установка:

sudo apt install strongswan


Конфигурация /etc/ipsec.conf (минимум):

conn lan-protect
left=%defaultroute
right=192.168.1.100
auto=add
keyexchange=ikev2


Запуск:

sudo ipsec start
sudo ipsec up lan-protect


Серверная Админа | #network
  • 👍 14
  • ❤ 5
  • 👾 2
  • 🤡 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →