Admin Guides | Сисадмин
11.4K subscribers
1.23K photos
19 videos
34 files
558 links
Обучающий канал по ОС Linux & Windows для начинающих и действующих администраторов.

Админ, реклама: @Ak_Mihail
Биржа: https://telega.in/c/admguides

РКН: https://kurl.ru/nQejS
Download Telegram
5 способов использования команды tcpdump

tcpdump — мощный инструмент для захвата и анализа сетевого трафика.

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

1️⃣Фильтрация трафика по IP и порту

Хотите увидеть только пакеты, идущие к определённому серверу? Используйте:

tcpdump -i eth0 host 192.168.1.100 and port 443


Так можно отслеживать трафик к веб-серверу или искать подозрительные подключения.

2️⃣ Запись трафика в файл для последующего анализа

Иногда нужно изучить трафик позже. Для этого можно записать его в файл и открыть в Wireshark:

tcpdump -i eth0 -w capture.pcap


Анализировать содержимое можно с помощью:

tcpdump -r capture.pcap


3️⃣ Вывод только заголовков пакетов без данных

Чтобы не загружать терминал лишней инфой, можно смотреть только заголовки:

tcpdump -i eth0 -q


Это полезно для быстрого понимания, какие пакеты проходят через интерфейс.

4️⃣ Анализ DNS-запросов

Чтобы увидеть, какие домены запрашивает сервер:

tcpdump -i eth0 -n udp port 53


Так можно отловить подозрительные DNS-запросы или проверить, работает ли кеширование.

5️⃣ Захват только определённых протоколов

Допустим, вам нужно посмотреть только HTTP-запросы:

tcpdump -i eth0 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'


Этот трюк позволяет отсечь пустые ACK-пакеты и оставить только полезный трафик.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥3
18 марта 12:00
Как работать с сетевыми дисками на выделенных серверах

Selectel проведет вебинар для системных администраторов, devops-инженеров, техлидов.

Расскажут о новой фиче выделенных серверов Selectel — сетевых дисках, которые помогут в
- увеличении емкости без замены и добавления локальных дисков,
- хранении данных в средах виртуализации,
- создании бэкапов для быстрого восстановления,
- запуске тестовых сред и временных проектов.

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

Мероприятие бесплатное. Зарегистрироваться и задать вопросы спикерам можно по ссылке: https://slc.tl/5glo9

Чтобы не пропустить встречу и узнавать о вебинарах, воркшопах и бесплатных курсах Selectel, подписывайтесь на @selectel_events

Реклама. АО «Селектел», ИНН 7810962785, ERID: 2VtzqwEKa8o
👍3
💬 Вопрос на собеседовании для DevOps-инженера

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: Как работает etcd и зачем он нужен?

Ответ: etcd — это распределенное key-value хранилище, используемое для хранения конфигурационных данных и обеспечения согласованности в кластерах. Оно играет ключевую роль в Kubernetes, храня состояние кластера.

Основные компоненты:
Raft: алгоритм консенсуса, который обеспечивает отказоустойчивость и согласованность данных.
Watch: механизм подписки на изменения, позволяющий реагировать на обновления в реальном времени.
Snapshotting: система создания снимков для восстановления данных при сбоях.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2
Шел 2025 год. Люди все еще опаздывают на собеседования и продолжают удивлять интервьюеров, случайно подтягивая шорты на камеру...

👀 Тем временем команда DevOps Фабрики делает активность по развитию софт-скиллов у IT-инженеров!  

У ребят богатый опыт в проведении собеседований и они делают полезную активность, на которой: 

▪️ Объяснят, почему полезно ходить на собеседования не ради поиска работы
▪️Расскажут про структуру собесов от лица работодателей
▪️Помогут подготовить классную самопрезентацию 
▪️Расскажут, как улучшить резюме и сделать его более привлекательным 
▪️Помогут определить свои ключевые качества и составить план по развитию карьеры

Кому актуально, присоединиться можно по ссылке:
👉  DevOps Фабрика
👍5🤨2👎1🔥1🤝1
Приложения для знакомств? Нет, спасибо. Если бы я хотела болтать с кем-то часами и не добиться никакого результата, я бы просто связалась с техподдержкой.
😁25🤨5🤪3👍1
В Android 15 для Google Pixel появился Linux-терминал

В Android 15 для устройств Google Pixel добавили приложение Linux Terminal, работающее в виртуальной машине на базе Debian GNU/Linux.

Оно запускается через Android Virtualization Framework (AVF) и позволяет использовать командную строку Linux.


Как включить:
1. Активируйте режим разработчика (нажмите 7 раз на номер сборки).
2. Перейдите в Settings → System → Developer → Linux development environment.
3. Установите виртуальную машину (~576 МБ).

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

