Серверная Админа | Компьютерные сети
26.1K subscribers
1.12K photos
6 videos
7 files
1.18K links
Я действующий сетевой инженер, расскажу вам о сетях в доступной форме.

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

РКН: https://vk.cc/cHYqt5
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

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

🟣Включаем уведомления (Traps): Настроим отправку сообщений на SNMP-менеджер при изменении состояния интерфейса или конфигурации

R1(config)#snmp-server enable traps snmp linkdown linkup  
R1(config)#snmp-server enable traps config


Вот теперь админ сразу получит уведомление, если, например, интерфейс упадёт.

🟣Отключаем небезопасные строки аутентификации: По умолчанию на многих устройствах присутствуют строки “public” и “private”, которые легко взломать. Отключаем их:

R1(config)#no snmp-server community public  
R1(config)#no snmp-server community private


🟣Переходим на SNMPv3 для шифрования и аутентификации: SNMPv3 позволяет использовать шифрование и аутентификацию для защиты данных. Создаём группу с высоким уровнем безопасности:

R1(config)#snmp-server group SecureGroup v3 priv  


Добавляем пользователя с паролем и ключом шифрования:

R1(config)#snmp-server user SecureUser SecureGroup v3 auth md5 StrongPass priv des SecretKey  


Здесь:
• SecureUser — имя пользователя.
• SecureGroup — группа с привилегиями.
• StrongPass — пароль для аутентификации.
• SecretKey — ключ для шифрования данных.

🟣Настраиваем SNMP Engine ID: SNMP Engine ID — это уникальный идентификатор устройства в SNMP-сети

R1(config)#snmp-server engineID local 1234567890ABCDEF  


🟣Проверим работу SNMPv3:

R1#show snmp traps  
R1#show snmp engineID
R1#show snmp user


🟣И вот еще доп. команды для диагностики

На Windows:

snmpwalk -v 2c -c SafeRead 192.168.1.1  
snmpget -v 2c -c SafeRead 192.168.1.1 1.3.6.1.2.1.1.5.0


На Linux:

snmpwalk -v2c -c SafeRead 192.168.1.1  
snmpget -v2c -c SafeRead 192.168.1.1 1.3.6.1.2.1.1.5.0


Серверная Админа | #SNMP
Please open Telegram to view this post
VIEW IN TELEGRAM
👍221
Разрабы: это же всего лишь HTTP, он же простой

👨‍💻Серверная Админа | #мем
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28😁12🤡31🔥1
Нашел шпаргалку с примерами команд nmcli для управления сетью

👨‍💻Серверная Админа | #network
Please open Telegram to view this post
VIEW IN TELEGRAM
👍273👎2
Стильный современный «autoindex» в Angie/nginx без sms и сторонних модулей

В статье рассказывается, как придать автоиндексу в Angie/nginx стильный и современный вид без необходимости в сторонних модулях. Fancy Index больше не нужен — встроенный autoindex давно поддерживает JSON и XML, что позволяет гибко настраивать интерфейс. Хотим красивый HTML с XSLT или динамичный интерфейс с JavaScript? Легко сделаем! А благодаря "естественной" сортировке в Angie можно забыть о бардаке, который встречается в nginx.

Серверная Админа | #Статья
👍9
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

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

🟣Batfish — инструмент, который анализирует настройки сетевых устройств и находит ошибки или потенциальные проблемы. Он чекает конфигурации на соответствие всему: лучшим практикам, стандартам безопасности и еще политиками компании.

🟣Что делает: Batfish моделирует твою сеть и проверяет, как изменения в конфигурациях повлияют на её работу. Круто, что можно тестировать изменения ещё до их внедрения.

🟣Какие еще фишки: Batfish поддерживает устройства от всех крупных вендоров, таких как Cisco, Juniper и Arista. Еще он находит ошибки в настройках и, что важно: легко интегрируется в автоматизированные процессы и ускоряет тестирование.

