🛠️ 5 ключевых метасимволов, которые покрывают 80% задач
Привет, инженер!
Давай будем честны: освоить синтаксис регулярных выражений (РВ) — непростая задача. Не потому, что это очень сложно, а потому что ты работаешь с ними лишь время от времени, для разовых задач. В итоге ты быстро всё забываешь.
Но чтобы полностью реализовать потенциал командной оболочки, тебе придется овладеть Регулярными Выражениями. РВ — это набор символов и/или метасимволов, которые задают шаблон для поиска текста.
К счастью, тебе не нужно знать их все. Достаточно запомнить базовые метасимволы, которые критически важны для работы с
Вот твоя шпаргалка: 5 ключевых метасимволов, которые покрывают 80% задач:
Регулярные выражения используются для поиска текста по шаблону и работы со строками.
1. Начало и конец строки (
- Символ
- Знак
- Выражение
2. Любой символ (
Точка (
3. Ноль или больше повторений (
Звездочка (
4. Набор символов (
Квадратные скобки (
5. Экранирование (
Обратный слэш (
💡 Вывод
Основное назначение РВ — это поиск текста по шаблону и работа со строками. Если ты знаешь, как использовать эти 5 метасимволов, ты сможешь эффективно применять
#Linux #Bash #CLI #Regex #Шпаргалка
Привет, инженер!
Давай будем честны: освоить синтаксис регулярных выражений (РВ) — непростая задача. Не потому, что это очень сложно, а потому что ты работаешь с ними лишь время от времени, для разовых задач. В итоге ты быстро всё забываешь.
Но чтобы полностью реализовать потенциал командной оболочки, тебе придется овладеть Регулярными Выражениями. РВ — это набор символов и/или метасимволов, которые задают шаблон для поиска текста.
К счастью, тебе не нужно знать их все. Достаточно запомнить базовые метасимволы, которые критически важны для работы с
grep, sed и awk.Вот твоя шпаргалка: 5 ключевых метасимволов, которые покрывают 80% задач:
Регулярные выражения используются для поиска текста по шаблону и работы со строками.
1. Начало и конец строки (
^ и $):- Символ
^ означает начало строки. (Иногда, в зависимости от контекста, он может означать отрицание, например, в квадратных скобках [^...]).- Знак
$ соответствует концу строки.- Выражение
^$ соответствует пустой строке.2. Любой символ (
.)Точка (
.) соответствует любому одиночному символу. Обычно это любой символ, кроме символа перевода строки.3. Ноль или больше повторений (
*)Звездочка (
*) означает любое количество символов (включая нулевое). Это относится к символу или выражению, предшествующему звездочке. Например, .* означает "любое количество любого символа".4. Набор символов (
[])Квадратные скобки (
[...]) предназначены для задания подмножества (диапазона) символов. Например, [a-z0-9] соответствует одной букве нижнего регистра или одной цифре.5. Экранирование (
\)Обратный слэш (
\) используется для экранирования специальных символов. Это значит, что экранированные символы интерпретируются буквально, как простые символы. Например, комбинация \$ ищет знак доллара как обычный символ, а не как признак конца строки.💡 Вывод
Основное назначение РВ — это поиск текста по шаблону и работа со строками. Если ты знаешь, как использовать эти 5 метасимволов, ты сможешь эффективно применять
grep, sed и awk для большинства повседневных задач.#Linux #Bash #CLI #Regex #Шпаргалка
👍8🔥2
Идёте на Kuber Conf by AOT 4 декабря?
Первая некоммерческая K8s-конференция в Москве — отличный повод встретиться и лично поговорить с топовыми инженерами и архитекторами.
Конференция проходит под эгидой Ассоциации облачно-ориентированных технологий (АОТ), которую создают Флант, VK Cloud и Yandex Cloud.
В программе реальные кейсы от команд Авито, Т-Банка, Vitastor, Beget, VK Cloud, Yandex Cloud и Selectel, а среди докладов:
• Изменения в Cluster API без пересоздания машин;
• Как строили платформу деплоя в Т-Банке;
• Практический deep-dive в CNI chaining;
• Безопасный Gatekeeper в архитектуре k8s-in-k8s;
• Поддержка Kubernetes в Vitastor;
• Karpenter-провайдер своими руками — что внутри.
Для подписчиков канала действует промокод:KUBERCONF20
Программа и билеты
Реклама. Садовская Е.О, ИНН 9710066394, erid:2Vtzqv2mrq7
Первая некоммерческая K8s-конференция в Москве — отличный повод встретиться и лично поговорить с топовыми инженерами и архитекторами.
Конференция проходит под эгидой Ассоциации облачно-ориентированных технологий (АОТ), которую создают Флант, VK Cloud и Yandex Cloud.
В программе реальные кейсы от команд Авито, Т-Банка, Vitastor, Beget, VK Cloud, Yandex Cloud и Selectel, а среди докладов:
• Изменения в Cluster API без пересоздания машин;
• Как строили платформу деплоя в Т-Банке;
• Практический deep-dive в CNI chaining;
• Безопасный Gatekeeper в архитектуре k8s-in-k8s;
• Поддержка Kubernetes в Vitastor;
• Karpenter-провайдер своими руками — что внутри.
Для подписчиков канала действует промокод:
Программа и билеты
Реклама. Садовская Е.О, ИНН 9710066394, erid:2Vtzqv2mrq7
🔥 Настройка проброса портов в Incus: проще, чем в Proxmox
👋 Эй, укротитель виртуалок!
Покажу, как добавить веб-интерфейс к Incus и настроить проброс портов. Всё просто и быстро — без танцев с бубном.
✅ Установка веб-интерфейса Incus
Проблема: Нужен удобный GUI для управления виртуалками и контейнерами.
Решение: Установи официальный пакет из репозитория Zabbly.
Вариант 1: Скачать пакет напрямую
Вариант 2: Подключить репозиторий
Настраиваем systemd:
Открываем доступ извне:
Готово! Открывай браузер, заходи на порт 8443 и следуй простой инструкции по добавлению сертификата.
🌐 Проброс портов: в 10 раз проще Proxmox
Проблема: Нужно пробросить порт 80 с хоста в виртуалку, чтобы получить доступ к веб-сервису.
Решение: В Incus это делается за 3 клика или одной командой.
Пример: Пробросим порт 80 с хоста
Через веб-интерфейс:
1. Иди в Networks → incusbr0 → Forwards
2. Жми "Add Forward"
3. Заполняй:
- Listen address:
- Listen port:
- Target address:
- Target port:
Через CLI (одна команда):
Вот и всё! В Proxmox тебе пришлось бы писать правила для iptables и разбираться с NAT вручную.
💡 Почему Incus удобнее для одиночного хоста?
✅ IPAM из коробки — разбираешься за 2 минуты
✅ NAT и DHCP работают сразу, ничего настраивать не нужно
✅ Проброс портов через GUI за 3 клика или одну команду
✅ Никаких iptables — всё просто и наглядно
Если у тебя есть виртуалка с nested virtualization (у многих хостеров она включена) — разворачивай Incus и запускай VM внутри. Получишь полноценный хост виртуализации.
🔗 Официальный репозиторий Incus:
https://github.com/lxc/incus
🔗 Репозиторий Zabbly с пакетами:
https://pkgs.zabbly.com/incus/stable/
#incus #виртуализация #linux #devops #proxmox #sysadmin #Linux_err24
👋 Эй, укротитель виртуалок!
Покажу, как добавить веб-интерфейс к Incus и настроить проброс портов. Всё просто и быстро — без танцев с бубном.
✅ Установка веб-интерфейса Incus
Проблема: Нужен удобный GUI для управления виртуалками и контейнерами.
Решение: Установи официальный пакет из репозитория Zabbly.
Вариант 1: Скачать пакет напрямую
# Качаем готовый .deb пакет
wget https://pkgs.zabbly.com/incus/stable/pool/main/i/incus/incus-ui-canonical_6.17-debian11-202510101456_amd64.deb
# Устанавливаем
dpkg -i incus-ui-canonical_6.17-debian11-202510101456_amd64.deb
Вариант 2: Подключить репозиторий
# Добавляем ключ репозитория
curl -fsSL https://pkgs.zabbly.com/key.asc -o /etc/apt/keyrings/zabbly.asc
# Создаём источник пакетов
sh -c 'cat <<EOF > /etc/apt/sources.list.d/zabbly-incus-lts-6.0.sources
Enabled: yes
Types: deb
URIs: https://pkgs.zabbly.com/incus/lts-6.0
Suites: $(. /etc/os-release && echo ${VERSION_CODENAME})
Components: main
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/zabbly.asc
EOF'
# Обновляем и ставим UI
apt update
apt install incus-ui-canonical
Настраиваем systemd:
# Редактируем юнит
systemctl edit incus.service
# Добавляем переменную окружения
[Service]
Environment = INCUS_UI=/opt/incus/ui/
# Применяем изменения
systemctl daemon-reload
systemctl restart incus
Открываем доступ извне:
incus config set core.https_address :8443
Готово! Открывай браузер, заходи на порт 8443 и следуй простой инструкции по добавлению сертификата.
🌐 Проброс портов: в 10 раз проще Proxmox
Проблема: Нужно пробросить порт 80 с хоста в виртуалку, чтобы получить доступ к веб-сервису.
Решение: В Incus это делается за 3 клика или одной командой.
Пример: Пробросим порт 80 с хоста
192.168.137.14 в VM ubuntu24 с IP 10.253.116.184.Через веб-интерфейс:
1. Иди в Networks → incusbr0 → Forwards
2. Жми "Add Forward"
3. Заполняй:
- Listen address:
192.168.137.14- Listen port:
80, Protocol: TCP- Target address:
10.253.116.184- Target port:
80Через CLI (одна команда):
incus network forward port add incusbr0 192.168.137.14 TCP 80 10.253.116.184 80
Вот и всё! В Proxmox тебе пришлось бы писать правила для iptables и разбираться с NAT вручную.
💡 Почему Incus удобнее для одиночного хоста?
✅ IPAM из коробки — разбираешься за 2 минуты
✅ NAT и DHCP работают сразу, ничего настраивать не нужно
✅ Проброс портов через GUI за 3 клика или одну команду
✅ Никаких iptables — всё просто и наглядно
Если у тебя есть виртуалка с nested virtualization (у многих хостеров она включена) — разворачивай Incus и запускай VM внутри. Получишь полноценный хост виртуализации.
🔗 Официальный репозиторий Incus:
https://github.com/lxc/incus
🔗 Репозиторий Zabbly с пакетами:
https://pkgs.zabbly.com/incus/stable/
#incus #виртуализация #linux #devops #proxmox #sysadmin #Linux_err24
GitHub
GitHub - lxc/incus: Powerful system container and virtual machine manager
Powerful system container and virtual machine manager - GitHub - lxc/incus: Powerful system container and virtual machine manager
👍6
Media is too big
VIEW IN TELEGRAM
🐧 Linux-администратор: с чего начать и куда расти
👋 Привет, покоритель пингвинов!
Анатолий, ведущий системный администратор с 10-летним опытом, отвечает на главные вопросы: как войти в профессию, нужно ли программировать, стоит ли ставить Linux дома и почему самообразование в IT — это навсегда.
🔗 Источник: https://www.youtube.com/
#linux #sysadmin #карьера #ansible #python #bash #devops
👋 Привет, покоритель пингвинов!
Анатолий, ведущий системный администратор с 10-летним опытом, отвечает на главные вопросы: как войти в профессию, нужно ли программировать, стоит ли ставить Linux дома и почему самообразование в IT — это навсегда.
🔗 Источник: https://www.youtube.com/
#linux #sysadmin #карьера #ansible #python #bash #devops
Какая команда используется системным администратором для просмотра общего использования дискового пространства и свободного места на смонтированных файловых системах?
Anonymous Quiz
16%
du
9%
free
16%
lsblk
59%
df
👍7
Какая опция команды tail позволяет администратору следить за системным журналом (/var/log/messages) в реальном времени, выводя новые строки на стандартный вывод по мере их добавления в файл?
Anonymous Quiz
12%
-n 100
55%
-f
17%
-l
15%
-r
👍8
💥 1500+ ХАРДКОРНЫХ ТЕСТОВ НА LINUX! ТВОЙ РЕАЛЬНЫЙ УРОВЕНЬ.
Привет, повелитель терминала! 👋
Я знаю, ты ценишь практику и конкретику, а наши квизы стабильно показывают самую высокую вовлеченность.
Поэтому я собрал хардкорный марафон на 1500+ вопросов по Linux. Это проверка на прочность для тех, кто уже считает себя экспертом.
Готов? Запускай бота:
👉 @gradeliftbot
Сейчас это MVP, но мы вместе можем сделать больше! Как только в боте соберется 1000 активных линуксоидов, я запускаю разработку полноценного web-приложения с БД, рейтингом и фишками.
Привет, повелитель терминала! 👋
Я знаю, ты ценишь практику и конкретику, а наши квизы стабильно показывают самую высокую вовлеченность.
Поэтому я собрал хардкорный марафон на 1500+ вопросов по Linux. Это проверка на прочность для тех, кто уже считает себя экспертом.
Готов? Запускай бота:
👉 @gradeliftbot
Сейчас это MVP, но мы вместе можем сделать больше! Как только в боте соберется 1000 активных линуксоидов, я запускаю разработку полноценного web-приложения с БД, рейтингом и фишками.
🔥10👎2
Linux Skill - Освой Linux c нуля до DevOps
💥 1500+ ХАРДКОРНЫХ ТЕСТОВ НА LINUX! ТВОЙ РЕАЛЬНЫЙ УРОВЕНЬ. Привет, повелитель терминала! 👋 Я знаю, ты ценишь практику и конкретику, а наши квизы стабильно показывают самую высокую вовлеченность. Поэтому я собрал хардкорный марафон на 1500+ вопросов по Linux.…
Вас оказалось больше чем 50 человек. Через час оплачу бота, все будет работать
🔥8👎2👍1
Коллеги, вчера проводили учения по кибербезопасности. Модуль «Безопасность IoT-устройств». Виктор купил умный чайник, оставил пароль «admin/admin», подключил к офисному Wi-Fi. Теперь чайник майнит криптовалюту, а Виктор жалуется, что вода не нагревается.
🔥22👍5👎1
Linux Skill - Освой Linux c нуля до DevOps pinned «💥 1500+ ХАРДКОРНЫХ ТЕСТОВ НА LINUX! ТВОЙ РЕАЛЬНЫЙ УРОВЕНЬ. Привет, повелитель терминала! 👋 Я знаю, ты ценишь практику и конкретику, а наши квизы стабильно показывают самую высокую вовлеченность. Поэтому я собрал хардкорный марафон на 1500+ вопросов по Linux.…»
Media is too big
VIEW IN TELEGRAM
💥 Как Линус Торвальдс за 10 дней создал Git и спас Linux от краха?
Привет, цифровой архитектор!
Сегодня Git - это суверенный лидер среди систем контроля версий (VCS), который стал основой для современной инфраструктуры как кода (например, Ansible и Terraform). Но знаешь ли ты, почему эта система появилась, и как она стала важнейшим инструментом в IT?
🌐 Источник: ZARGO
#Git #Linux #DevOps #CLI #VCS #Инструменты
Привет, цифровой архитектор!
Сегодня Git - это суверенный лидер среди систем контроля версий (VCS), который стал основой для современной инфраструктуры как кода (например, Ansible и Terraform). Но знаешь ли ты, почему эта система появилась, и как она стала важнейшим инструментом в IT?
🌐 Источник: ZARGO
#Git #Linux #DevOps #CLI #VCS #Инструменты
👍5👀4🔥1
🤯 Перестань хранить конфиги в Git: Zabbix сделает это лучше (и быстрее)
Привет, системный архитектор!
Сегодня расскажу про неочевидное, но очень мощное использование Zabbix, которое поможет тебе в мониторинге и бэкапировании [User Query]. Речь о типе элемента данных SSH Агент.
SSH Агент может подключаться по SSH на удаленный хост, выполнять команду и сохранять вывод [User Query]. Мы можем использовать этот механизм для создания бэкапов конфигураций устройств (например, MikroTik), а Zabbix автоматически отбросит неизменившиеся настройки, чтобы ты не хранил одну и ту же информацию много раз [User Query].
Нам понадобится настроить шаблон.
1. Создание элемента данных (Item) для SSH
Мы используем
Для удобства логин и пароль лучше вынести в скрытые макросы шаблона [User Query].
2. Вкладка "Предобработка" (Preprocessing)
Это критически важный шаг. Мы используем встроенную возможность Zabbix для отбрасывания не изменившихся значений. Это позволяет хранить только различия в конфигурации и оповещать об изменениях [User Query].
3. Настройка триггера на изменение конфигурации
Триггер сработает, если последняя полученная конфигурация отличается от предыдущей [User Query].
4. Дополнительные команды SSH
Ты можешь использовать SSH для выполнения команд и сценариев. Например, для проверки целостности файлов или сбора данных о системе:
💡 Вывод
Использование SSH Агента в Zabbix позволяет тебе настроить продвинутый аудит конфигураций [User Query] и автоматизацию бэкапов без сложного внешнего скриптования. Главное, что ты получаешь, — немедленное оповещение о любых изменениях в ключевых настройках.
Помни: создавать такие настройки лучше сразу в шаблонах, а не на хостах, чтобы обеспечить удобство и переносимость [User Query].
#Zabbix #SSH #Monitoring #Mikrotik #Автоматизация
Привет, системный архитектор!
Сегодня расскажу про неочевидное, но очень мощное использование Zabbix, которое поможет тебе в мониторинге и бэкапировании [User Query]. Речь о типе элемента данных SSH Агент.
SSH Агент может подключаться по SSH на удаленный хост, выполнять команду и сохранять вывод [User Query]. Мы можем использовать этот механизм для создания бэкапов конфигураций устройств (например, MikroTik), а Zabbix автоматически отбросит неизменившиеся настройки, чтобы ты не хранил одну и ту же информацию много раз [User Query].
Нам понадобится настроить шаблон.
1. Создание элемента данных (Item) для SSH
Мы используем
SSH Agent для подключения по защищенному каналу. Аутентификация может происходить по паролю или по ключу [User Query]. Аутентификацию по ключу, как более безопасную, можно предварительно настроить с помощью ssh-keygen.Для удобства логин и пароль лучше вынести в скрытые макросы шаблона [User Query].
# -----------------------------------------------
# ШАГ 1: Создание Item в шаблоне
# -----------------------------------------------
# Тип: SSH агент (Zabbix Item Type)
Type: SSH agent
# Ключ элемента данных (Key)
# Формат: ssh.run[denoscription,<IP>,<Port>,<User>,<Password>]
Key: ssh.run[mikrotik_backup,10.20.1.20,22,,]
# Тип информации (для хранения конфигурации)
Type of information: Text
# Выполняемый скрипт (команда на удаленном хосте)
Executed noscript: /export
2. Вкладка "Предобработка" (Preprocessing)
Это критически важный шаг. Мы используем встроенную возможность Zabbix для отбрасывания не изменившихся значений. Это позволяет хранить только различия в конфигурации и оповещать об изменениях [User Query].
# -----------------------------------------------
# ШАГ 2: Настройка дедупликации
# -----------------------------------------------
# Добавляем шаг Предобработки
Preprocessing step:
# Правило: Отбрасывать не изменившееся
Discard unchanged: True (or use specific preprocessing rule)
3. Настройка триггера на изменение конфигурации
Триггер сработает, если последняя полученная конфигурация отличается от предыдущей [User Query].
# -----------------------------------------------
# ШАГ 3: Добавление триггера
# -----------------------------------------------
# Имя: Configuration changed on {HOST.NAME}
# Серьезность: Warning/Average
# Выражение триггера (Trigger Expression):
# last() сравнивает последнее значение с предыдущим (#2)
# Если они отличаются, то триггер сработает
{<Имя шаблона>:ssh.run[mikrotik_backup,10.20.1.20,22,,].last(#1)}<>
{<Имя шаблона>:ssh.run[mikrotik_backup,10.20.1.20,22,,].last(#2)}
4. Дополнительные команды SSH
Ты можешь использовать SSH для выполнения команд и сценариев. Например, для проверки целостности файлов или сбора данных о системе:
# Использование SSH для удаленного выполнения команды
# (Zabbix SSH Agent использует подобный механизм)
# Получение времени в 12-часовом формате с удаленного хоста:
ssh user@host.example.com 'date +%r'
# Использование именованного канала (pipe) для передачи данных между процессами
# (сложный пример, показывающий возможности туннелирования SSH)
su xyz -c "ssh $THERE \"cat > /home/xyz/backup/${HERE}-daily.tar.gz\" < /pipe"& \
cd / && tar -czf - bin boot dev etc home info lib man root sbin share usr var > /pipe
💡 Вывод
Использование SSH Агента в Zabbix позволяет тебе настроить продвинутый аудит конфигураций [User Query] и автоматизацию бэкапов без сложного внешнего скриптования. Главное, что ты получаешь, — немедленное оповещение о любых изменениях в ключевых настройках.
Помни: создавать такие настройки лучше сразу в шаблонах, а не на хостах, чтобы обеспечить удобство и переносимость [User Query].
#Zabbix #SSH #Monitoring #Mikrotik #Автоматизация
👍9👎2
🔍 Откуда Linux берет пользователей: загляни в /etc/passwd
👋 Привет, покоритель Linux!
Знаешь, где Linux хранит информацию о пользователях? Правильный ответ —
📂 Что такое /etc/passwd?
Проблема: Системе нужно знать, какие пользователи существуют, какие у них UID, домашние директории и оболочки.
Решение: Файл
Структура записи:
Пример:
Разбор полей:
1. username — имя пользователя
2. x — раньше здесь хранился хеш пароля, теперь он в
3. UID — уникальный идентификатор пользователя (0 = root)
4. GID — идентификатор основной группы
5. comment — комментарий (обычно полное имя)
6. home_directory — путь к домашней директории
7. shell — оболочка для входа (например,
🔎 Как посмотреть содержимое?
🛡️ Почему пароли больше не в /etc/passwd?
Раньше хеши паролей хранились прямо в
Решение: Хеши паролей перенесли в
💡 Полезные команды для работы с пользователями
⚡ Быстрая шпаргалка
✅
✅
✅
✅ UID 0 = root, UID 1-999 = системные пользователи, UID >= 1000 = обычные пользователи
🔗 Полезные ссылки:
Документация: https://man7.org/linux/man-pages/man5/passwd.5.html
#linux #sysadmin #passwd #безопасность #Linux_err24
👋 Привет, покоритель Linux!
Знаешь, где Linux хранит информацию о пользователях? Правильный ответ —
/etc/passwd. Разберём, что это за файл и почему он так важен.📂 Что такое /etc/passwd?
Проблема: Системе нужно знать, какие пользователи существуют, какие у них UID, домашние директории и оболочки.
Решение: Файл
/etc/passwd содержит базовую информацию о каждой локальной учетной записи в системе.Структура записи:
username:x:UID:GID:comment:home_directory:shell
Пример:
root:x:0:0:root:/root:/bin/bash
user1:x:1000:1000:User One:/home/user1:/bin/bash
nginx:x:33:33:nginx:/var/www:/usr/sbin/nologin
Разбор полей:
1. username — имя пользователя
2. x — раньше здесь хранился хеш пароля, теперь он в
/etc/shadow3. UID — уникальный идентификатор пользователя (0 = root)
4. GID — идентификатор основной группы
5. comment — комментарий (обычно полное имя)
6. home_directory — путь к домашней директории
7. shell — оболочка для входа (например,
/bin/bash или /usr/sbin/nologin для системных пользователей)🔎 Как посмотреть содержимое?
# Полный список пользователей
cat /etc/passwd
# Только имена пользователей
cut -d: -f1 /etc/passwd
# Информация о конкретном пользователе
grep "^user1:" /etc/passwd
# Пользователи с оболочкой bash
grep "/bin/bash$" /etc/passwd
🛡️ Почему пароли больше не в /etc/passwd?
Раньше хеши паролей хранились прямо в
/etc/passwd, но этот файл доступен всем пользователям для чтения. Это создавало угрозу безопасности.Решение: Хеши паролей перенесли в
/etc/shadow, который доступен только root.💡 Полезные команды для работы с пользователями
# Добавить пользователя
useradd newuser
# Изменить оболочку пользователя
usermod -s /bin/zsh user1
# Удалить пользователя
userdel user1
# Посмотреть информацию о текущем пользователе
id
# Посмотреть всех пользователей с UID >= 1000 (обычные пользователи)
awk -F: '$3 >= 1000 {print $1}' /etc/passwd
⚡ Быстрая шпаргалка
✅
/etc/passwd — основной файл учетных записей ✅
/etc/shadow — хранит хеши паролей (только root) ✅
/etc/group — информация о группах ✅ UID 0 = root, UID 1-999 = системные пользователи, UID >= 1000 = обычные пользователи
🔗 Полезные ссылки:
Документация: https://man7.org/linux/man-pages/man5/passwd.5.html
#linux #sysadmin #passwd #безопасность #Linux_err24
👍12🔥1
Media is too big
VIEW IN TELEGRAM
⚠️ Секретная команда tc: 3 трюка, чтобы сломать сеть и проверить ваш микросервис
Привет, опытный инженер! 👋
Когда твоя система начинает «тормозить», сетевые инженеры часто используют
Смотри видео и сохраняй основные команды для своей тестовой лаборатории.
🌐 Источник: Новая образовательная система
#Linux #Netem #DevOps #CLI #Сеть #qdisc
Привет, опытный инженер! 👋
Когда твоя система начинает «тормозить», сетевые инженеры часто используют
ping или traceroute для базовой диагностики. Но что, если тебе нужно не просто *найти* проблему, а активно симулировать её для проверки отказоустойчивости приложения или сетевого оборудования?Смотри видео и сохраняй основные команды для своей тестовой лаборатории.
🌐 Источник: Новая образовательная система
#Linux #Netem #DevOps #CLI #Сеть #qdisc
👍6
Какой оператор должен быть использован внутри конструкции [ ] (синонима команды test) для сравнения двух целых чисел на неравенство (N1 не равно N2)?
Anonymous Quiz
51%
!=
9%
~=
7%
-lt
33%
-ne
🎉 Gradelift v1.1 — Обновление!
Открыл → Начал → Прокачался! 🚀
Что нового:
✨ Чистый дизайн — убрали всё лишнее
⚡ 1500 вопросов сразу — никаких режимов
🕒 Без таймера — свернул и вернулся когда угодно
🎯 Видимый прогресс — streak, звёзды, jackpot
👉 Запустить тест @gradeliftbot
Открыл → Начал → Прокачался! 🚀
Что нового:
✨ Чистый дизайн — убрали всё лишнее
⚡ 1500 вопросов сразу — никаких режимов
🕒 Без таймера — свернул и вернулся когда угодно
🎯 Видимый прогресс — streak, звёзды, jackpot
👉 Запустить тест @gradeliftbot
👍6👎1
Какая команда используется для планирования выполнения задания в абсолютно определенное время в будущем, но только один раз?
Anonymous Quiz
44%
crontab -e
37%
at
15%
anacron
4%
batch
👍4🔥1
🚨 7 смертельных ошибок CLI, которые уничтожат твой Linux
Приветствую, коллега по скриптам!
Работа под
1.
2. Fork Bomb (
3.
4.
5.
6.
7. Использование R-утилит (
#Linux #CLI #Безопасность #Ошибки #Сисадмин
Приветствую, коллега по скриптам!
Работа под
root требует максимальной осторожности. Вот главные "самострелы", которые могут привести к краху системы:1.
rm -rf /: Безоговорочное уничтожение всей файловой системы.2. Fork Bomb (
:(){ :|:& };:): Бесконечное порождение процессов, исчерпывающее системные ресурсы.3.
dd: Неправильное указание if и of (вход/выход) уничтожит диск.4.
rm $VAR: Неэкранированная переменная может привести к стиранию лишнего.5.
.:$PATH: Добавление текущего каталога (.) создает лазейку для троянских программ.6.
chmod -R 777 /: Некорректная установка прав доступа на корневую файловую систему. Неправильное использование chmod -R (например, 555 или 777) на корневом каталоге (/) может разрушить файловую систему и сделать систему непригодной для использования.7. Использование R-утилит (
rlogin, rsh, rcp): Эти утилиты небезопасны и передают данные в открытом виде. Их следует удалить из системы и использовать ssh в качестве замены.#Linux #CLI #Безопасность #Ошибки #Сисадмин
👍9
🗓 3 декабря в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Инфраструктурная платформа на основе Kubernetes».
Программа вебинара:
В результате вебинара:
- Поймёте, как с помощью CRD и операторов расширять возможности Kubernetes.
- Научитесь автоматизировать управление пользовательскими ресурсами и упрощать поддержку инфраструктуры.
- Получите базу для создания собственных операторов и интеграции их в CI/CD.
🔗 Ссылка на регистрацию: https://otus.pw/OSZG/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
👎1🔥1
⚠️ Эта команда Docker даёт хакеру права root на хосте
Привет, цифровой архитектор!
Флаг
Используйте принцип минимальных привилегий (least privilege), отключая ненужные возможности ядра (capabilities).
1. Почему
Запуск контейнера в привилегированном режиме позволяет ему смонтировать корневую файловую систему хоста или получить уровень контроля, аналогичный процессам хоста.
2. Принцип минимальных привилегий (Least Privilege)
Если контейнеру не нужны все возможности
3. Запуск от имени непривилегированного пользователя
Если приложение не требует привилегий
💡 Вывод:
Флаг
#DevOps #Docker #Безопасность #root #CLI #Privileges
Привет, цифровой архитектор!
Флаг
--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
👍7