Системный Администратор (Сисадмин)
14K subscribers
1.8K photos
1.68K videos
87 files
1.87K links
Настройка серверов Windows, Linux, сетевое оборудование Cisco Systems, D-Link, HP, Huawei, Juniper, MikroTik. Книги и мануалы для сисадминов.
По всем вопросам @evgenycarter

РКН clck.ru/3KoGJ3
Download Telegram
Powershell суточный отчет по пользователям из ActiveDirectory

Раз в сутки (через планировщик задач) скрипт опрашивает ActiveDirectory на предмет:
Всего пользователей
Сколько активных
Сколько служебных
Сколько заблокированных
Сколько новых


$Date = Get-Date -Format "dd MMMM yyyy HH:mm"
$AllUsers = (Get-AdUser -Filter * | ?{$_.name -notmatch 'Healthmailbox'}).count
$ActiveUsers = (Get-ADUser -Filter {Enabled -eq $true} | ?{$_.name -notmatch 'Healthmailbox'}).count
$DisabledUsers = (Get-ADUser -Filter {Enabled -eq $false} | ?{$_.name -notmatch 'Healthmailbox'}).count

$StartDate = (Get-Date).AddDays(-1)
$EndDate = (Get-Date).AddDays(+1)
$Zapros = Get-ADUser -Filter * -Properties Created | Where-Object {$_.Created -gt $StartDate -and $_.Created -le $EndDate}
$NewUsers = ($Zapros).count
$OFS = "`r`n" #`r`n`r`n
"$($WhoUsers = $Zapros | foreach {$_.Name })"

$NotSurname = Get-ADUser -filter "Enabled -eq '$true' -and Surname -notlike '*' -and Name -ne 'Healthmailbox'"
$NotFIO = ($NotSurname).count

$Message = "На $Date в ActiveDirectory всего пользователей $AllUsers из них: `nАктивных: $ActiveUsers из них служебные: $NotFIO. `nЗаблокированных: $DisabledUsers. `nНовых пользователей: $NewUsers `r`n`r`n$WhoUsers"
$Message | Out-File -FilePath "C:\temp\$(Get-Date -Format "dd MMMM yyyy")-UsersAD.txt"


После выполнения получаем файлик с текущей датой в папке temp.

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82
Мигрируем на VMmanager за счет вендора

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

Так вот, ребята из ISPsystem, кажется, предложили элегантное решение. Их акция «Мигрируем VMeste» — это готовый пакет "миграция без боли": безопасный переезд с российской платформы виртуализации на VMmanager (Лучший продукт серверной виртуализации по версии CNews Awards)

Они снимают ключевые барьеры:

● Финансовый: Лицензия VMmanager на 12 месяцев по стоимости техподдержки.
● Технический: Полное сопровождение процесса их экспертами.
● Операционный: В подарок дают BILLmanager Enterprise, чтобы не пришлось перестраивать все процессы управления с нуля.

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

Акция временная (регистрация до конца 2025 года), так что если тема актуальна — советую изучить.

Подробности по ссылке: https://clck.ru/3QPJnP&erid=2W5zFHzDkVn

Реклама. АО «Экзософт»
🤮2👍1
Делаем PowerShell более удобным: настройка PsReadLine

Часто ли Вам приходится в сотый раз нажимать стрелку вверх в PowerShell для поиска нужной команды? Или, может быть, не замечать случайные опечатки в длинном пути? Сегодня мы превратим стандартную консоль в удобный инструмент с автодополнением и поиском по истории с помощью модуля PsReadLine, а главное - добавим нормальные функции Copy/Paste. Я поделюсь с Вами готовым конфигом, который сделает ежедневную работу в консоли быстрее и приятнее.

https://habr.com/ru/articles/964840/

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
👋 Привет, админы!

Куда уходит свободное место на диске? Думаешь, что всё под контролем, а потом бац - и диск C: в красной зоне. Особенно часто такое встречал на серверах с включённым журналированием или забытым логированием.

📌 Накидал скрипт, который помогает быстро найти топ папок и файлов, пожирающих пространство:


$path = "C:\"
Get-ChildItem -Path $path -Recurse -ErrorAction SilentlyContinue |
Where-Object { -not $_.PSIsContainer } |
Sort-Object Length -Descending |
Select-Object FullName, @{Name="SizeMB";Expression={[math]::round($_.Length / 1MB, 2)}} -First 20


Что бы посмотреть топ папок, используй du из Sysinternals:


.\du.exe -q -l 1 C:\


(если не знаешь - du.exe можно взять отсюда)

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

👉 @win_sysadmin
👍9👏1
Идёте на Kuber Conf by AOT 4 декабря?

Первая некоммерческая K8s-конференция в Москве — отличный повод встретиться и лично поговорить с топовыми инженерами и архитекторами.

Конференция проходит под эгидой Ассоциации облачно-ориентированных технологий (АОТ), которую создают Флант, VK Cloud и Yandex Cloud.

В программе реальные кейсы от команд Авито, Т-Банка, Vitastor, Beget, VK Cloud, Yandex Cloud и Selectel, а среди докладов:

• Изменения в Cluster API без пересоздания машин;
• Как строили платформу деплоя в Т-Банке;
• Практический deep-dive в CNI chaining;
• Безопасный Gatekeeper в архитектуре k8s-in-k8s;
• Поддержка Kubernetes в Vitastor;
• Karpenter-провайдер своими руками — что внутри.

Для подписчиков канала действует промокод: KUBERCONF20

Программа и билеты

Реклама Садовская.Е.О
ИНН:9710066394 Erid:2Vtzqx4x3G5
👍1👎1
Media is too big
VIEW IN TELEGRAM
Прохождение IP пакета между сетями

Подробно описан процесс прохождения пакета между сетями, его структура и объяснено назначение основных полей Ip заголовка. Указаны изменяемые и неизменяемые в процессе пересылки части пакета. Описан процесс фрагментации и дефрагментации пакета.

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥2
badblocks — команда для поиска и исправления поврежденных секторов на жестких дисках

Команда badblocks предназначена для поиска и исправления поврежденных секторов на жестких дисках. На сегодняшний день она в некоторой степени утратила свою актуальность из-за того, что современные жесткие диски осуществляют переназначение поврежденных секторов в автоматическом режиме сразу же после возникновения ошибок, связанных с чтением или записью данных. Тем не менее, она может использоваться для активации упомянутого механизма переназначения секторов, так как при работе в основном режиме она осуществляет посектороное чтение данных с жесткого диска, которое позволяет жесткому диску выявить и переназначить поврежденные сектора.

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

Перед использованием badblocks необходимо определиться с жестким диском или его разделом, на котором нужно искать поврежденные сектора. Для этого может использоваться команда lsblk:

# lsblk -o NAME,FSTYPE,LABEL,MOUNTPOINT,MODEL
NAME FSTYPE LABEL MOUNTPOINT MODEL
...


В данном случае в столбце NAME будут выводиться имена файлов устройств накопителей и их разделов (для обозначения разделов используется дополнительная нумерация), в столбце FSTYPE - названия созданных в разделах файловых систем, в столбце LABEL - метки разделов, в столбце MOUNTPOINT - пути к точкам монтирования файловых систем, а в столбце MODEL - информация о моделях устройств.

Базовый синтаксис команды:

# badblocks -v /dev/<имя файла раздела или устройства>

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

Если вам по какой-либо причине понадобится запретить использование поврежденных секторов на уровне файловой системы вы всегда можете сохранить список этих секторов и передать его утилите e2fsck. Это делается следующим образом:

# badblocks -v /dev/<имя файла раздела или устройства> > /tmp/badblocks.txt
# e2fsck -l /tmp/bad-blocks.txt /dev/<имя файла раздела или устройства>
# rm /tmp/badblocks.txt


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

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