Серверная Админа | #Инструмент
Please open Telegram to view this post
VIEW IN TELEGRAM
👍155🫡3
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

Расскажу о команде iwconfig для настройки WiFi.

🟣Настраиваем мощность передатчика: можно увеличить или уменьшить мощность Wi-Fi адаптера

iwconfig wlan0 txpower 20dBm


Значение указывается в dBm (децибел-милливатт). Например, 20dBm = 100 мВт.

🟣Принудительное переключение на нужную частоту: если сеть работает нестабильно, можно вручную задать канал

iwconfig wlan0 channel 6


Нужно это в загруженных диапазонах, когда автоматический выбор работает фигово.

🟣Ограничение скорости передачи данных: можно установить максимальную скорость соединения

iwconfig wlan0 rate 54M


Или перейти в автоматический режим:

iwconfig wlan0 rate auto


Актуально для устранения проблем с совместимостью старых устройств.

🟣Отключение режима энергосбережения: По умолчанию Wi-Fi адаптер может снижать мощность для экономии энергии, но это иногда вызывает потери связи

iwconfig wlan0 power off


🟣Проверка параметров сети: Чтобы посмотреть текущие настройки Wi-Fi

iwconfig wlan0


А если нужен мониторинг в реальном времени:

watch -n 1 iwconfig wlan0


Серверная Админа | #iwconfig
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥1121
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

Расскажу о интересной фишке TCP_Nodelay.

🟣Что такое TCP_NODELAY: это флаг, который отключает алгоритм Нейгла — механизм, предназначенный для оптимизации отправки маленьких пакетов данных.

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

🟣Когда стоит отключать Нейгла: Если ты работаешь с высокоскоростными распределёнными системами, где важна каждая миллисекунда, например, в датацентрах или при передаче данных в реальном времени (онлайн-игры, видеоконференции и т.д.), то включение TCP_NODELAY — это мастхэв.

🟣Как включить TCP_NODELAY: Включить эту опцию можно легко через настройки сокетов на уровне программного кода. Вот пример на Python с использованием библиотеки socket:

import socket

# Создаем сокет
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# Включаем TCP_NODELAY
sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)


Серверная Админа | #TCPNODELAY
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

Сегодня расскажу о трех интересных способах использовать команду traceroute работы с сетью.

🟣Определение узких мест в сети: Если подключение тормозит, traceroute поможет найти проблемный участок

traceroute example.com


🟣Трассировка через TCP и UDP: Обычный traceroute использует ICMP-запросы, но многие брандмауэры их блокируют. В таких случаях можно обойти ограничение, отправляя TCP или UDP-пакеты

traceroute -T -p 80 example.com  # TCP через порт 80
traceroute -U -p 53 example.com # UDP через порт 53


🟣Более точное измерим задержки: Если хотите точнее узнать время прохождения пакетов, используйте mtr — это улучшенный traceroute, который постоянно обновляет данные

mtr example.com


Серверная Админа | #traceroute
Please open Telegram to view this post
VIEW IN TELEGRAM
👍281
Техподдержка никогда не меняется

— Вы пробовали выключить и снова включить?
— Вы пробовали перенастроить главный силовой модуль?


👨‍💻Серверная Админа | #мем
Please open Telegram to view this post
VIEW IN TELEGRAM
😁22💯5👍31
Стильный современный «autoindex» в Angie/nginx без sms и сторонних модулей

В статье о том, как с помощью Nginx Proxy Manager можно без проблем настроить обратный прокси-сервер для веб-приложений. Автор делится целыми пошаговыми инструкциями по всему связанному с инструментом: подготовке сервера, установке Docker и настройке маршрутизации трафика через удобный веб-интерфейс, без необходимости редактировать конфиги вручную. Также показано, как настроить тестовые приложения и домены для проверки работы.

Серверная Админа | #Статья
👍7
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

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

