Системный администратор - Сетевые технологии - Компьютерная помощь
前往频道在 Telegram
9 162
订阅者
-1924 小时
-1657 天
+1 86730 天
帖子存档
🛠 Шпаргалка по настройке RAID-массивов
📌 Основные типы RAID
- RAID 0 (Striping) – максимальная скорость, нет отказоустойчивости.
- RAID 1 (Mirroring) – дублирование данных, отказ одного диска не влияет.
- RAID 5 (Striping с чексуммами) – минимум 3 диска, отказ 1 диска.
- RAID 6 (Striping с двойными чексуммами) – минимум 4 диска, отказ 2 дисков.
- RAID 10 (RAID 1+0) – минимум 4 диска, скорость и отказоустойчивость.
🏗 Настройка RAID в Linux (mdadm)
1️⃣ Установка
mdadm
sudo apt install mdadm # Для Debian/Ubuntu
sudo yum install mdadm # Для CentOS/RHEL
2️⃣ Создание RAID
- RAID 0:
sudo mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/sd[b-c]
- RAID 1:
sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sd[b-c]
- RAID 5:
sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sd[b-d]
- RAID 6:
sudo mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/sd[b-e]
- RAID 10:
sudo mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/sd[b-e]
3️⃣ Проверка статуса RAID
cat /proc/mdstat
sudo mdadm --detail /dev/md0
4️⃣ Форматирование RAID и монтирование
sudo mkfs.ext4 /dev/md0
sudo mkdir /mnt/raid
sudo mount /dev/md0 /mnt/raid
Добавить в fstab для автоматического монтирования:
echo "/dev/md0 /mnt/raid ext4 defaults,nofail,discard 0 2" | sudo tee -a /etc/fstab
🔄 Управление RAID
🔹 Добавление нового диска
sudo mdadm --add /dev/md0 /dev/sdX
🔹 Удаление неисправного диска
sudo mdadm --fail /dev/md0 /dev/sdX
sudo mdadm --remove /dev/md0 /dev/sdX
🔹 Восстановление массива
sudo mdadm --add /dev/md0 /dev/sdX
🔹 Удаление RAID
sudo umount /mnt/raid
sudo mdadm --stop /dev/md0
sudo mdadm --remove /dev/md0
sudo mdadm --zero-superblock /dev/sd[b-e]
📝 Сохранение конфигурации
sudo mdadm --detail --scan >> /etc/mdadm/mdadm.conf
sudo update-initramfs -u # Для Debian/Ubuntu
📍 Дополнительно
- Проверка состояния дисков:
sudo smartctl -a /dev/sdX
- Мониторинг RAID:
sudo mdadm --monitor --scan --daemonize
@sysadmin1🚀 Шпаргалка по управлению логами с помощью Logrotate
Logrotate — это мощный инструмент для управления лог-файлами в Linux. Он помогает автоматизировать ротацию, сжатие, удаление и отправку логов, чтобы они не занимали всё свободное место на диске.
Основные команды Logrotate
1. Запуск вручную:
logrotate /etc/logrotate.conf
Можно указать конкретный конфиг:
logrotate /etc/logrotate.d/myapp
2. Принудительная ротация:
logrotate -f /etc/logrotate.conf
3. Тестирование конфигурации:
logrotate -d /etc/logrotate.conf
(ключ -d включает режим отладки, изменения не применяются).
Структура конфигурационного файла
Конфигурация Logrotate обычно находится в /etc/logrotate.conf или в отдельных файлах в /etc/logrotate.d/.
Пример конфига для ротации логов приложения:
/var/log/myapp/*.log {
daily # Ротация ежедневно
missingok # Пропустить, если файл отсутствует
rotate 7 # Хранить 7 архивов
compress # Сжимать архивы (gzip)
delaycompress # Сжимать не сразу, а на следующий цикл
notifempty # Не ротировать пустые файлы
create 0644 root root # Создать новый файл с указанными правами
sharedscripts # Запускать скрипты один раз для всех логов
postrotate
/usr/bin/systemctl restart myapp > /dev/null
endscript
}
Ключевые директивы
- daily/weekly/monthly/yearly: Частота ротации.
- rotate N: Хранить N архивов.
- compress: Сжимать логи (по умолчанию gzip).
- delaycompress: Сжимать не сразу, а на следующий цикл.
- missingok: Пропустить, если файл отсутствует.
- notifempty: Не ротировать пустые файлы.
- size: Ротация по размеру (например, size 100M или size 1G).
- create MODE USER GROUP: Создать новый файл с указанными правами.
- postrotate/endscript: Выполнить команды после ротации.
- prerotate/endscript: Выполнить команды перед ротацией.
- sharedscripts: Запускать скрипты один раз для всех логов.
- dateext: Добавлять дату к имени архива (вместо номера).
- olddir DIR: Перемещать архивы в указанную директорию.
Примеры использования
1. Ротация по размеру:
/var/log/nginx/*.log {
size 100M
rotate 5
compress
missingok
notifempty
create 0644 www-data www-data
}
2. Ротация с отправкой логов на удалённый сервер:
/var/log/myapp/*.log {
daily
rotate 7
compress
postrotate
scp /var/log/myapp/*.gz user@remote:/backup/logs/
endscript
}
3. Ротация с удалением старых логов:
/var/log/oldlogs/*.log {
weekly
rotate 2
compress
missingok
notifempty
olddir /var/log/archived
}
Полезные советы
- Проверяйте конфигурацию перед применением с помощью logrotate -d.
- Используйте cron для автоматизации запуска Logrotate.
- Не забывайте про postrotate, если нужно перезапускать сервисы после ротации.
@sysadmin1Что происходит, когда вы вводите в браузер URL-адрес?
Давайте рассмотрим этот процесс пошагово.
Шаг 1. Пользователь вводит в браузер URL и нажимает Enter. Первое, что нам нужно сделать, это преобразовать URL в IP-адрес. Сопоставление обычно хранится в кэше, поэтому браузер ищет IP-адрес в нескольких уровнях кэша: кэше браузера, кэше ОС, локальном кэше и кэше провайдера. Если браузер не смог найти сопоставление в кэше, он обращается к DNS (Domain Name System) resolver для его разрешения.
Шаг 2. Если IP-адрес не удается найти ни в одном из кэшей, браузер обращается к DNS-серверам для выполнения рекурсивного DNS-поиска, пока IP-адрес не будет найден.
Шаг 3. Теперь, когда у нас есть IP-адрес сервера, браузер посылает на него HTTP-запрос. Для безопасного доступа к ресурсам сервера всегда следует использовать протокол HTTPS. Сначала браузер устанавливает TCP-соединение с сервером с помощью трехстороннего рукопожатия TCP. Затем он посылает открытый ключ клиенту. Клиент использует открытый ключ для шифрования сеансового ключа и отправляет его серверу. Сервер использует закрытый ключ для расшифровки сеансового ключа. Теперь клиент и сервер могут обмениваться зашифрованными данными с использованием сеансового ключа.
Шаг 4. Сервер обрабатывает запрос и отправляет ответ. Для успешного ответа код состояния равен 200. Ответ состоит из трех частей: HTML, CSS и Javascript. Браузер анализирует HTML и формирует дерево DOM. Он также анализирует CSS и генерирует дерево CSSOM. Затем он объединяет дерево DOM и дерево CSSOM в дерево рендеринга. Браузер отображает содержимое и показывает его пользователю.
@sysadmin1
Ищу желающих заполнять карточки товаров на ВБ!
Работа полностью на удаленке с зп до 150 000 рублей в месяц.
Что от вас требуется:
Без опыта, нужен только телефон, занятость 3-6 часов в день, желательно девушки.
Всему обучат на бесплатном курсе и после возьму на работу:
✅ 3 дня уроков по 30 минут
✅ Домашки с проверкой и оплатой бонусами
✅ Плачу 10 тыс за каждую выполненную домашку
Все кто пройдет курс, получат сертификат от школы с образовательной лицензией.
⚡ Набор заканчивается завтра.
👍 Для регистрации жмите кнопку "Зарегистрироваться"
Зарегистрироваться
#реклама 16+
course.wildmanager.ru
О рекламодателе
📁 Linux File Permission
@sysadmin1
Зарабатывайте на установках Яндекс Браузера
Партнёрская программа для сервисных центров, магазинов компьютерной техники, сайтов для скачивания файлов и авторов статей.
Вы можете предлагать его своим клиентам и аудитории — и зарабатывать на новых установках.
Выплаты до 500₽ за каждую установку Яндекс Браузера.
Подать заявку
#реклама 0+
partner.browser.yandex.ru
О рекламодателе
📌Шпаргалка по отладке IP-пакетов (debug ip packet) в Cisco IOS
1. Включение отладки IP-пакетов
debug ip packet
- Включает отладку всех IP-пакетов, проходящих через устройство.
- Будьте осторожны, так как это может создать высокую нагрузку на устройство, особенно в busy сетях.
2. Ограничение отладки
Чтобы уменьшить нагрузку, можно использовать Access Control List (ACL) для фильтрации пакетов:
access-list 100 permit ip host <source-ip> host <destination-ip>
debug ip packet detail 100
- access-list 100 — ACL, который фильтрует пакеты по source и destination IP.
- detail — показывает детализированную информацию о пакетах.
3. Отключение отладки
undebug all
или
``bash
no debug ip packet
``
- Отключает все отладочные команды или конкретно отладку IP-пакетов.
4. Интерпретация вывода
Вывод команды debug ip packet включает:
- Source IP — IP-адрес отправителя.
- Destination IP — IP-адрес получателя.
- Protocol — используемый протокол (например, TCP, UDP, ICMP).
- Packet action — действие с пакетом (например, "forwarded", "dropped").
- Interface — интерфейс, через который проходит пакет.
Пример вывода:
IP: s=192.168.1.1 (FastEthernet0/0), d=192.168.2.1 (FastEthernet0/1), len 100, forward- Пакет от 192.168.1.1 к 192.168.2.1 был переслан с интерфейса FastEthernet0/0 на FastEthernet0/1. 5. Полезные советы - Используйте
debug только при необходимости и на короткое время.
- Для снижения нагрузки используйте фильтры (ACL).
- Включите логирование на консоль или буфер для анализа:
logging console
logging buffered 10000
- Для остановки вывода на экран используйте:
no logging console
6. Альтернативные команды
- Проверка маршрутизации:
show ip route
- Проверка ARP-таблицы:
show ip arp
- Трассировка маршрута:
traceroute <destination-ip>
@sysadmin1Запустите рекламу в телеграм-каналах с Яндекс Директом
Перфоманс-реклама теперь в телеграм-каналах ⚡
Яндекс Директ знает, как привлечь целевую аудиторию 💰👌
Попробовать
#реклама
yandex.ru
О рекламодателе
Основные команды Linux: Сеть (DNS)
ipcalc – калькулятор сети
ethtool interface – отобразить физическую статистику интерфейса interface;
ping host – пропинговать host и вывести результат
whois domain – получить информацию whois для domain
traceroute host – трассировка маршрута до определенного хоста
ifconfig eth0 – отображение/настройка параметров сетевого интерфейса etho (либо другого, если без указания интерфейса – отобразит конфигурацию всех интерфейсов)
inet ip.add.re.s – задание ip адреса интерфейса (TCP/IP)
mask xxx.xxx.xxx.xxx – задание маски подсети интерфейса
broadkast xxx.xxx.xxx.xxx – задание широковещательного адреса интерфейса
up – запустить интерфейс
down – остановить интерфейс
-a – отображение всех железных интерфейсов (в том числе и не поднятых и поднятых)
route – отображение таблицу маршрутизации
-n – не резолвить имена в адреса
add destination gw gateway metric metric – добавить маршрут (add) для destination (адрес назначения), IP адрес шлюза (gw) – gateway, с метрикой metric
add -net -указание добавить маршрут для сети
add – host -указание добавить маршрут для хоста
del destination – удалить маршрут с назначением destination
mtr host – отображение статистики трассировки до хоста host (красивее чем трасероут 🙂 )
netcat host port – просмотр, кто слушает порт
nc – TCP/IP швейцарсий нож 🙂
-h – отобразить помощь
-l port – прослушивать локальный порт port для входящих соединений.
netstat -отображение статистики сети
-r – таблица маршрутизации
-n – без разрешения IP адресов в имена и сетевых портов в названия
-a – состояние всех (во всех состояниях) соединений на локальной машине
-t – статистика по протоколу TCP
-u – статистика по протоколу UDP
-i – отобразить статистику сетевых интерфейсов
-l – просмотр сокетов, слушающих (LISTEN) соединения (ожидающих соединения)
-p – отобразить имя программы и PID (process ID), с которой взаимодействует сокет
@sysadmin1Зарезервированные переменные Bash
Переменная Значение
$DIRSTACK Содержимое вершины стека каталогов.
$EDITOR Текстовый редактор по-умолчанию.
$EUID Эффективный UID. Если вы использовали программу su для выполнения команд от другого пользователя, то эта переменная содержит UID этого пользователя.
$UID Содержит реальный идентификатор, который устанавливается только при логине.
$FUNCNAME Имя текущей функции в скрипте.
$GROUPS Массив групп к которым принадлежит текущий пользователь.
$HOME Домашний каталог пользователя.
$HOSTNAME hostname машины.
$HOSTTYPE Архитектура машины.
$LC_CTYPE Внутренняя переменная, которая определяет кодировку символов.
$OLDPWD Прежний рабочий каталог.
$OSTYPE Тип ОС.
$PATH Путь поиска программ.
$PPID Идентификатор родительского процесса.
$SECONDS Время работы скрипта (в сек.)
$# Общее количество параметров переданных скрипту
$* Все аргументы переданыне скрипту(выводятся в строку).
$@ Тоже самое, что и предыдущий, но параметры выводятся в столбик.
$! PID последнего запущенного в фоне процесса.
$$ PID самого скрипта.
$? Содержит код завершения последней команды.
@sysadmin1Как заставить пользователя изменить пароль при следующем входе в систему
Существует несколько способов.
Использование команды passwd
sudo passwd --expire [username]
Использование команды chage
sudo chage --lastday 0 [username]
Срок действия паролей
chage -l
Будет выведена следующая информация:
Когда пароль был последний раз изменен;
Дата окончания действия пароля;
Сколько дней осталось до окончания действия пароля;
Когда учетная запись пользователя будет закончена (можно, пожалуйста, далее мы будем говорить «заэкспайрится»?)
Минимальное количество дней между итерацией смены пароля;
Максимальное количество дней между итерацией смены пароля;
Заставляем пользователя менять пароль каждые 90 дней
sudo chage -M 90
Задаем срок жизни учетной записи (до 12 июня 2023)
sudo chage -E 2023-06-12 serg
sudo chage -E 2023-06-12 oleg
Сколько времени на смену пароля?
В примере даем Борису 10 дней на смену пароля с момента как пароль заэкспайрился
sudo chage -I 10 boris
Уведомление о смене пароля заранее
Через 25 дней истекает срок годности пароля Бориса
sudo chage -W 25 boris
Защищаемся от частой смены паролей пользователя
Минимальное количество дней между сменой паролей
sudo chage -m 25 boris
Удалить ограничение в днях
sudo chage -m 0 sergey
@sysadmin1Offensive Linux Security Tools
🔍 Reconnaissance (Разведка)
- Recon-ng
- theHarvester
- Nmap
- Zenmap
- DNSRecon
- Mitaka
- Maltego
- Fierce
- SpiderFoot
- Masscan
- ZMap
🛠 Vulnerability Scanning (Сканирование уязвимостей)
- OpenVAS
- w3af
- Nikto
- Vuls
- Nessus 💲
🌐 Network-based Attacks (Сетевые атаки)
- Wireshark
- Ettercap
- ArpSpoof
- NetCat
- dSniff
- Scapy
- hping3
- Yersinia
🔑 Password & Brute Force Attacks (Атаки на пароли и перебор)
- John the Ripper
- Hashcat
- Crunch
- Hydra
- Medusa
- Rainbowcrack
- CeWL
- Patator
- Ophcrack
- pydictor
- Kraken
📱 Mobile Security (Безопасность мобильных устройств)
- Drozer
- Androguard
- Frida
- MobSF
- MAST
- NetHunter
- Android Tamer
- Apktool
- Quark Engine
- bettercap
🔄 Reverse Engineering (Реверс-инжиниринг)
- Radare2
- Ghidra
- Angr
🎯 Exploitation (Эксплуатация уязвимостей)
- Metasploit
- Exploit Pack
- SQL Ninja
- PTF
- jSQL Injection
- sqlmap
- Armitage
- BeEF
- RouterSploit
- ShellNoob
- ysoserial
- Ropper
- Commix
- Exploit-DB
- Pwntools
- SearchSploit
- XSSer
🏴☠️ Post-Exploitation (Действия после атаки)
- Empire
- Pupy
- Bloodhound
- Mimikatz
- DnsCat2
- Koadic
- Meterpreter
- BeRoot
- Pwncat
📶 Wireless Attacks (Атаки на беспроводные сети)
- Kismet
- PixieWPS
- Wifite
- Reaver
- Aircrack-ng
- airgeddon
- Wifi Pumpkin
🎭 Social Engineer & Phishing (Социальная инженерия и фишинг)
- SET
- Gophish
- King Phisher
- PhishX
🖥 Web App Pen Testing (Тестирование веб-приложений)
- Burp Suite 💲
- OWASP ZAP
- Arachni
- Wfuzz
- Skipfish
📋 Reporting & Documentation (Отчёты и документация)
- Dradis
- Faraday
- Serpico
- DefectDojo
- MagicTree
- Lair-framework
@sysadmin1
Samsung Galaxy S26 | S26+
Баланс высоких технологий и элегантного дизайна в смартфонах с умной камерой, встроенным ИИ и мощным аккумулятором
Узнать больше
#реклама
market.yandex.ru
О рекламодателе
+7
Протоколы транспортного уровня UDP, TCP И SCTP: достоинства и недостатки
На скринах рассматриваются три основных протокола транспортного уровня: UDP, TCP и SCTP, их преи- мущества и недостатки. Анализируется логика работы протоколов и ситуации, при которых предпо- чтительно использовать тот или иной протокол. Также приведено соответствие стека TCP/IP модели OSI и примеры приложений, использующих данные протоколы.
@sysadmin1
Предложение от Университета искусственного интеллекта
Хочешь стать AI-разработчиком всего за 6 месяцев?
Скачивай подробную презентацию курса GPT Engineer!
💰 Бесплатно!
Ключевые преимущества сферы AI:
👍 Стабильная работа и актуальная профессия с зарплатой от 200 000 ₽
👍 Удалёнка и гибкий график
👍 Супер интересная сфера!
📚 Содержание презентации курса:
1) Подробная программа по занятиям
2) Дополнительные материалы и программа поддержки студентов
3) Разбор программы стажировок
4) Процесс гарантированного трудоустройства
5) Подробно про создание итогового AI-проекта
Узнать больше
#реклама 16+
neural-university.ru
О рекламодателе
Технологический цикл: инвестируйте в лидеров будущего
📊 Мировая экономика вступает в новый технологический цикл: появляются компании, которые меняют отрасли и создают новые глобальные капиталы. Уже сегодня ИИ, космос, автономные системы и цифровая инфраструктура — в центре внимания инвесторов, а значительная часть будущей стоимости формируется на приватном рынке.
«Финам» приглашает на бесплатный вебинар «Технологический цикл 2026–2035: где будут создаваться новые капиталы».
✅ В программе
— Как инвестировать в будущих лидеров до IPO
— Аналитика глобальных технологических трендов
— Как работают инвестиции на частном рынке и их риски
— Кейсы: SpaceX, Starlink, OpenAI и др.
Эксперты «Финама» поделятся опытом и практическими советами для успешных инвестиций в эпоху технологических перемен.
📅 25 марта, в 17:00 (мск)
Зарегистрироваться
Финансовые услуги оказывает: АО "Банк ФИНАМ", АО "ФИНАМ".
#реклама 16+
exclusive.finam.ru
О рекламодателе
Маршруты в Windows
route print - вывести список всех маршрутов, ключ -4 выведет все маршруты только по протоколу ipv4
Добавить маршрут в Windows
Синтаксис добавления маршрута в CMD
route add -p <SUBNET_ID> mask <SUBNET_MASK> <GATEWAY> <METRIC> IF <INTERFACE_ID>
где:
Ключ -p (persistent) добавит статический маршрут, т.е. он сохранится после перезагрузки. Во избежание стрельбы себе в ногу лучше сначала добавить без -p, протестить и потом уже добавить с -p.
SUBNET ID - подсеть которую мы добавляем
SUBNET MASK - маска для нового маршрута
METRIC - вес маршрута от 1 до 9999, чем меньше значение, тем выше приоритет маршрута
GATEWAY - гейтвей для новой подсети, по сути первый hop в который сервер отправит трафик
INTERFACE ID - необязательно, нро лучше указываем интерфейс, иначе может забиндиться на другой NIC и отправить трафик в неверном направлении, прописываем route print и смотрим внутренний номер интерфейса
Добавить маршрут в CMD
route add -p 192.168.0.0 MASK 255.255.255.0 192.168.1.1 metric 7 IF 11
Прочитать можно так: чтобы трафик попал в подсеть 192.168.0.0/24, нужно обратиться к узлу 192.168.1.1 через сетевой интерфейс с айди 11
Добавить маршрут в PowerShell
Тут вместо route print используется Get-NetRoute
Get-NetAdapter используется чтобы узнать Interface Index
New-NetRoute -DestinationPrefix "192.168.0.0/24" -RouteMetric 7 -InterfaceIndex 11 -NextHop 192.168.1.1
Удалить маршрут в Windows
Удалить маршрут в CMD
route delete 192.168.0.0 MASK 255.255.255.0 192.168.1.1 IF 11
Удалить маршрут в PowerShell
Remove-NetRoute -DestinationPrefix "192.168.0.0/24" -RouteMetric 7 -InterfaceIndex 11 -NextHop 192.168.1.1
@sysadmin1+8
Шпаргалка по основным командам Linux 📌
@sysadmin1
Полезные команды Linux. Архивация и сжатие файлов
# gzip -9 file1
Поместить файл file1 в архив gzip с максимальной степенью сжатия
# rar a file1.rar file1 file2 dir1
Создать rar архив file1.rar, заархивировав файлы: file1, file2 и директорию: dir1
# rar a file1.rar test_file
Упаковать в rar архив file1.rar файл test_file
# rar x file.rar
Разархивировать rar архив file.rar
# bzip2 file1
Сжимает файл file1
# bunzip2 file1.bz2
Разжимает файл file1.bz2
# gzip file1
Сжимает файл file1
# gunzip file1.gz
Разжимает файл file1.gz
# tar -cvf archive.tar file1 file2 dir1
Создать tar архив archive.tar, упаковав в него файлы file1, file2 и директорию dir1
# tar -cvf archive.tar file
Упаковать в tar-архив archive.tar, файл file
# tar -tf archive.tar
Вывести содержимое tar архива
# tar -xvf archive.tar
Распаковать tar архив
# tar -xvf archive.tar -C /tmp
Распаковать архив в /tmp
# tar -cvfz archive.tar.gz dir1
Создать tar архив и сжать его с помощью программы gzip
# tar -xvfz archive.tar.gz
Разжать tar архив и распаковать его
# tar -cvfj archive.tar.bz2 dir1
Создать архив и сжать его с помощью bzip2 ( ключ -j работает не во всех *nix системах )
# tar -xvfj archive.tar.bz2
Разжать архив и распаковать его ( ключ -j работает не во всех *nix системах )
# zip file1.zip file1
Создать сжатый zip-архив
# zip -r file1.zip file1 file2 dir1
Запаковать в архив несколько файлов и/или директорий
# unzip file1.zip
Разжать и распаковать zip-архив
# unrar x file1.rar
Распаковать rar-архив
@sysadmin1
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
