uz
Feedback
LinuxSkill - Сводки с прода и Шпаргалки

LinuxSkill - Сводки с прода и Шпаргалки

Kanalga Telegram’da o‘tish

Следим за новостями Linux, DevOps и ИБ, чтобы быть готовым к любым факапам. Бонусом — плотные шпаргалки и чеклисты для ежедневной работы в терминале. 📩 По всем вопросам: @chorapov Зеркало в MAX: https://max.ru/LinuxSkill РКН https://vk.cc/cMUwm4

Ko'proq ko'rsatish

📈 Telegram kanali LinuxSkill - Сводки с прода и Шпаргалки analitikasi

LinuxSkill - Сводки с прода и Шпаргалки (@linuxskill) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 10 942 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 11 387-o'rinni va Rossiya mintaqasida 59 932-o'rinni egallagan.

📊 Auditoriya ko‘rsatkichlari va dinamika

невідомо sanasidan buyon loyiha tez o‘sib, 10 942 obunachiga ega bo‘ldi.

13 Iyun, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -64 ga, so‘nggi 24 soatda esa 0 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.

  • Tasdiqlash holati: Tasdiqlanmagan
  • Jalb etish (ER): Auditoriya o‘rtacha 16.32% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 6.15% ini tashkil etuvchi reaksiyalarni to‘playdi.
  • Post qamrovi: Har bir post o‘rtacha 1 786 marta ko‘riladi; birinchi sutkada odatda 673 ta ko‘rish yig‘iladi.
  • Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 9 ta reaksiya keladi.
  • Tematik yo‘nalishlar: Kontent docker, linux, bash, devops, скрипт kabi asosiy mavzularga jamlangan.

📝 Tavsif va kontent siyosati

Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
Следим за новостями Linux, DevOps и ИБ, чтобы быть готовым к любым факапам. Бонусом — плотные шпаргалки и чеклисты для ежедневной работы в терминале. 📩 По всем вопросам: @chorapov Зеркало в MAX: https://max.ru/LinuxSkill РКН https://vk.cc/cMUwm4

