NetworkAdmin.ru – Telegram
NetworkAdmin.ru
4.75K subscribers
225 photos
25 videos
2 files
497 links
Авторский блог про сетевое и системное администрирование.

Сайт: networkadmin.ru
Реклама: @dad_admin
Биржа: https://telega.in/c/networkadminru
Download Telegram
Интимная обстановка 🔞

#юмор

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
😁52🤔3😱21👍1
👩‍💻 Как развернуть Kubernetes-кластер на bare-metal сервере

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

⭐️ Что потребуется:

Один мастер-узел (control plane)
Один или более worker-узлов
Ubuntu Server 22.04+ (или другой поддерживаемый дистрибутив)
Сеть с доступом между узлами (ssh + порты k8s)
root или sudo-доступ


1️⃣ Подготовка ОС. На всех узлах:


sudo apt update && sudo apt upgrade -y
sudo apt install -y curl apt-transport-https ca-certificates software-properties-common


Выключаем swap (Kubernetes его не любит):


sudo swapoff -a
sudo sed -i '/swap/d' /etc/fstab


2️⃣ Установка container runtime (например, containerd)


sudo apt install -y containerd
sudo mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml > /dev/null
sudo systemctl restart containerd


3️⃣ Установка kubeadm, kubelet и kubectl


curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo add-apt-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
sudo apt update
sudo apt install -y kubeadm kubelet kubectl
sudo apt-mark hold kubeadm kubelet kubectl


4️⃣Инициализация мастер-узла. На мастер-ноде:


sudo kubeadm init --pod-network-cidr=10.244.0.0/16


После успешной инициализации:


mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config


5️⃣ Установка сетевого плагина (например, Flannel)


kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml


6️⃣ Подключение worker-нод. На каждом worker-узле выполните команду, которую выдал kubeadm init, например:


sudo kubeadm join 192.168.0.10:6443 --token abcdef.1234567890abcdef \
--discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


▪️ Проверка статуса кластера. На мастер-ноде:


kubectl get nodes
kubectl get pods --all-namespaces


#kubernetes #baremetal

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍9🔥21
Развёртывание Linux по сети с PXE

Когда нужно установить Linux на множество серверов или ПК без USB-флешек и дисков, на помощь приходит PXE (Preboot Execution Environment) - загрузка ОС по сети. PXE позволяет запустить установщик Linux прямо из сети, что особенно удобно в дата-центрах, офисах и лабораториях.

🌟 Как это работает?

Компьютер включается и запрашивает сетевой загрузчик по DHCP.
Сервер отвечает и передаёт загрузочный образ через TFTP.
Клиент загружает ядро Linux и переходит к установке системы.


🌟 Что нужно для развертывания PXE?

DHCP-сервер (для раздачи PXE-загрузчика)
TFTP-сервер (для передачи загрузочных файлов)
HTTP/NFS-сервер (для хранения установочных файлов)


1️⃣ Устанавливаем нужные пакеты. На PXE-сервере установим DHCP, TFTP и Apache (для раздачи образов):


sudo apt update && sudo apt install isc-dhcp-server tftpd-hpa apache2


2️⃣ Настраиваем DHCP для PXE. Редактируем /etc/dhcp/dhcpd.conf:


subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
next-server 192.168.1.10; # PXE-сервер
filename "pxelinux.0";
}


Перезапускаем DHCP:


sudo systemctl restart isc-dhcp-server


3️⃣ Настраиваем TFTP-сервер. Указываем папку для загрузки PXE-файлов в /etc/default/tftpd-hpa:


TFTP_DIRECTORY="/srv/tftp"
TFTP_OPTIONS="--secure"


Перезапускаем:


sudo systemctl restart tftpd-hpa


4️⃣ Загружаем PXELINUX. Скачиваем файлы для PXE:


sudo mkdir -p /srv/tftp
cd /srv/tftp
sudo apt install syslinux pxelinux
sudo cp /usr/lib/PXELINUX/pxelinux.0 .
sudo cp /usr/lib/syslinux/modules/bios/* .


Создаём каталог для меню:


mkdir -p /srv/tftp/pxelinux.cfg


5️⃣ Создаём загрузочное меню PXE. Создаём файл /srv/tftp/pxelinux.cfg/default:


DEFAULT menu.c32
PROMPT 0
TIMEOUT 100
ONTIMEOUT install

LABEL install
MENU LABEL Install Ubuntu 22.04
KERNEL ubuntu/vmlinuz
APPEND initrd=ubuntu/initrd.gz netboot=http://192.168.1.10/ubuntu/


6️⃣ Готовим установочные файлы. Загружаем образы на веб-сервер:


sudo mkdir -p /var/www/html/ubuntu
cd /var/www/html/ubuntu
wget http://archive.ubuntu.com/ubuntu/dists/jammy/main/installer-amd64/current/images/netboot/netboot.tar.gz
tar -xzf netboot.tar.gz


Перезапускаем Apache:


sudo systemctl restart apache2


7️⃣ Запускаем установку по сети. Теперь включаем клиентский компьютер, в BIOS включаем PXE-загрузку и выбираем сетевой интерфейс в качестве загрузочного устройства.

Клиент загрузится и начнёт установку Linux прямо из сети.

#linux #install

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19👎1🔥1
📈 Тестируем пропускную способность сети

До сих пор не знаете о iperf? Одном из самых популярных инструментов для измерения пропускной способности сети. Iperf - это кроссплатформенная утилита, работающая в режиме клиент-сервер. Вы можете запустить сервер на Linux и тестировать подключение с Windows, Android и наоборот. При запуске выбирается один из режимов:

Сервер: принимает подключения
Клиент: инициирует тестирование

⚙️ Установка и запуск

📱 На Linux:


apt install iperf3
iperf3 -s


По умолчанию сервер слушает порт 5201 TCP — не забудьте открыть его в файрволле.

🏠 На Windows:


winget install iperf3


Для любителей графики есть GUI-приложение на основе iperf, но для оригинальной консольной версии лучше скачать архив с официального сайта.

▪️ Запуск теста с клиента:


iperf3 -c <IP-адрес сервера>


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

▪️ Логирование и интеграция с мониторингом. Iperf поддерживает вывод логов, в том числе в формате JSON:


iperf3 -c <IP> --logfile log.txt -J


Эти данные можно потом обрабатывать через любую систему мониторинга.

⭐️ тесты iperf создают реальную нагрузку на канал. Во время замеров может страдать работа сервисов, поэтому в продакшене применять с осторожностью. Также при автоматизации тестов стоит помнить: приоритизация трафика исказит реальную картину.

▪️ Полезные параметры iperf3

1️⃣ Изменить продолжительность теста (по умолчанию 10 секунд):


iperf3 -c <IP> -t 60


2️⃣ Передать заданный объём данных вместо ограничения по времени:


iperf3 -c <IP> -n 100M


3️⃣ Запустить тест в несколько потоков для более полного использования канала:


iperf3 -c <IP> -P 4


Параметры одинаково работают на всех платформах. Вы можете поднять сервер на Windows и тестировать подключение с Linux - и наоборот.

#iperf #networktools

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
🛡 Безопасный запуск подозрительных файлов: Windows Sandbox и Hyper-V

Приходит странный .exe в письме, скачали скрипт с форума, нужно проверить .bat - но лезть в боевую систему страшно? Windows уже давно предлагает удобные инструменты для таких задач: Windows Sandbox и Hyper-V.

Windows Sandbox - это изолированная среда, встроенная в Windows 10/11 Pro и Enterprise, запускаемая как обычное приложение. Каждая сессия создаёт чистую виртуальную Windows, которая полностью удаляется при закрытии. Идеально для тестирования вредоносных или сомнительных файлов.

▪️ Активация:


Панель управления → Программы → Включение компонентов Windows → Windows Sandbox


▪️ Особенности:

– Не требует настройки
– Работает поверх Hyper-V
– Доступ к сети (опционально)
– Поддержка копипаста между хостом и Sandbox
– Можно запускать EXE, MSI, BAT, PowerShell-файлы
– Всё, что вы сделали, исчезает после выхода из песочницы


Пример: получили подозрительный .exe? Копируете его в Sandbox, запускаете и смотрите поведение - система хоста в полной безопасности.

▪️ Кастомизация

Можно создавать .wsb-файлы для кастомных сессий. Пример конфигурации:


<Configuration>
<MappedFolders>
<MappedFolder>
<HostFolder>C:\test</HostFolder>
<ReadOnly>true</ReadOnly>
</MappedFolder>
</MappedFolders>
<Networking>Disable</Networking>
<LogonCommand>
<Command>explorer.exe</Command>
</LogonCommand>
</Configuration>


🌟 А если нужно больше контроля? Используйте Hyper-V

Hyper-V - полноценная система виртуализации. Позволяет запускать полноценные виртуалки с Windows или Linux, делать снапшоты, настраивать сеть, симулировать заражения. Подходит для постоянных стендов, C2-серверов, песочниц под малварь.

#windows #security

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20
🔓 Как защититься от MAC-спуфинга и ARP-атак в сети?

Локальные сети уязвимы к атакам, основанным на подмене MAC-адресов и ARP-ответов. Это позволяет злоумышленнику внедриться в трафик, перехватить сессии, пароли, или даже организовать MITM-атаку. Разберёмся, как это работает и как защититься.

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

ARP-спуфинг - атака, при которой злоумышленник отправляет поддельные ARP-ответы, перенаправляя трафик жертвы на себя.

▪️ Пример: ПК «думает», что MAC-адрес шлюза принадлежит атакующему. Всё, что идёт в интернет, сначала попадает к злоумышленнику.

▪️Как защититься?

1️⃣ Использовать статические ARP-записи. Особенно на критичных устройствах (серверы, шлюзы). Например:


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


2️⃣ Включить динамическое обнаружение ARP-атаки. Многие коммутаторы и firewall (например, Mikrotik, Cisco, pfSense) поддерживают ARP Watch или ARP Inspection.

3️⃣ Включить DHCP Snooping + Dynamic ARP Inspection (DAI). Работает на уровнях доступа: фильтрует поддельные ARP-пакеты.

4️⃣ Фиксировать MAC-адреса вручную (Port Security). Ограничьте количество MAC-адресов на порту и задайте статические.

5️⃣ Мониторинг ARP-таблицы. Утилиты arpwatch, arping, ettercap или Wireshark помогут выявить подозрительные изменения.

6️⃣ Шифровать трафик. Используйте HTTPS, SSH, VPN — даже если ARP-спуфинг произойдёт, трафик будет зашифрован.

#networksecurity #macspoofing

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
🌐 Microsoft Network Monitor: захват и анализ сетевого трафика в Windows

Network Monitor - бесплатная утилита от Microsoft для захвата сетевого трафика. Несмотря на отсутствие обновлений, инструмент отлично подходит для диагностики на серверах и рабочих станциях.

⚙️ Установка:


winget install Microsoft.NetMon


Или скачайте с официального сайта Microsoft.

▪️ Быстрый старт:

- Запустите от администратора.
- Создайте новую сессию (New Capture → Capture Settings).
- Выберите профиль парсера Windows.
- Нажмите Start для начала захвата.

▪️ Примеры фильтров:

Перехват SMTP-трафика:


TCP.Port == 25 or TCP.Port == 465 or TCP.Port == 587


Трафик к определенному IP:


IPv4.Address == 192.168.1.100


Захват только HTTP-запросов:


HTTP.Request


Хороший инструмент для локального аудита сетевых соединений без сложных настроек.

#networktools

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍181
This media is not supported in your browser
VIEW IN TELEGRAM
Сразу видно, мастер своего дела

#юмор

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
😁34👍6😱31💩1
Traceroute, Tracert и Tracepath - в чём разница и что выбрать

Когда нужно быстро определить маршрут до хоста, используются утилиты трассировки: traceroute, tracert и tracepath. Все они работают схожим образом - отправляют пакеты с увеличивающимся TTL и фиксируют ответы от промежуточных узлов. Но есть важные отличия.

▪️ traceroute (Linux). По умолчанию использует UDP, но можно переключиться на ICMP:


traceroute networkadmin.ru # UDP
traceroute -I networkadmin.ru # ICMP


UDP-пакеты могут блокироваться, и вы не получите ответ. Поэтому ICMP часто предпочтительнее в реальных условиях.

▪️ tracert (Windows). Использует только ICMP, без возможности выбора. Удобен и прост, но менее гибок.

▪️ tracepath (Linux). Аналог traceroute, тоже использует UDP, но дополнительно показывает MTU на каждом участке маршрута. Очень полезно при диагностике проблем с фрагментацией, особенно в VPN и туннелях.

🌟 Что выбрать?

- Если нужна универсальность и вы работаете в Linux - используйте traceroute -I.
- Если нужна информация о MTU - tracepath.
- В Windows - только tracert, но ICMP чаще проходит успешно.

#networktools

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
🖼️ Отправка сообщений в WhatsApp из скрипта

Пост для тех, кому необходимо интегрировать отправку уведомлений в WhatsApp прямо из скрипта. Отличным решением будет Mudslide - консольный клиент, построенный на Node.js и библиотеке Baileys, работающий через API WhatsApp Web.

⚙️ Установка:


npm install -g mudslide


Или загрузите готовый бинарник для Windows/Linux.

▪️ Авторизация:


npx mudslide login


Сканируйте QR-код в WhatsApp - и вы в системе.

▪️ Примеры команд:


mudslide send 79123456789 "Привет"
mudslide send-image 79123456789 ./image.jpg
mudslide send-file me ./doc.pdf
mudslide send-location me 55.752121 37.617664


Инструмент удобно использовать в автоматизации, мониторинге и оповещениях.

#whatsapp

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
Успех гарантирован

#юмор

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
😁29👍6🤡41👎1
⛔️ Ограничиваем ресурсы в Linux

Control Groups (или просто cgroups) - это фича ядра Linux, позволяющая ограничивать ресурсы, выделенные для процессов: CPU, память, диск, сеть и т.д.

⭐️ Пример: вы хотите, чтобы процесс stress не съедал всю память и CPU:


# Создаём cgroup
sudo cgcreate -g memory,cpu:/limitgroup

# Ограничим память до 500MB
sudo cgset -r memory.limit_in_bytes=$((500*1024*1024)) limitgroup

# Ограничим CPU (50% одного ядра)
sudo cgset -r cpu.cfs_quota_us=50000 limitgroup
sudo cgset -r cpu.cfs_period_us=100000 limitgroup

# Запускаем процесс внутри cgroup
sudo cgexec -g memory,cpu:/limitgroup stress --vm 1 --vm-bytes 700M --cpu 1


Процесс превысит лимит - будет убит OOM-килером.
Все параметры и статистику можно смотреть в /sys/fs/cgroup/.

#linux #cgroups

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
👀 Диагностика сетевых проблем с mtr и ss

🌟 mtr (My Traceroute) - сочетает ping и traceroute, выводит маршрут и потери пакетов до цели. Очень наглядно показывает, где в пути начинается деградация.

▪️ Пример:


mtr -rw -c 50 8.8.8.8


Покажет 50 запросов, каждый hop, потери (%) и задержку (ms).
Если видите 30–50% потерь на каком-то промежуточном IP - скорее всего, это и есть проблемный участок.

🌟 ss (socket statistics) - замена netstat. Помогает найти открытые порты, "зависшие" соединения и выяснить, какой процесс что слушает.

▪️ Примеры:

1️⃣ Просмотр всех TCP/UDP портов с PID:


ss -tulpn


2️⃣ Кто держит порт 443:


ss -ltnp | grep ':443'


3️⃣ Зависшие соединения в состоянии CLOSE-WAIT:


ss -tan state close-wait


⭐️ Сценарий диагностики:

1. Сначала mtr до внешнего хоста - проверка трассировки и потерь.
2. Потом ss - смотрим, что на машине: может, переполнен backlog, слушающий порт не отвечает или слишком много соединений.


#mtr #ss #debug

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍132
💬 Зачем столько каталогов с бинарниками в Unix

Вы когда-нибудь задумывались, почему в Unix-подобных системах столько директорий для исполняемых файлов? Почему mount в /bin, а htop в /usr/bin, а свои скрипты многие кладут в /usr/local/bin?

⭐️ Быстрый разбор:

/bin - базовые утилиты, которые нужны системе для загрузки и восстановления (например, cp, ls, mount).

/sbin - то же, что /bin, но для системного администрирования (fsck, reboot, iptables).

/usr/bin - всё остальное: утилиты для обычной работы пользователей (vim, git, curl).

/usr/sbin - админ-инструменты, не нужные на этапе загрузки (apache2, sshd, postfix).

/usr/local/bin и /usr/local/sbin - то, что вы ставите вручную, не через пакетный менеджер. Сюда удобно кидать своё ПО и скрипты, чтобы не мешать системным файлам.


📜 Интересный факт: всё это уходит корнями в 70-е. Тогда у разработчиков Unix не хватало места на одном диске, и они добавили второй, назвав его /usr. На него перенесли часть системы, включая bin и sbin. Так и появилась современная иерархия.

🌟 Сейчас в большинстве дистрибутивов /bin и /sbin - это просто символические ссылки на /usr/bin и /usr/sbin. Например, в Debian 11 и Fedora всё давно живёт в /usr.

Иерархия стала анахронизмом, но сохраняется ради совместимости. Логичнее было бы всё централизовать, а смысловое разделение оставить только между системным (/usr) и пользовательским (/usr/local) ПО.

⚡️ Совет: пользуйтесь /usr/local/bin для собственных скриптов и утилит - это хорошая практика.

#linux #unix

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍213
🔍 Проверка контрольной суммы ISO-образа Windows: защита от подделок

Скачивание ISO-образов Windows с неофициальных источников может привести к установке модифицированных версий с вредоносным ПО. Для обеспечения безопасности рекомендуется проверять контрольные суммы файлов.

🏃 Проверка с помощью PowerShell. В PowerShell можно использовать командлет Get-FileHash для вычисления хеш-суммы файла:


Get-FileHash "C:\Path\to\your\file.iso" -Algorithm SHA256


По умолчанию используется алгоритм SHA256, но можно указать другие: SHA1, SHA384, SHA512, MD5.

⭐️ Проверка с помощью certutil. Также можно использовать встроенную утилиту certutil:


certutil -hashfile "C:\Path\to\your\file.iso" SHA256


📁 Сравнение с оригинальными хешами. Полученные хеш-суммы следует сравнить с официальными:

1. На сайте Visual Studio Downloads (требуется учетная запись Microsoft).
2. На ресурсе RG-Adguard, где можно искать по хешу.

🔎 Автоматическая проверка соответствия. Для автоматизации проверки можно использовать следующий скрипт в PowerShell:


$expectedHash = "c90a6df8997bf49e56b9673982f3e80745058723a707aef8f22998ae6479597d"
(Get-FileHash "C:\Path\to\your\file.iso" -Algorithm SHA256).Hash -eq $expectedHash


Если результат True, файл подлинный; если False - файл может быть поврежден или подделан.

#windows #security

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍92
💥 Контейнеризация с Podman: альтернатива Docker без демона

Если напрягает громоздкость Docker и хотите более гибкий инструмент - стоит обратить внимание на Podman. Это альтернатива Docker, которая полностью совместима с его CLI, но не требует запуска отдельного демона. Да, так и есть - никаких dockerd, sudo systemctl start docker и прочего.

Podman - это инструмент для управления контейнерами и образами, разработанный Red Hat. Он использует стандарт OCI (Open Container Initiative), а значит, большинство Docker-образов и команд будут работать "из коробки".

🌟 Ключевые особенности:

- Без демона: каждый контейнер запускается как обычный процесс, что упрощает отладку и снижает риски.
- Rootless режим: контейнеры можно запускать от обычного пользователя, без sudo и потенциальных угроз для всей системы.
- Совместимость с Docker CLI: команды podman run, podman build, podman pull и даже alias docker=podman - работают почти идентично.
- Интеграция с systemd: можно легко генерировать systemd-юниты из контейнеров (podman generate systemd).


▪️ Пример использования


# Установка на Ubuntu
sudo apt install podman

# Запуск контейнера nginx
podman run -d -p 8080:80 nginx

# Список контейнеров
podman ps

# Просмотр логов
podman logs <container-id>

# Остановка и удаление
podman stop <id> && podman rm <id>


▪️ А что с Pod?

В отличие от Docker, Podman реализует концепцию Pods (как в Kubernetes), где можно запускать сразу несколько контейнеров с общей сетью и IPC. Это отличный способ протестировать Kubernetes-архитектуру локально без сложных инструментов.


podman pod create --name mypod -p 8080:80
podman run -dt --pod=mypod nginx


Когда Podman - лучший выбор?

- Вам нужен rootless контейнерный запуск для большей безопасности.
- Вы хотите обойтись без демона и уменьшить нагрузку на систему.
- Вы планируете использовать systemd для управления контейнерами.
- Вы работаете в серверной среде, где минимализм важнее.


#podman

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🤔2🔥1
Когда пришел просить отпуск

#юмор

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
13😁5👍4
🌀 Решение для зависшей виртуальной машины в ESXi

Иногда в работе с VMWare ESXi можно столкнуться с ситуацией, когда виртуальная машина зависает и не реагирует ни на выключение, ни на перезагрузку через vSphere Web Client. Но это все ещё не повод перезагружать весь хост целиком

💜 Решение: остановка зависшей ВМ через консоль ESXi

1️⃣ Подключаемся к ESXi через SSH или открываем локальную консоль.

2️⃣ Смотрим список всех активных ВМ:


esxcli vm process list


3️⃣ Находим зависшую машину по имени и запоминаем её WorldID.

4️⃣ Пробуем завершить ВМ мягко (предпочтительный способ):


esxcli vm process kill --type=soft -w 12345678


Если не помогает, можно применить более жёсткие методы:

--type=hard - принудительное завершение, аналог kill -9
--type=force - экстренное завершение, применяется в крайнем случае

▪️ Альтернатива: esxtop

Можно использовать и утилиту esxtop:


esxtop


Нажимаем V, чтобы отобразить список процессов виртуальных машин. Ищем нужную ВМ и при необходимости завершаем процесс.

#VMware #ESXi

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍124👎1
⛔️ lsof - больше, чем просто список открытых файлов

Утилиту lsof (list open files) чаще всего используют для просмотра открытых файлов в Linux - и на этом, как правило, всё. Но возможности этой команды куда шире. Давайте разберёмся.

🔎 Основная задача: поиск открытых, но удалённых файлов

Это частый кейс: удалили лог-файл (/var/log/nginx/access.log), не перезапустили сервис - и место продолжает быть занятым.


lsof | grep '(deleted)'
# или так, короче:
lsof +L1


💎 Полезные команды по категориям

📍 Открытые файлы в каталоге:


lsof +D /var/log


📍 Открытые файлы от пользователя:


lsof -u user
# Посчитать, сколько файлов открыто:
lsof -u user | wc -l
# Исключить пользователя:
lsof -u^user | wc -l


📍 Завершить все процессы пользователя, открывшие файлы:


kill -9 $(lsof -t -u user)


📍 Файлы, открытые конкретным PID:


lsof -p 12345


💩 Сетевой режим - неочевидный, но мощный

📍 Список всех сетевых соединений (TCP и UDP):


lsof -ni


📍 Кто слушает порт 80:


lsof -ni TCP:80


📍 TCP соединения к конкретному IP:


lsof -ni TCP@192.168.1.10


📍 Сетевые соединения конкретного пользователя:


lsof -ai -u nginx


📍 UDP соединения:


lsof -iUDP


lsof - это инструмент не только для отладки “куда делось место”, но и для быстрого анализа сетевых соединений, отлова "висячих" файлов и поиска активных пользователей.

#linux #lsof

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍163
Откуда Windows «знает», что файл из интернета?

Когда вы скачиваете файл из браузера, а потом открываете его свойства, Windows может предупредить: «Файл получен с другого компьютера и может быть небезопасным». Это происходит не случайно.

Как Windows узнаёт источник?

Файл, скачанный на NTFS-диск, получает специальную метку в альтернативном потоке данных (Alternate Data Stream, ADS) с именем Zone.Identifier. Эта метка добавляется браузером автоматически и никак не зависит от расширения — она будет даже у mp3, .txt или .jpg.


▪️ Посмотреть содержимое метки:


Get-Content -Path ".\hard_rock.mp3" -Stream Zone.Identifier


Или в Блокноте:


notepad.exe hard_rock.mp3:Zone.Identifier


▪️ Пример содержимого:


[ZoneTransfer]
ZoneId=3
ReferrerUrl=https://ya.ru
HostUrl=https://ya.ru/file.mp3


🌟 Что значит ZoneId:

0 - Мой компьютер
1 - Локальная интрасеть
2 - Доверенные сайты
3 - Интернет (по умолчанию для всего, что скачано)
4 - Ограниченные сайты


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

▪️ Как убрать предупреждение:

1. Через свойства файла → Разблокировать

2. Через PowerShell:


Unblock-File .\hard_rock.mp3


#windows #security

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25🔥7🤔31
Ты это, заходи если что

#юмор

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
😁31🔥3