🟣Oxidized — это современная замена RANCID, но с кучей крутых фишек. Он собирает конфигурации с более чем 130 операционных систем на устройствах типа маршрутизаторов, свитчей и других сетевых девайсов.

🟣Как работает: Он автоматически качает конфигурации с устройств, причем можно настроить его под любые задачи. Oxidized отлично работает с Git, чтобы отслеживать каждое изменение, и использует syslog, чтобы сразу делать бэкап, как только конфигурация меняется. А с помощью гибкого RESTful API вы можете моментально управлять всеми настройками и легко получать нужные данные.

🟣Почему это топ: инструмент позволяет отслеживать, кто и когда менял конфигурацию, с помощью git blame. Он не только упрощает бэкап, но и помогает интегрировать все в автоматизированные процессы.

Серверная Админа | #Инструмент
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

Сегодня разбираем установку и настройку Oxidized

🟣Установка на Debian/Ubuntu: Сначала добавляем репозиторий (для Ubuntu)

add-apt-repository universe


Устанавливаем зависимости:

apt-get install ruby ruby-dev libsqlite3-dev libssl-dev pkg-config cmake libssh2-1-dev libicu-dev zlib1g-dev g++ libyaml-dev


Ставим сам Oxidized:

gem install oxidized oxidized-script oxidized-web


Если oxidized-web не нужен, удалите "rest" из конфига.

🟣Установка на CentOS/RHEL: Обновляем Ruby через RVM

yum erase ruby  
sudo gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B17...
curl -sSL https://get.rvm.io | bash -s stable
source /etc/profile.d/rvm.sh
rvm install 3.1 && rvm use 3.1


Ставим зависимости и сам инструмент:

yum install make cmake which sqlite-devel openssl-devel libssh2-devel gcc libicu-devel gcc-c++  
gem install oxidized oxidized-web
rvm wrapper oxidized


🟣Первая настройка: Oxidized использует YAML-конфиг (~/.config/oxidized/config), но лучше запускать его под отдельным пользователем:

useradd -s /bin/bash -m oxidized  
su oxidized
oxidized


После первого запуска создается стандартный конфиг. Можно менять OXIDIZED_HOME, если нужно другое расположение файлов.

🟣Где хранить бэкапы: Oxidized поддерживает CSV, SQLite, MySQL и HTTP для хранения списка устройств, а конфиги сохраняются в файлы, Git или Git-Crypt. Для Git-бэкапа добавьте:

output:
default: git
git:
user: Oxidized
email: oxidized@example.com
repo: "~/.config/oxidized/repository.git"


Запускаем:

mkdir -p ~/.config/oxidized/configs  
oxidized


Добавляем устройства в router.db:

router01.example.com:ios
switch01.example.com:procurve
router02.example.com:ios


Серверная Админа | #oxidized
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

Сегодня всмпоним, HTTP — протокол, на котором держится весь веб

🟣HTTP (HyperText Transfer Protocol) — это язык, на котором браузеры и серверы "разговаривают" друг с другом. Ты вводишь адрес сайта, браузер отправляет запрос, сервер отвечает, и вот перед тобой загруженная страница. HTTP работает поверх TCP/IP и управляет передачей данных между клиентом и сервером.

🟣Протокол был создан в 1990 году и за годы прошел несколько версий: HTTP/0.9 просто загружал HTML, HTTP/1.0 добавил заголовки и улучшил обмен данными, а HTTP/1.1 ускорил работу за счет постоянных соединений и параллельных запросов.

🟣Как браузер загружает страницу:
1️⃣Браузер отправляет HTTP-запрос серверу.
2️⃣Сервер отвечает HTML-кодом.
3️⃣Браузер анализирует код, загружает стили, скрипты, изображения.
4️⃣Когда все ресурсы получены, страница отображается.