Проект развивается в AOSP в рамках Ferrochrome. Виртуализация основана на KVM и crosvm, а будущая поддержка GUI-приложений реализуется через Wayland/XWayland.
👍13🔥5
🧠 Тест для Software Architect https://otus.pw/HVo78/?erid=2W5zFJkgc8Q
Под силу ли вам ответить правильно на все 11 вопросов?
🎯Проверьте себя - пройдите тест и оцените свой уровень навыков, а также свою готовность к обучению на курсе — «Software Architect» от Отус.
🎥 После прохождения теста вы получите доступ к лучшим вебинарам курса!
Время прохождения теста ограниченно.
💡 Удачи в прохождении теста!

#реклама
О рекламодателе
👍3😁1
Установка и настройка Docker Swarm (Часть 1)

Docker Swarm — это встроенный в Docker инструмент для кластеризации, который объединяет несколько серверов в единый кластер. Он обеспечивает балансировку нагрузки, отказоустойчивость и масштабируемость.

В этом посте разберём установку Docker и развёртывание кластера Swarm на Ubuntu 16.04.

Шаг 1: Обновление системы

Перед установкой Docker обновите систему:

sudo apt-get update -y && sudo apt-get upgrade -y


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

Шаг 2: Установка Docker

Docker по умолчанию отсутствует в репозиториях Ubuntu 16.04, поэтому сначала установим необходимые зависимости:

sudo apt-get install apt-transport-https software-properties-common ca-certificates -y


Затем добавим GPG-ключ и репозиторий Docker:

wget https://download.docker.com/linux/ubuntu/gpg && sudo apt-key add gpg
echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial stable" | sudo tee /etc/apt/sources.list.d/docker.list
sudo apt-get update -y


Теперь установим сам Docker:

sudo apt-get install docker-ce -y


Запустим и настроим автозапуск Docker:

sudo systemctl start docker && sudo systemctl enable docker


Шаг 3: Разрешение запуска Docker без sudo

По умолчанию для работы с Docker нужны права root. Если хотите запускать контейнеры без sudo, добавьте пользователя в группу docker:

sudo groupadd docker && sudo usermod -aG docker $USER


Перезайдите в систему, чтобы изменения вступили в силу.

Шаг 4: Настройка брандмауэра (UFW)

Для корректной работы Swarm откроем необходимые порты:

sudo ufw allow 2376/tcp && sudo ufw allow 2377/tcp
sudo ufw allow 7946/udp && sudo ufw allow 7946/tcp
sudo ufw allow 4789/udp && sudo ufw allow 80/tcp


Применяем изменения и включаем UFW:

sudo ufw reload && sudo ufw enable


Шаг 5: Инициализация Docker Swarm

Выберите IP-адрес узла, который будет менеджером кластера, и выполните команду:

docker swarm init --advertise-addr 192.168.0.103


Если всё прошло успешно, вы увидите подобный вывод:

Swarm initialized: current node (...) is now a manager.
To add a worker to this swarm, run:
docker swarm join --token SWMTKN-... 192.168.0.103:2377


Сохраните этот токен, он понадобится для добавления новых узлов в кластер.

Шаг 6: Проверка статуса кластера

Команда ниже отобразит список узлов в Docker Swarm:

docker node ls


Ожидаемый результат:

ID                            HOSTNAME        STATUS  AVAILABILITY  MANAGER STATUS
iwjtf6u951g7rpx6ugkty3ksa * Manager-Node Ready Active Leader


Также можно проверить статус всего Docker Swarm:

docker info | grep Swarm


Если всё настроено верно, в выводе будет строка Swarm: active.

В следующей части разберём добавление узлов в кластер, развертывание веб-сервисов и управление ими.
👍13💯4
Установка и настройка Docker Swarm (Часть 2)

В первой части мы установили Docker, настроили брандмауэр и инициализировали Swarm-кластер. Теперь добавим рабочие узлы и развернём веб-сервис.

1️⃣Добавление узлов в кластер

На новом сервере, который будет worker-узлом, выполните команду, полученную ранее:

docker swarm join --token SWMTKN-... 192.168.0.103:2377


Ожидаемый результат:

This node joined a swarm as a worker.


Проверить статус всех узлов можно командой:

docker node ls


Вывод должен включать как Manager, так и Worker:

ID                            HOSTNAME        STATUS  AVAILABILITY  MANAGER STATUS
iwjtf6u951g7rpx6ugkty3ksa * Manager-Node Ready Active Leader
snrfyhi8pcleagnbs08g6nnmp Worker-Node Ready Active


2️⃣Развертывание веб-сервиса

Запустим Apache (httpd) в режиме Docker Swarm:

docker service create --name webserver -p 80:80 httpd


Проверим, работает ли сервис:

