fa
Feedback
Bash Days | Linux | DevOps

Bash Days | Linux | DevOps

رفتن به کانال در Telegram

Авторский блог от действующего девопса Самобытно про разработку, devops, linux, скрипты, сисадминство, техдирство и за айтишную жизу. Автор: Роман Шубин Реклама: @maxgrue MAX: https://max.ru/bashdays Курс: @tormozilla_bot Блог: https://bashdays.ru

نمایش بیشتر

📈 تحلیل کانال تلگرام Bash Days | Linux | DevOps

کانال Bash Days | Linux | DevOps (@bashdays) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 23 826 مشترک است و جایگاه 5 728 را در دسته فناوری و برنامه‌ها و رتبه 28 144 را در منطقه روسيا دارد.

📊 شاخص‌های مخاطب و پویایی

از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 23 826 مشترک جذب کرده است.

بر اساس آخرین داده‌ها در تاریخ 10 ژوئن, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر -183 و در ۲۴ ساعت گذشته برابر -6 بوده و همچنان دسترسی گسترده‌ای حفظ شده است.

  • وضعیت تأیید: تأیید نشده
  • نرخ تعامل (ER): میانگین تعامل مخاطب 19.30% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 12.47% واکنش نسبت به کل مشترکان کسب می‌کند.
  • دسترسی پست‌ها: هر پست به طور میانگین 4 598 بازدید دریافت می‌کند. در اولین روز معمولاً 2 971 بازدید جمع‌آوری می‌شود.
  • واکنش‌ها و تعامل: مخاطبان به‌طور فعال حمایت می‌کنند؛ میانگین واکنش به هر پست 24 است.
  • علایق موضوعی: محتوا بر موضوعات کلیدی مانند bashdays, linux, bash, docker, скрипт تمرکز دارد.

📝 توضیح و سیاست محتوایی

نویسنده این فضا را محل بیان دیدگاه‌های شخصی توصیف می‌کند:
Авторский блог от действующего девопса Самобытно про разработку, devops, linux, скрипты, сисадминство, техдирство и за айтишную жизу. Автор: Роман Шубин Реклама: @maxgrue MAX: https://max.ru/bashdays Курс: @tormozilla_bot Блог: https://bashdays.r...

به لطف به‌روزرسانی‌های پرتکرار (آخرین داده در تاریخ 11 ژوئن, 2026)، کانال همواره به‌روز و دارای دسترسی بالاست. تحلیل‌ها نشان می‌دهد مخاطبان به‌طور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامه‌ها تبدیل کرده‌اند.

23 826
مشترکین
-624 ساعت
-607 روز
-18330 روز
آرشیو پست ها
👩‍💻 Открытый урок «Деплой на стероидах: ускоряем доставку через Золотой путь (Golden Path)» 🗓 18 мая в 20:00 МСК 🆓 Беспла
👩‍💻 Открытый урок «Деплой на стероидах: ускоряем доставку через Золотой путь (Golden Path)» 🗓 18 мая в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «Инженер платформенной инфраструктуры» от Otus. Запуск нового сервиса часто превращается в сложный процесс: настройка CI/CD, инфраструктуры, доступов и окружений. Это замедляет разработку и увеличивает количество ошибок. На вебинаре разберём концепцию Golden Path — готовых шаблонов и стандартов, которые позволяют запускать сервисы быстро, безопасно и одинаково для всех команд. На вебинаре разберем: - Почему деплой замедляет команды - Что такое Golden Path и зачем он нужен - Как стандартизировать запуск сервисов - Роль шаблонов, CI/CD и developer portal - Как сократить время запуска нового сервиса - Частые ошибки при внедрении Golden Path 🔗 Ссылка на регистрацию: https://vk.cc/cXG6mB Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Настройка ZED. Отключаем лишнее. В прошлом году мы с тобой активно обсуждали редактор ZED в этом посте. Тогда всплыло много н
+2
Настройка ZED. Отключаем лишнее. В прошлом году мы с тобой активно обсуждали редактор ZED в этом посте. Тогда всплыло много нюансов и неоднозначных проблем связанных с его работой. Но вернувшись к этому IDE спустя несколько месяцев, я был приятно удивлён. 99% багов, которые были, теперь пофикшены. Редактор стал намного дружелюбнее и гибче, ну а самое главное перестал жрать память как не в себя. Поэтому я полностью перепрыгнул с neovim на zed и уже несколько месяцев его активно использую в своих непотребствах. Но конечно-же предварительно, превратив в его в дружелюбный инструмент и избавив от лампочек и рюшечек. Сегодня будем настраивать конфиг и прятать элементы интерфейса, чтобы получить минималистичный молоток. Избавимся от лампочек и кнопочек, но не в ущерб функциональности. Читать продолжение: https://two.su/2zglw 🛠 #dev 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog

Я написал свой текстовый редактор 🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤 ㅤ Всё началось банально. Мне нужен был редактор для Markdown-зам
+4
Я написал свой текстовый редактор 🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤 Всё началось банально. Мне нужен был редактор для Markdown-заметок — простой, быстрый, работающий без интернета. Я перебрал штук пять вариантов и ни один не подошёл до конца. Typora — мой любимый по ощущениям, но он платный. Не дорого, но принципиально: хотел что-то, что можно поставить на любую машину без лицензий и аккаунтов. Notion — мощный, но завязан на облако. Отключи интернет — привет. Obsidian тащит за собой экосистему плагинов, и в итоге тратишь время на настройку, а не на написание. VS Code с расширениями — уже смешно, это как ехать на танке за хлебом.
Я хотел редактор, который просто открывается и работает. Без аккаунта, без подписки, без интернета.
Почему Tauri, а не Electron Первый вопрос при выборе стека — чем рендерить. Electron — очевидный ответ, но я знал, чем это кончится: 200 мегабайт бинарника и 300 мегабайт RAM на старте. Для текстового редактора это абсурд. Tauri использует системный WebView — на Linux это WebKitGTK, на Windows WebView2, на macOS WKWebView. Бэкенд на Rust. Итог: финальный бинарник весит меньше 10 мегабайт, а потребление памяти как у нативного приложения. Фронтенд — React, потому что мне с ним удобно. Как это начиналось Первая версия умела открывать файл, редактировать его и сохранять. Markdown-превью появился на второй день. Потом захотелось панель форматирования, потом — историю файлов, потом я поймал себя на том, что добавляю уже пятую фичу и приложение превратилось в нечто, чем сам пользуюсь каждый день. Это классическая ловушка pet project: ты делаешь инструмент под себя, и он начинает расти ровно в сторону твоих личных болей. Главная фича: история версий Честно — это то, чего мне всегда не хватало в других редакторах. Не git, не ручные копии с суффиксом _v2_final_FINAL. Просто автоматические снимки, которые делаются сами — при открытии файла и периодически во время работы. При каждом открытии qnote делает снимок текущего состояния. Дальше снимки появляются автоматически раз в несколько минут. В любой момент можно открыть список версий, посмотреть превью, сравнить и восстановить нужную. Всё хранится локально, никакого облака.
Это мелочь, которая спасает несколько раз в год в самый неподходящий момент. Ты что-то случайно удалил, закрыл файл, открыл снова — и понял это через час. Без истории версий текст просто потерян.
Остальные фичи, которыми горжусь PDF-экспорт через typst — не через браузерный print, а через настоящий типографский движок. PDF генерируется в цветах текущей темы: тёмная тема — тёмный PDF, светлая — светлый. OCR прямо в заметку: перетаскиваешь картинку, запускаешь распознавание через tesseract — и текст вставляется прямо в документ. Никакого копипаста между окнами. Горячие клавиши на любой раскладке. Звучит как мелочь, пока не столкнёшься. В большинстве приложений шорткаты работают только на английской раскладке. Здесь — на любой. Синхронный скролл в split-view: левая панель с источником и правая с превью прокручиваются вместе. Кажется очевидным, но удивительно, сколько редакторов этого не умеют нормально. Что получилось в итоге qnote — это не попытка убить Obsidian или конкурировать с Notion. Это редактор для тех, кто хочет просто писать: без плагинов, без аккаунтов, без подписок. Markdown с превью, история файлов, автосохранение, история версий, PDF-экспорт и OCR — всё что нужно, ничего лишнего. Работает на Linux, Windows и macOS. Бинарник весит меньше 10 мегабайт. Открывается мгновенно.
автор проекта: @omibranch
Исходники открыты: https://github.com/Omibranch/qnote 🛠 #dev 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog

Соберите пазл-облако в игре «Облачный конструктор» Представьте: пазл за пазлом вы сможете собрать настоящую облачную платформ
Соберите пазл-облако в игре «Облачный конструктор» Представьте: пазл за пазлом вы сможете собрать настоящую облачную платформу. Позаботьтесь об устойчивой инфраструктуре, надёжном платформенном слое и безопасности облака. Среди всех участников игры-головоломки с помощью рандомайзера мы разыграем фирменный мерч MWS Cloud Platform. Если соберёте все пазлы, получите возможность выиграть грант в размере 20 000 ₽ на использование облака MWS Cloud Platform.

Hugo за 30 секунд. Мой пайплайн на Gitea Actions Наконец-то дошли руки до оптимизации пайпа для сборки Hugo в Gitea, да, есть куда еще стремиться, но там уже с жирными файлами нужно поработать. Пост больше для энтузиастов и для тех кто хочет посмотреть, как всё происходит под капотом. Можешь взять мою болванку и под свои проекты переделать. Читать: https://two.su/942is 🛠 #devops #dev 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog

Относительная нумерация Частенько народ интересуется, а почему у меня в виме такая странная нумерация. Да, этим вопросом и я
Относительная нумерация Частенько народ интересуется, а почему у меня в виме такая странная нумерация. Да, этим вопросом и я в своё время задавался. Называется это «Относительная нумерация». Главная идея здесь — быстрое перемещение по коду с клавиатуры. Например, курсор стоит у меня в 27 строке. Если я сейчас выполню комбинацию: 6j, то курсор у меня встанет на строку: Не забудь подставить своё мыло. Такая нумерация показывает расстояние до строки от курсора, а не её абсолютный номер. Аналогично работает и в других направлениях. В редакторе ZED это включается через конфиг:
relative_line_numbers": "enabled"
В виме же по классике в конфиге:
set number  
set relativenumber
Честно, если ты пользуешься мышкой, это бесполезная настройка. Для новичков это совсем неочевидная фича и возможно даже вредная. Короче у этой фичи целая философия: ➡️ Мышление расстояниями. В заурядной жизни, ты будешь думать — ага, мне бы на строку 15 попасть. А если ты адепт вима, твоё мышление такое — мне бы на 6 строчек ниже. ➡️ Ускорение всех count-команд. Тут не только клавиши hjkl задействованы, ты можешь выполнять ряд других операций. Например:
5dd — удалить 5 строк 3yy — скопировать 3 строки 4> — сдвинуть 4 строки вправо 2} — прыгнуть на 2 абзаца
Ты сразу видишь нужное число, сразу прожимаешь нужную комбинацию. ➡️ Сильно уменьшает мысленную математику. Без — так… я на 120 строке, мне нужно на 133… это +13. С ней — вижу 13 → 13j. Мозги по сути вообще ничего не считают. Это плюс. Думаешь не головой, а жопой. ➡️ Работает лучше с большими файлами. Когда у тебя файл на 1000+ строк, абсолютные номера создают шум, а относительные прям в тему. Ты ориентируешься вокруг курсора, а не во всём файле. Минусы? Да конечно! ➡️ Поначалу выламывает тебя, перестраивает, больно ➡️ Плохо подходит для дебага с конкретными строками В общем относительная нумерация, это не про цифры, она про то, чтобы перестать искать строки и моментально перепрыгивать в нужное место. Если есть чё добавить, камон в комменты, будет интересно почитать. 🛠 #devops #linux 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog

Решайте DevOps-, SRE- и FinOps-задачи с помощью облачного ИИ-помощника 💬 Большое обновление от Cloud.ru. Что нового: 1️⃣ Сра
Решайте DevOps-, SRE- и FinOps-задачи с помощью облачного ИИ-помощника 💬 Большое обновление от Cloud.ru. Что нового: 1️⃣ Сразу несколько ВМ в разных конфигурациях
Теперь ИИ-помощник в облаке может создавать несколько виртуальных машин, а после управлять ими по команде. Например, добавлять или удалять диски, менять конфигурации и выполнять другие повседневные операции.
2️⃣ Три новых сценария
▶️
DevOps-агент
— может разворачивать и обслуживать PostgreSQL, Kafka, WordPress, GitLab и другие популярные сервисы по текстовому промпту.
▶️
SRE-агент
— настраивает мониторинг, алертинг и помогает разбирать инциденты.
▶️
FinOps-агент
— находит забытые или неиспользуемые ВМ и предлагает их удалить, чтобы исключить бессмысленные траты. А еще может показать топ дорогих ресурсов, позволяя сравнивать траты за разные периоды.
👉 Попробовать

Такс, S3 кластер на Garage в предыдущем посте мы с тобой сообразили, самое время накрутить обвесов и сделать всё по взрослому. Как ты любишь — без хуйни.
Нежных сразу — нахуй, остальным велком.
Для начала установим балансировщик. То есть входная точка у кластер всегда будет одна, а дальше балансировщик будет раскидывать запросы по 3м нашим серверам в кластере. Если одна из нод пойдет по пизде, балансировщик это прозрачно разрулит и отдаст тебе файл в любом случае, даже без правки конфигов. Проверяем наш кластер:
docker exec -it garage-garage-1 /garage status
Работает. Дальше берем еще один сервер, который будет выступать балансировщиком. Для теста я создам в Selectel нищую виртуалочку и впихарю на нее haproxy. Устанавливаем haproxy:
apt install haproxy
Домен для кластера я буду использовать s3.linuxfactory.ru, соответственно во всяких rclone нужно будет прописать его в параметре endpoint. Правим конфиг /etc/haproxy/haproxy.cfg:
global
    log /dev/log local0
    maxconn 4096

defaults
    mode tcp
    timeout connect 5s
    timeout client  1m
    timeout server  1m
    option http-server-close  
  timeout http-request 10s  
  timeout queue 1m

frontend garage_front
    bind *:443 ssl crt /etc/ssl/garage.pem
    option http-buffer-request
    default_backend garage_back

backend garage_back
    balance roundrobin

    server node1 95.123.123.116:3900 check
    server node2 152.44.71.205:3900 check
    server node3 145.83.116.20:3900 check
Проверяем валидность конфиги:
haproxy -c -f /etc/haproxy/haproxy.cfg
Приучи себя всегда это делать, будь то nginx либо что-то другое. Однажды это спасет твою жопу от пенетрации.
Ага, хуй там плавал. Давай создадим SSL сертификат. Я конечно предпочитаю angie, чтобы он сам это сделал, но у нас haproxy, поэтому придется немного пострадать... Читать продолжение: https://two.su/aaahd 🛠 #devops #linux 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog

Митап для тех, кто управляет инфраструктурой Selectel собирает сисадминов и тех, кто управляет инфраструктурой на традиционны
Митап для тех, кто управляет инфраструктурой Selectel собирает сисадминов и тех, кто управляет инфраструктурой на традиционный митап с живыми дискуссиями, интерактивом и нетворкингом. 📅 6 мая, 19:00 📍Санкт-Петербург + онлайн Поговорим про ИИ в управлении инфраструктурой , новые ИИ-инструменты и поделимся своими историями из жизни на открытом микрофоне. Смотрите программу и регистрируйтесь: https://slc.tl/3y9ke Реклама. ООО "Селектел-Лаб". erid:2W5zFHFBzob