🟣Ну и кроме загрузки веб-страниц, HTTP ещё отправляет данные на сервер. Это удобно для отправки данных через формы или загрузки файлов. Например, запрос GET используется для получения данных с сервера, тогда как POST — для отправки данных. Также есть запросы HEAD, которые проверяют наличие ресурса без его загрузки, PUT для загрузки файлов на сервер, и DELETE для удаления файлов.

Серверная Админа | #HTTP
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

Сегодня расскажу о пяти классных способах использовать команду dig для диагностики DNS.

🟣Найти все IP-адреса домена (A-записи): узнаем, какие IP-адреса связаны с доменом, получая A-записи. Например, чтобы увидеть, куда указывает amazon.com, просто вводим:

dig amazon.com


🟣Проверить почтовые серверы (MX-записи): нужно узнать, какие серверы обрабатывают почту для домена? Вызываем MX-записи.

dig amazon.com MX


🟣Выяснить, куда ссылается поддомен (CNAME-записи): Иногда поддомены просто перенаправляют на другие домены через CNAME. Узнать, на какой домен ссылается www.amazon.com, можно так:

dig www.amazon.com CNAME


🟣Проверить DNS-серверы (NS-записи): увидим, какие серверы управляют доменом и отвечают за его DNS, используя NS-записи:

dig amazon.com NS


🟣Получить информацию о зоне (SOA-запись): ну а если надо понять, кто управляет зоной домена и когда была последняя авторизация, просто используйте SOA-запись:

dig amazon.com SOA


Серверная Админа | #dig
Please open Telegram to view this post
VIEW IN TELEGRAM
👍223🫡2
Поможет ли при восстании роботов?

👨‍💻Серверная Админа | #мем
Please open Telegram to view this post
VIEW IN TELEGRAM
💯36😁23👍4🥴1
Стриминг музыки со своего сервера

В статье о том, как превратить свой сервер в личный музыкальный стриминг-сервис без ограничений платных платформ. Разбираются медиасерверы Plex, Jellyfin и Black Candy, их установка через Docker и настройка доступа. Плюсом обсуждаются транскодирование, поддержка мобильных клиентов и удобство хранения коллекции на своём сервере.

Серверная Админа | #Статья
👍15🔥81👾1
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

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

🟣Что это: Snabb — это фреймворк для работы с сетевыми пакетами, который обходит ядро Linux (kernel bypass) и ускоряет обработку трафика. Написан на Lua и использует LuaJIT, что делает его таким же быстрым, как решения на C, но гораздо проще в разработке.

🟣Все упаковано в один бинарник — snabb, который можно запустить на любой x86-64 Linux-системе. Такой busybox, но для сетей: одно приложение — куча возможностей.

🟣Где используют: Snabb используют для виртуальных сетей, облачных решений, SDN и других сценариев. Например, он отлично справляется с виртуальными драйверами и сетевыми оффлоадами на уровне SIMD.

Серверная Админа | #Инструмент
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14👾1
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

Сегодня разберем, как защитить сеть с помощью DHCP Snooping и Dynamic ARP Inspection (DAI) на Cisco.

🟣DHCP Snooping: фильтр для DHCP: DHCP Snooping отслеживает все DHCP-запросы, разрешая ответы только от доверенных серверов. Коммутатор помечает порты, подключенные к маршрутизаторам и DHCP-серверам, как доверенные, а все остальные — как недоверенные.

🟣Чтобы включить защиту, задаем лимиты трафика и отмечаем доверенные интерфейсы:

AccSwitch(config)#int range gi1/0/1-46
AccSwitch(config-if-range)#ip dhcp snooping limit rate 15
AccSwitch(config-if-range)#ip arp inspection limit rate 100

AccSwitch(config)#int range gi1/0/47-48
AccSwitch(config-if-range)#ip dhcp snooping trust
AccSwitch(config-if-range)#ip arp inspection trust