Yuqori yangilanish chastotasi (oxirgi ma’lumot 14 Iyun, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.

10 942
Obunachilar
Ma'lumot yo'q24 soatlar
-147 kunlar
-6430 kunlar
Postlar arxiv
Какой символ используется для обозначения начала комментария в Bash-скрипте (кроме первой строки shebang)?
Anonymous voting

🔥 Load Average: Когда «цифра» значит «Срочно чини!» Привет, системный траблшутер! Как понять, когда Load Average (LA) реально опасен?. Критическая нагрузка — это число ядер твоего ЦПУ. Если LA > NCPU, то пора чинить!
# 1. Узнай свой лимит: Количество логических процессоров (ядер)
# Информация берется из системного псевдофайла
NCPU=$(grep -c '^processor' /proc/cpuinfo) 
echo "Твой лимит (NCPU): $NCPU"

# 2. Проверь текущую среднюю загрузку (за 1, 5, 15 минут)
uptime 
# Load Average включает процессы, ожидающие ЦПУ ИЛИ Disk I/O

# 3. Пример сравнения: если LA за 1 мин выше лимита NCPU
CURRENT_LOAD=$(cat /proc/loadavg | cut -d ' ' -f1)
if (( $(echo "$CURRENT_LOAD > $NCPU" | bc -l) )); then 
    echo "🚨 СЕРВЕР ПЕРЕГРУЖЕН: $CURRENT_LOAD > $NCPU"
fi
Вывод: Если LA стабильно выше числа ядер, система насыщена. #Мониторинг #CLI #LoadAverage #Кейс

❕ Бесплатный вебинар: «GitOps + Flux — ваш путь к автоматизированному деплою в Kubernetes»! Вы хотите развернуть приложение в
Бесплатный вебинар: «GitOps + Flux — ваш путь к автоматизированному деплою в Kubernetes»! Вы хотите развернуть приложение в Kubernetes без тонны ручных команд и нервов? Мечтаете о системе, где код сам «доставляется» в прод по принципу «закоммитил — заработало»? Приглашаем вас на открытый урок в рамках курса «Инфраструктурная платформа на основе Kubernetes, где разберём»: - как перестать вручную деплоить приложения; - как добиться стабильного состояния кластера; - как сделать процессы прозрачными и контролируемыми. 🗓 Когда: 23.12, в 20-00 Для кого: DevOps‑инженеры, разработчики, администраторы Kubernetes, все, кто хочет автоматизировать деплой. На уроке вы узнаете: 💚 Что такое GitOps и почему это новый стандарт работы с Kubernetes. 💚 Как Flux автоматизирует синхронизацию кластера с Git‑репозиторием. 💚Практические примеры настройки Flux для реальных сценариев. 💚Как избежать типичных ошибок при внедрении GitOps. 💚Какие преимущества даёт подход «конфигурация как код». После урока вы сможете: - настроить базовый пайплайн GitOps с Flux; - понять, как интегрировать Flux в существующую инфраструктуру; - оценить, подходит ли GitOps для вашего проекта. ➡️ Регистрирация: https://otus.pw/u7Na/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

⚠️ Антигайд: Как ntpdate убивает твой Dovecot и что делать Привет, инженер автоматизации! Ты знал, что NTP-синхронизация может мгновенно "убить" Dovecot? Резкий перевод часов назад приводит к его аварийному завершению. Используй плавную синхронизацию (ntpd/chrony) или перезапускай сервис.
# 1. Если ты используешь ntpdate, Dovecot рухнет (особенно при переводе часов назад)
# Пример опасной команды:
# ntpdate -u pool.ntp.org 

# 2. Правильное действие: останавливаем, синхронизируем, запускаем
sudo systemctl stop dovecot.service 
sudo ntpdate pool.ntp.org 
sudo systemctl restart dovecot.service
Вывод: Перед выполнением ntpdate рекомендуется завершать Dovecot и запускать заново. #Антигайд #Dovecot #NTP #Безопасность #systemd

systemctl – 5 команд, которые должен знать каждый DevOps-инженер Привет, инженер автоматизации! Если ты переходишь с SysVinit на systemd, тебе нужен надёжный командник для быстрого траблшутинга и управления сервисами. Команда systemctl — это твой универсальный диспетчер. Вот 5 ключевых функций, которые ты будешь использовать каждый день. 1. 🔍 Полный статус сервиса Эта команда показывает, активен ли сервис, его PID, потребление ресурсов (CGroup, Memory, CPU) и последние строки логов.
# Получить детальную информацию о веб-сервере Nginx
systemctl status nginx.service
# PID, CGroup, Memory, CPU - важные данные для траблшутинга
2. 🚀 Включение и активация (autostart) systemctl enable создаёт символическую ссылку, чтобы сервис запускался при загрузке системы. Флаг --now сразу запускает его.
# Включить автозапуск SSHD при загрузке и немедленно запустить
sudo systemctl enable --now sshd.service

# Проверить, включен ли сервис для автозапуска
systemctl is-enabled sshd.service 
3. 💾 Применение новой конфигурации без перезапуска Если ты изменил конфигурационный файл (например, /etc/ssh/sshd_config), тебе нужно, чтобы демон перечитал его, не прерывая работу.
# Перезагрузка конфигурации systemd, чтобы обнаружить изменения в юнит-файлах
sudo systemctl daemon-reload
# Перезагрузить конфигурацию самого сервиса (без полного restart)
sudo systemctl reload sshd.service 
4. 📈 Анализ скорости загрузки (Boot Performance) Если система загружается медленно, эта команда покажет тебе, какие юниты (сервисы) потребляют больше всего времени.
# Вывести список процессов, отсортированных по времени запуска
systemd-analyze blame 

# Посмотреть общее время, потраченное на загрузку ядра и userspace
systemd-analyze time 
5. 📜 Просмотр всех файлов юнитов Для DevOps критически важно знать, какие сервисы вообще установлены в системе и в каком они состоянии (включен/выключен).
# Вывести список всех установленных файлов модулей типа service и их состояние (enabled/disabled/static/masked)
systemctl list-unit-files --type=service
💡 Вывод Команда systemctl — это центральный инструмент для твоей работы в Linux. Используя status для детальной проверки, reload для безопасных обновлений и systemd-analyze blame для диагностики, ты можешь эффективно управлять production-средой. #DevOps #systemd #systemctl #CLI #Автоматизация

🔐 Секреты Pro-Docker: 4 хака, которые сделают твои образы в 5 раз меньше Привет, контейнерный гуру! Твои Docker-образы слишком большие и могут нести угрозу безопасности?. Я собрал 4 критически важных приёма для hardening-а и оптимизации, которые должен знать каждый, кто работает с Docker в продакшене. 1. ⚙️ Оптимизация слоёв: Уменьши размер в 71% Каждая инструкция RUN в Dockerfile создает новый уровень (слой), что раздувает конечный размер образа. Чтобы избежать этого, используй оператор && для объединения команд в одну инструкцию RUN.
# ПЛОХО: Создаст 3 слоя
RUN apt-get update
RUN apt-get install -y nodejs
RUN rm -rf /var/lib/apt/lists/*

# ХОРОШО: Создаст 1 слой и уменьшит размер образа
FROM alpine:3.12.0
RUN apk update && \
    apk add --no-cache nodejs npm && \
    rm -rf /var/cache/apk/*
# Используй --no-cache, чтобы не хранить временные файлы
За счет перехода на минимальные базовые образы (например, Alpine) и объединения команд ты можешь уменьшить размер образа на 71%. 2. 🛡 Безопасность: Запуск без root и CAP_DROP Никогда не запускай контейнер с флагом --privileged, так как это равносильно получению прав root на хосте, позволяя, например, смонтировать его корневую ФС. Всегда переключайся на непривилегированного пользователя внутри контейнера.
# Создаем непривилегированного пользователя 'app'
# Используй инструкцию USER, чтобы избежать root
RUN groupadd -r app_grp && useradd -r -g app_grp app
USER app 

# Если нужны только специфические права (например, bind к порту < 1024):
# Сбрось ВСЕ права (--cap-drop all) и добавь только необходимые
docker run --cap-drop ALL --cap-add CAP_NET_BIND_SERVICE alpine sh
Ограничение возможностей (Capabilities) — ключевой принцип безопасности, так как root в Linux — это коллекция возможностей, и Docker позволяет тебе их выборочно отключить. 3. 💾 Очистка: Удали висячий мусор Если ты не удаляешь остановленные контейнеры или висячие образы (dangling images), они будут накапливаться и занимать дисковое пространство.
# Удаление всех остановленных контейнеров
# docker rm $(docker ps -aq -f status=exited)
docker rm $(docker ps -aq) -f

# Удаление всех висячих (без тегов) образов
docker rmi $(docker images -q -f dangling=true)

# Очистка всего Docker-мусора (образов, сетей, контейнеров)
# Используй с осторожностью, это удалит ВСЁ, что не используется
docker system prune -a
Используй docker system prune -a для быстрой очистки, но помни, что тома (volumes) не удаляются автоматически и требуют отдельной очистки, если они не используются. 4. 🧠 Ограничение ресурсов: Защита от DoS-атак Ограничивай использование ресурсов с помощью cgroups, чтобы взломанный контейнер не смог вызвать отказ в обслуживании (DoS), исчерпав память или CPU хоста.
# Ограничение памяти (128 МБ)
# -m 128m задает жесткий лимит, предотвращая OOM на хосте
docker run -it --rm -m 128m my_app

# Ограничение использования CPU (на 2 CPU или 50% CPU-времени)
docker run -it --rm --cpus="2" my_app
# или, используя доли CFS:
docker run -d --name load_high -c 512 amouat/stress
Вывод: Применение этих практик (минимальные образы, непривилегированные пользователи и ограничения ресурсов) — это не просто оптимизация, это создание надёжной архитектуры, которую ты можешь смело развертывать в production. #Docker #DevOps #Security #Hardening #Optimization #CLI #Сборник

🔥 Открытый урок «Terraform: как работать с ним через GitLab». 🗓 11 декабря в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта к
🔥 Открытый урок «Terraform: как работать с ним через GitLab». 🗓 11 декабря в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «CI/CD на основе GitLab». На вебинаре разберем: ✔️ Как использовать Terraform для управления инфраструктурой как кодом (IaC). ✔️ Настройку CI/CD-процессов в GitLab для работы с Terraform. ✔️ Лучшие практики разграничения окружения и управления конфигурацией. Кому будет полезно: - DevOps-лидам, управляющим инфраструктурой и CI/CD. - Архитекторам, разрабатывающим стратегии инфраструктурной автоматизации. - Инженерам, внедряющим Terraform в рабочие процессы. Что вы получите: - Понимание, Terraform-модули для работы через GitLab. - Понимание, настройка и оптимизация пайплайнов CI/CD . - Практические советы по безопасному и эффективному управлению инфраструктурой . 🔗 Ссылка на регистрацию: https://otus.pw/kKbj/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

💾 Bash-антигайд: Удаляй tmp-файлы даже после kill -9 Хей, защитник хоста! Если твой скрипт аварийно завершается, временные файлы (/tmp) остаются. Чтобы гарантировать удаление, используй ловушку EXIT.
#!/bin/bash
# Создай уникальное имя для временного файла
TMP_FILE=$(mktemp) 

# 1. Ловушка EXIT (сигнал 0) сработает при ЛЮБОМ выходе
trap "rm -f $TMP_FILE" EXIT

# 2. Здесь идет твой основной код
echo "Лог пишется в $TMP_FILE" >> $TMP_FILE 

# 3. Дополнительно можно перехватить SIGINT (2) и SIGTERM (15)
trap "rm -f $TMP_FILE; exit 1" INT TERM
Вывод: trap...EXIT обеспечивает, что функция очистки выполнится всегда, даже при ошибке. #Bash #Автоматизация #Скрипты #trap #CLI

Как правильно присвоить значение переменной в Bash?
Anonymous voting

🚀 Встречайте новый формат в @Gradeliftbot — Спринт! Хотите проверить свои знания по Linux быстро и эффективно? Теперь в нашем боте доступен режим "Спринт" — 20 случайных вопросов из базы в 1500+ тестов! 👉 Попробовать @Gradeliftbot

Администратор ищет файлы, которые были изменены менее 10 минут назад в каталоге /etc. Какая команда find с правильной опцией будет использована?
Anonymous voting

Какая команда, предназначенная для работы с файлами и архивами, выводит содержимое текстового файла на стандартный вывод, но в обратном порядке (т.е. начиная с последней строки)?
Anonymous voting

🔥 Собери свой top: скрипт для моментальной диагностики Linux Привет, системный траблшутер! Если у тебя что-то "легло" или тормозит, нужно моментально получить срез состояния системы. Ты не хочешь запускать 10 разных команд. Объедини ключевые команды (uptime, free, ps) в одну функцию, которая быстро покажет тебе, где узкое место. 🐧 Скрипт check_status.sh
#!/bin/bash

# Используем hostname для получения имени сервера
SERVER_NAME=$(hostname)

# Создание функции, чтобы избежать повторов кода
function get_quick_status() {
    echo "--- СТАТУС СЕРВЕРА: ${SERVER_NAME} ---"

    # 1. Аптайм и Load Average
    echo "Load Average (1, 5, 15 мин) и Uptime:"
    uptime 
    # Load Average > 1.0 часто указывает на проблемы

    # 2. Использование памяти (в удобном формате)
    echo "Использование RAM и SWAP (free -h):"
    free -h 
    # free -h выводит информацию о памяти и swap

    # 3. Использование корневого раздела
    echo "Использование диска (df -h /):"
    df -h / | tail -n 1 | awk '{print "Used: " $3 ", Avail: " $4 }' 
    # df показывает использование файловой системы

    # 4. Топ-5 активных процессов по CPU
    echo "Топ-5 активных процессов (PID, %CPU, COMMAND):"
    ps -e --no-header -o pid,%cpu,comm | sort -nr -k 2 | head -5
    # ps -e отображает информацию о текущих запущенных процессах
}

# Запускаем функцию
get_quick_status
Вывод: Ты можешь использовать эту заготовку как основу, чтобы быстро диагностировать проблемы с CPU, памятью или диском, а затем добавить vmstat или iostat для глубокого анализа, если это требуется. #Мониторинг #Bash #CLI #Скрипт #uptime #free

🎥 Вебинар по Linux: Основы LVM: гибкое управление дисковым пространством в Linux Разбираем на практике, как работает LVM и з
🎥 Вебинар по Linux: Основы LVM: гибкое управление дисковым пространством в Linux Разбираем на практике, как работает LVM и зачем системным администраторам нужно уметь управлять томами в Linux. 🧠 На вебинаре вы узнаете: - Как устроена работа с дисками и разделами в Linux. - Какие ограничения есть у классической таблицы разделов. - Что такое LVM и какие преимущества оно даёт при управлении хранилищем. - Как использовать LVM для гибкого распределения пространства на дисках. 💪 В результате вебинара вы: - Разберётесь в базовых понятиях LVM: Physical Volume, Volume Group, Logical Volume. - Поймёте, как добавлять и перераспределять дисковое пространство без простоев. - Сможете самостоятельно создать и управлять логическими томами. - Узнаете, как LVM помогает решать повседневные задачи Linux-администратора. 🎁 Все участники вебинара получат специальные условия на полное обучение курса "Administrator Linux. Professional" 👉 Для участия зарегистрируйтесь: https://otus.pw/QbF9/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

📘 Энциклопедия Docker: 10 лучших практик для production Привет, цифровой архитектор! У тебя нет времени искать тонкости настройки Docker? Собрал для тебя 10 ключевых команд и приёмов из архитектурных гайдов, которые обязательно нужно сохранить для работы в production. 1. Безопасность: Непривилегированный пользователь Никогда не запускай контейнеры от имени root. Атакующий может получить права root на хосте.
# В Dockerfile создаем группу и непривилегированного пользователя 'app'
RUN groupadd -r app_grp && useradd -r -g app_grp app 
USER app # Всегда переключаемся на непривилегированного пользователя
2. Ограничение возможностей ядра (Capabilities) Docker по умолчанию включает много возможностей, но лучше их отключить и добавить только необходимые.
# Сбрасываем все Capabilities (CAP_DROP ALL)
docker run -ti --cap-drop ALL debian /bin/bash 

# Добавляем только возможность привязки к низким портам (<1024)
docker run --cap-drop all --cap-add CAP_NET_BIND_SERVICE alpine:latest sh 

# Запрет на повышение привилегий (hardening)
docker run --security-opt=no-new-privileges ubuntu bash
3. Оптимизация Dockerfile: Слияние RUN Каждая инструкция RUN создает новый уровень (layer), увеличивая размер образа. Объединяйте команды с && для минимизации слоев.
# Плохо: 3 отдельных слоя
RUN apk update
RUN apk add nodejs nodejs-npm
RUN mkdir -p /app/public

# Хорошо: одна инструкция, один слой
RUN apk update && \
    apk add nodejs nodejs-npm && \
    mkdir -p /app/public /app/server
4. Управление томами (Volumes) Для сохранения постоянных данных используй тома (VOLUME).
# Создание тома на хосте (local driver по умолчанию)
docker volume create my_data_vol

# Просмотр информации о томе (включая путь на хосте)
docker volume inspect my_data_vol

# Удаление всех неиспользуемых томов (используй с осторожностью!)
docker volume prune
5. Очистка системы Для избежания беспорядочного роста образов и контейнеров (image sprawl).
# Удаление остановленных контейнеров
docker rm $(docker ps -aq -f status=exited)

# Удаление неиспользуемых (висячих) образов
docker rmi $(docker images -q -f dangling=true)

# Полная очистка: контейнеры, образы, сети, тома
docker system prune -a
6. Режимы работы с сетью Docker по умолчанию использует режим bridge (мост), который изолирует контейнеры в частной сети.
# Просмотр активных сетевых режимов (по умолчанию: bridge, none, host)
docker network ls

# Запуск контейнера в режиме хоста (убирает изоляцию, но дает скорость)
docker run --net=host -d my_app

# Создание изолированной сети, чтобы контейнеры видели друг друга по имени
docker network create my_custom_net
docker run --network my_custom_net --name redis_db redis
7. Работа с образами и тегами Для контроля версий всегда используй конкретные теги, а не latest.
# Получение образа с конкретным тегом
docker pull debian:jessie 

# Построение образа с явным указанием тега
docker build -t my_app:v1.2 .

# Использование дайджеста для абсолютной гарантии версии
FROM redis@sha256:3479bbcab384fa343b52743b933661335448f8166203688006...
8. Использование docker exec вместо SSH-демонов Не запускай SSH-демон внутри контейнера. Для отладки используй docker exec.
# Запуск bash внутри активного контейнера (интерактивно)
docker exec -it <CONTAINER_ID> /bin/bash 

# Запуск команды внутри контейнера без входа в оболочку
docker exec -it my_web_container ls -l /var/log
9. Настройка ресурсов (cgroups) Ограничивай ресурсы (CPU, Memory), чтобы избежать DoS-атак или утечек памяти.
# Ограничение памяти (128 Мб)
docker run -it --rm -m 128m my_app 

# Ограничение использования CPU (только ядра 0 и 1)
docker run -it --rm --cpuset=0,1 -c 2 my_app
10. Постоянный контроль состояния Для избежания проблем, связанных с перезапуском и изменяемостью.
# Просмотр запущенных контейнеров
docker ps 

# Просмотр всех контейнеров (включая остановленные)
docker ps -a 

# Просмотр подробной конфигурации контейнера (JSON)
docker inspect <CONTAINER_ID>

# Получение журналов (STDOUT/STDERR)
docker logs <CONTAINER_ID>
#Docker #DevOps #Security #CLI #Hardening

🔑 Hardening: 4 ключевых правила iptables для любого сервера Привет, хакер безопасности! У тебя открыт лишний порт? Базовый принцип — запрещать всё. Сначала установи политику DROP, затем разреши необходимое.
# 1. Запрещаем весь входящий трафик по умолчанию
iptables -P INPUT DROP
# 2. Разрешаем внутренний трафик (loopback)
iptables -A INPUT -i lo -j ACCEPT
# 3. Разрешаем ответы на наши запросы (stateful firewall)
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# 4. Открываем SSH для управления (TCP порт 22)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Теперь сохраняем правила, чтобы они пережили перезагрузку
service iptables save
Вывод: Эти четыре команды — основа для любого безопасного сервера. #Безопасность #iptables #CLI #Hardening

⚠️ Эта команда Docker даёт хакеру права root на хосте Привет, цифровой архитектор! Флаг --privileged в Docker — это прямая угроза безопасности. Он даёт контейнеру доступ ко всем устройствам хоста и может обеспечить злоумышленнику права root. Используйте принцип минимальных привилегий (least privilege), отключая ненужные возможности ядра (capabilities). 1. Почему --privileged — это опасно? Запуск контейнера в привилегированном режиме позволяет ему смонтировать корневую файловую систему хоста или получить уровень контроля, аналогичный процессам хоста.
# Опасная команда: получает полный доступ к хост-системе
docker run --rm -v /:/host -t -i debian bash
root@e51ae86c5f7b:/# cd /host
root@e51ae86c5f7b:/host# ls bin dev home
# Атакующий видит корневую ФС хоста, включая /bin, /dev, /etc, /root.
2. Принцип минимальных привилегий (Least Privilege) Если контейнеру не нужны все возможности root (которые являются комбинацией 40 отдельных CAP_ возможностей Linux), их следует отключить. Docker по умолчанию и так удаляет многие возможности.
# Сброс всех возможностей и добавление только необходимых
# CAP_NET_BIND_SERVICE нужна для привязки к портам ниже 1024
docker run --cap-drop all --cap-add NET_BIND_SERVICE alpine:latest sh

# Пример удаления опасных возможностей SUID/SGID
docker run -it --rm --cap-drop SETUID --cap-drop SETGID ...

# Дополнительное ограничение: запрет на получение новых привилегий
docker run --security-opt=no-new-privileges ubuntu bash
3. Запуск от имени непривилегированного пользователя Если приложение не требует привилегий root, оно не должно от него запускаться. Это предотвращает повышение привилегий (privilege escalation) в случае взлома.
# В Dockerfile: переключаем пользователя
RUN groupadd -r app_grp && useradd -r -g app_grp app
USER app
💡 Вывод: Флаг --privileged следует избегать. Используй --cap-drop и USER в Dockerfile, чтобы контейнер не получил прав root на хосте, даже если его взломают. #DevOps #Docker #Безопасность #root #CLI #Privileges

👩‍💻 Открытый урок «Custom Resource Definitions (CRD) в Kubernetes. Операторы: автоматизация на новом уровне». 🗓 3 декабря
👩‍💻 Открытый урок «Custom Resource Definitions (CRD) в Kubernetes. Операторы: автоматизация на новом уровне». 🗓 3 декабря в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «Инфраструктурная платформа на основе Kubernetes». Программа вебинара: ✔️ Что такое Custom Resource Definitions (CRD) и зачем они нужны. ✔️ Как создать и зарегистрировать собственный CRD. ✔️ Примеры использования CRD в продакшн-кластерах. ✔️ Что такое операторы, их роль и принципы работы. ✔️ Как CRD и операторы помогают автоматизировать управление ресурсами и снижать нагрузку на инженеров. В результате вебинара: - Поймёте, как с помощью CRD и операторов расширять возможности Kubernetes. - Научитесь автоматизировать управление пользовательскими ресурсами и упрощать поддержку инфраструктуры. - Получите базу для создания собственных операторов и интеграции их в CI/CD. 🔗 Ссылка на регистрацию: https://otus.pw/OSZG/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

🚨 7 смертельных ошибок CLI, которые уничтожат твой Linux Приветствую, коллега по скриптам! Работа под root требует максимальной осторожности. Вот главные "самострелы", которые могут привести к краху системы: 1. rm -rf /: Безоговорочное уничтожение всей файловой системы. 2. Fork Bomb (:(){ :|:& };:): Бесконечное порождение процессов, исчерпывающее системные ресурсы. 3. dd: Неправильное указание if и of (вход/выход) уничтожит диск. 4. rm $VAR: Неэкранированная переменная может привести к стиранию лишнего. 5. .:$PATH: Добавление текущего каталога (.) создает лазейку для троянских программ. #Linux #CLI #Безопасность #Ошибки #Сисадмин

Какая команда используется для планирования выполнения задания в абсолютно определенное время в будущем, но только один раз?
Anonymous voting