Свой S3 или пошаговая настройка Garage Здрасти, здрасти. Теперь по выходным у меня полнейший «цифровой детокс», а причина это
Свой S3 или пошаговая настройка Garage Здрасти, здрасти. Теперь по выходным у меня полнейший «цифровой детокс», а причина этому — дача. Круче всякого спортзала прокачивает, а заодно прочищает голову. Физический труд всегда в почёте. Ладно, это детали… сегодня будем поднимать собственный S3 и да, без хуйни вроде minio и ceph. А на помощь к нам приходит «Гараж», в котором мы и будем хранить наши «Вёдра». Garage ориентирован на маленький и средние кластера, домашние сервера и распределенные ноды. И да, он полностью в opensource и не просит денег. Для self-host пиздатейшее решений, да и морда есть из коробки. Я возьму 3 своих рандомных сервера и сделаю из них кластер. Сервера не пустые, на них что-то крутится и вертится, просто рядышком впендюрю еще одну хуёвинку. Почему именно 3 сервера? Кластерная классика, если один из серверов пойдёт по пизде, то 2 других соберут кворум и отдадут тебе твои данные. То есть тебе не нужно иметь заранее подготовленные машины, можно взять какойнить хлам и из него запилить кластер под бекапы. И всё это дело будет работать нативно через API S3.
Да, когда ты будешь заливать файлы в своё облако, данные будут реплицироваться на все 3 сервера. Поэтому сервера рекомендую держать в разных регионах или вообще у разных провайдеров. Например, если сгорит один дата центр, то ты не проебешь свои данные. Удобно и надёжно. Ну и смотри в сторону дискового места, если на одном сервере выделил 50 гигов под бакет, то на остальных серверах выдели столько же, чтобы не возникало коллизий.
Прицепом воткнем балансировщик нагрузки, чтобы по домену всё работало. И да, запускать будем в докере. Поехали настроим это безобразие. Демон докера надеюсь у тебя уже установлен, поэтому заострять внимание на этом не будем. Заходим на первый сервер и мутим мутки: Файл compose.yaml:
services:
  garage:
    image: dxflrs/garage:v2.3.0
    ports:
      - "3900:3900"  # S3 API
      - "3901:3901"  # RPC
      - "3902:3902"  # Web (optional)
      - "3903:3903"  # Admin API
    volumes:
      - ./garage.toml:/etc/garage.toml:ro
      - ./meta:/var/lib/garage/meta
      - ./data:/var/lib/garage/data
Думаю, вопросов не должно возникнуть. Банальный композник, порты я тебе все подписал. Версию гаража можешь глянуть в интернете, на момент написания статьи последняя v2.3.0. Да буква «v» тут важна и latest тут не канает. Читать продолжение: https://two.su/3qjfl 🛠 #devops #linux 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog

Как обеспечить стабильность баз данных при росте проекта и нагрузок ✨ База данных — это сердце приложения, но самостоятельное
Как обеспечить стабильность баз данных при росте проекта и нагрузок
База данных — это сердце приложения, но самостоятельное администрирование быстро превращает заботу о нем в рутину: постоянные обновления, бэкапы, мониторинг и работа с нагрузкой. С ростом проекта стандартных настроек уже не хватает, а риск просадок и простоев из-за ошибок в конфигурации становится выше.
На вебинаре 28 апреля эксперт Cloud.ru разберет, как передать обслуживание PostgreSQL управляемому сервису в облаке и настроить архитектуру Master/Replica для стабильной работы при высоких нагрузках. В программе:
▶️
сравнение managed- и self-hosted PostgreSQL;
▶️
ключевые метрики базы данных: на что обращать внимание в мониторинге, чтобы не доводить до инцидента;
▶️
настройка автоматического резервного копирования и политики восстановления данных;
▶️
реализация схемы разделения трафика на чтение и запись.
На демо покажут, как добавить в сервис поддержку нескольких реплик и разгрузить базу на чтении, и проведут нагрузочное тестирование, чтобы сравнить показатели до и после оптимизации. Зарегистрироваться