AccSwitch(config)#ip dhcp snooping
AccSwitch(config)#ip dhcp snooping vlan 200
AccSwitch(config)#no ip dhcp snooping information option


🟣Dynamic ARP Inspection - защита от MITM: DAI блокирует поддельные ARP-ответы, проверяя соответствие IP и MAC-адресов. Если в сети есть устройства со статическими IP, их нужно добавить в ARP-список доступа:

AccSwitch(config)# arp access-list DAI
AccSwitch(config-arp-nacl)# permit ip host 192.168.200.25 mac host 0017.6111.a309


Также можно жестко привязать MAC-адрес к порту:

AccSwitch(config)#ip source binding 0017.6111.a309 vlan 200 192.168.200.14 interface Gi1/0/5
AccSwitch(config)#interface range gi1/0/1-46
AccSwitch(config-if-range)#ip verify source


🟣Включаем DAI (но не сразу!): Сначала ждем 1-2 дня, чтобы таблица DHCP Snooping заполнилась. Иначе DAI заблокирует всех юзеров. После этого включаем защиту:

AccSwitch(config)#ip arp inspection vlan 200


Серверная Админа | #DHCPsnooping
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19👾1
Какой механизм предотвращает атаку VLAN Hopping путем жесткого назначения VLAN на порты коммутатора?
Anonymous Quiz
15%
BPDU Guard
48%
Port Security
18%
Disabling DTP
20%
DHCP Snooping
5🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
👋 Привет, сетевой друг!

Сегодня расскажем о Usenet и группах новостей — старом, но всё ещё живом сервисе.

🟣Что такое Usenet: Это одна из первых систем для обмена сообщениями, которая появилась еще задолго до современного интернета. В Usenet существовали группы по любым темам: от программирования до политики. Каждая группа имела свою иерархию, например, comp.lang.c — для обсуждения языка C.

🟣Почему Usenet затмился: все дело в том, что со временем появились соцсети и форумы, которые оттянули пользователей. Сейчас сервис в основном работает по платной подписке с ограниченными пробными периодами.

🟣Что с ним сейчас: Даже несмотря на спад популярности, некоторые группы продолжают работать, а через Google Groups можно найти старые обсуждения и даже поучаствовать в новых. И интересно, что для обмена файлами использовалась техника кодирования, превращающая файлы в текст и позволяющая отправлять их как обычные сообщения.

🟣Неожиданное продолжение: Usenet существует в нишевых сообществах и форумах, а Google продолжает поддерживать доступ к старым группам. Такое вот возвращение в «золотую эпоху» интернета — с простыми текстами и обменом файлами и без всех этих сложных интерфейсов.

Серверная Админа | #usenet
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17
👋 Привет, сетевой друг!

Сегодня разберёмся, что такое Uplink и Downlink и почему это не совсем то же самое, что CTS и STC.

🟣Что такое CTS и STC? CTS (Client-to-Server) и STC (Server-to-Client) — это термины для описания направления трафика. CTS — когда данные идут от клиента к серверу, а STC — когда сервер отправляет данные клиенту.

🟣А что такое Uplink и Downlink? В сети Uplink — это когда данные идут от тебя к внешнему миру, а Downlink — наоборот, когда данные идут от интернета к тебе. Например, если ты качаешь фильм — это Downlink. А если заливаешь в него видео — это Uplink. Всё вроде бы просто, но есть нюанс…

🟣Тут начинается игра слов. Допустим, ты настроил сервер с IP и поехал в отпуск. Ты заходишь на сервер из другого города. Для провайдера трафик от сервера к тебе будет Uplink, а от тебя к серверу — Downlink. Но для тебя наоборот — от сервера к тебе это STC, от тебя к серверу — CTS.

🟣В итоге: Uplink и Downlink могут напоминать CTS и STC, но их значение зависит от того, с чьей стороны мы смотрим на трафик.

Серверная Админа | #uplink #downlink
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20👾21👍1