# lsblk -o NAME,FSTYPE,LABEL,MOUNTPOINT,MODEL
NAME FSTYPE LABEL MOUNTPOINT MODEL
sdb MAXTOR STM316081
├─sdb4 ext4 home /home
├─sdb2 ext4 Debian
└─sdb1 swap
...


Выберем раздел с корневой файловой сситемой дистрибутива Debian (с соотвествующей меткой), который в данный момент не смонтирован. Ему соответствует файл устройства sdb2.

2. Проверка выбранного раздела на наличие поврежденных секторов
# badblocks -v /dev/sdb2
Checking blocks 0 to 12697599
Checking for bad blocks (read-only test): done

Pass completed, 0 bad blocks found. (0/0/0 errors)


Очевидно, что в ходе проверки раздела поврежденных секторов не было обнаружено.

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81👏1
🎥 Вебинар по Linux: Введение в Docker: контейнеры, изоляция и первые шаги.

На вебинаре вы узнаете:
- Чем контейнеризация отличается от виртуализации и почему Docker стал стандартом.
- Как устроены контейнер, образ и Docker Engine.
- Как запустить и управлять контейнерами с помощью базовых команд docker run, ps, exec, stop).
- Как использовать Docker Hub и скачивать готовые образы.

В результате вебинара вы:
- Разберётесь в ключевых понятиях Docker.
- Научитесь запускать и управлять контейнерами.
- Сможете использовать готовые образы для своих тестовых окружений.
- Поймёте, куда двигаться дальше в изучении контейнерных технологий.

🎁 Все участники вебинара получат специальные условия на полное обучение курса "Administrator Linux. Professional"

👉 Для участия зарегистрируйтесь: https://vk.cc/cRv7pU

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Media is too big
VIEW IN TELEGRAM
Создание SSH ключа, настройка SSH-сервера, клиента, проброс портов

⏱️ Таймкоды:
0:00 Вступление
0:28 Теория про SSH
1:32 Создание ключей
3:48 Подключение
4:43 Добавление ключа
9:42 Настройка сервера
12:19 Настройка клиента
14:00 Проброс порта

источник

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
Media is too big
VIEW IN TELEGRAM
ТРАБЛШУТИНГ LINUX // Основные команды, примеры

⏱️ Таймкоды:
0:00 Вступление
0:08 Мониторинг
0:43 Место на дисках
2:39 Состояние дисков
5:15 Нагрузка на диски
5:55 Процессор
8:17 Оперативная память
9:17 Процессы
10:46 Сеть
17:30 Логи

источник

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17
DLL hijacking остаётся одной из самых недооценённых техник атаки в Windows. Для злоумышленника это возможность исполнить свой код под видом легитимного приложения, получить доступ к данным и эскалировать привилегии.

Для специалистов по ИБ это риск, который многие замечают слишком поздно. Именно поэтому мы проводим открытый урок в преддверие старта курса «Пентест. Инструменты и методы проникновения в действии».

3 декабря в 20:00 МСК мы разберём, как Windows ищет DLL, почему этот механизм становится вектором атаки и какие ошибки разработчиков и администраторов открывают путь для подмены библиотек. Покажем реальные кейсы, работу техники вживую и способы защиты: от явных путей загрузки до цифровых подписей и Safe DLL Search Mode.

После урока вы сможете оценивать собственные системы и приложения на уязвимость к DLL hijacking и понимать, где именно возникают риски. Формат подойдёт специалистам по ИБ, SOC-аналитикам и администраторам, которым важно укрепить контроль над средой Windows.

Зарегистрируйтесь и получите чёткую, практическую инструкцию по защите: https://vk.cc/cREiwU

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
GoAccess - это реал тайм анализатор веб логов и интерактивная программа просмотра с открытым исходным кодом, который запускается в терминале в системах * nix или через ваш браузер.

Demo
https://rt.goaccess.io/?20210208192039

Github
https://github.com/allinurl/goaccess

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
📈Picosnitch - мониторинг сетевого трафика на каждый исполняемый файл с помощью BPF

Получение уведомлений при подключении к сети новой программы или при ее изменении

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