👉 Поднимите приватный инференс на выделенном железе В Selectel сделали поддержку видеокарт в управляемых кластерах Kubernete
👉 Поднимите приватный инференс на выделенном железе В Selectel сделали поддержку видеокарт в управляемых кластерах Kubernetes на выделенных серверах. Теперь модели можно запускать на отдельном железе: стабильная производительность, изоляция данных и конфигурации под разные задачи. По стоимости — до 40% дешевле, чем использовать ускорители в облачных серверах. Попробуйте сами, на тест дают до 30 000 бонусных рублей: https://slc.tl/3vvcj Реклама. АО "Селектел". erid:2W5zFGHqZxm

💥 Настройка кластера Elasticsearch с нуля 27 апреля в 20:00 мск — бесплатный урок курса «Инфраструктура высоконагруженных си
💥 Настройка кластера Elasticsearch с нуля 27 апреля в 20:00 мск — бесплатный урок курса «Инфраструктура высоконагруженных систем» Хотите построить по-настоящему масштабируемый и отказоустойчивый поисковый кластер? На вебинаре разберём, как правильно организовать Elasticsearch, чтобы он стабильно работал под высокой нагрузкой и легко масштабировался. 📌 Что будет: — Архитектура Elasticsearch: шарды, реплики и их роль в распределении данных — Правильная конфигурация кластера для устойчивой и надёжной работы — Пошаговое добавление новой ноды и масштабирование без простоев — Основные ошибки при настройке кластера и как их избежать — Балансировка нагрузки и обеспечение отказоустойчивости хранения данных 👉 Регистрация открыта https://vk.cc/cWVydF Вебинар приурочен к старту курса «Инфраструктура высоконагруженных систем». Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Всем привет. Что мы все о bash да и bash. Надоело. Сегодня поговорим про awk. 🔤🔤🔤🔤🔤🔤🔤 Не много осталось админов, которые парсят текстовые логи. Вся молодежь и даже пОдростки перешли на JSON. Ну да, это удобно. Но иногда awk быстрее. Особенно на больших файлах и файлах и простых фильтрах. Но я сегодня не в настроении устраивать холивар. При использовании логов очень часто возникает проблема — очень большое количество полей. А awk зачастую использует именно номер поля. Так вот, чтобы немного упростить задачу я написал маленький скрипт, который разбирает строку и нумерует поля. Это здорово экономит время. Сам скрипт:
#!/bin/awk -f
BEGIN{printf "INPUT field separator "
  getline
  FS=$0
  printf "INPUT test line\n"
  getline
  printf "\n\n"
  for (i=1;i<=NF;i++)print i, $i
}
Как обычно сохраняем fields.awk и делаем исполняемым:
chmod +x fields.awk
./fields.awk
Как это работает: 1. Сначала вводим разделитель. 2. Затем строчку лога и получаем разбивку по полям. Ввод разделителя нужен, потому что иногда уже внутри кода приходится использовать оператор split и другой разделитель. Да и логи бывают разных форматов. Рассмотрим такой пример:
<134>1 2026-04-17T16:51:47+03:00 OPNsense.internal filterlog 18074 - [meta sequenceId="2054702"] 111,,,4b75111111111111111111111111cb1d,eno1,match,block,in,4,0x0,,64,27367,0,DF,6,tcp,60,192.168.2.125,192.168.7.14,60248,22,0,S,1539242113,,65535,,mss;sackOK;TS;nop;wscale
В этом случае, если нужно одновременно вытащить и дату и IP с портами, проще в качестве основного разделителя использовать ",", а потом первое поле:
<134>1 2026-04-17T16:51:47+03:00 OPNsense.internal filterlog 18074 - [meta sequenceId="2054702"] 111
Здесь, если мы разбить по пробелам (split($1,f," ")), то f[2] будет содержать дату. Которую в свою очередь можно путем нехитрых манипуляций превратить в unuxtime, для удобства машинной обработки. Всем кода без багов. 🛠 #bash #linux 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog

👉 Поднимите приватный инференс на выделенном железе В Selectel сделали поддержку видеокарт в управляемых кластерах Kubernete
👉 Поднимите приватный инференс на выделенном железе В Selectel сделали поддержку видеокарт в управляемых кластерах Kubernetes на выделенных серверах. Теперь модели можно запускать на отдельном железе: стабильная производительность, изоляция данных и конфигурации под разные задачи. По стоимости — до 40% дешевле, чем использовать ускорители в облачных серверах. Попробуйте сами, на тест дают до 30 000 бонусных рублей: https://slc.tl/3vvcj Реклама. АО "Селектел". erid:2W5zFGHqZxm

Кажется, сейчас уже у всех есть свой зоопарк из облаков, on-prem и гибридных решений. Интересно, как это реально устроено у р
Кажется, сейчас уже у всех есть свой зоопарк из облаков, on-prem и гибридных решений. Интересно, как это реально устроено у разных команд. Apple Hills Digital как раз проводит исследование по облачным решениям: смотрят, какие платформы используют, под какие задачи и как в итоге оценивают сервисы и поддержку. Можно пройти короткий скрининг (~3 минуты). Если подходите — откроется основная анкета (до 10 минут). Среди участников — розыгрыш iPhone* * Принимая участие в опросе Вы становитесь участником розыгрыша под наименованием «Если ты работаешь в IT, пройди опрос и выиграй iPhone 17 Pro». Информация об организаторе розыгрыша, сроках проведения, правилах проведения розыгрыша, количестве призов, сроках, месте, порядке получения призов размещена по ссылке

Твой сайт — решето! Или как не обосраться Недавно я показывал тебе как настроить свой собственный поисковый движок на SearXNG
+1
Твой сайт — решето! Или как не обосраться Недавно я показывал тебе как настроить свой собственный поисковый движок на SearXNG, ну так вот, нашел на просторах агрегатора, который собирает такие публичные поисковики в табличку. И по сути можно на чужих серверах устроить себе полноценный поиск по интернету. Ссылка: https://searx.space/ Зачем? Ну к примеру нужно тебе что-то быстро анонимно поискать, а своё детище поднимать в хуй не упёрлось. Открываешь такой публичный поисковик и ебешь его в хвост и в гриву. Но естественно не забываем предварительно включить КВН или соксы. Для браузеров есть пиздатые плагины: Zero Omega и FoxyProxy.
Я пользуюсь первым, как-то более интуитивно понятно правила настраиваются, в отличие от второго. Но тут больше вкусовщина, возможно ты оверхед монстр и спокойно стихи на регулярках перед сном читаешь своему ребенку.
СТОП! Яж про другое… Пойдем дальше, на этом сайте я увидел рейтинги настройки серверов и вспомнил, когда я 100 лет назад поднимал инстанс с собственным mastodon сервером, я упарывался в безопасность и прям активно соблюдал эти рейтинги. Потом это всё забылось и сегодня решил проверить свой основной блог и мягко говоря прихуел. Мой социальный рейтинг по SSL был на уровне «D» — да вы батенька не девопс-инженер, вы пидор ебаный! Дела, дела! Надо это исправлять. Чё значит этот рейтинг? Сервис Mozilla Observatory смотрит не на код приложения, а на то, насколько правильно настроен твой сервер и заголовки безопасности.
A / A+ = всё настроено пиздато B / C = терпимо, но ты все равно долбаёб D / F = хуйня, переделать, серьёзные дыры, почти нет защиты
Кстати опять же пентестеры активно применяют это в своей работе, чтобы быстренько проверить безопасность конфигурации и по возможности найти лазейку к твоему шоколадному бекенду с последующим проникновением без вазелина. Если кратко — это линтер безопасности, а рейтинг всего лишь сводная оценка качества настроек и твоих компетенций. Основные категории проверки: 1. HTTP-заголовки безопасности 2. HTTPS и TLS 3. Cookies 4. Защита от известных атак Хули, давай это исправим, мне пришлось добавить такое в свою конфигурацию, чтобы добить рейтинг в более-менее вменяемую зону и получить заветную букву «B». Чтобы получить «A» мне придется немного перекроить работу с javascript, но пока мне лень. Собственно конфиг:
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' https:; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; frame-src 'self' https://video.bashdays.ru https://t.me; connect-src 'self' https://api.rss2json.com https://bashdayz.ru;" always;

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

