NetworkAdmin.ru
رفتن به کانال در Telegram
Авторский блог про сетевое и системное администрирование. Сайт: networkadmin.ru Реклама: @dad_admin Биржа: https://telega.in/c/networkadminru
نمایش بیشتر4 725
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-57 روز
اطلاعاتی وجود ندارد30 روز
آرشیو پست ها
4 725
⚡️ Что такое IPv6 SLAAC и как его контролировать
SLAAC (Stateless Address Autoconfiguration) - это механизм в IPv6, который позволяет устройствам самостоятельно получить IP-адрес, без участия DHCP-сервера. Удобно? Безусловно. Но у такого "автомата" есть и свои нюансы, особенно в корпоративных сетях.
▪️ Как работает SLAAC?
Когда устройство подключается к сети, оно:
📍 Получает префикс IPv6-сети через Router Advertisement (RA) от ближайшего маршрутизатора.
📍 На основе этого префикса и своего MAC-адреса (или сгенерированного идентификатора) формирует глобальный IPv6-адрес.
📍 Проверяет уникальность адреса через DAD (Duplicate Address Detection).
И готово - устройство уже в сети, без DHCP.
▪️ Почему это может быть проблемой?
📍 Обход контроля доступа. Даже если DHCP отключен, клиент все равно получит адрес и выйдет в интернет - достаточно RA от маршрутизатора.
📍 Трудности в управлении. SLAAC не позволяет "жестко" задавать DNS-серверы, lease time и прочие параметры, как это делает DHCPv6.
📍 Угрозы безопасности. Злоумышленник может раздавать фальшивые RA-пакеты и перенаправлять трафик на себя (RA spoofing).
▪️ Как контролировать SLAAC в сети?
📍 Отключить SLAAC на маршрутизаторе: На большинстве устройств (Cisco, Mikrotik, Linux) можно отключить RA или настроить флаг Managed в RA, чтобы устройства использовали DHCPv6 вместо SLAAC.
📍 Фильтрация RA-пакетов: Используйте RA Guard на уровнях доступа (поддерживается на управляемых коммутаторах), чтобы блокировать нежелательные RA от клиентов.
📍 Использовать DHCPv6: Более предсказуемый способ выдачи адресов и настройки DNS, с возможностью централизованного логирования.
📍 NDP мониторинг: Ведите учет устройств, использующих SLAAC, с помощью инструментов вроде ndpmon, scapy или Wireshark.
#IPv6 #SLAAC
🧑💻 NetworkAdmin
4 725
Если вы работаете в айти и не хотите вылететь с рынка через 3-4 года, развивайте софт-скиллы.
Тимлиду не нужно уметь писать код – с этим лучше справляется его команда и даже нейронки, а вот грамотно менеджерить команду и выстраивать процессы – реально важный навык.
Прокачивайте не только хард-скиллы, но и «гибкие» навыки — это то, что останется востребованным даже в эпоху ИИ. А если с головой нырять в обучение лень, читайте канал Тимлид на удалёнке.
Там вся внутрянка от первого лица: как справляться с выгоранием, не терять фокус в условиях многозадачности и развить управленческие качества. С юмором, честно и без занудства.
Почитайте на досуге, много нового узнаете: @teamleadonline
4 725
🔒 SELinux: как работает и стоит ли его включать
Security-Enhanced Linux (SELinux) - это механизм управления доступом на уровне ядра, разработанный NSA и Red Hat. Он добавляет ещё один уровень защиты поверх традиционной модели прав доступа в Linux и дает системе возможность жестко контролировать, кто и что может делать в ОС, даже если у процесса уже есть root-доступ.
SELinux реализует модель Mandatory Access Control (MAC) - обязательного управления доступом. В отличие от Discretionary Access Control (DAC), где владелец объекта определяет права, MAC применяет централизованные политики, которым обязаны следовать все процессы и пользователи.
Каждому процессу и файлу присваивается контекст безопасности. Контекст включает в себя:
📍 тип объекта (например, httpd_sys_content_t)
📍 роль и домен процесса (например, httpd_t)
SELinux определяет, может ли процесс с данным контекстом взаимодействовать с файлом по текущей политике. Если нет - доступ будет заблокирован, даже если пользователь - root.
▪️ Режимы работы SELinux:
Enforcing - политика активна, запрещенные действия блокируются Permissive - действия не блокируются, но журналируются Disabled - SELinux отключенПроверить режим можно так:
getenforce
Или через:
sestatus
▪️ Когда стоит включать SELinux?
🟩 SELinux особенно полезен на серверах с публичным доступом - веб-серверы, почтовики, базы данных. Он помогает изолировать процессы, минимизировать последствия уязвимостей и сдерживать вредоносные действия.
🔲 Но SELinux имеет крутую кривую обучения. Он может мешать "работать как привыкли", если не понимать, как он устроен. Ошибки конфигурации могут блокировать нужные процессы, а диагностика требует навыков чтения журналов (/var/log/audit/audit.log).
🌟 Совет: На старте используйте Permissive режим, чтобы изучить логи и не получить «белый экран» от nginx. Постепенно можно перейти в Enforcing, когда все отлажено.
Если безопасность - ваш приоритет, SELinux однозначно стоит включать. Но как и с любым инструментом, важно сначала его понять.
#SELinux #security
🧑💻 NetworkAdmin4 725
⛓️В условиях постоянных кибератак и угроз безопасности, ваши навыки защиты данных становятся ключевыми. Курс «Внедрение и работа в DevSecOps» от OTUS — это шаг к мастерству в интеграции безопасности в процесс разработки.
Вы научитесь:
- Интегрировать безопасность на всех этапах разработки.
- Использовать инструменты для защиты кода, API, и микросервисных приложений.
- Применять методы тестирования на проникновение и мониторинга безопасности.
Программа обновляется с учетом актуальных угроз. Преподаватели — практикующие эксперты в области информационной безопасности. Диплом OTUS ценится в ведущих компаниях.
🔥Пройдите короткое вступительное тестирование и узнайте свой уровень знаний по DevSecOps: https://otus.pw/UKma/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
4 725
❓ Что такое Unix-сокеты в Linux и зачем они нужны
В Linux, как и в классическом Unix, существует особый тип межпроцессного взаимодействия - Unix Domain Sockets (UDS). Многие админы сталкиваются с ними при настройке сервисов вроде php-fpm, MySQL, PostgreSQL, nginx, не всегда понимая, зачем выбирать между TCP и сокетом.
🌟 Сокет - это специальный тип файла, который создаётся в файловой системе и служит точкой подключения для процессов. Выглядит как обычный файл, но данные через него не записываются на диск, а обрабатываются напрямую в оперативной памяти ядром Linux.
▪️ Пример пути к сокету:
/run/mysqld/mysqld.sock
Основное отличие от TCP: не используется сетевой стек, что делает работу чуть быстрее (в теории), особенно при высоких нагрузках.
▪️ Когда использовать Unix-сокеты?
📍 Доступ к сервису нужен только локально. 📍 Нет необходимости открывать порт и рисковать безопасностью. 📍 Можно ограничить доступ к сокету правами на файл.На обычном сервере с веб-сайтами разницы между 127.0.0.1:3306 и mysqld.sock вы, скорее всего, не заметите. Но с точки зрения безопасности и практики - предпочтительно использовать сокеты. ▪️ Как проверить работу сокета? Через netcat:
nc -U /run/mysqld/mysqld.sock
Аналогичный запрос по TCP:
telnet 127.0.0.1 3306
Результат будет одинаковый, только путь разный.
🌟 Unix-сокеты - это быстрый, безопасный и удобный способ локального взаимодействия между сервисами. Если ваш сервис поддерживает их — используйте. Особенно когда нет нужды слушать внешний интерфейс.
#linux #unixsocket
🧑💻 NetworkAdmin4 725
Привет, я Коваль!
Начал погружаться в ИИ еще в 2020 — ChatGPT тогда только зарождался
Пишу просто, по делу, без воды и инфоцыганских кругов ада
📌 Будет полезно всем — от школьника до программиста
Почему важно подписаться:
• Задавайте вопросы - отвечу КАЖДОМУ в ЛС
• Помогу с задачей ЛЮБОЙ сложности
• И ВСЁ ЭТО — БЕСПЛАТНО
🔋Подписывайся: Коваль про ИИ
4 725
🖥 Анализ сети в Linux: ethtool, iperf и nload
Когда возникает подозрение на проблемы с сетью - падение скорости, потери пакетов или просто "тормозит" - важно уметь быстро локализовать причину. В Linux есть три утилиты, которые закрывают основные потребности в диагностике: ethtool, iperf3 и nload.
▪️ ethtool - работа с сетевыми интерфейсами. Это низкоуровневая утилита, с помощью которой можно узнать:
Скорость подключения и режим дуплекса:
ethtool eth0
Есть ли сбои на интерфейсе:
ethtool -S eth0 | grep -E 'err|drop'
Настроить автосогласование, отключить Wake-on-LAN, изменить параметры offload'инга.
Удобно для диагностики "битых" линков и проблем с драйверами.
▪️ iperf3 - тестирование пропускной способности. Утилита для бенчмарков канала в режиме клиент-сервер:
На одном узле запускаем сервер:
iperf3 -s
На втором - клиент:
iperf3 -c 192.168.1.1
Показывает скорость, потери, джиттер. Можно использовать TCP и UDP, настраивать количество потоков и длительность теста.
Пример теста в 5 потоков:
iperf3 -c 192.168.1.1 -P 5
Хорошо подходит для поиска узких мест между хостами.
▪️ nload - визуальный мониторинг сетевой активности. Простой и наглядный инструмент в консоли:
nload eth0
Выведет в реальном времени график входящего и исходящего трафика. Можно переключаться между интерфейсами, видеть пики, общую статистику и скорость.
Особенно удобен, когда нужно на лету оценить нагрузку и понять, кто грузит канал.
▪️ Резюме:
ethtool - диагностика интерфейса;
iperf3 - замер скорости и качества канала;
nload - визуальный мониторинг трафика
#linux #network
🧑💻 NetworkAdmin4 725
🌐 Как работает NAT и чем отличаются SNAT, DNAT и MASQUERADE
NAT (Network Address Translation) - это технология трансляции сетевых адресов, которая позволяет устройствам локальной сети выходить в Интернет через один общий внешний IP. Она лежит в основе почти каждого домашнего роутера и многих корпоративных решений. Но под капотом у NAT есть разные виды — разберёмся, в чём их суть и где применять.
❓ Что делает NAT?
NAT подменяет исходные или целевые IP-адреса (и порты) в IP-пакетах. Это позволяет: 📍 Скрывать внутреннюю адресацию; 📍 Пробрасывать доступ к локальным сервисам извне; 📍 Повышать безопасность, не раскрывая реальную структуру сети▪️ SNAT (Source NAT). Изменяет исходный IP-адрес пакета, обычно при выходе из локальной сети в Интернет. Пример:
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 203.0.113.5
Используется, когда у сервера постоянный внешний IP.
▪️ MASQUERADE. Вариант SNAT для динамического IP-адреса (например, от провайдера через PPPoE). Автоматически подставляет текущий внешний IP:
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
Отличный выбор для нестабильного внешнего интерфейса.
▪️ DNAT (Destination NAT). Меняет целевой IP-адрес. Применяется для проброса портов — когда нужно, чтобы запросы снаружи попадали на внутренние машины:
iptables -t nat -A PREROUTING -p tcp --dport 2222 -j DNAT --to-destination 192.168.1.100:22
Удобно для проброса SSH, HTTP, RDP и других сервисов внутрь локальной сети.
▪️ Пример: У вас есть веб-сервер 192.168.1.10 в локалке, а внешний IP — динамический. Тогда для организации доступа из интернета:
📍 Используем MASQUERADE на исходящий трафик;
📍 Применяем DNAT для проброса порта 80 на 192.168.1.10
🌟 Важно помнить:
📍 Все правила NAT создаются в таблице nat;
📍 SNAT и MASQUERADE — в цепочке POSTROUTING;
📍 DNAT - в цепочке PREROUTING
#NAT #iptables
🧑💻 NetworkAdmin4 725
🖥 Как вернуть автоматическое резервное копирование реестра в Windows 10/11
Начиная с версии Windows 10 1809, Microsoft отключила автоматическое создание бэкапов реестра - якобы ради экономии места (всего 100–200 МБ). Но вместе с этой "оптимизацией" пользователи лишились простого способа восстановить систему, заменив повреждённые файлы реестра на рабочие копии из RegBack.
Хотя используется эта функция нечасто, иметь резервную копию всегда лучше, чем её отсутствие.
⚙️ Как включить автоматическое резервное копирование:
Создайте параметр EnablePeriodicBackup в реестре:
reg add "HKLM\System\CurrentControlSet\Control\Session Manager\Configuration Manager" /v EnablePeriodicBackup /t REG_DWORD /d 1 /f
Теперь задание планировщика RegIdleBackup будет выполняться в рамках автоматического обслуживания системы (раз в сутки), и сохранять резервные копии реестра в папку:
%windir%\System32\config\RegBack
⚠️ Важно: если вы хотите вручную проверить, срабатывает ли задание - запустите RegIdleBackup через планировщик заданий или с помощью PowerShell:
Start-ScheduledTask -TaskName "RegIdleBackup"
#windows #registry
🧑💻 NetworkAdmin4 725
📌SysAdmin 2025 — масштабная конференция для системных администраторов
17 октября в Москве пройдет конференция SysAdmin 2025 для системных администраторов, ИТ-менеджеров, инженеров и специалистов поддержки.
Доклады будут посвящены практическим задачам по разным направлениям:
🔹 Управление рабочими местами на Windows, Linux, macOS;
🔹 Решения MDM, UEM, EMM;
🔹 Администрирование Apple;
🔹 Управление ИТ-инфраструктурой и мониторинг;
🔹 Информационная безопасность для системных администраторов;
🔹 Миграция на Linux;
🔹 Организация работы ИТ-отделов и поддержки;
и другое.
Ожидается порядка 700 участников, ИТ-выставка, насыщенная программа, неформальное общение и квиз с призами.
📍 Место: Москва, кластер «Ломоносов»
📅 Дата: 17 октября 2025
⏱️ Формат: офлайн, один день
🎟 Участие: бесплатное, по предварительной регистрации на sysadminconf.ru
Если вы хотите выступить с докладом — заявки принимаются на сайте или по почте speakers@sysadminconf.ru.
#реклама
О рекламодателе
4 725
😀 Диагностика сети: traceroute, mtr, tracetcp и другие утилиты
Инструменты трассировки маршрута и диагностики сети - незаменимая часть работы администратора. Ниже собран краткий обзор утилит для Linux и Windows, которые помогают понять, где тормозит или обрывается соединение.
🐧 Linux
▪️ traceroute - классическая утилита для трассировки. По умолчанию использует UDP, но может работать и с ICMP:
traceroute -I ya.ru
▪️ tracepath - аналог traceroute, также использует UDP, но сразу показывает MTU на каждом хопе:
tracepath ya.ru
▪️ mtr - инструмент, сочетающий в себе ping и traceroute. Поддерживает ICMP, UDP и TCP. В режиме реального времени показывает статистику потерь и задержек на каждом узле:
mtr ya.ru
🏠 Windows
▪️ tracert - стандартная утилита Windows для трассировки по ICMP:
tracert ya.ru
▪️ pathping - гибрид ping и tracert, который дает более подробную статистику. Работает только с ICMP, но часто помогает точнее понять, где теряются пакеты:
pathping ya.ru
▪️ tracetcp - сторонняя утилита для TCP SYN трассировки по конкретному порту:
tracetcp ya.ru:443
Полезна, когда ICMP или UDP заблокированы, а нужно проверить доступность TCP-сервиса. Показывает, где именно по пути блокируется соединение. Ставится отдельно (ищите на сайте разработчика). Аналога на Linux, увы, нет, но было бы очень кстати.
🌟 Выводы:
📍 Используйте mtr и tracetcp, если нужно точечно диагностировать проблемы. 📍 tracepath удобен для анализа MTU. 📍 На Windows pathping даст больше инфы, чем tracert.#network #diagnostic 🧑💻 NetworkAdmin
4 725
👣 Как защищать API-интерфейсы
Три базовых, но эффективных подхода, которые стоит внедрить в любом API:
1️⃣ Rate Limiting - ограничение количества запросов. Ограничивает количество запросов от одного IP, токена или пользователя за определённый интервал времени. Защищает от: DDoS-атак, брутфорса, скрейпинга.
📍 В NGINX:
limit_req_zone $binary_remote_addr zone=api_limit:10m rate=10r/s;
location /api/ {
limit_req zone=api_limit burst=20 nodelay;
}
📍 В Express.js (Node.js):
const rateLimit = require("express-rate-limit");
const limiter = rateLimit({
windowMs: 15 * 60 * 1000,
max: 100
});
app.use("/api/", limiter);
2️⃣ CORS (Cross-Origin Resource Sharing). Механизм безопасности браузера, позволяющий указать, какие домены могут обращаться к API.
📍 Пример настройки CORS в Express.js:
const cors = require('cors');
app.use(cors({
origin: 'https://yourfrontend.com'
}));
Не забудьте запретить * в production - это дырка в безопасности.
3️⃣ Token-Based Access (JWT / OAuth2). Пользователь аутентифицируется, получает токен и использует его для доступа к API. Сервер проверяет подпись токена.
📍 Пример в Express.js:
const jwt = require('jsonwebtoken');
function authenticateToken(req, res, next) {
const token = req.headers['authorization']?.split(' ')[1];
if (!token) return res.sendStatus(401);
jwt.verify(token, process.env.ACCESS_TOKEN_SECRET, (err, user) => {
if (err) return res.sendStatus(403);
req.user = user;
next();
});
}
Итого:
Rate Limiting - спасает от злоупотреблений.
CORS - управляет доступом между доменами.
Token-based доступ - дает безопасность и гибкость.
Правильная комбинация этих механизмов - основа для защиты любого публичного API.
#API #security
🧑💻 NetworkAdmin4 725
🕘 Как продлить срок действия пароля в Active Directory без его смены
Иногда пользователи не могут сменить истекающий пароль - особенно если подключаются к домену через VPN, RDP или веб-интерфейс, где просто нет соответствующих инструментов. Вариант «поставить галку на бессрочный пароль» выглядит заманчиво, но так легко забыть отключить её, и в итоге у пользователя остается пароль без ограничений.
🔎 Что делать?
В AD есть специальный атрибут
pwdLastSet, который хранит дату последней смены пароля. Редактировать его напрямую нельзя, но можно «обновить» его:
# Сначала сбрасываем атрибут
Set-ADUser petrov.pa -Replace @{pwdLastSet=0}
# Затем задаём текущую дату как дату смены пароля
Set-ADUser petrov.pa -Replace @{pwdLastSet=-1}
✅ В результате система считает, что пользователь только что сменил пароль, и срок действия начинается заново. Пользователь продолжает работу, и вы не нарушаете политику безопасности.
#ActiveDirectory #PowerShell
🧑💻 NetworkAdmin4 725
⌛️ Автоматизация обновлений в Linux с помощью unattended-upgrades
Хотите быть уверены, что критические обновления безопасности устанавливаются автоматически? Тогда стоит взглянуть на
unattended-upgrades - инструмент для автоматического применения обновлений в debian/ubuntu системах.
🌟 unattended-upgrades - это пакет, который автоматически скачивает и устанавливает обновления безопасности и другие пакеты по заданным правилам.
⚙️ Установка и настройка
sudo apt update
sudo apt install unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades
При конфигурации утилита предложит включить автообновления - согласитесь. После установки основной конфигурационный файл будет находиться здесь:
/etc/apt/apt.conf.d/50unattended-upgrades
В нём можно указать, какие типы пакетов обновлять (только security, или всё подряд), включить автоудаление ненужных пакетов, настроить отправку уведомлений и пр.
▪️ Пример: обновлять только security-патчи
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
};
▪️ Автозапуск через таймер. В новых системах используется systemd-timer:
systemctl status apt-daily.timer
systemctl status apt-daily-upgrade.timer
Можно изменить расписание, если нужно.
▪️ Логи. Результаты обновлений можно посмотреть тут:
/var/log/unattended-upgrades/unattended-upgrades.log
/var/log/apt/history.log
#linux #update
🧑💻 NetworkAdmin4 725
Лето, скидки, прокачка скиллов
В июле Слёрм устраивает распродажу, от которой тают даже DevOps'ы 💦
-50% на ВСЕ видеокурсы
✅ Старт в любое время
✅ 2 года доступа к материалам
✅ Много практики и заданий
✅ Самопроверка и разбор ошибок
✅ Сертификат при 80% прохождении
Акция до 31 июля.
Промокод: LETO2025
🏖️ Отдыхайте и учитесь в кайф!
Забрать курсы по ссылке.
4 725
❓ Как быстрее всего удалить миллионы файлов в bash
Не все знают, но в линукс удаление большого количества файлов - задача не из простых. Особенно когда речь идет о сотнях тысяч или миллионах объектов в одной директории. Часто встречаешь ошибку
Argument list too long, а даже если команда и запускается, она может висеть часами. Сегодня про то, а какой же способ удаления самый быстрый.
▪️ На тесте будут следующие команды:
rm -r test/
rm -r test/*
find test/ -type f -delete
cd test && ls . | xargs -n 100 rm
rsync -a --delete empty/ test/
Последний способ - rsync с пустой директорией - оказался самым быстрым. Суть: создаёте пустой каталог empty/ и синхронизируете его с целевым test/:
mkdir empty
rsync -a --delete empty/ test/
▪️ Тест 1: 500 000 файлов в одной директории. Скрипт:
mkdir test
count=1
while [ $count -le 10 ]; do
touch test/file$count-{000..50000}
count=$(( count + 1 ))
done
Вывод: rsync уничтожил всё быстрее всех. rm -r test/* вылетает с ошибкой при большом числе файлов.
▪️ Тест 2: Иерархия: 50 000 директорий, по 100 файлов в каждой:
count=1
while [ $count -le 10 ]; do
mkdir -p test/dir$count-{000..500}
touch test/dir$count-{000..500}/file-{000..100}
count=$(( count + 1 ))
done
Вывод: в этом случае почти все методы сработали одинаково. Но если файлов ещё больше - rsync снова выигрывает.
🌟🌟🌟 Осторожно с rsync! Перепутаете местами source и destination - удалите к черту все полезное.
⭐️ Совет: скрипты выше можно использовать и для создания тестовой нагрузки на диск, например, при проверке производительности или мониторинга.
#linux #rsync
🧑💻 NetworkAdmin4 725
🫂 Контроль действий пользователей с помощью auditd
Auditd - это система аудита в Linux, входящая в состав auditd (Audit Daemon), которая позволяет детально отслеживать действия пользователей и системные события: от попыток доступа к файлам до изменений в правах и запусков команд. Она полезна как для соблюдения требований безопасности, так и для расследования инцидентов.
⚙️ Установка и запуск
На большинстве дистрибутивов:
sudo apt install auditd # Debian/Ubuntu
sudo yum install audit # RHEL/CentOS
Проверьте, что служба активна:
sudo systemctl enable --now auditd
▪️ Основные команды
1️⃣ Добавить правило аудита (например, отслеживать доступ к /etc/passwd):
auditctl -w /etc/passwd -p war -k passwd-watch
-w - путь к файлу -p war - права: write, attribute change, read -k - метка (key) для фильтрации в логах2️⃣ Просмотреть правила:
auditctl -l
3️⃣ Удалить правило:
auditctl -W /etc/passwd
4️⃣ Посмотреть события:
ausearch -k passwd-watch
5️⃣ Детальный вывод в человекочитаемом виде:
aureport -f # по файлам
aureport -au # по пользователям
6️⃣ Отслеживание команд пользователя
Добавьте правило для аудита всех выполненных команд:
auditctl -a always,exit -F arch=b64 -S execve -k exec-track
Это даст полную картину того, какие команды запускаются (через ausearch -k exec-track).
Не злоупотребляйте количеством правил - это может замедлить систему и засорить логи. Используйте audit.rules или /etc/audit/rules.d/*.rules для постоянных правил.
#linux #auditd
🧑💻 NetworkAdmin4 725
🏃 Баг с заглавными буквами в PowerShell при кириллической раскладке
Несколько раз сталкивался с неприятной проблемой: при наборе или вставке текста в PowerShell внезапно "пропадают" заглавные буквы. Особенно заметно, если набираете команды в кириллической раскладке - PowerShell просто не реагирует на Shift.
Проблема возникает из-за сбоя в модуле PSReadLine, который отвечает за подсветку, автодополнение, историю команд и другие удобства в CLI.✅ Решение - обновить или переустановить PSReadLine:
# Проверим установленную версию
Get-Module | Where-Object Name -eq "PSReadLine" | Select-Object Name, Path
# Удалим старую версию
Remove-Module PSReadLine
Remove-Item "C:\Program Files\WindowsPowerShell\Modules\PSReadLine\*" -Recurse -Force
# Установим последнюю версию из PSGallery
Install-Module PSReadLine -Force
Модуль будет установлен в актуальной версии, и проблема с заглавными буквами исчезнет. После установки перезапустите PowerShell.
⭐️ Совет: добавьте в profile.ps1 строку Import-Module PSReadLine, если он не загружается автоматически.
#powershell #windows
🧑💻 NetworkAdmin
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
