Для логирования пользовательских сессий, включая команды и действия на сервере, одним из инструментов является
auditd. Он предоставляет детальное логирование и позволяет отслеживать действия пользователей в системе.Установка auditd:
sudo apt update
sudo apt install auditd audispd-plugins
Настройка правил логирования: Правила логирования определяются в файле /etc/audit/audit.rules. Добавим правило для логирования всех команд пользователей:
echo '-a always,exit -F arch=b64 -S execve -k commands' | sudo tee -a /etc/audit/audit.rules
#!/bin/bash
LOG_DIR="/var/log/audit"
DEST_SERVER="user@remote-server:/path/to/logs"
TEMP_DIR="/tmp/audit_logs"
# Создание временной директории
mkdir -p $TEMP_DIR
# Сбор логов по пользователям
ausearch -k commands | while read -r line; do
USER=$(echo "$line" | grep -oP '(?<=uid=)[0-9]+')
TIMESTAMP=$(echo "$line" | grep -oP '(?<=time=)[0-9]+' | head -n 1)
DATE=$(date -d @$TIMESTAMP "+%Y-%m-%d_%H-%M-%S")
USERNAME=$(id -nu $USER)
# Создание файла лога
echo "$line" >> "$TEMP_DIR/${USERNAME}_${DATE}.log"
done
# Перемещение логов на удаленный сервер
scp $TEMP_DIR/* $DEST_SERVER
# Очистка временной директории
rm -rf $TEMP_DIR
Данный скрипт можно добавить в крон на сервере и тогда с установленной периодичностью данные будут автоматически перещаться.
#linux #security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
Чтобы минимизировать риски и усилить защиту сервера, необходимо настроить SSH-соединение с дополнительными мерами безопасности. Сегодня рассмотрим ключевые шаги для улучшения безопасности SSH.
Создание SSH-ключа:
ssh-keygen -t rsa -b 4096
Добавление ключа на сервер:
ssh-copy-id user@server_ip
После успешного добавления ключа, в файле
/etc/ssh/sshd_config измените строку: PasswordAuthentication noДля этого Измените строку в файле
/etc/ssh/sshd_config: Port 2222Используйте
ufw для настройки правил:
sudo ufw allow from 192.168.1.100 to any port 2222
sudo ufw enable
Установите Google Authenticator:
sudo apt install libpam-google-authenticator
Настройте PAM для использования 2FA, добавив строку в /etc/pam.d/sshd: auth required pam_google_authenticator.so
Установите fail2ban:
sudo apt install fail2ban
Настройте его в
/etc/fail2ban/jail.local:
[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
В файле
/etc/ssh/sshd_config измените: PermitRootLogin noКомбинация использования SSH-ключей, изменения порта, ограничения доступа и дополнительных мер, таких как 2FA и fail2ban, делает сервер значительно менее уязвимым к атакам.
#linux #security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🤔3
Интересный трюк для защиты от создания нежелательных файлов. Если вы хотите гарантированно предотвратить создание определенного файла, вы можете сделать вместо него символьную ссылку на
/dev/null.Предположим, вы хотите предотвратить сохранение истории команд MySQL в файле .mysql_history. Для этого создайте символьную ссылку на /dev/null:
ln -s /dev/null $HOME/.mysql_history
Теперь любая попытка записи в файл истории будет перенаправляться в /dev/null, что фактически означает, что данные не сохранятся.
Символьная ссылка на /dev/null гарантирует, что любые данные, которые будут пытаться записаться в указанный файл, сразу же уничтожатся. Это надежный способ избежать случайного или нежелательного сохранения информации.
Другой возможный подход - создать пустой файл с нужным именем и установить права доступа, запрещающие его изменение. Однако, этот метод может привести к неожиданным результатам. Некоторые сервисы могут отказаться работать или создать файл с другим именем рядом.
Использование символьной ссылки на /dev/null является простым и надежным решением, которое помогает избежать этих проблем.
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥1👌1
В некоторых случаях может возникнуть необходимость запретить доступ к определенным сайтам на компьютерах с Windows. Это можно сделать с помощью PowerShell, используя изменения в файле
hosts или настройки брандмауэра Windows. Рассмотрим оба подхода.Файл hosts позволяет перенаправить запросы на определенные домены на локальный IP-адрес (127.0.0.1), effectively блокируя доступ к этим сайтам. Добавление записи в файл hosts:
$hostsPath = "C:\Windows\System32\drivers\etc\hosts"
$sitesToBlock = @(
"127.0.0.1 networkadmin.ru",
"127.0.0.1 www.networkadmin.ru"
)
Add-Content -Path $hostsPath -Value $sitesToBlock
Это перенаправит все запросы к networkadmin.ru на локальный IP-адрес, effectively блокируя доступ.
Брандмауэр Windows позволяет создавать правила, запрещающие доступ к определенным доменам. Создание правила через PowerShell:
New-NetFirewallRule -DisplayName "BlockExample" -Direction Outbound -RemoteAddress networkadmin.ru -Action Block
Эта команда создаст правило, блокирующее исходящие соединения с networkadmin.ru
Просмотр существующих правил:
Get-NetFirewallRule | Where-Object { $_.DisplayName -eq "BlockExample" }
Удаление правила:
Remove-NetFirewallRule -DisplayName "BlockExample"
#network #windows
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22😁3❤1🤡1
Иногда для диагностики или тестирования требуется временно отключить ядра процессора, чтобы проверить, как поведёт себя система при снижении доступных ресурсов. В Linux это можно сделать с помощью утилиты
chcpu, а на Windows - через настройки системы или с помощью PowerShell.
lscpu | grep list
On-line CPU(s) list: 0-3
Это означает, что доступны 4 ядра с номерами от 0 до 3.
chcpu -d 2,3
CPU 2 disabled
CPU 3 disabled
lscpu | grep list
On-line CPU(s) list: 0,1
Off-line CPU(s) list: 2,3
Теперь в системных утилитах, таких как
htop или top, будут видны только активные процессоры. При нагрузочном тестировании производительность заметно снизится, хотя не обязательно пропорционально уменьшенному количеству ядер - всё зависит от используемых приложений.
chcpu -e 2,3
CPU 2 enabled
CPU 3 enabled
bcdedit:
bcdedit /set numproc 2
После выполнения команды необходима перезагрузка и будет использовать только два ядра.
bcdedit /deletevalue numproc
#linux #windows
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18
С помощью
iptables можно настроить эффективную защиту, которая будет блокировать доступ для тех, кто пытается стучаться к закрытым портам. Рассмотрим пример для сервера, где запущен OpenVPN на портах TCP и UDP 34881. Настроим временный бан на 10 минут для любых IP-адресов, обращающихся к закрытым портам.
# Блокируем IP с повторным доступом к закрытым портам
iptables -A INPUT -m recent --rcheck --seconds 600 --name BANPORT -j DROP
# Добавляем IP в список блокировки при доступе к любым портам, кроме 34881
iptables -A INPUT -p tcp -m multiport ! --dports 34881 -m recent --set --name BANPORT -j DROP
# Разрешаем доступ только к порту 34881
iptables -A INPUT -p tcp --syn -m multiport --dports 34881 -j ACCEPT
# Блокируем IP с повторным доступом к закрытым портам
iptables -A INPUT -m recent --rcheck --seconds 600 --name BANPORT -j DROP
# Добавляем IP в список блокировки при доступе к любым портам, кроме 34881
iptables -A INPUT -p udp -m multiport ! --dports 34881 -m recent --set --name BANPORT -j DROP
# Разрешаем доступ только к порту 34881
iptables -A INPUT -p udp -m multiport --dports 34881 -j ACCEPT
Использование модуля multiport позволяет удобно задавать список портов через запятую. Например, если у вас несколько разрешённых портов, вы можете указать их так: --dports 22,80,443.
cat /proc/net/xt_recent/BANPORT
echo -1.1.1.1 > /proc/net/xt_recent/BANPORT
echo > /proc/net/xt_recent/BANPORT
#linux #security
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍10❤3
Media is too big
VIEW IN TELEGRAM
Cимулятор интернет-провайдера
Tower Networking Inc. - это реалистичный симулятор управления сетевой инфраструктурой в многоквартирном жилом комплексе. Вам предстоит прокладывать кабели, настраивать маршрутизаторы, подключать свитчи и патч-панели, тестировать сети и устранять неисправности. Но есть парочка нюансов:
🔴 Доступна только в Steam
🔴 Только для Windows
В общем, если вам хочется ещё больше сетевых проблем - скачивайте и наслаждайтесь "рабочими буднями" даже в свободное время!
И да, ты можешь играть в сисадмина пока работаешь сисадмином!🧠
Играем здесь🖼️
#game
🧑💻 NetworkAdmin
Tower Networking Inc. - это реалистичный симулятор управления сетевой инфраструктурой в многоквартирном жилом комплексе. Вам предстоит прокладывать кабели, настраивать маршрутизаторы, подключать свитчи и патч-панели, тестировать сети и устранять неисправности. Но есть парочка нюансов:
В общем, если вам хочется ещё больше сетевых проблем - скачивайте и наслаждайтесь "рабочими буднями" даже в свободное время!
И да, ты можешь играть в сисадмина пока работаешь сисадмином!
Играем здесь
#game
Please open Telegram to view this post
VIEW IN TELEGRAM
👍29🔥1
По умолчанию в десктопных версиях Windows политика Execution Policy блокирует выполнение PowerShell скриптов, чтобы предотвратить запуск потенциально опасного кода. Для создания безопасной среды администраторы могут подписывать все скрипты с помощью сертификатов.
Шаги для подписания PowerShell скриптов
$file = "C:\Scripts\noscript.ps1"
$cert = Get-ChildItem Cert:\CurrentUser\My | Where-Object { $_.Subject -like "*CodeSigning*" }
Set-AuthenticodeSignature -FilePath $file -Certificate $cert
Убедитесь, что открытый ключ сертификата добавлен в список доверенных корневых сертификатов (Trusted Root CA) или в раздел Trusted Publishers на клиентских устройствах. Для централизованного развертывания можно использовать GPO.
Set-ExecutionPolicy AllSigned -Force
После выполнения всех шагов компьютеры смогут запускать только те скрипты, которые подписаны доверенными сертификатами.
Если содержимое скрипта будет изменено, подпись станет недействительной, и политика заблокирует его запуск.
#windows #security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥3
Netcat (или просто nc) - старая, но невероятно полезная утилита командной строки в Linux. Это универсальный инструмент для работы с сетью, который позволяет устанавливать TCP-соединения, отправлять и принимать UDP-пакеты, сканировать порты, проверять настройки фаервола и даже передавать файлы. Сегодня расскажу про основные возможности
netcat и примеры его использования.
nc -vz 10.10.10.10 139
Connection to 10.10.10.10 139 port [tcp/*] succeeded!
-v - выводит отладочную информацию
-z - активирует режим сканирования без установления соединения
nc -vz 10.10.10.10 1-1023 2>&1 | grep succeeded
Connection to 10.10.10.10 135 port [tcp/*] succeeded!
Connection to 10.10.10.10 139 port [tcp/*] succeeded!
Connection to 10.10.10.10 445 port [tcp/*] succeeded!
Этот способ удобен тем, что он работает без установки дополнительных инструментов, а вывод сразу фильтруется, оставляя только успешные соединения.
nc -zvu 192.168.1.1 53
Connection to 192.168.1.1 53 port [udp/domain] succeeded!
Однако netcat не лучший инструмент для сканирования UDP-портов, так как статус может быть неточным. Для таких задач лучше использовать
nmap, zmap или masscan.
nc -lvp 11222
Ncat: Listening on 0.0.0.0:11222
Теперь с другого сервера можно попробовать подключиться:
nc -v 10.10.10.20 11222
Connection to 10.10.10.20 11222 port [tcp/*] succeeded!
Если соединение установлено, значит, фаервол не блокирует этот порт. Это удобный способ диагностики при настройке сетевых правил.
На сервере (приём файла):
nc -lvp 11222 > received.txt
На клиенте (отправка файла):
nc -v 10.10.10.20 11222 < info.txt
Таким способом можно передавать любые файлы, не только текстовые.
Сервер (приём образа диска):
nc -lvp 11222 > /backup/sda.img.gz
Клиент (отправка образа):
dd if=/dev/sda | gzip -c | nc 10.10.10.20 11222
Однако удобнее использовать SSH:
dd if=/dev/sda | ssh root@10.10.10.20 "dd of=/dev/sda"
while true; do nc -lp 80 < /var/www/html/index.html; done
После этого по IP-адресу сервера будет открываться указанная HTML-страница.
#linux #utils
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22
Если есть необходимость в ограничении скорости сетевого интерфейса или конкретного процесса на локальном сервере, отличным выбором станет open-source инструмент TrafficToll. Это простой в использовании инструмент, написан он на Python и позволяет гибко управлять сетевым трафиком.
apt install python3-pip
pip3 install traffictoll
download: 1mbps
upload: 1mbps
download-minimum: 100kbps
upload-minimum: 100kbps
download и upload: максимальная скорость загрузки и отправки данных.
download-minimum и upload-minimum: минимальная гарантированная скорость.
Создайте файл конфигурации, например,
eth0.yaml, и запустите TrafficToll:
tt eth0 eth0.yaml
Теперь сетевой интерфейс eth0 будет ограничен скоростью в 1 МБ/с. Если вы попробуете скачать или загрузить данные через этот интерфейс, скорость будет соответствовать установленным ограничениям.
TrafficToll позволяет не только ограничивать скорость для интерфейсов, но и применять ограничения к отдельным процессам. Примеры таких настроек вы найдёте в официальной документации инструмента.
Примечание: В конфигурации единицы измерения указываются в нижнем регистре (mbps, kbps), хотя корректное написание подразумевает использование заглавных букв (MBps). Тем не менее, инструмент работает и с текущей нотацией.
Тестирования сетевой производительности.
Ограничения сетевой скорости для задач, требующих определённого уровня контроля.
Постоянных ограничений для конкретных процессов или интерфейсов.
Ссылка на GitHub
#network #utils
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
Аудит безопасности в Windows позволяет отслеживать важные события, связанные с входами в систему, изменениями прав пользователей и подозрительной активностью. Настроим автоматический аудит с помощью PowerShell.
auditpol /get /category:*
Если нужные категории отключены, активируем их:
auditpol /set /category:"Logon/Logoff" /success:enable /failure:enable
auditpol /set /category:"Account Management" /success:enable /failure:enable
auditpol /set /category:"Policy Change" /success:enable /failure:enable
Эти команды включат логирование успешных и неудачных входов, изменений учётных записей и изменений в политиках безопасности.
Вывести последние 10 записей журнала можно так:
Get-WinEvent -LogName Security | Select-Object -First 10
Фильтруем события, например, неудачные входы (Event ID 4625):
Get-WinEvent -LogName Security | Where-Object { $_.Id -eq 4625 } | Format-Table TimeCreated, Message -AutoSize
Скрипт, который отправит уведомление по email:
$events = Get-WinEvent -LogName Security | Where-Object { $_.Id -eq 4625 }
if ($events.Count -ge 5) {
Send-MailMessage -To "admin@networkadmin.ru" -From "server@networkadmin.ru" -Subject "Обнаружены попытки взлома" -Body "Более 5 неудачных попыток входа" -SmtpServer "smtp.networkadmin.ru"
}
Этот скрипт можно добавить в планировщик заданий и запускать раз в 5 минут.
Конфигурация компьютера → Политики → Конфигурация Windows → Параметры безопасности → Локальные политики → Политика аудита
Настроим аудит:
Аудит входа в систему → Успех/Отказ
Аудит управления учётными записями → Успех
Аудит изменений политики → Успех
Применяем политику:
gpupdate /force
#windows #security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22💩1
PowerShell позволяет удалённо мониторить компьютеры в сети без необходимости физического доступа. С его помощью можно собирать информацию о загруженности процессора, оперативной памяти, состоянии дисков, работающих процессах и многом другом.
Test-Connection -ComputerName PC-001 -Count 2
Аналог ping, но с возможностью использования в скриптах. Если нужно проверить группу компьютеров:
$computers = @("PC-001", "PC-002", "PC-003")
$computers | ForEach-Object { Test-Connection -ComputerName $_ -Count 1 -Quiet }
Вернёт $true/$false для каждого устройства.
Get-WmiObject Win32_Processor -ComputerName PC-001 | Select-Object LoadPercentage
Для оперативной памяти:
Get-WmiObject Win32_OperatingSystem -ComputerName PC-001 |
Select-Object TotalVisibleMemorySize, FreePhysicalMemory
Вернёт общий объём RAM и количество свободной памяти.
Get-WmiObject Win32_LogicalDisk -ComputerName PC-001 -Filter "DriveType=3" |
Select-Object DeviceID, VolumeName, @{Name="FreeSpace(GB)";Expression={$_.FreeSpace/1GB -as [int]}}
Покажет свободное место в ГБ для каждого логического диска.
Get-Process -ComputerName PC-001 | Sort-Object CPU -Descending | Select-Object -First 10
Топ-10 процессов по загрузке CPU.
Завершить зависший процесс на удалённом ПК:
Invoke-Command -ComputerName PC-001 -ScriptBlock { Stop-Process -Name notepad -Force }
Get-WinEvent -LogName System -ComputerName PC-001 | Select-Object -First 10
Выведет 10 последних событий из журнала System.
Фильтрация только ошибок (Critical, Error, Warning):
Get-WinEvent -LogName System -ComputerName PC-001 |
Where-Object { $_.Level -le 3 } | Select-Object TimeCreated, Id, Message -First 10
Invoke-Command -ComputerName PC-001,PC-002 -ScriptBlock { Get-Service | Where-Object {$_.Status -eq 'Stopped'} }
Выведет список остановленных сервисов.
while ($true) {
Get-WmiObject Win32_Processor -ComputerName PC-001 | Select-Object LoadPercentage
Start-Sleep -Seconds 5
}
Будет обновлять данные каждые 5 секунд.
#windows #monitoring
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17
iptables):
iptables -A INPUT -p tcp --dport 22 -j DROP
iptables -A INPUT -p udp --dport 22 -j DROP
iptables -A INPUT -m recent --rcheck --seconds 60 --name KNOCKED -j ACCEPT
iptables -A INPUT -p tcp --dport 2222 -m recent --set --name KNOCKED -j DROP
Автоматизировать можно с помощью
knockd или fwknop.Используем iptables TARPIT (затягивает соединение):
iptables -A INPUT -p tcp --dport 23 -j TARPIT
Теперь порт 23 (Telnet) будет притормаживать атакующих, вместо того чтобы сразу отклонять соединение.
Или можно возвращать ложный REJECT:
iptables -A INPUT -p tcp --dport 22 -j REJECT --reject-with tcp-reset
Вместо стандартного "порта нет", сервер отправит "порт есть, но сбрасывает соединение", что может запутать.
Простой бан подозрительных сканеров:
iptables -A INPUT -m recent --rcheck --seconds 60 --name PORTSCAN -j DROP
iptables -A INPUT -p tcp --syn -m recent --set --name PORTSCAN -j DROP
server {
listen 443 ssl;
server_name myserver.com;
location /ssh {
proxy_pass http://127.0.0.1:2222;
}
}
Теперь SSH-доступ будет идти через HTTPS (порт 443), а не через стандартный 22-й.
#security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤1
Windows позволяет изменить редакцию с младшей на старшую, сохранив все установленные программы, документы и настройки. Это удобно, ведь зачастую желания тратить время на переустановку операционной системы нет.
Для десктопных версий Windows (например, переход с Home на Pro) используется встроенная утилита
changepk.exe.Пример команды:
changepk.exe /ProductKey XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
XXXXX-XXXXX-XXXXX-XXXXX-XXXXX — это ключ продукта. Можете использовать ваш лицензионный ключ или универсальный ключ. Универсальный ключ обычно применяется при установке Windows, если вы выбираете пункт "Пропустить ввод ключа".
1. Откройте командную строку с правами администратора.
2. Выполните команду с вашим ключом.
3. Перезагрузите систему по запросу.
Узнать текущую редакцию:
DISM /online /Get-CurrentEdition
Посмотрить доступные редакции для апгрейда:
DISM /online /Get-TargetEditions
Выполнить апгрейд до нужной редакции:
DISM /online /Set-Edition:ServerDatacenter /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /AcceptEula
#utils #windows
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
Windows 10 и 11 по умолчанию поставляются с предустановленными UWP (Universal Windows Platform) приложениями, такими как погода, новости, карты и другие. Часто эти приложения оказываются ненужными и только занимают место. Вот как можно управлять ими через PowerShell.
Get-AppxPackage -AllUsers | Select-Object Name, PackageFullName
Get-AppxPackage *Weather* -AllUsers | Remove-AppxPackage -AllUsers
Get-AppxProvisionedPackage -Online | Where-Object { $_.PackageName -like "*Weather*" } | Remove-AppxProvisionedPackage -Online
Удаление таких приложений может привести к проблемам с работой. Чтобы вывести список системных UWP приложений, используйте команду:
Get-AppxPackage | Where-Object { $_.SignatureKind -eq "System" }
#windows
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22
Rootkits - вредоносные программы, которые маскируют своё присутствие в системе. Они могут скрывать файлы, процессы и сетевые соединения, подменять команды и даже обходить антивирусные проверки.
1. Подмена системных вызовов (syscalls). Rootkits перехватывают вызовы getdents(), readdir(), ps, top, скрывая нужные процессы.
2. Изменение ядра (Kernel Mode Rootkits). Загружаются как модули ядра (.ko файлы) и модифицируют функции ядра, скрывая свою активность.
3. Хук системы /proc. Подменяют содержимое /proc/[PID], скрывая процесс от стандартных утилит.
4. Использование LD_PRELOAD. Библиотеки динамической подгрузки подменяют поведение системных команд без изменения ядра.
ls -al /proc | grep -vE "^[d-]r--r--r--"
Если процесс не виден стандартными командами (ps aux, top), но есть его директория в /proc — это подозрительно.
ps aux | wc -l && ls /proc | grep -E '^[0-9]+$' | wc -l
Числа должны совпадать. Если в /proc больше процессов, чем показывает ps, возможно, система заражена.
chkrootkit
chkrootkit | grep INFECTED
Простая проверка на известные rootkits.
rkhunter
rkhunter --check
Проверяет системные файлы на несанкционированные изменения.
lsmod | grep -i rootkit
Некоторые rootkits могут маскироваться, но подозрительные модули можно выявить через lsmod.
Использовать SELinux/AppArmor для ограничения доступа к системным ресурсам.
Регулярно проверять целостность файлов (aide, tripwire).
Зарпетить загрузку новых модулей ядра (echo 1 > /proc/sys/kernel/modules_disabled).
Следить за сетевой активностью (netstat -tulnp | grep LISTEN).
Использовать Linux-утилиты безопасности (auditd, Sysmon for Linux).
#linux #security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19
В Windows можно динамически изменять приоритет процессов, чтобы управлять их загрузкой CPU. Например, если какое-то приложение перегружает систему, можно снизить его приоритет, а важные задачи, наоборот, ускорить.
Get-WmiObject Win32_Process | Select-Object Name, ProcessId, Priority | Sort-Object Priority -Descending
Приоритет отображается числом:
256 - Реального времени (RealTime)
128 - Высокий (High)
32 - Выше нормального (AboveNormal)
8 - Обычный (Normal)
4 - Ниже нормального (BelowNormal)
1 - Фоновый (Idle)
(Get-Process notepad).PriorityClass = "High"
Если процессу нужно снизить нагрузку, например, до Ниже нормального (BelowNormal):
(Get-Process notepad).PriorityClass = "BelowNormal"
(Get-Process -Id 1234).PriorityClass = "AboveNormal"
$processes = Get-Process chrome -ErrorAction SilentlyContinue
if ($processes) {
$processes | ForEach-Object { $_.PriorityClass = "BelowNormal" }
}
Добавьте этот скрипт в Планировщик заданий (Task Scheduler), чтобы он запускался автоматически при старте системы.
(Get-WmiObject Win32_Process -Filter "Name='notepad.exe'").SetPriority(128)
Здесь 128 - это High, 8 - Normal, 4 - BelowNormal и т. д.
#windows #processes
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥2👎1
Firewalld - это альтернатива
iptables, используемая в большинстве дистрибутивов Linux (RHEL, CentOS, Fedora). Она предоставляет более гибкий и удобный способ управления правилами файрвола. Разберёмся, чем firewalld лучше (или хуже) iptables и как его настраивать.
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --reload
sudo firewall-cmd --permanent --remove-port=22/tcp
sudo firewall-cmd --reload
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
Посмотреть список доступных сервисов можно так:
firewall-cmd --get-services
sudo firewall-cmd --permanent --zone=public --change-interface=eth0
sudo firewall-cmd --reload
Посмотреть текущую зону интерфейса:
firewall-cmd --get-active-zones
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" drop'
sudo firewall-cmd --reload
sudo firewall-cmd --add-port=8080/tcp --timeout=300
После истечения времени правило удалится автоматически.
iptables-save > rules.v4
iptables-restore < rules.v4
Затем вручную перенести правила в firewalld, используя firewall-cmd.
#linux #network
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10👎1