add_header X-Frame-Options "SAMEORIGIN" always;

add_header X-Content-Type-Options "nosniff" always;

add_header Referrer-Policy "strict-origin-when-cross-origin" always;
⚪ Это защита от XSS атак и внедрения чужого контента. Я прописал доверенные сайты с которыми работаю. Но узкой дыркой осталось «unsafe-inline», с помощью него я разрешил inline JS, чтобы мои статусы из mastodon корректно передавались. Вот эту штуку и нужно будет допилить, чтобы получить по ебалу рейтинг «A+». ⚪ Всегда используй протокол https, включая поддомены. ⚪ Предоставляет защиту от clickjacking, разрешает вставку сайта в iframe только с того же домена, но у меня уже это прописано в первом заголовке. Похуй, оставляем. Кстати он уже устаревший, но все еще используется. ⚪ Запрещает браузеру угадывать тип файла, например сервер отдал JS как text/plain, браузер мог бы «догадаться» и выполнить. Теперь хуй, ничего не выполнит. ⚪ Контролирует, что отправляется в Referer, хороший баланс приватности и аналитики. Если подытожить, получаем — грузи ресурсы только отсюда, не доверяй подозрительной хуйне, всегда используй https и не давай сайту быть встроенным куда попало. На этом собственно и всё, можешь пойти и проверить свои компетенции в настройке. Поделись в комментах своим социальным рейтингом, хоть позавидуем. 🛠 #security #devops 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog

А какие способы хитрой подмены файлов помимо mount --bind ты знаешь?
echo first >first.txt
echo second >second.txt
ln -s first.txt second.txt

# Выведет: ln: cannot create symbolic link from 'first.txt' to 'second.txt': File exists

mount --bind first.txt second.txt
# А так работает.

cat second.txt
#Выведет first.
Наверное можно еще через cgroups замутить, или через eBPF понаделать хуки на системный вызов open, openat, туда же mount overlay... 🛠 #shitcode #bash 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog

😁😆😁 Не забыть поздравить подписчиков и коллег с Пасхой

15 апреля на вебинаре поговорим о том, как с нуля построить разработку в облаке ⚫️Обсудим, зачем переносить разработку в обла
15 апреля на вебинаре поговорим о том, как с нуля построить разработку в облаке ⚫️Обсудим, зачем переносить разработку в облако, какие есть подводные камни ⚫️Подготовим базовую инфраструктуру и развернëм ключевые сервисы разработки ⚫️Соберём, протестируем и развернëм приложение в целевое окружение, оптимизируем раннеры для ускорения сборок ⚫️Настроим безопасность: доступы, секреты, шифрование ⚫️Подготовимся к продакшену и масштабированию ⚫️Ответим на ваши вопросы Присоединяйтесь! Узнайте, как с нуля построить и запустить инфраструктуру разработки в облаке MWS Cloud Platform. 📆 15 апреля в 14:00 (мск) Зарегистрироваться