При желании можно проверить хэши или исполняемые файлы с помощью VirusTotal

Хеши исполняемых файлов кэшируются на основе устройства + inode для повышения производительности и работают с приложениями, запущенными в контейнерах

Используется BPF для точного мониторинга пропускной способности с низкими накладными расходами и fanotify для контроля исполняемых файлов на предмет модификации

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

Прагматичный и минималистичный дизайн, сфокусированный на точном обнаружении с четким сообщением об ошибке, когда это невозможно

https://github.com/elesiuta/picosnitch

https://elesiuta.github.io/picosnitch/

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍3
📕Интеграция Clickhouse и dbt
Вебинар для: Data-инженеров, архитекторов и аналитиков, администраторам баз данных и DevOps-инженеров, разработчиков высоконагруженных приложений

На открытом уроке 26 ноября в 20:00 мск мы рассмотрим все тонкости интеграции Clickhouse и dbt:

📗 На вебинаре разберемся как:
1. Разворачивать dbt-проект и настраивать минимальную конфигурацию под ClickHouse.
2. Выбирать и применять материализации под задачу.

📘 В результате на практике изучите и освоите работу с Jinja, написание небольших макросов, добавление тестов, генерирацию документации и её использование.

👉 Регистрация на урок и подробности о курсе ClickHouse для инженеров и архитекторов БД: https://vk.cc/cRGVzG

Все участники открытого урока получат скидку на курс "ClickHouse для инженеров и архитекторов БД"

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Трюки терминала Bash

Полезные комбинации клавиш (хоткеи) и небольшие хитрости, которые сделают Вашу работу в Linux более эффективной.

Горячие клавиши" Bash с Ctrl
Ctrl + n — то же самое, что и стрелка вниз.
Ctrl + p — то же самое, что и стрелка вверх.
Ctrl + r — поиск по предыдущим командам из истории команд (history). Продолжайте нажимать Ctrl + r, чтобы искать дальше. Ctrl + Shift + r — поиск в другую сторону.
Ctrl + s — остановить вывод в терминал.
Ctrl + q — восстановить вывод в терминал после Ctrl + s.
Ctrl + a — перейти к началу строки (аналог клавиши Home).
Ctrl + e — перейти к концу строки (аналог клавиши End).
Ctrl + d — если вы ввели что-то, то Ctrl + d удаляет символ под курсором. В противном случае означает конец ввода и завершает текущую сессию Bash.
Ctrl + k — удалить весь текст от курсора до конца строки.
Ctrl + x + backspace — удалить весь текст от начала строки до курсора.
Ctrl + t — переставить символ до курсора на символ под курсором. Нажмите Esc + t для перестановки двух слов до курсора.
Ctrl + w — удалить слово до курсора; затем Ctrl + y, чтобы вставить его.
Ctrl + u — удалить строку перед курсором; Ctrl + y для вставки его.
Ctrl + _ — отменить ввод.
Ctrl + l — очищает окно терминала. То же самое, что и clear.
Ctrl + x + Ctrl + e — запускает редактор, определённый в переменной $EDITOR, для ввода команды. Полезно для многострочных команд.

Изменить заглавные на строчные и наоборот
Esc + u — преобразовать буквы от курсора до конца строки в заглавные буквы.
Esc + l — преобразовать буквы от курсора до конца строки в нижний регистр.
Esc + c — заменить букву под курсором на заглавную.

Запустить предыдущую команду ещё раз
Запустить команду из истории по номеру (например, 53)
!53
!! — запуск последней команды.
sudo !! — запустить предыдущую команду с sudo.

Запускает последнюю команду и меняет какой-то параметр. Например, меняем "aaa" на "bbb":
# Последняя команда: echo 'aaa'
$ ^aaa^bbb

$ echo 'bbb'
bbb


Важно: предыдущая команда заменит только первое вхождение "aaa". Если вы хотите заменить все вхождения, используйте :&:
^aaa^bbb^:&
# или
!!:gs/aaa/bbb/


Запустить последнюю команду, которая начинается с...
Например, до этого в истории команд была команда cat filename:
!cat
# или
!c


— запускает cat filename ещё раз.

Указание файлов по шаблону в Bash
/etc/pa*wd/etc/passwd — символ * означает "несколько любых символов".
/b?n/?at/bin/cat — символ ? означает "один любой символ".
ls -l [a-z]* — вывести список файлов, содержащих только буквы латинского алфавита. В квадратных скобках [] перечисляются символы, которые будут искаться. А символ * после [] означает "хоть сколько раз".
ls {*.sh,*.py} — вывести все .sh и .py файлы. {} используется для группировки нескольких шаблонов по принципу "или".

Полезные переменные окружения Bash
Короткие переменные:
$0 — оболочка командной строки или путь до запускаемого файла.
$1, $2, $3, ... — аргументы запуска скрипта.
$# — число аргументов, переданных в скрипт из терминала.
$? — код завершения последней команды.
$- — текущие опции, установленные для оболочки.
$$ — идентификатор текущего процесса.
$! — идентификатор процесса, завершённого последним.

Более длинные, но тоже полезные переменные:
$DESKTOP_SESSION — текущий менеджер дисплеев.
$EDITOR — редактор текста по умолчанию.
$LANG — используемый системой язык.
$PATH — список директорий, в которых будут искаться исполняемые файлы.
$PWD — текущая директория.
$SHELL — текущая оболочка командной строки.
$USER — имя текущего пользователя.
$HOSTNAME — имя текущего хоста (компьютера).

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍4
SPRINT OFFER в YADRO: Network Engineer in Test!

3 дня — и вы среди инженеров, которые обеспечивают надёжность сетевых систем YADRO 🚀

Мы расширяем команду KORNFELD, которая отвечает за качество и стабильность сетевого оборудования YADRO. Именно здесь инженеры анализируют архитектуру, пишут тестовые сценарии, моделируют сбои и доводят продукт до идеала.

Специалисты работают с самыми глубокими слоями сетевой инфраструктуры — от L2/L3 до сложных связок протоколов и сценариев отказоустойчивости.

⚙️ Как проходит SPRINT OFFER:
1️⃣ Подайте заявку до 30 ноября, пройдите HR-скрининг и технический скрининг.
2️⃣ Пройдите техническое и менеджерское интервью.
3️⃣ Получите оффер в течение 3 дней.

📍 Чем предстоит заниматься:
• Анализировать продуктовые требования и составлять use cases.
• Проводить функциональные, E2E- и failover-тесты.
• Разрабатывать тест-кейсы и тест-планы для нового и уже существующего функционала.
• Участвовать в интеграционных испытаниях, взаимодействовать с разработкой и L3-командами.

📀 У нас:
• Удалённая работа (РФ/РБ) или офис в городах присутствия — Москве, Санкт-Петербурге, Нижнем Новгороде, Екатеринбурге, Минске.
• Амбициозные проекты в уникальной команде инженеров.
• Вертикальный и горизонтальный карьерный рост.
• ДМС с первого дня, поддержка спортивных инициатив сотрудников и другие бенефиты.

💙 YADRO — место, где ценят инженерную экспертизу и предоставляют возможности для эксперимента и инициативы. Оставляйте заявку до 30 ноября и присоединяйтесь к команде KORNFELD!
Please open Telegram to view this post
VIEW IN TELEGRAM
🦄2
This media is not supported in your browser
VIEW IN TELEGRAM
Yoink.vim

Плагин Vim, который поддерживает историю yank для переключения между ними при вставке.

https://github.com/svermeulen/vim-yoink

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Анализ сетевого трафика и устранение неполадок

1.Обзор
2.Три направления
3.Tcpdump
4.Кадр, пакет, сегмент
5.Основы перехвата трафика
6. Обнаружение сети
7.Основы фильтрации
8.Основы TCP
9.RTT и размер окна
10.Проблемы

источник

📲 Мы в MAX

👉 @sysadminof
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥64