Обновить

Администрирование

Сначала показывать
Порог рейтинга

Команда разработчиков языка программирования Python визуализировала изменение кодовой базы интерпретатора CPython в привязке к основным событиям, произошедшим за 36 лет существования проекта. За последние 10 лет объём кода на языках Python и Си в CPython практически удвоился. Для подсчёта числа строк кода использовалась утилита cloc.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

GitHub визуализировали в цифровой город в проекте gitcity. В рамках проекта представлен сайт, на котором можно летать по «городу», где каждое здание это аккаунт разработчиков. Высота небоскребов = количеству коммитов. Летая по городу, можно искать интересные и популярные аккаунты, либо находить что-то новое и недооцененное.

Теги:
Всего голосов 5: ↑5 и ↓0+7
Комментарии1

Вот парочка тонкостей, которые касаются гибернации в ОС Linux:

  1. Если своп находится внутри LVM, даже зашифрованного через LUKS, подсистема ядра Kernel Lockdown не даст включить гибернацию, если в UEFI включён Secure Boot. Чтобы всё это добро работало, нужно вынести своп таким образом, чтобы оно было напрямую подвязано к LUKS-контейнеру, без LVM.

  2. Гибернация в режиме UEFI Secure Boot работает только внутри зашифрованного LUKS-контейнера. Если своп хранится в незашифрованном виде, подсистема Kernel Lockdown не даст включить гибернацию. Это сделано для защиты от подмены данных, а также от получения данных со свопа извне запущенного с ним экземпляра ОС.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии2

Открыта регистрация на вебинар «РЕД АДМ Промышленная редакция 2.1: новые возможности»

12 марта в 11:00 состоится вебинар, посвящённый свежему обновлению РЕД АДМ Промышленной редакции. Слушателей ждёт экскурсия по всем нововведениям, вошедшим в релиз 2.1, а также сессия ответов на вопросы.

Программа

— Ключевые направления развития РЕД АДМ

— Подсистема «Служба Каталогов». Реализация поддержки ADMT, работа с MS Exchange, новый механизм LoginFrom и настройка парольных политик.

— Подсистема «Управление». Рассмотрим принцип работы API для РЕД АДМ и процесс автоматического обновления сертификатов Aladdin CA.

— Конфигурации и работа с инвентаризационными группами.

— Подсистема «Динамическая настройка сети». Миграция DHCP из Microsoft Windows Server и автоматизация настройки сети для различных типов устройств.

— Демо и сессия ответов на вопросы.

Спикер: Денис Солоничкин, директор центра компетенций РЕД СОФТ.

Регистрация уже доступна на сайте

Подробнее об обновлении продукта можно узнать из пресс-релиза и на сайте РЕД АДМ.

Теги:
Рейтинг0
Комментарии0
Установка сертификатов Минцифры одним CMD-скриптом: быстро, без бубна
Установка сертификатов Минцифры одним CMD-скриптом: быстро, без бубна

Коллеги, сделал небольшой утилитарный скрипт для установки сертификатов Минцифры.

Проблема знакомая многим:
при работе с Госуслугами, банковскими сервисами или рядом государственных порталов требуется установить корневые и удостоверяющие сертификаты Минцифры.

Обычно это выглядит так:

• скачивание сертификатов
• импорт через MMC
• установка в разные хранилища
• повторить несколько раз

Чтобы упростить задачу, собрал архив со скриптом, который устанавливает все сертификаты пакетно.

В архиве:
— 2 корневых сертификата
— 3 удостоверяющих центра

Достаточно:

  1. распаковать архив

  2. запустить CMD-файл от имени администратора

Сертификаты автоматически добавляются в системное хранилище Windows.

Подробная статья и разбор:
https://it-apteka.com/ustanovka-sertifikatov-mincifry-odnim-cmd-skriptom-bystro-bez-bubna/

Скачать архив:
https://it-apteka.com/wp-content/uploads/2026/03/certs_install.zip

Буду благодарен за обратную связь, особенно если используете в корпоративной среде.

Теги:
Всего голосов 4: ↑2 и ↓2+1
Комментарии3

DHCPscan - Поиск паразитного DHCP в сети⁠

Классика жанра:
кто-то принес домашний роутер, разработчик поднял тестовую виртуалку, или админ (мы его не осуждаем) забыл выключить DHCP на стенде.

Проблема в том, что DHCP работает по принципу
«кто первый ответил — того и слушают»,
поэтому один случайный DHCP может положить половину сети.

Я написал маленькую утилиту DHCPScan, которая делает одну простую вещь:

— отправляет DHCP Discover
— собирает все DHCP Offer
— показывает все DHCP серверы в сети
— разбирает DHCP options (DNS, gateway, NTP, option 43, option 82 и т.д.)

В итоге rogue DHCP находится буквально за несколько секунд и можно протестировать DHCP options легитимного сервера.

Подробнее читайте тут

Буду признателен, если протестируете утилиту и напишите фидбек.

Теги:
Всего голосов 7: ↑7 и ↓0+7
Комментарии8

S3 в Рег.облаке: лимит вырос с 500 ГБ до 20 ТБ

S3 в Рег.облаке теперь масштабируется до 20 ТБ — теперь пользователи самостоятельно выставляют квоту через панель. Раньше максимальный лимит объектного хранилища был 500 ГБ — чтобы его поднять, нужно было писать в поддержку. Теперь квота выставляется в режиме реального времени через панель управления Рег.облака.

Сценарии, где это пригодится:

  • архивные резервные копии, которые копятся быстрее, чем ожидалось;

  • медиафайлы высокого разрешения и потоковые данные;

  • логи и датасеты для обучения ML-моделей; 

  • любые задачи, где объем данных растет непредсказуемо.

Повышенные лимиты и мгновенное масштабирование дают компаниям возможность заранее планировать рост проектов и работать с большими объемами данных без ограничений по хранилищу.

Поднять квоту можно в личном кабинете Рег.облака.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

UEFI: что происходит между нажатием кнопки включения и стартом ядра

До старта ядра ОС проходит несколько секунд. За это время успевает отработать полноценная семиэтапная цепочка — и всем этим управляет UEFI.

За этим интерфейсом — собственный диспетчер драйверов, менеджер загрузки с энергонезависимой памятью и проверка цифровых подписей по всей цепочке доверия. И это не считая Secure Boot, GPT с резервными копиями таблицы разделов в начале и конце диска, и сетевого стека, который позволяет грузиться по PXE или удаленно администрировать машину еще до установки ОС.

В блоге разобрали всю цепочку — от аппаратной инициализации до загрузки ntoskrnl.exe. Плюс типичные ошибки загрузки и как их чинить через настройки UEFI.

Подробности — на сайте Рег.облака.

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии1

Состоялся релиз РЕД АДМ Промышленная редакция 2.1

РЕД АДМ 2.1 ещё один шаг к идеальной инфраструктуре

Среди ключевых нововведений:

— Работа с почтовым сервисом Microsoft Exchange. Добавлена поддержка Microsoft Exchange, позволяющая строить инфраструктуру без обязательного сохранения Microsoft Active Directory.

— Полноценная поддержка Microsoft ADMT. Бесшовный перенос объектов домена с сохранением организационной структуры и доступа к корпоративным ресурсам.

— LoginFrom — уникальный механизм безопасности, который позволяет гибко управлять источниками аутентификации в домене, ранее не реализованный ни в одном из аналогичных решений.

— Открытый API с полной документацией позволит автоматизировать любые сценарии управления инфраструктурой.

Подробности — в пресс-релизе на сайте
Список всех изменений

Теги:
Всего голосов 2: ↑1 и ↓10
Комментарии0

10 бесплатных уроков марта по системному администрированию

Еще больше бесплатных уроков от преподавателей курсов можно посмотреть в календаре мероприятий.

А для тех, кто хочет быстро и на практике подтянуть основы, рекомендуем мини-видеокурс «Linux для начинающих», сейчас всего за 10 рублей.

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии0

Запустили Yandex Monium — observability‑платформу собственной разработки

Сегодня мы открываем доступ к Monium — платформе для мониторинга и анализа работы IТ‑систем. Новое решение собирает и анализирует большое количество телеметрических данных, в том числе логов, трейсов и метрик в едином интерфейсе, а также позволяет визуализировать их в виде дашбордов. С помощью Monium можно следить за работой сервисов, приложений, а также ИИ‑агентов — независимо от того, где они находятся: в облаке или на ваших собственных серверах (on‑premises).

Изначально observability‑платформа была разработана командой Yandex Infrastructure для обеспечения стабильной работы внутренних сервисов компании. Сейчас с Monium ежедневно работают 16 тысяч сотрудников Яндекса, платформа обрабатывает 50 гигабайт логов в секунду. При возникновении проблем ответственным дежурным отправляются автоматические уведомления через различные каналы: мессенджеры, почту, звонки и другие системы.

Monium использует современные механизмы аутентификации и авторизации, а данные о пользователях на платформе шифруются. Платформа соответствует требованиям международных и российских стандартов безопасности, в том числе ISO, PCI DSS и ГОСТ Р 57580.

Yandex Monium находится в общем доступе — зайти и оценить фичи платформы можно из облачной консоли.

Теги:
Всего голосов 12: ↑12 и ↓0+12
Комментарии0

Дайджест Рег.облака за февраль

Февраль выдался насыщенным: завершили бету сетевых дисков, запустили n8n и обновили Облако ФЗ-152. Ниже — всё главное за месяц.

Запустили n8n
В Рег.облаке появился n8n — open-source-инструмент для автоматизации рабочих процессов. Позволяет соединять сервисы, строить пайплайны и автоматизировать задачи без написания кода. Уже доступен всем пользователям в личном кабинете.

Обновили Облако ФЗ-152
Добавили новый функционал для Облака ФЗ-152: обновления расширили возможности работы с облачными серверами и машинами в этом контуре. Узнать больше о новых возможностях можно на сайте Рег.облака.

Провели исследование рынка облаков
Опубликовали исследование «Облака потяжелели из-за притока крупного бизнеса» — о том, как меняется структура спроса на облачные сервисы. Все цифры и инсайты — в нашем блоге.

Обновили сетевые диски
Доработали функциональность и вывели сетевые диски на следующую стадию роадмапа. Это облачное блочное хранилище, которое подключается к виртуальным серверам как обычный диск — данными можно управлять независимо от вычислений. Подробности —  на странице продукта.

Упростили заказ выделенных серверов
Убрали из процесса заказа выделенного сервера этап донастройки на стороне клиента — теперь сервер активируется сразу после оплаты и установки. Если нужны комментарии к установке ОС, их можно добавить прямо в мастере заказа. 

Обычно про вебинары здесь не пишем, но этот по теме: 5 марта проведем демо и разбор типов хранилищ в облаке. Спикеры расскажут, когда лучше выбирать блочные диски, а когда S3, как не переплачивать и как строить гибридные архитектуры под ML, бэкапы, медиа и аналитику. Вопросы можно задать в прямом эфире. А за анонсами следующих вебинаров удобнее следить в нашем Telegram-канале.

Март обещает быть интересным, поэтому совсем скоро мы вернемся с новостями и полезными материалами. Спасибо, что следите за Рег.облаком!

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Годовалый ребёнок без присмотра решил понажимать на кнопки на коробочке и случайно удалил 32 ТБ данных на NAS‑сервере. Зачем вообще было производителю добавлять функцию «Удалить весь RAID» в меню «Быстрая настройка», родитель не понял.

Теги:
Всего голосов 4: ↑4 и ↓0+4
Комментарии2

Ближайшие события