docker service ls


Вывод:

ID          NAME        MODE        REPLICAS  IMAGE          PORTS
nnt7i1lipo webserver replicated 1/1 httpd:latest *:80->80/tcp


3️⃣Масштабирование сервиса

Чтобы увеличить число реплик веб-сервера, используем команду:

docker service scale webserver=2


Теперь проверим распределение контейнеров по узлам:

docker service ps webserver


Вывод должен показывать два контейнера, работающих на разных узлах:

ID           NAME           IMAGE         NODE          DESIRED STATE  CURRENT STATE
7roily9zpjvq webserver.1 httpd:latest Worker-Node Running Running
r7nzo325cu73 webserver.2 httpd:latest Manager-Node Running Running


4️⃣Проверка отказоустойчивости

Если отключить Worker-узел (например, остановить Docker):

sudo systemctl stop docker

То Swarm автоматически запустит новый контейнер на оставшемся узле. Проверить это можно командой:

docker service ps webserver
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
💬 Вопрос на собеседовании для сисадмина

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: Как работает механизм lazy binding в динамическом линкере Linux и зачем он нужен?

Ответ: Lazy binding (отложенная привязка) — это техника, используемая динамическим линкером (ld.so) для повышения производительности при загрузке программ.

При стандартной загрузке все внешние символы (например, функции из библиотек) резолвятся сразу, что увеличивает время старта. При lazy binding разрешение символов происходит только в момент первого вызова.

Это достигается с помощью PLT (Procedure Linkage Table) и GOT (Global Offset Table). При первом вызове функция передает управление в PLT, который вызывает динамический линкер для нахождения реального адреса функции и обновляет GOT. Все последующие вызовы напрямую обращаются к правильному адресу, что снижает накладные расходы.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8👎51
🔥Хотите упростить сбор логов, метрик и трейсов в своей инфраструктуре? Grafana Alloy — мощный инструмент, который унифицирует доставку данных и интегрируется с Prometheus, Loki, Tempo и другими сервисами.

⚡️17 марта в 20.00 мск приглашаем на открытый вебинар "Grafana Alloy - универсальный инструмент доставки логов, метрик и трейсов", на котором узнаем:
- Как Grafana Alloy решает проблемы передачи данных в сложных системах?- Чем он отличается от Fluentd, Vector и других агентов?
- Как настроить отказоустойчивость и балансировку нагрузки?
- Лучшие практики маршрутизации, фильтрации и трансформации данных.Регистрируйтесь и внедряйте Grafana Alloy в своих проектах!

👉Регистрация: https://otus.pw/koCT/?erid=2W5zFG59HgC 

Занятие приурочено к старту курса "Observability: мониторинг, логирование, трейсинг", на котором вы научитесь строить эффективные системы мониторинга, работать с Prometheus, Grafana, ELK и другими инструментами, визуализировать метрики.

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
👍3
Управление трафиком с помощью tc на Linux

Команда tc (Traffic Control) позволяет контролировать полосу пропускания, ограничивать скорость трафика и управлять приоритетами пакетов.

Пример задачи:

Ограничим скорость исходящего трафика для интерфейса eth0 до 5 Мбит/с.

Создание очереди и установка ограничений

sudo tc qdisc add dev eth0 root tbf rate 5mbit burst 32kbit latency 400ms

• dev eth0 — целевой интерфейс.
• root — создание корневой очереди.
• tbf (Token Bucket Filter) — механизм управления трафиком.
• rate 5mbit — лимит в 5 Мбит/с.
• burst 32kbit — допустимый объем буфера для коротких всплесков трафика.
• latency 400ms — максимальная задержка.

Проверка настроек

sudo tc qdisc show dev eth0


Вы увидите текущую конфигурацию очереди.

Удаление правил (если нужно)

sudo tc qdisc del dev eth0 root


Эта команда сбрасывает все настройки управления трафиком для интерфейса eth0.
👍17
😁23👍3
Протокол Syslog: Серверы, сообщения и безопасность

Syslog — это стандартный протокол для передачи сообщений о событиях с сетевых устройств на центральный сервер журнала.

Он позволяет собирать логи с маршрутизаторов, коммутаторов, брандмауэров, серверов *nix и даже веб-серверов, таких как Apache. 


Хотя Windows-системы изначально не поддерживают Syslog, сторонние инструменты позволяют отправлять логи событий Windows на Syslog-сервер.

Основные компоненты Syslog-сервера

1️⃣Syslog-слушатель — принимает сообщения через порт UDP 514. Поскольку UDP не гарантирует доставку, некоторые устройства используют TCP-порт 1468 для надежной передачи.
2️⃣ База данных — хранит логи для быстрого поиска и анализа. Это особенно важно для крупных сетей с большим потоком данных.
3️⃣ Программное обеспечение управления и фильтрации — помогает сортировать логи, создавать уведомления и отправлять алерты для быстрой реакции на инциденты.

Формат сообщений Syslog

Сообщение содержит:
• IP-адрес источника
• Метку времени
• Текстовое сообщение

Уровни серьезности:

1. Emergency (0) — Система неработоспособна
2. Alert (1) — Требуется немедленное вмешательство
3. Critical (2) — Критическая ошибка
4. Error (3) — Ошибка
5. Warning (4) — Предупреждение
6. Notice (5) — Важное событие
7. Informational (6) — Информационное сообщение
8. Debug (7) — Отладочная информация

Недостатки Syslog
Нестандартный формат сообщений, что затрудняет автоматический анализ.
Передача по UDP, что может привести к потере пакетов при перегрузке сети.
Отсутствие аутентификации, что позволяет злоумышленникам отправлять поддельные логи.

Пример настройки на Linux

Установка Syslog-сервера (например, Rsyslog):

sudo apt update  
sudo apt install rsyslog


Открываем конфигурационный файл:

sudo nano /etc/rsyslog.conf  


Включаем прием сообщений по сети:

$ModLoad imudp  
$UDPServerRun 514


Перезапускаем службу:

sudo systemctl restart rsyslog
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥2
Вышел Debian 12.10: финальное обновление ветки Bookworm

15 марта 2025 года вышел Debian 12.10 — обновление популярного дистрибутива Linux.

Доступен для девяти архитектур, включая Intel IA-32/x86 (i686), AMD64/x86–64, ARM64 и другие.


Debian 12.10 стал последним выпуском ветки 12.x, начавшейся с Debian 12 «Bookworm» в июне 2023 года. Следующий крупный релиз — Debian 13 «Trixie» — ожидается позже в 2025 году.

Обновление содержит 66 исправлений стабильности и 43 патча безопасности.

Новые установочные образы доступны для загрузки, а пользователи Debian 12 получат обновления через стандартную систему.

Обновления безопасности доступны через security.debian.org.
👍25
Еще 3 команды для проверки железа на сервере Linux

Расскажу еще о 3 подобных командах

1️⃣dmidecode

Данная команда отличается от остальных тем, что парсит информацию о железе из SMBIOS/DMI (очень детальный вывод).

#посмотреть информацию о cpu
sudo dmidecode -t processor
#ram информация
sudo dmidecode -t memory
#информация о bios
sudo dmidecode -t bios


2️⃣ mount

Утилита mount предназначена для управления и просмотра смонтированных файлов систем и соответствующих точек:

[root@hq ~]# mount | column -t

/dev/mapper/VolGroup-lv_root on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
/dev/mapper/VolGroup-lv_home on /home type ext4 (rw)
/var/spool/asterisk/monitor on /var/www/html/ast_mon_dir type none (rw,bind)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)


3️⃣ lsusb – список USB – шин и подробная информация об устройствах

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

[root@hq ~]# lsusb

Bus 003 Device 001: ID 9c6a:00c1 Linux Foundation 1.1 root hub
Bus 004 Device 002: ID 092e:00de Microsoft Corp. Basic Optical Mouse v2.0
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥2
Продвинутая настройка Syslog: фильтрация и пересылка логов

Syslog позволяет не только собирать логи, но и фильтровать их, а также пересылать на удаленный сервер для централизованного хранения.

Пересылка логов на удаленный сервер

Редактируем конфигурацию:

sudo nano /etc/rsyslog.conf  


Добавляем строки:

*.* @192.168.1.100:514  # Отправка по UDP  
*.* @@192.168.1.100:514 # Отправка по TCP


Применяем изменения:

sudo systemctl restart rsyslog  


Фильтрация по уровню серьезности

Записываем критические ошибки в отдельные файлы:

*.emerg /var/log/emergency.log  
*.alert /var/log/alert.log


Мониторинг логов в реальном времени

tail -f /var/log/syslog  


Фильтр по IP-адресу:

grep "192.168.1.50" /var/log/syslog  


Проверка работы Syslog

logger -p local0.info "Test Syslog Message"  
cat /var/log/syslog | grep "Test Syslog Message"
👍13
Самый лёгкий способ попасть в Kubernetes

Ребята из «Лаборатории Числитель» выкатили «Штурвал CE» — бесплатную и полнофункциональную community-версию платформы для управления кластерами K8s.

Просто взяли все технологии enterprise-версии и отдали всем, кому это нужно. Пользуйтесь, сколько хотите, даже в продуктиве, без урезаний по функциям и пробных периодов! :)

А вот тут чат с разрабами, пояснительная бригада всегда на связи, да еще и подарки раздает за активное участие в жизни комьюнити.
👍8🔥21🌚1