31 сервис для бесплатного обучения: бэкенд, фронтэнд, нейронки, докер, Java, Web-3 и многое другое:

  • HTML.com — полный справочник тегов и атрибутов для новичков, делающих первые шаги в разметке веб-страниц;

  • Web.dev — обучающий курс от Google с практикой: современная вёрстка, гриды, флексы и всё, что нужно для красивых макетов;

  • Javascript.info — настольная книга по JS: от базового синтаксиса до сложных тем типа прототипного наследования и async/await;

  • Reactplay.io — площадка, где React учат не по учебникам, а через живые проекты и челленджи;

  • Learnvue.co — компактные и понятные туториалы по Vue.js без воды;

  • Angular.dev — официальное руководство от создателей Angular: шаг за шагом от нуля до рабочего приложения;

  • Git-scm.com — полноценный учебник по Git и контролю версий;

  • Learnweb3.io — школа Web3-разработки: блокчейн, децентрализация и всё вокруг этого;

  • Learnpython.org — онлайн-тренажёр Python: пишешь и запускаешь код прямо в браузере, ничего не устанавливая;

  • W3schools.com — культовый справочник с встроенной песочницей, где можно тут же тестировать SQL-запросы и не только;

  • Cryptozombies.io — геймифицированный курс по смарт-контрактам;

  • Nextjs.org — обучалка по главному React-фреймворку, который делает веб-приложения реактивно быстрыми;

  • Elementsofai.com — курс по основам ИИ от Хельсинкского университета, написанный так, что поймёт даже филолог;

  • Phptherightway.com — руководство по написанию чистого PHP-кода в соответствии с актуальными стандартами;

  • Rapidapi.com — практические уроки по подключению и использованию сторонних API в своих проектах;

  • Learn-golang.org — экспресс-курс по Go для тех, кто метит в высоконагруженные сервисы;

  • Rust-lang.org — официальный портал языка Rust: максимальная скорость и безопасность на системном уровне;

  • Refactoring.guru — топовый ресурс о паттернах проектирования и искусстве рефакторинга спагетти-кода в чистую архитектуру;

  • Typescriptlang.org — руководство по TypeScript — типизированной надстройке над JS, без которой не обходится ни один серьёзный проект;

  • Cplusplus.com — фундаментальный справочник по C++: переменные, указатели, работа с памятью и всё между ними;

  • Docs.oracle.com — официальные обучающие треки по Java от тех, кто этот язык придумал;

  • Dotnet.microsoft.com — портал по экосистеме .NET: разработка на C# под любую платформу — от десктопа до облака;

  • Swift.org — точка входа для тех, кто хочет создавать приложения под iOS и экосистему Apple;

  • Djangoproject.com — введение в Django — самый мощный Python-фреймворк для веб-приложений;

  • Flask.palletsprojects.com — гайд по Flask: минималистичный Python-фреймворк, идеальный для микросервисов;

  • Docker.com — основы контейнеризации: как упаковать приложение так, чтобы оно запускалось на любой машине без сюрпризов;

  • Kubernetes.io — руководство по оркестрации контейнеров и управлению кластерами в продакшене;

  • Linuxjourney.com — пошаговый маршрут от полного нуля до уверенного администрирования Linux;

  • Tryhackme.com — обучение кибербезу и этичному взлому в игровом формате с реальными симуляциями;

  • Roadmap.sh — структурированная дорожная карта: что учить и в каком порядке, чтобы стать DevOps-инженером;

  • Cloudskillsboost.google — практические лабораторные и курсы по Google Cloud с бейджами за прогресс.

Теги:
Всего голосов 11: ↑10 и ↓1+9
Комментарии0

Как появился Docker?

Продолжаю писать серию коротких постов про историю айти. В последнее время нам очень интересна тема нашего наследия и почитывая разные источники, я пишу об этом коротко и простым языком.

В 2013 году биткойн впервые пробивает тысячу долларов, а Сноуден сливает PRISM. У людей начинает появляться ощущение и понимание, что интернет-сервисы, которыми они пользуются каждый день, могут быть частью конвейера доступа к данным. На этом фоне у всего IT живёт боль в виде окружения. Чтобы запустить приложение в среде, нужно было вручную настраивать сотни зависимостей. Малейшее несовпадение версии и всё падает. Виртуальные машины помогали, но они были слишком тяжелыми.

В этом же году в компании dotCloud во главе с его основателем Соломоном Хайксом делали сервис, в котором ты загружаешь код и он запускается на сервере без ручной настройки. Для этого им нужен был внутренний инструмент, который упаковывает приложение вместе с окружением.В какой-то момент они поняли, что их облачный бизнес идет так себе, а вот штука для управления контейнерами получился бриллиант.

Так Хайкс впервые представил Docker на PyCon. В своем докладе он упоминал, что айти индустрия страдала от проблемы под названием “матрица ада”. То есть чтобы запустить каждое приложение в каждой среде, нужно было вручную настраивать сотни зависимостей. Малейшее несовпадение версии библиотеки и всё падает. Виртуальные машины помогали, но они были слишком тяжелыми. Это оказалось сильнее, чем первоначальная бизнес-идея dotCloud.

В Linux уже были на тот момент механизмы изоляции, но собрать это можно было, однако повторить - сложно. Первопроходцы Solaris Zones в 2004 году были не хуже. Но Docker единственный упаковал контейнеры так, что ими стало удобно пользоваться: рецепт сборки в Dockerfile, слои для переиспользования и публичный реестр по умолчанию. Он победил за счет удобного UX.

Докер так быстро стал стандартом, что другие игроки испугались монополии на формат. И чтобы не расколоть индустрию, закрепили нейтральный стандарт - OCI (Open Container Initiative).

Подписывайтесь на наш Telegram-канал. Там мы публикуем полезные подборки от инженеров и делимся инсайтами.

Теги:
Всего голосов 2: ↑1 и ↓10
Комментарии1

Облачный сервис 152-ФЗ от Рег.облака теперь с инструментами аварийного восстановления

Работать с персональными данными в облаке и при этом оставаться в рамках ФСТЭК — задача нетривиальная. Чаще всего компании либо жертвуют гибкостью, либо тянут внешние сервисы, которые сразу выводят инфраструктуру за аттестованный периметр.

Рег.облако обновил защищенное облако 152-ФЗ: внутри аттестованного периметра теперь доступны автоматизированное резервное копирование виртуальных машин и удаленный доступ к консоли (VNC) для аварийного администрирования. Оба инструмента работают без подключения внешних сервисов — соответствие нормативным требованиям сохраняется на всех этапах.

Актуально для операторов ПДн, особенно из финтеха, e-commerce и ритейла, где простои и потеря данных бьют по выручке быстро и ощутимо.

Подробнее об обновлениях — на сайте Рег.облака.​​​​​​​​​​​​​​​​

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Вышла аналитическая статья на iXBT по теневому ПО и контролю ИТ-активов

Хаос в ИТ-инфраструктуре — настоящая угроза
Хаос в ИТ-инфраструктуре — настоящая угроза

Привет, я Данила Трусов, директор «Инферит ИТМен», разработчика системы учета и контроля ИТ-активов. Мы опубликовали большой разбор на iXBT.com про то, что реально происходит с установленным ПО в компаниях.

👉 Статья лежит тут

В материале собрали концентрацию данных с недавно проведенного онлайн-марафона:

  • данные по «невидимому» и неучтенному ПО

  • как это влияет на ИБ 

  • где компании теряют деньги

  • почему разовые аудиты не работают

Также в статье делимся результатами специально проведенного исследования на онлайн-платформе с выборкой 1000+ респондентов и опросом участников нашего профильного марафона (ИТ-директора, ИБ, инфраструктура).

Получилась довольно показательная картина по уровню зрелости процессов.

Если тема контроля ИТ-активов вам близка, читайте, будет полезно.
Готов обсудить цифры и выводы в комментариях.

Теги:
Всего голосов 9: ↑8 и ↓1+7
Комментарии0

DevSecOps: как встроить безопасность в разработку и не тормозить релизы

DevSecOps — это подход, при котором безопасность перестает быть отдельным этапом перед релизом и становится частью всего жизненного цикла продукта. Проверки уязвимостей, контроль зависимостей и анализ конфигураций встраиваются прямо в CI/CD-пайплайн — команда получает обратную связь сразу, а не после деплоя в продакшн.

Чем раньше находишь проблему, тем дешевле ее исправить. Поэтому DevSecOps особенно актуален для облачных и микросервисных архитектур, где ручной контроль уже не справляется со скоростью изменений.

Подробнее о принципах DevSecOps, инструментах для каждого этапа разработки и пошаговом плане внедрения читайте на сайте Рег.облака.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Запуск USB-сканера отпечатков пальцев Chipsailing CS9711 на Linux.

Эти сканеры продаются на маркетплейсах по цене 1-2 т.р. Команда lsusb опознаёт их как
ID 2541:0236 Chipsailing CS9711Fingprint. Мейнстримный fprintd этот сканер не поддерживает. Как видно из комментариев к MR, разработчики не могут оценить точность нового алгоритма sigfm для сравнения отпечатков, потому не спешат (а дефолтному уже 15 лет, и он довольно плохо работает с низким разрешением сканера).

На Arch драйвер должен ставиться из AUR, рецепт для Fedora тут, далее - рецепт для Ubuntu.

TL;DR: аккуратно подменяем системную библиотеку libfprint-2.so версией из форка.

1. Скачать и скомпилировать форк libfprint-2 с поддержкой сканера

git clone https://github.com/archeYR/libfprint-CS9711
cd libfprint-CS9711
meson setup build

Последняя команда может выдать ошибку, не найдя в системе пакетов с нужными библиотеками (libgusb-dev, libopencv-dev и т.п.). Надо их поставить и выполнить её снова.

Компилируем:

ninja -C build

Для проверки позапускаем примеры:

cd build/examples
sudo ./enroll
sudo ./verify

Установить библиотеку, если всё хорошо (действовать с острожностью! обратите внимание на комментарии к посту)

cd ..              # предполагаю, что из build/examples никуда не уходили
sudo ninja install

В итоге должен появиться файл /usr/local/lib/x86_64-linux-gnu/libfprint-2.so.2.0.0 (и еще другие, тоже в /usr/local, но они не важны)

2. Установить пакет с демоном распознавания по отпечатку пальца

sudo apt install fprintd

Эта команда установит также пакеты с libfprint-2 из системных репозиториев, без поддержки нашего сканера.

3. Подменить библиотеку libfprint-2

Варианты:

  • указать ld.so читать нужную библиотеку перед запуском fprintd

  • создать в /usr/lib/x86_64-linux-gnu/ симлинк на правильный файл

  • перезаписать библиотеку в /usr/lib/x86_64-linux-gnu

  • PPA

У каждого есть плюсы и минусы, последние два рассмотрены не будут.

3.1. Предзагрузка нужной libfprint-2

sudo systemctl edit fprintd

Откроется окно редактора; добавить две строки (там сказано, куда)

[Service]
Environment="LD_PRELOAD=/usr/local/lib/x86_64-linux-gnu/libfprint-2.so"

сохранить файл, закрыть редактор.

3.2. Установка правильной символической ссылки

sudo update-alternatives --install\
  /usr/lib/x86_64-linux-gnu/libfprint-2.so.2\
  libfprint\
  /usr/local/lib/x86_64-linux-gnu/libfprint-2.so.2.0.0 100

В комментах под постом написано, что должна выдать команда ls -l, если всё сделано правильно.

После любой из манипуляций перезапустить fprintd и проверить, что он не выдаёт ошибок.

sudo systemctl restart fprintd
sudo systemctl status fprintd

Ожидаемый вывод:

● fprintd.service - Fingerprint Authentication Daemon
     Loaded: loaded (/usr/lib/systemd/system/fprintd.service; static)
    Drop-In: /etc/systemd/system/fprintd.service.d
             └─override.conf
     Active: active (running) since Tue 2026-02-24 16:02:45 MSK; 1s ago
          ...
фев 24 16:02:45 machine-name systemd[1]: Starting fprintd.service - Fingerprint Authentication Daemon...
фев 24 16:02:45 machine-name systemd[1]: Started fprintd.service - Fingerprint Authentication Daemon.

4. Зарегистрировать пальцы командой fprintd-enroll

По умолчанию регистрируется правый указательный, остальное написано в man fprintd-enroll

5. Включить вход по отпечатку

sudo pam-auth-update

поставить звёздочку на Fingerprint Authentication и нажать Ok.

Это вот так поменяет файл /etc/pam.d/common-auth:

-auth   [success=1 default=ignore]      pam_unix.so nullok
+auth   [success=2 default=ignore]      pam_fprintd.so max-tries=5 timeout=10 # debug
+auth   [success=1 default=ignore]      pam_unix.so nullok try_first_pass

Проверено на Kubuntu 24.04.4 LTS.

Ссылки по теме:
https://man7.org/linux/man-pages/man8/ld.so.8.html
https://manpages.ubuntu.com/manpages/noble/man5/pam.conf.5.html

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии8