Особенности эксплуатации CA на роутерах Mikrotik: резервное копирование, экспорт и импорт сертификатов
Mikrotik предоставляет пользователям достаточно широкие возможности, одна из них - создание на роутере собственного центра сертификации (CA), который позволяет управлять собственной инфраструктурой открытых ключей (PKI).
Благодаря этому вы можете выпускать, подписывать и отзывать сертификаты, а также поддерживать доверительные отношения без использования дополнительных технических и программных средств.
Это удобно, но эксплуатация CA на базе Mikrotik имеет свои особенности и подводные камни, которые нужно четко представлять и учитывать при выборе такого решения.
Коротко напомним, что такое инфраструктура открытых ключей (PKI), это область доверия, где каждый участник может доверять другому участнику, не имея никаких предварительных данных о нем. В основе PKI лежит центр сертификации (CA), авторитет CA неоспорим, а доверие к нему не подвергается сомнению.
При создании CA генерируется ключевая пара из закрытого ключа и корневого сертификата, который содержит открытый ключ. Закрытый ключ является секретным и должен храниться как зеница ока, потому как его компрометация дает возможность злоумышленнику выпускать сертификаты от имени вашего CA, а следовательно, получить доступ к вашей области доверия.
Корневой сертификат, наоборот, должен быть широко распространен на узлах вашей области доверия, так как именно он позволяет убедиться в подлинности выпущенных сертификатов.
При этом любой пользователь или узел, располагающий корневым сертификатом, может в любой момент времени убедиться в подлинности предъявленного ему сертификата другого пользователя или узла, а так как доверие к CA не подвергается сомнению, то автоматически возникают доверительные отношения с предъявителем действующего сертификата.
Также корневой сертификат содержит адрес CRL - списка отозванных сертификатов, что позволяет дополнительно убедиться, что предъявленный сертификат не был отозван.
Следует понимать, что после того, как CA выпустил сертификат и передал его клиенту, он больше не может его контролировать и в случае компрометации его можно только отозвать.
Между тем отозванный сертификат будет успешно проходить проверку подлинности при помощи корневого сертификата и проверить его на отзыв можно только при помощи списка CRL, который должен быть опубликован для общего доступа. Если CRL отсутствует или недоступен, то проверить сертификат на отзыв будет невозможно, а следовательно, такой сертификат будет принят как действительный.
✅ Читать далее
Mikrotik предоставляет пользователям достаточно широкие возможности, одна из них - создание на роутере собственного центра сертификации (CA), который позволяет управлять собственной инфраструктурой открытых ключей (PKI).
Благодаря этому вы можете выпускать, подписывать и отзывать сертификаты, а также поддерживать доверительные отношения без использования дополнительных технических и программных средств.
Это удобно, но эксплуатация CA на базе Mikrotik имеет свои особенности и подводные камни, которые нужно четко представлять и учитывать при выборе такого решения.
Коротко напомним, что такое инфраструктура открытых ключей (PKI), это область доверия, где каждый участник может доверять другому участнику, не имея никаких предварительных данных о нем. В основе PKI лежит центр сертификации (CA), авторитет CA неоспорим, а доверие к нему не подвергается сомнению.
При создании CA генерируется ключевая пара из закрытого ключа и корневого сертификата, который содержит открытый ключ. Закрытый ключ является секретным и должен храниться как зеница ока, потому как его компрометация дает возможность злоумышленнику выпускать сертификаты от имени вашего CA, а следовательно, получить доступ к вашей области доверия.
Корневой сертификат, наоборот, должен быть широко распространен на узлах вашей области доверия, так как именно он позволяет убедиться в подлинности выпущенных сертификатов.
При этом любой пользователь или узел, располагающий корневым сертификатом, может в любой момент времени убедиться в подлинности предъявленного ему сертификата другого пользователя или узла, а так как доверие к CA не подвергается сомнению, то автоматически возникают доверительные отношения с предъявителем действующего сертификата.
Также корневой сертификат содержит адрес CRL - списка отозванных сертификатов, что позволяет дополнительно убедиться, что предъявленный сертификат не был отозван.
Следует понимать, что после того, как CA выпустил сертификат и передал его клиенту, он больше не может его контролировать и в случае компрометации его можно только отозвать.
Между тем отозванный сертификат будет успешно проходить проверку подлинности при помощи корневого сертификата и проверить его на отзыв можно только при помощи списка CRL, который должен быть опубликован для общего доступа. Если CRL отсутствует или недоступен, то проверить сертификат на отзыв будет невозможно, а следовательно, такой сертификат будет принят как действительный.
✅ Читать далее
👍18❤2
Что не так с Base64?
Вчера в комментариях один из читателей предложил закодировать полезную нагрузку PowerShell при помощи Base64 и поместить ее непосредственно в BAT-файл. На что мы справедливо заметили, что такой скрипт лучше всего сразу удалить не запуская.
Что не так с Base64 и почему для админа его наличие является своеобразной красной тряпкой. Начнем с того, что такое вообще Base64 — это стандарт кодирования двоичных данных при помощи только 64 символов ASCII.
Изначально Base64 использовался для передачи вложений посредством текстовых сообщений в электронной почте и продолжает широко использоваться для подобных целей сейчас.
Так в чем же его опасность? А в том, что никакой потребности использовать Base64 в скриптах нет. Любую бинарную нагрузку мы можем разместить рядом со скриптом в его рабочей папке, или использовать самораспаковывающийся архив, который также легко проконтролировать.
А теперь представьте себе, что в скрипте или где-то еще вам встретилась команда:
Ничего не понятно, но очень интересно. Вы знаете, что она обозначает? Можете быстро сказать безопасно ли запустить это или нет?
Обычно такие вещи используются для обфускации кода, чтобы затруднить его чтение и понимание.
В данном случае ничего страшного тут нет, просто закодировано:
Но кто может поручиться, что в следующий раз вам таким образом не подкинут вредоносное содержимое? Тем более, что данная методика как раз и используется для распространения вредоносов и выполнения деструктивных действий.
Да, все это несложно расшифровать, но перед этим всегда надо задать себе вопрос – а с какой целью это закодировали. Ну не будет никто заниматься этим просто так, из любви к искусству. Потому что через неделю ты и сам забудешь, что здесь написано.
Поэтому увидев Base64 там, где его в принципе не должно быть: скрипте, тексте веб-страницы, выполняемых командах – сразу следует насторожиться и, лучше всего, отказаться от выполнения. Либо тщательно проверить что именно там закодировано и сделать выводы.
Вчера в комментариях один из читателей предложил закодировать полезную нагрузку PowerShell при помощи Base64 и поместить ее непосредственно в BAT-файл. На что мы справедливо заметили, что такой скрипт лучше всего сразу удалить не запуская.
Что не так с Base64 и почему для админа его наличие является своеобразной красной тряпкой. Начнем с того, что такое вообще Base64 — это стандарт кодирования двоичных данных при помощи только 64 символов ASCII.
Изначально Base64 использовался для передачи вложений посредством текстовых сообщений в электронной почте и продолжает широко использоваться для подобных целей сейчас.
Так в чем же его опасность? А в том, что никакой потребности использовать Base64 в скриптах нет. Любую бинарную нагрузку мы можем разместить рядом со скриптом в его рабочей папке, или использовать самораспаковывающийся архив, который также легко проконтролировать.
А теперь представьте себе, что в скрипте или где-то еще вам встретилась команда:
eval "$(echo c3VkbyBhcHQgdXBkYXRlIC15ICYmIHN1ZG8gYXB0IGZ1bGwtdXBncmFkZSAteQ== | base64 -d)"
Ничего не понятно, но очень интересно. Вы знаете, что она обозначает? Можете быстро сказать безопасно ли запустить это или нет?
Обычно такие вещи используются для обфускации кода, чтобы затруднить его чтение и понимание.
В данном случае ничего страшного тут нет, просто закодировано:
sudo apt update -y && sudo apt full-upgrade -y
Но кто может поручиться, что в следующий раз вам таким образом не подкинут вредоносное содержимое? Тем более, что данная методика как раз и используется для распространения вредоносов и выполнения деструктивных действий.
Да, все это несложно расшифровать, но перед этим всегда надо задать себе вопрос – а с какой целью это закодировали. Ну не будет никто заниматься этим просто так, из любви к искусству. Потому что через неделю ты и сам забудешь, что здесь написано.
Поэтому увидев Base64 там, где его в принципе не должно быть: скрипте, тексте веб-страницы, выполняемых командах – сразу следует насторожиться и, лучше всего, отказаться от выполнения. Либо тщательно проверить что именно там закодировано и сделать выводы.
🤝19❤9👍8💯5
Самохостинг
Про самосбор мы уже не раз говорили, пришла пора поговорить еще об одном излюбленном явлении – самохостинге.
Что это такое? Это публикация во внешнюю сеть определенных ресурсов для доступа к ним, как личного, так и широких масс желающих из любой точки всемирной сети. Ключевой момент здесь – это доступ, он должен быть постоянный и из любого места.
Поэтому, когда мы говорим о хостинге, то основным требованием к нему является доступность. У хостеров одним из основных параметров является SLA (Service Level Agreement или соглашение об уровне сервиса), который регламентирует допустимое время простоя и обычно его значения начинаются с 95-99%.
На самом деле это достаточно большие цифры, так 95% допускает простой 18,25 суток в год, а 99% - 3,65 суток.
А что нам может предложить самохостинг? Обычно здесь все начинается с того, что мол не нужен мне этот SLA, мне нужно просто получить доступ к моим данным для дома, для семьи откуда-то извне, причем время от времени. Ну и фоточки куда с телефона слить.
Поэтому для многих самохост является также и точкой размещения определенных данных и часто в единственном экземпляре (не считая мобильных устройств).
При этом греет душу, что все это бесплатно, на своем сервере, который тихо жужжит где-то в чулане.
Ок, давайте просто прикинем. Сервер из неоткуда не берется, его надо купить. Давайте прикинем стоимость платформы на N100 с дисками на 1 ТБ.
Такая машинка по актуальным ценам обойдется плюс-минус в 60 000 рублей.
Определим ей срок полезного использования в пять лет. В результате получим стоимость владения (не считая затрат на содержание) в размере 12 000 рублей в год или 1 000 рублей в месяц.
1 ТБ на Яндекс Диске стоит без скидок 250 руб./мес., со скидками еще меньше, и голова не болит.
На оставшиеся 750 рублей можно купить VPS начального уровня, которой будет достаточно для хостинга всего остального домашнего добра.
При этом у вас больше не болит голова насчет всей этой кухни. А болеть там на самом деле есть чему.
Надежность? С этим все плохо. Запчастей нет, любой выход из строя комплектующих – это длительный простой, пока будут решаться вопросы гарантии или дополнительные расходы.
Пожары, затопления, аварии на электросетях и прочий форс-мажор, включая тупое «кошка бежала, хвостиком вильнула, включенный сервер упал со шкафа на пол».
Также не сбрасываем со счетов возможный брак, когда оба ваших диска в RAID решат отправиться в страну вечной охоты одновременно (привет муха CC) и диски вам может и поменяют по гарантии, но вот на данные гарантия не распространяется.
Доступность? Тут тоже все плохо. Выключили электричество, пропал интернет – и все, стоим, ждем. И хорошо если там просто личные данные, а не что-то нужное здесь и сейчас. При этом обеспечить себе резервные мощности для самохостинга практически невозможно.
Ну или это будет стоить совсем других денег…
При этом не забываем, что наше оборудование коптит небо, расходует ресурс, стареет, что рано или поздно потребует его замены. У хостера это делает сам хостер, вы просто оплачиваете услугу по тарифу.
Ну ладно, то про дом, а теперь про работу. Так тут ровно все тоже самое. Да, нежелание выкладывать корпоративные данные в публичные облака понятно. Но кто мешает поднять свое облако на публичном хостинге?
По деньгам это будет плюс-минус стоимость самохостинга, но вы получите в разы более высокую надежность и доступность.
При этом контроль над системой у вас как был, так и остается. Но не болит голова по железу, ремонту, запчастям, электроснабжению, интернету и многому-многому другому.
Единственный вариант, когда самохостинг оправдан – это требования к безопасности и хранению данных, когда размещать их на внешних ресурсах может быть явно запрещено или обложено таким количеством требований, что проще как-нибудь самим.
Но это уже не про широкий доступ и вопрос доступности тут вообще может уходить на задний план.
В остальном самохостинг – это дорого и ненадежно. Оправдан только если вы просто хотите в это все поиграться с целью получить некоторый опыт.
Про самосбор мы уже не раз говорили, пришла пора поговорить еще об одном излюбленном явлении – самохостинге.
Что это такое? Это публикация во внешнюю сеть определенных ресурсов для доступа к ним, как личного, так и широких масс желающих из любой точки всемирной сети. Ключевой момент здесь – это доступ, он должен быть постоянный и из любого места.
Поэтому, когда мы говорим о хостинге, то основным требованием к нему является доступность. У хостеров одним из основных параметров является SLA (Service Level Agreement или соглашение об уровне сервиса), который регламентирует допустимое время простоя и обычно его значения начинаются с 95-99%.
На самом деле это достаточно большие цифры, так 95% допускает простой 18,25 суток в год, а 99% - 3,65 суток.
А что нам может предложить самохостинг? Обычно здесь все начинается с того, что мол не нужен мне этот SLA, мне нужно просто получить доступ к моим данным для дома, для семьи откуда-то извне, причем время от времени. Ну и фоточки куда с телефона слить.
Поэтому для многих самохост является также и точкой размещения определенных данных и часто в единственном экземпляре (не считая мобильных устройств).
При этом греет душу, что все это бесплатно, на своем сервере, который тихо жужжит где-то в чулане.
Ок, давайте просто прикинем. Сервер из неоткуда не берется, его надо купить. Давайте прикинем стоимость платформы на N100 с дисками на 1 ТБ.
Такая машинка по актуальным ценам обойдется плюс-минус в 60 000 рублей.
Определим ей срок полезного использования в пять лет. В результате получим стоимость владения (не считая затрат на содержание) в размере 12 000 рублей в год или 1 000 рублей в месяц.
1 ТБ на Яндекс Диске стоит без скидок 250 руб./мес., со скидками еще меньше, и голова не болит.
На оставшиеся 750 рублей можно купить VPS начального уровня, которой будет достаточно для хостинга всего остального домашнего добра.
При этом у вас больше не болит голова насчет всей этой кухни. А болеть там на самом деле есть чему.
Надежность? С этим все плохо. Запчастей нет, любой выход из строя комплектующих – это длительный простой, пока будут решаться вопросы гарантии или дополнительные расходы.
Пожары, затопления, аварии на электросетях и прочий форс-мажор, включая тупое «кошка бежала, хвостиком вильнула, включенный сервер упал со шкафа на пол».
Также не сбрасываем со счетов возможный брак, когда оба ваших диска в RAID решат отправиться в страну вечной охоты одновременно (привет муха CC) и диски вам может и поменяют по гарантии, но вот на данные гарантия не распространяется.
Доступность? Тут тоже все плохо. Выключили электричество, пропал интернет – и все, стоим, ждем. И хорошо если там просто личные данные, а не что-то нужное здесь и сейчас. При этом обеспечить себе резервные мощности для самохостинга практически невозможно.
Ну или это будет стоить совсем других денег…
При этом не забываем, что наше оборудование коптит небо, расходует ресурс, стареет, что рано или поздно потребует его замены. У хостера это делает сам хостер, вы просто оплачиваете услугу по тарифу.
Ну ладно, то про дом, а теперь про работу. Так тут ровно все тоже самое. Да, нежелание выкладывать корпоративные данные в публичные облака понятно. Но кто мешает поднять свое облако на публичном хостинге?
По деньгам это будет плюс-минус стоимость самохостинга, но вы получите в разы более высокую надежность и доступность.
При этом контроль над системой у вас как был, так и остается. Но не болит голова по железу, ремонту, запчастям, электроснабжению, интернету и многому-многому другому.
Единственный вариант, когда самохостинг оправдан – это требования к безопасности и хранению данных, когда размещать их на внешних ресурсах может быть явно запрещено или обложено таким количеством требований, что проще как-нибудь самим.
Но это уже не про широкий доступ и вопрос доступности тут вообще может уходить на задний план.
В остальном самохостинг – это дорого и ненадежно. Оправдан только если вы просто хотите в это все поиграться с целью получить некоторый опыт.
👎32🤮18👍10🤔8❤5
Небольшой «лайфхак» для WireGuard на Mikrotik
Стабильная работа WireGuard, даже на внутренних каналах сегодня под большим вопросом, как и любых других туннельных протоколов. Поэтому наш способ, выясненный эмпирическим путем, возможно, кому-то пригодится.
Как это бывает, WireGuard работал-работал и вдруг перестал. А так как это протокол без сохранения состояния, то проверить его работу просто посмотрев на список интерфейсов мы не можем, если пир сконфигурирован без ошибок, то интерфейс всегда будет поднят.
И единственный способ определить работу туннеля – это послать пакет на его другую сторону. Косвенным признаком того, что что-то пошло не так является время последнего рукопожатия, которое не должно превышать двух минут.
Если в этой колонке стоят нули или время превысили две минуты, то это означает, что или рукопожатия не было вообще или оно перестало проходить некоторое время назад. Но даже наличие активного рукопожатия не является гарантией работы туннеля, мы не раз сталкивались с ситуацией, когда рукопожатия проходили, а трафик – нет.
На Mikrotik, столкнувшись с внезапной неработоспособностью туннеля можно попробовать следующий способ: на вкладке WireGuard открыть свойства интерфейса и изменить значение Listen Port.
Поставить можно любое другое, главное – чтобы каждый интерфейс имел уникальный порт для своего экземпляра службы. После этого часто все начинает отлично работать, до следующего подобного раза.
Причины и следствия такого поведения мы разбирать не будем, так как это сегодня лежит вне плоскости публичного обсуждения.
Стабильная работа WireGuard, даже на внутренних каналах сегодня под большим вопросом, как и любых других туннельных протоколов. Поэтому наш способ, выясненный эмпирическим путем, возможно, кому-то пригодится.
Как это бывает, WireGuard работал-работал и вдруг перестал. А так как это протокол без сохранения состояния, то проверить его работу просто посмотрев на список интерфейсов мы не можем, если пир сконфигурирован без ошибок, то интерфейс всегда будет поднят.
И единственный способ определить работу туннеля – это послать пакет на его другую сторону. Косвенным признаком того, что что-то пошло не так является время последнего рукопожатия, которое не должно превышать двух минут.
Если в этой колонке стоят нули или время превысили две минуты, то это означает, что или рукопожатия не было вообще или оно перестало проходить некоторое время назад. Но даже наличие активного рукопожатия не является гарантией работы туннеля, мы не раз сталкивались с ситуацией, когда рукопожатия проходили, а трафик – нет.
На Mikrotik, столкнувшись с внезапной неработоспособностью туннеля можно попробовать следующий способ: на вкладке WireGuard открыть свойства интерфейса и изменить значение Listen Port.
Поставить можно любое другое, главное – чтобы каждый интерфейс имел уникальный порт для своего экземпляра службы. После этого часто все начинает отлично работать, до следующего подобного раза.
Причины и следствия такого поведения мы разбирать не будем, так как это сегодня лежит вне плоскости публичного обсуждения.
👍11❤10👌2💯2
Lithnet Password Protection for Active Directory (LPP)
Lithnet Password Protection for Active Directory (LPP) – приложение с открытым исходным кодом, который добавляет в Active Directory дополнительный фильтр паролей, который позволяет контролировать соответствие паролей пользователей расширенным требованиям.
Для чего это нужно? Стандартная политика паролей Windows позволяет задавать лишь общие требования к паролям и не позволяет выполнять их дополнительную проверку, например, политике будет полностью соответствовать такой пароль: Pa$$word1
Это позволяет пользователям обходить формальные требования и использовать фактически слабые пароли. LPP позволяет решить эту проблему используя внутреннюю базу запрещенных слов, при этом будут учитываться все типовые замены и обфускации.
Например, если мы добавим в базу слово password то программа заблокирует такие варианты как Pa$$word1, P@ssw0rd, pa55word! Или password123456!'
Для тех, кто хочет большего, можно подключить внешнюю базу Have I Been Pwned (HIBP), которая содержит скомпрометированные пароли, для этого вам понадобится около 8 ГБ свободного места.
После чего вы можете проверить уже имеющиеся пароли на их компрометацию, для этой проверки не требуется интернет и хеш пароля не покидает контроллер домена. Для параноиков поясняем – вся работа со скачанной базой производится сугубо локально.
Любите использовать регулярные выражения? Здесь тоже есть широкое поле, укажите регулярки под которые должен или наоборот не должен попадать пароль.
Также вы можете установить разные требования для паролей разной длинны, скажем требовать для коротких паролей обязательного наличия специальных символов, а для более длинных достаточно будет только цифр и букв.
Можно также использовать бальную систему, когда за определенные символы и комбинации присваивается некоторое количество баллов и пользователь должен получить не менее некоторого минимального значения.
Продукт полностью интегрирован с PowerShell и удобно управляется с его помощью, а также поставляется с набором собственных групповых политик, позволяющих гибко применять его возможности в домене.
И все это, как мы уже говорили – бесплатно, по лицензии MIT.
✅ Страница проекта: https://github.com/lithnet/ad-password-protection
Lithnet Password Protection for Active Directory (LPP) – приложение с открытым исходным кодом, который добавляет в Active Directory дополнительный фильтр паролей, который позволяет контролировать соответствие паролей пользователей расширенным требованиям.
Для чего это нужно? Стандартная политика паролей Windows позволяет задавать лишь общие требования к паролям и не позволяет выполнять их дополнительную проверку, например, политике будет полностью соответствовать такой пароль: Pa$$word1
Это позволяет пользователям обходить формальные требования и использовать фактически слабые пароли. LPP позволяет решить эту проблему используя внутреннюю базу запрещенных слов, при этом будут учитываться все типовые замены и обфускации.
Например, если мы добавим в базу слово password то программа заблокирует такие варианты как Pa$$word1, P@ssw0rd, pa55word! Или password123456!'
Для тех, кто хочет большего, можно подключить внешнюю базу Have I Been Pwned (HIBP), которая содержит скомпрометированные пароли, для этого вам понадобится около 8 ГБ свободного места.
После чего вы можете проверить уже имеющиеся пароли на их компрометацию, для этой проверки не требуется интернет и хеш пароля не покидает контроллер домена. Для параноиков поясняем – вся работа со скачанной базой производится сугубо локально.
Любите использовать регулярные выражения? Здесь тоже есть широкое поле, укажите регулярки под которые должен или наоборот не должен попадать пароль.
Также вы можете установить разные требования для паролей разной длинны, скажем требовать для коротких паролей обязательного наличия специальных символов, а для более длинных достаточно будет только цифр и букв.
Можно также использовать бальную систему, когда за определенные символы и комбинации присваивается некоторое количество баллов и пользователь должен получить не менее некоторого минимального значения.
Продукт полностью интегрирован с PowerShell и удобно управляется с его помощью, а также поставляется с набором собственных групповых политик, позволяющих гибко применять его возможности в домене.
И все это, как мы уже говорили – бесплатно, по лицензии MIT.
✅ Страница проекта: https://github.com/lithnet/ad-password-protection
👍24❤3
С Днем радио!!!
Сегодня мой профессиональный праздник и не только мой, но и многих коллег, особенно старшего возраста.
Это сейчас путь в IT открыт сразу и напрямую, в наше время путь к вычислительной технике начинался с радиолюбительства и программируемых калькуляторов.
Позже все это плавно перетекало в наиболее близкие профессии, связанные с электроникой. А электроника в свое время была неразлучно связана с связью (вот такой вот каламбур вышел).
И, следует сказать, радиолюбительское прошлое и профильное образование связиста сильно пригодилось впоследствии. Прежде всего инженерным мышлением, умением читать схемы и навыками диагностики и выявления неисправностей.
Появившиеся позднее компьютеры кто-то сделал помощниками в инженерных расчетах, а кто-то связал с ними свою профессию.
Поэтому всех причастных, настоящих и бывших связистов, хотя связисты, а тем более радиолюбители, бывшими не бывают, с праздником!
🥃🥃🥃
Сегодня мой профессиональный праздник и не только мой, но и многих коллег, особенно старшего возраста.
Это сейчас путь в IT открыт сразу и напрямую, в наше время путь к вычислительной технике начинался с радиолюбительства и программируемых калькуляторов.
Позже все это плавно перетекало в наиболее близкие профессии, связанные с электроникой. А электроника в свое время была неразлучно связана с связью (вот такой вот каламбур вышел).
И, следует сказать, радиолюбительское прошлое и профильное образование связиста сильно пригодилось впоследствии. Прежде всего инженерным мышлением, умением читать схемы и навыками диагностики и выявления неисправностей.
Появившиеся позднее компьютеры кто-то сделал помощниками в инженерных расчетах, а кто-то связал с ними свою профессию.
Поэтому всех причастных, настоящих и бывших связистов, хотя связисты, а тем более радиолюбители, бывшими не бывают, с праздником!
🥃🥃🥃
10👍43🤝14🔥7❤2👏2
Что нужно знать перед миграцией на Ubuntu 26.04 LTS
В тестовой среде протестировали несколько серверных систем, обновленных до Ubuntu 26.04 LTS, и проверили основные изменения в системе, которые могут оказаться критичными и должны обязательно учитываться при планировании миграции.
🔹 DSA-ключи в OpenSSH не поддерживаются. Хостовые DSA-ключи больше не генерируются. Если в
По умолчанию включен постквантовый алгоритм обмена ключами mlkem768x25519-sha256, если вторая сторона его не поддерживает, то будет согласован один из классических алгоритмов. Для критичных систем имеет смысл перегенерировать ключи.
🔹 Вместо systemd-timesyncd теперь по умолчанию используется Chrony, для приведения обновленных систем к единому стандарту выполните:
🔹 SSSD работает под пользователем sssd, а не root, проверьте, что новый пользователь sssd имеет доступ к необходимым ресурсам (keytab-файлы, сертификаты).
🔹 cgroup v1 удален. Контейнеры, настроенные на legacy/hybrid cgroup работать больше не будут. Под угрозой: Debian 9/10, Ubuntu 16.04/18.04, CentOS 7, старые Alpine.
🔹 apt-key удален – все сценарии с его использованием работать перестанут, переходите на новую систему управления ключами. Подробнее: https://interface31.ru/post/apt-key-is-deprecated-ili-upravlenie-klyuchami-v-sovremennyh-vypuskah-debian-i-ubunt/
🔹 Вместо классического sudo используется sudo-rs, который не 100% совместим, протестируйте свою конфигурацию перед применением.
🔹 Директория /tmp теперь монтируется в tmpfs, по умолчанию верхний предел выделяется в размере 50% доступного размера ОЗУ. Если ваши сценарии предполагают закидывание в /tmp больших объемов данных, проверьте их на предмет неприятных сюрпризов с памятью.
🔹 В данном релизе последний раз поддерживаются скрипты System V init, если они у вас остались, то самое время переводить их на юниты systemd. В следующем LTS поддержка System V init будет удалена.
🔹 Вместо initramfs-tools используется Dracut, но при необходимости можно вернуться назад, оба варианта поддерживаются.
В тестовой среде протестировали несколько серверных систем, обновленных до Ubuntu 26.04 LTS, и проверили основные изменения в системе, которые могут оказаться критичными и должны обязательно учитываться при планировании миграции.
🔹 DSA-ключи в OpenSSH не поддерживаются. Хостовые DSA-ключи больше не генерируются. Если в
~/.ssh/known_hosts или authorized_keys остались DSA-ключи — они перестанут работать. По умолчанию включен постквантовый алгоритм обмена ключами mlkem768x25519-sha256, если вторая сторона его не поддерживает, то будет согласован один из классических алгоритмов. Для критичных систем имеет смысл перегенерировать ключи.
🔹 Вместо systemd-timesyncd теперь по умолчанию используется Chrony, для приведения обновленных систем к единому стандарту выполните:
apt-mark auto systemd-timesyncd
apt install chrony
🔹 SSSD работает под пользователем sssd, а не root, проверьте, что новый пользователь sssd имеет доступ к необходимым ресурсам (keytab-файлы, сертификаты).
🔹 cgroup v1 удален. Контейнеры, настроенные на legacy/hybrid cgroup работать больше не будут. Под угрозой: Debian 9/10, Ubuntu 16.04/18.04, CentOS 7, старые Alpine.
🔹 apt-key удален – все сценарии с его использованием работать перестанут, переходите на новую систему управления ключами. Подробнее: https://interface31.ru/post/apt-key-is-deprecated-ili-upravlenie-klyuchami-v-sovremennyh-vypuskah-debian-i-ubunt/
🔹 Вместо классического sudo используется sudo-rs, который не 100% совместим, протестируйте свою конфигурацию перед применением.
🔹 Директория /tmp теперь монтируется в tmpfs, по умолчанию верхний предел выделяется в размере 50% доступного размера ОЗУ. Если ваши сценарии предполагают закидывание в /tmp больших объемов данных, проверьте их на предмет неприятных сюрпризов с памятью.
🔹 В данном релизе последний раз поддерживаются скрипты System V init, если они у вас остались, то самое время переводить их на юниты systemd. В следующем LTS поддержка System V init будет удалена.
🔹 Вместо initramfs-tools используется Dracut, но при необходимости можно вернуться назад, оба варианта поддерживаются.
👀16🔥7❤4👍3👎2
USB 3.x и Wi-Fi 2,4 ГГц
Что у них общего? На первый взгляд ничего, где USB и где Wi-Fi, абсолютно разные технологии.
Но если копнуть немного глубже, то перед нами электронные устройства, предназначенные для скоростной передачи данных, а следовательно, работающие на высоких частотах и способные производить помехи другим электронным устройствам.
USB 3.x не исключение, частотный спектр сигнала которого пересекается с диапазоном Wi-Fi 2,4 ГГц и способен серьезно нарушить работу последнего, вплоть до полного пропадания связи.
Это, например, коротко описано в разделе техподдержки TP-LINK:
Согласно спецификации интерфейса USB 3.0, передача данных по данному стандарту затрагивает частотный диапазон в 2,4-2,5 ГГц.
В результате, большое количество шумов или интерференций сигнала возникает на частоте 2,4 ГГц, и как следствие, мешает корректной работе роутера.
Если устройство USB 3.0 расположено близко к антеннам роутера, роутер пользователя может испытывать серьезные воздействия на частоте 2,4 ГГц.
Кому интересны подробности – могут ознакомиться с более детальным документом: https://www.usb.org/sites/default/files/327216.pdf
Выводы из него просты: если вы используете USB 3.x устройства с недостаточным экранированием кабелей или самих устройств, то можете получить серьезные проблемы с работой Wi-Fi в диапазоне 2,4 ГГц.
Особенно это касается роутеров, к которым пользователи любят присоединять накопители делая из них мини-медиацентры. Уровень широкополосного шума от USB 3.0 жесткого диска показан на картинке к посту.
Можно увидеть, что в среднем он на 20 дБм превышает фоновый шум, что является серьезной помехой, вызывающей различные негативные эффекты.
Аналогичный эффект могут испытывать клиентские устройства, такие как ноутбуки. Активное USB устройство, вставленное со стороны размещения беспроводного адаптера или его антенн может существенно ухудшить условия приема.
Также кроме Wi-Fi могут страдать и иные беспроводные устройства, например, беспроводные клавиатуры и мыши, также работающие в диапазоне 2,4 ГГц.
Поэтому если ваши устройства ввода вдруг начали вести себя неадекватно, то проверьте, не воткнул ли кто-то рядом с ними USB 3.x устройство.
Чтобы убедиться, что это не теоретическая вероятность, а суровая правда жизни могу привести реальный пример, когда человек столкнулся с подобным эффектом от углового адаптера порта: https://mysku.club/blog/aliexpress/99897.html
При этом на диапазон 5 ГГц устройства USB 3.х никакого негативного влияния не оказывают, на него приходится минимум помех, а следующая гармоника проявит себя уже в диапазоне 7,5 ГГц, но это уже совсем другая история.
Что у них общего? На первый взгляд ничего, где USB и где Wi-Fi, абсолютно разные технологии.
Но если копнуть немного глубже, то перед нами электронные устройства, предназначенные для скоростной передачи данных, а следовательно, работающие на высоких частотах и способные производить помехи другим электронным устройствам.
USB 3.x не исключение, частотный спектр сигнала которого пересекается с диапазоном Wi-Fi 2,4 ГГц и способен серьезно нарушить работу последнего, вплоть до полного пропадания связи.
Это, например, коротко описано в разделе техподдержки TP-LINK:
Согласно спецификации интерфейса USB 3.0, передача данных по данному стандарту затрагивает частотный диапазон в 2,4-2,5 ГГц.
В результате, большое количество шумов или интерференций сигнала возникает на частоте 2,4 ГГц, и как следствие, мешает корректной работе роутера.
Если устройство USB 3.0 расположено близко к антеннам роутера, роутер пользователя может испытывать серьезные воздействия на частоте 2,4 ГГц.
Кому интересны подробности – могут ознакомиться с более детальным документом: https://www.usb.org/sites/default/files/327216.pdf
Выводы из него просты: если вы используете USB 3.x устройства с недостаточным экранированием кабелей или самих устройств, то можете получить серьезные проблемы с работой Wi-Fi в диапазоне 2,4 ГГц.
Особенно это касается роутеров, к которым пользователи любят присоединять накопители делая из них мини-медиацентры. Уровень широкополосного шума от USB 3.0 жесткого диска показан на картинке к посту.
Можно увидеть, что в среднем он на 20 дБм превышает фоновый шум, что является серьезной помехой, вызывающей различные негативные эффекты.
Аналогичный эффект могут испытывать клиентские устройства, такие как ноутбуки. Активное USB устройство, вставленное со стороны размещения беспроводного адаптера или его антенн может существенно ухудшить условия приема.
Также кроме Wi-Fi могут страдать и иные беспроводные устройства, например, беспроводные клавиатуры и мыши, также работающие в диапазоне 2,4 ГГц.
Поэтому если ваши устройства ввода вдруг начали вести себя неадекватно, то проверьте, не воткнул ли кто-то рядом с ними USB 3.x устройство.
Чтобы убедиться, что это не теоретическая вероятность, а суровая правда жизни могу привести реальный пример, когда человек столкнулся с подобным эффектом от углового адаптера порта: https://mysku.club/blog/aliexpress/99897.html
При этом на диапазон 5 ГГц устройства USB 3.х никакого негативного влияния не оказывают, на него приходится минимум помех, а следующая гармоника проявит себя уже в диапазоне 7,5 ГГц, но это уже совсем другая история.
👍28❤2🤔1
Однострочный веб-сервер на Bash
Часто бывает нужно отслеживать некоторые показатели целевого сервера или контролировать ход работы какого-либо сервиса. Все это можно сделать командами, но постоянно вызывать их в консоли – занятие утомительное.
Но есть способ проще, создать специальную страничку в браузере и вывести на нее все необходимые показатели. Причем нам не потребуется устанавливать никакого софта, все можно сделать силами bash.
И в этом нам поможет команда netcat (nc), мы не будем подробно разбирать ее применение, а просто покажем примеры.
Например, мы хотим видеть свободную память:
Здесь следует обратить внимание на опции -p – порт и q – время в секундах до закрытия соединения, если у вас там выполняется сложная команда, то возможно его придется увеличить.
Таким же образом можно просматривать логи:
Возьмем задачу немного сложнее, вывести сразу несколько показателей, ок, прямо не выходя из терминала выполним:
Но если всего этого недостаточно, то вы можете написать скрипт, который будет выводить нужную вам информацию и запускать его нашим однострочным веб-сервером:
Просто? Да. Удобно? Да. И только bash и никаких дополнительных инструментов!
Часто бывает нужно отслеживать некоторые показатели целевого сервера или контролировать ход работы какого-либо сервиса. Все это можно сделать командами, но постоянно вызывать их в консоли – занятие утомительное.
Но есть способ проще, создать специальную страничку в браузере и вывести на нее все необходимые показатели. Причем нам не потребуется устанавливать никакого софта, все можно сделать силами bash.
И в этом нам поможет команда netcat (nc), мы не будем подробно разбирать ее применение, а просто покажем примеры.
Например, мы хотим видеть свободную память:
while true;
do echo -e "HTTP/1.1 200 OK\n\n$(free)" \
| nc -l -k -p 8080 -q 1;
done
Здесь следует обратить внимание на опции -p – порт и q – время в секундах до закрытия соединения, если у вас там выполняется сложная команда, то возможно его придется увеличить.
Таким же образом можно просматривать логи:
while true;
do echo -e "HTTP/1.1 200 OK\n\n$(tail -n 15 logfile)" \
| nc -l -k -p 8080 -q 1;
done
Возьмем задачу немного сложнее, вывести сразу несколько показателей, ок, прямо не выходя из терминала выполним:
cmd1=$(free)
cmd2=$(ss -tpln)
body="$cmd1\n$cmd2"
while true;
do echo -e "HTTP/1.1 200 OK\n\n$body" \
| nc -l -k -p 8080 -q 1;
done
Но если всего этого недостаточно, то вы можете написать скрипт, который будет выводить нужную вам информацию и запускать его нашим однострочным веб-сервером:
while true; do { \
echo -ne "HTTP/1.1 200 OK\r\n"; sh my_script.sh; } \
| nc -l -k -p 8080 -q 1; \
doneПросто? Да. Удобно? Да. И только bash и никаких дополнительных инструментов!
👍31🔥6❤2
Пятничное, о жизни. Свекольный сахар
Третьего дня был у одного клиента в офисе, перед этим заехал на пункт выдачи и забрал несколько пачек турецкого Атом Чая. Это такой травяной чай в кубиках, просто залить кипятком, при этом состав там нормальный, без всякой нездоровой химии.
Я его обычно с черным или зеленым чаем мешаю, как аналог всяких вкусовых добавок или ароматизаторов, на ночь можно и чистого заварить, чтобы без всяких бодрящих веществ. Ну и обещал я там народ как-то этим чаем угостить.
Вот приехал и угощаю. А в той организации есть одна мадам, дама не глупая, хороший такой, опытный главный бухгалтер, годочков 35, семья, двое деток. Но есть у нее бзик – здоровое питание.
В общем берет она коробку и начинает изучать состав, а там, ясен перец, все на турецком. Но кого это сегодня смущает? Наводим камеру телефона и читаем перевод.
- Класс, свекольный сахар!
Я немного не понимаю восторга, ну свекольный и чего?
- Те не понимаешь, это же круто, это натуральный состав, тут не простой сахар, а свекольный.
Мягко интересуюсь, а какой еще сахар она знает, ну кроме тростникового, разумеется.
А дальше вроде бы умный и грамотный человек начинает нести лютую дичь. Мол сахар бывает с завода, а бывает натуральный, скажем, тростниковый или свекольный. Мол почему тростниковый так дорого стоит?
Аргумент, что его везут с другого полушария, не прокатывает. А свекольного у нас, по ее мнению, просто нет, потому что это дорого и невыгодно.
Но из чего же тогда магазинный сахар? Ну да, тоже из свеклы, но он заводской, химической переработки, поэтому на нем и не пишут свекольный, потому что он не натуральный, поэтому свекольный на нем писать нельзя.
Переубеждать кого-то в таком случае бесполезно, но я тут сразу вспомнил одну историю:
🔹 Крафтовый Ethernet
А заодно и бизнес-идея появилась, берем обычный сахар, сильно не очищаем, чтобы пах как надо и имел соответствующий привкус, кто жил в деревне и имел со свекольной патокой дело – знает.
После чего продаем его как супер-пупер натуральный крафтовый свекольный сахар.
Ну и бурачный самогон без очистки тоже можно как крафтовый продавать, а кому не зашло – тот просто не понял и не проникся всей натуральностью продукта.
Третьего дня был у одного клиента в офисе, перед этим заехал на пункт выдачи и забрал несколько пачек турецкого Атом Чая. Это такой травяной чай в кубиках, просто залить кипятком, при этом состав там нормальный, без всякой нездоровой химии.
Я его обычно с черным или зеленым чаем мешаю, как аналог всяких вкусовых добавок или ароматизаторов, на ночь можно и чистого заварить, чтобы без всяких бодрящих веществ. Ну и обещал я там народ как-то этим чаем угостить.
Вот приехал и угощаю. А в той организации есть одна мадам, дама не глупая, хороший такой, опытный главный бухгалтер, годочков 35, семья, двое деток. Но есть у нее бзик – здоровое питание.
В общем берет она коробку и начинает изучать состав, а там, ясен перец, все на турецком. Но кого это сегодня смущает? Наводим камеру телефона и читаем перевод.
- Класс, свекольный сахар!
Я немного не понимаю восторга, ну свекольный и чего?
- Те не понимаешь, это же круто, это натуральный состав, тут не простой сахар, а свекольный.
Мягко интересуюсь, а какой еще сахар она знает, ну кроме тростникового, разумеется.
А дальше вроде бы умный и грамотный человек начинает нести лютую дичь. Мол сахар бывает с завода, а бывает натуральный, скажем, тростниковый или свекольный. Мол почему тростниковый так дорого стоит?
Аргумент, что его везут с другого полушария, не прокатывает. А свекольного у нас, по ее мнению, просто нет, потому что это дорого и невыгодно.
Но из чего же тогда магазинный сахар? Ну да, тоже из свеклы, но он заводской, химической переработки, поэтому на нем и не пишут свекольный, потому что он не натуральный, поэтому свекольный на нем писать нельзя.
Переубеждать кого-то в таком случае бесполезно, но я тут сразу вспомнил одну историю:
🔹 Крафтовый Ethernet
А заодно и бизнес-идея появилась, берем обычный сахар, сильно не очищаем, чтобы пах как надо и имел соответствующий привкус, кто жил в деревне и имел со свекольной патокой дело – знает.
После чего продаем его как супер-пупер натуральный крафтовый свекольный сахар.
Ну и бурачный самогон без очистки тоже можно как крафтовый продавать, а кому не зашло – тот просто не понял и не проникся всей натуральностью продукта.
😁20🔥16🤣6💯3👎2
Некоторые размышления по поводу интеграций с различными ГИС
Вот уже, хотел написать – несколько недель, а на самом деле уже несколько месяцев мы неспеша работаем над интеграцией учетной системы заказчика на 1С в одну ГИС.
Имена пока называть не будем, но кажется мне, что там везде ситуация плюс-минус идентичная. И знали бы мы это на берегу, то сто раз подумали бы, а нужен ли нам этот блудняк.
Сначала, как говорится, ничто не предвещало беды. Задача понятная, документация увесистая, по технологиям ничего необычного: SOAP. Не самый приятный вариант, но вполне рабочий, реализуемый.
Работы, поначалу, казалось на месяц-полтора, с учетом верификации со стороны ГИС и сдачи проекта. Но жизнь поставила все на свои места.
Проблемы посыпались с самого начала как из рога изобилия. Потому что ничего не работало, вообще. Хотя сделано все было строго по документации. ИИ тоже не нашел никакого криминала (а писали мы вместе с ним в плотной кооперации).
Ладно, ИИ может придумывать, но внимательно изучив отправляемые на сервер запросы пришлось признать, что ИИ прав и запросы полностью соответствуют документации. Так в чем причина?
Поддержка на помощь не спешит и отвечает четко по регламенту – на ответ отводится 24 часа, вот как раз на следующий день она и ответит, какой-нибудь ерундой, с предложением почитать документацию, а следующий ответ будет еще через сутки. А к самой мякотке если через неделю доберемся, то это будет очень хорошо.
В общем где-то через месяц мы их таки забодали, и они прислали нам «сокровенную» ссылку на страницу с примерами в документации. Сказать, что мы знатно изумились, это ничего не сказать.
В запросах использовались некие дополнительные пространства имен, о которых в основной документации было ни сном, ни духом. Но это половина беды. Для реализации одного из модулей предполагалось три метода: создать, обновить и получить запись.
Логично, что они должны быть полностью идентичными по структуре и отличаться только параметрами.
А вот и не угадали, складывается впечатлении, что методы писали совершенно разные люди, не знакомые друг с другом. Потому что метод получить разительно отличался от создать и обновить как заголовками, так и используемыми пространствами имен.
Унификация? Нет, не слышали. Поддержка? Нет, не в курсе. И вообще, складывается впечатление, что ее основная задача – футболить по регламенту, мол идите, читайте документацию.
А саму документацию, складывается впечатление, писали третьи люди, проекта в глаза не видевшие. Все многословно, путано и тонет в канцеляризмах. Примеров нет, XSD-схем нет, куча недомолвок и белых пятен.
Заказчик одно время начал нажимать и возмущаться, мол чего так долго и когда будет результат. Пришлось познакомить его с работой поддержки и уведомить, что реальные условия существенно отличаются от изначальных, в связи с чем имеем полное право договор расторгнуть с компенсацией уже потраченного времени.
При этом он не дурак и трезво оценив ситуацию дал добро на дальнейшие работы, попросив только не пустить его по миру. Хотя ему без вариантов, к сентябрю или ты интегрируешься или вешаешь на дверь замок.
Перспективы? Они там есть, только вот далеко не радостные, с учетом предполагаемого развития этой самой ГИС. Альтернативы? Тоже есть, только ценой и стоимостью поддержки совсем не радуют, при качестве на уровне дешевого любительского поделия. Ну отраслевая 1С – она такая.
А у нас остался один вопрос, да и тот – философский. Пробовали ли они сами по своей документации и по своей поддержке реализовать интеграцию? И видя поток обращений в поддержку не кажется ли им, что что-то у них не так?
Вот уже, хотел написать – несколько недель, а на самом деле уже несколько месяцев мы неспеша работаем над интеграцией учетной системы заказчика на 1С в одну ГИС.
Имена пока называть не будем, но кажется мне, что там везде ситуация плюс-минус идентичная. И знали бы мы это на берегу, то сто раз подумали бы, а нужен ли нам этот блудняк.
Сначала, как говорится, ничто не предвещало беды. Задача понятная, документация увесистая, по технологиям ничего необычного: SOAP. Не самый приятный вариант, но вполне рабочий, реализуемый.
Работы, поначалу, казалось на месяц-полтора, с учетом верификации со стороны ГИС и сдачи проекта. Но жизнь поставила все на свои места.
Проблемы посыпались с самого начала как из рога изобилия. Потому что ничего не работало, вообще. Хотя сделано все было строго по документации. ИИ тоже не нашел никакого криминала (а писали мы вместе с ним в плотной кооперации).
Ладно, ИИ может придумывать, но внимательно изучив отправляемые на сервер запросы пришлось признать, что ИИ прав и запросы полностью соответствуют документации. Так в чем причина?
Поддержка на помощь не спешит и отвечает четко по регламенту – на ответ отводится 24 часа, вот как раз на следующий день она и ответит, какой-нибудь ерундой, с предложением почитать документацию, а следующий ответ будет еще через сутки. А к самой мякотке если через неделю доберемся, то это будет очень хорошо.
В общем где-то через месяц мы их таки забодали, и они прислали нам «сокровенную» ссылку на страницу с примерами в документации. Сказать, что мы знатно изумились, это ничего не сказать.
В запросах использовались некие дополнительные пространства имен, о которых в основной документации было ни сном, ни духом. Но это половина беды. Для реализации одного из модулей предполагалось три метода: создать, обновить и получить запись.
Логично, что они должны быть полностью идентичными по структуре и отличаться только параметрами.
А вот и не угадали, складывается впечатлении, что методы писали совершенно разные люди, не знакомые друг с другом. Потому что метод получить разительно отличался от создать и обновить как заголовками, так и используемыми пространствами имен.
Унификация? Нет, не слышали. Поддержка? Нет, не в курсе. И вообще, складывается впечатление, что ее основная задача – футболить по регламенту, мол идите, читайте документацию.
А саму документацию, складывается впечатление, писали третьи люди, проекта в глаза не видевшие. Все многословно, путано и тонет в канцеляризмах. Примеров нет, XSD-схем нет, куча недомолвок и белых пятен.
Заказчик одно время начал нажимать и возмущаться, мол чего так долго и когда будет результат. Пришлось познакомить его с работой поддержки и уведомить, что реальные условия существенно отличаются от изначальных, в связи с чем имеем полное право договор расторгнуть с компенсацией уже потраченного времени.
При этом он не дурак и трезво оценив ситуацию дал добро на дальнейшие работы, попросив только не пустить его по миру. Хотя ему без вариантов, к сентябрю или ты интегрируешься или вешаешь на дверь замок.
Перспективы? Они там есть, только вот далеко не радостные, с учетом предполагаемого развития этой самой ГИС. Альтернативы? Тоже есть, только ценой и стоимостью поддержки совсем не радуют, при качестве на уровне дешевого любительского поделия. Ну отраслевая 1С – она такая.
А у нас остался один вопрос, да и тот – философский. Пробовали ли они сами по своей документации и по своей поддержке реализовать интеграцию? И видя поток обращений в поддержку не кажется ли им, что что-то у них не так?
1😢25❤6👍2🤮1🤣1
Про ТС ПИоТ
Просили тут написать про ТС ПИоТ, поэтому пишем. Все сказанное ниже является исключительно частным мнением и не претендует на истину в последней инстанции.
Но начнем немного издалека. Любой хороший админ или внедренец знает, что любое изменение или решает какие-то проблемы системы или добавляет ей новую функциональность. Либо и то и другое сразу.
Это язык понятный бизнесу и именно за это бизнес платит деньги, если вы предложите изменение, основной смысл которого в розовых котиках – вас пошлют лесом и денег не дадут.
Система маркировки – не исключение, несмотря на отдельные перекосы и технические проблемы все предыдущие действия и нововведения были разумны и рациональны.
Как помним, начиналось все с уведомительного режима в самом простом его варианте, марка просто считывалась на кассе в чек, если марка валидна – все хорошо. Никаких проверок марки не происходило.
Потом добавили проверку ОИСМ при помощи кассы и ОФД, это те самые буквы [M], но такая проверка была, во-первых, не быстрой, а во-вторых, не давала понимания причины отказа. Поэтому такую марку можно было продать при согласии покупателя.
Далее в ход пошли онлайн-проверки разрешительного режима (РР), теперь система уже принимала окончательное решение, либо с маркой все хорошо и ее продать можно, или нельзя, с указанием причины запрета.
Попутно осуществлялся переход с объемно-сортового учета (ОСУ), на поэкземплярный, когда каждую марку стало возможно отследить в онлайн режиме от производителя и до прилавка.
В завершение это все дополнили локальным модулем, который в случае невозможности выполнить онлайн проверку выполнял проверку марки локально, по внутреннему «черному списку» и либо давал решение на продажу, либо запрещал ее.
Плохо ли, хорошо, но эта система как-то работала, рынок приспособился, адаптировался и принял новые правила игры.
Сама система в данном виде серьезных изъянов не имеет и поставленные задачи достаточно эффективно решает, особенно с переходом на поэкземплярный учет.
Но осенью прошлого года как снег на голову свалился тот самый ТС ПИоТ, процитируем официальный источник:
Ага, а до этого официальный API Честного знака не был единым, стандартизированным и сертифицированным?
И что значит «сам решал, как проверять»? Способ был для всех один – РР или ЛМ при отсутствии ответа онлайн.
Что поменяется с приходом ПИоТ? Ничего, совсем ничего, просто API РР заменится на API ПИоТ, больше ничего в логике торгового приложения не изменится.
А все его заявленные «достоинства», скажем честно, притянуты за уши. Никаких насущных проблем Розницы ПИоТ не решает, никаких новых возможностей не предоставляет, ни участникам рынка, ни самой системе.
Возможно, именно поэтому ПИоТ оказался не готов в срок, который потом несколько раз переносили, потому что разработчики этого недоразумения сами не понимали, что он должен делать и как.
Зато это не бесплатно, от 5 000 рублей в год, умножьте на количество касс в стране, ну да, неплохой профит на ровном месте, можно сказать из воздуха.
Ну а что, сели государевы мужи, посмотрели, подумали. Работает маркировка, плохо, хорошо, но работает, поставленные задачи решает. А потом вдруг хлопнули себя по лбу, мол как же так, братцы, а почему это все бесплатно???
Поэтому на текущий момент ни бизнес, ни обслуживающие организации ставить ПИоТ не спешат, просто не видят смысла, с учетом его сырости и отвратительной работы по немногочисленным отзывам.
Какая-то ясность появится уже в июне, когда будет понятно, перенесут еще раз сроки или нет.
Просили тут написать про ТС ПИоТ, поэтому пишем. Все сказанное ниже является исключительно частным мнением и не претендует на истину в последней инстанции.
Но начнем немного издалека. Любой хороший админ или внедренец знает, что любое изменение или решает какие-то проблемы системы или добавляет ей новую функциональность. Либо и то и другое сразу.
Это язык понятный бизнесу и именно за это бизнес платит деньги, если вы предложите изменение, основной смысл которого в розовых котиках – вас пошлют лесом и денег не дадут.
Система маркировки – не исключение, несмотря на отдельные перекосы и технические проблемы все предыдущие действия и нововведения были разумны и рациональны.
Как помним, начиналось все с уведомительного режима в самом простом его варианте, марка просто считывалась на кассе в чек, если марка валидна – все хорошо. Никаких проверок марки не происходило.
Потом добавили проверку ОИСМ при помощи кассы и ОФД, это те самые буквы [M], но такая проверка была, во-первых, не быстрой, а во-вторых, не давала понимания причины отказа. Поэтому такую марку можно было продать при согласии покупателя.
Далее в ход пошли онлайн-проверки разрешительного режима (РР), теперь система уже принимала окончательное решение, либо с маркой все хорошо и ее продать можно, или нельзя, с указанием причины запрета.
Попутно осуществлялся переход с объемно-сортового учета (ОСУ), на поэкземплярный, когда каждую марку стало возможно отследить в онлайн режиме от производителя и до прилавка.
В завершение это все дополнили локальным модулем, который в случае невозможности выполнить онлайн проверку выполнял проверку марки локально, по внутреннему «черному списку» и либо давал решение на продажу, либо запрещал ее.
Плохо ли, хорошо, но эта система как-то работала, рынок приспособился, адаптировался и принял новые правила игры.
Сама система в данном виде серьезных изъянов не имеет и поставленные задачи достаточно эффективно решает, особенно с переходом на поэкземплярный учет.
Но осенью прошлого года как снег на голову свалился тот самый ТС ПИоТ, процитируем официальный источник:
ТС ПИоТ — это Техническое Средство получения Информации о товаре.
С 28 декабря 2025 года оно обязательно для всех, кто продаёт маркированные товары через кассу.
Зачем оно нужно?
Раньше каждый поставщик ПО сам решал, как проверять коды маркировки. Это приводило к ошибкам, потере данных и даже продаже поддельных товаров.
ТС ПИоТ — это единый, стандартизированный и сертифицированный способ взаимодействия с системой «Честный знак».
Ага, а до этого официальный API Честного знака не был единым, стандартизированным и сертифицированным?
И что значит «сам решал, как проверять»? Способ был для всех один – РР или ЛМ при отсутствии ответа онлайн.
Что поменяется с приходом ПИоТ? Ничего, совсем ничего, просто API РР заменится на API ПИоТ, больше ничего в логике торгового приложения не изменится.
А все его заявленные «достоинства», скажем честно, притянуты за уши. Никаких насущных проблем Розницы ПИоТ не решает, никаких новых возможностей не предоставляет, ни участникам рынка, ни самой системе.
Возможно, именно поэтому ПИоТ оказался не готов в срок, который потом несколько раз переносили, потому что разработчики этого недоразумения сами не понимали, что он должен делать и как.
Зато это не бесплатно, от 5 000 рублей в год, умножьте на количество касс в стране, ну да, неплохой профит на ровном месте, можно сказать из воздуха.
Ну а что, сели государевы мужи, посмотрели, подумали. Работает маркировка, плохо, хорошо, но работает, поставленные задачи решает. А потом вдруг хлопнули себя по лбу, мол как же так, братцы, а почему это все бесплатно???
Поэтому на текущий момент ни бизнес, ни обслуживающие организации ставить ПИоТ не спешат, просто не видят смысла, с учетом его сырости и отвратительной работы по немногочисленным отзывам.
Какая-то ясность появится уже в июне, когда будет понятно, перенесут еще раз сроки или нет.
🔥15❤4😢4🤝3🥱1
🗝 Про "замочек" на базе 1С:Предприятие
Очередной раз сталкиваемся с тем, что и пользователи, и обслуживающий персонал не придают особого значения нахождения конфигурации на поддержке.
Визуально это отображается в виде замка и иногда говорят, что конфигурация "на замочке".
Обычно "замочек" снимают для доработок. Но с этим получают ряд сопутствующих осложнений.
📐 Во-первых, вырастет размер базы. В базе на поддержке две конфигурации: основная и БД. В снятой с поддержки три: основная, поставщика и БД.
⏱ Во-вторых, резко увеличивается время на обновление, так как вместо того, чтобы просто загрузить изменения база всегда будет делать сравнение и объединение.
☝️Поэтому не стоит снимать базу с поддержки без крайней на то необходимости. Для доработки используйте внешние отчеты и обработки, а для более сложных вещей есть расширения.
🤔 Если "замочек" с базы снят, то для того, чтобы вернуть его снимите базу с поддержки и загрузите в нее CF того же релиза или более старшего, на который доступно обновление.
Очередной раз сталкиваемся с тем, что и пользователи, и обслуживающий персонал не придают особого значения нахождения конфигурации на поддержке.
Визуально это отображается в виде замка и иногда говорят, что конфигурация "на замочке".
Обычно "замочек" снимают для доработок. Но с этим получают ряд сопутствующих осложнений.
📐 Во-первых, вырастет размер базы. В базе на поддержке две конфигурации: основная и БД. В снятой с поддержки три: основная, поставщика и БД.
⏱ Во-вторых, резко увеличивается время на обновление, так как вместо того, чтобы просто загрузить изменения база всегда будет делать сравнение и объединение.
☝️Поэтому не стоит снимать базу с поддержки без крайней на то необходимости. Для доработки используйте внешние отчеты и обработки, а для более сложных вещей есть расширения.
🤔 Если "замочек" с базы снят, то для того, чтобы вернуть его снимите базу с поддержки и загрузите в нее CF того же релиза или более старшего, на который доступно обновление.
👍12🥱2
Как легко и просто «сломать» информационную базу 1С:Предприятие, не снимая «замочка» и ничего не понять?
А что, так можно? Не только можно, но и с завидной регулярностью случается. И называется это - расширения.
Вообще, расширения – это удобный механизм доработки конфигурации или исправления ошибок без внесения изменений в саму конфигурацию, но это если в умелых руках.
А если нет? Ну так любой инструмент несет в себе такие же опасности: молотком можно забить гвоздь, а можно отбить пальцы.
Так что не так с расширениями? У расширений есть три типа назначения, про них в документации написано следующее:
Расширение с назначением Исправление предназначено для исправления ошибок в конфигурации. Поэтому оно применяется к конфигурации первым.
Затем применяется расширение с назначением Адаптация. Оно содержит доработки конфигурации при внедрении у конкретного заказчика.
И последним применяется расширение с назначением Дополнение. Оно содержит различные дополнительные сервисы, предназначенные для конфигурации (например, набор дополнительных отчетов).
Предполагается, что расширения с одинаковым назначением не должны «пересекаться» по функционалу и «мешать друг другу».
Ключевая фраза - мешать друг другу, с оговоркой – предполагается.
Что происходит на самом деле? Допустим у нас есть код какого-либо модуля и есть расширения, затрагивающие этот модуль. При запуске 1С берет исходный код модуля и применяет к нему расширение с назначением Изменение. Тем самым получает некоторый промежуточный код, который будет содержать исправления ошибок.
Потом к этому промежуточному коду применится расширение с типом адаптация и мы снова получим некий промежуточный код.
Затем уже к нему применится дополнение, и мы получим некоторый результирующий код.
Если расширений с одним назначением несколько, то они будут применяться в том порядке, в котором были добавлены в информационную базу и изменить этот порядок нельзя.
Если стараться следовать предложенным производителем стандартам, то система получается достаточно логичной. Если исправления ошибок конфликтуют с доработками или дополнениями, то у вас отключатся последние, а исправления применятся.
Если дополнение конфликтует с доработками (адаптация), то откажется работать дополнение. Но в жизни все может быть совсем по-другому. И дополнение с типом адаптация, добавленное первым, может спокойно при обновлении сломать ваши доработки.
Но чаще всего мы получаем странные глюки и ошибки буквально из неоткуда и по абсолютно непонятной причине.
А почему? А потому что раньше процесс изменения конфигурации был делом достаточно сложным и затратным: нужно было найти программиста, заплатить ему денег, снять конфигурацию с замочка, что удорожало ее поддержку и сопровождение… Поэтому чаще всего обходились сравнительно безобидными внешними отчетами и обработками.
Если же решались на доработку, то занимался этим какой-никакой, но специалист.
Зато теперь – полная свобода самовыражения. Пошли на Инфостарт, накачали расширений и давай «прокачивать» базу. И никаких программистов не надо. Даже конфигуратор открывать не придется.
И, как часто бывает, прокачивая какое-то одно направление мы с большой вероятностью столкнемся с тем, что применяемые расширения где-то пересекаются и начинают мешать друг другу. Причем этот процесс может быть абсолютно непредсказуемым.
Например, в базе А набор расширений может работать без ошибок, а в точно такой же базе Б – глючить напропалую. А почему? А потому что расширения добавлены в разном порядке. Следовательно итоговый код будет разным, с разными последствиями.
Как быть? Да никак, расширения стали нормой жизни, их будут качать и ставить. Но всегда надо иметь это ввиду и при непонятном поведении базы сразу проверять список расширений.
Ну и стараться все-таки, хотя бы по диагонали, смотреть в код расширений, прежде чем их ставить и контролировать из пересечение. Не умеете сами – позовите специалиста.
А что, так можно? Не только можно, но и с завидной регулярностью случается. И называется это - расширения.
Вообще, расширения – это удобный механизм доработки конфигурации или исправления ошибок без внесения изменений в саму конфигурацию, но это если в умелых руках.
А если нет? Ну так любой инструмент несет в себе такие же опасности: молотком можно забить гвоздь, а можно отбить пальцы.
Так что не так с расширениями? У расширений есть три типа назначения, про них в документации написано следующее:
Расширение с назначением Исправление предназначено для исправления ошибок в конфигурации. Поэтому оно применяется к конфигурации первым.
Затем применяется расширение с назначением Адаптация. Оно содержит доработки конфигурации при внедрении у конкретного заказчика.
И последним применяется расширение с назначением Дополнение. Оно содержит различные дополнительные сервисы, предназначенные для конфигурации (например, набор дополнительных отчетов).
Предполагается, что расширения с одинаковым назначением не должны «пересекаться» по функционалу и «мешать друг другу».
Ключевая фраза - мешать друг другу, с оговоркой – предполагается.
Что происходит на самом деле? Допустим у нас есть код какого-либо модуля и есть расширения, затрагивающие этот модуль. При запуске 1С берет исходный код модуля и применяет к нему расширение с назначением Изменение. Тем самым получает некоторый промежуточный код, который будет содержать исправления ошибок.
Потом к этому промежуточному коду применится расширение с типом адаптация и мы снова получим некий промежуточный код.
Затем уже к нему применится дополнение, и мы получим некоторый результирующий код.
Если расширений с одним назначением несколько, то они будут применяться в том порядке, в котором были добавлены в информационную базу и изменить этот порядок нельзя.
Если стараться следовать предложенным производителем стандартам, то система получается достаточно логичной. Если исправления ошибок конфликтуют с доработками или дополнениями, то у вас отключатся последние, а исправления применятся.
Если дополнение конфликтует с доработками (адаптация), то откажется работать дополнение. Но в жизни все может быть совсем по-другому. И дополнение с типом адаптация, добавленное первым, может спокойно при обновлении сломать ваши доработки.
Но чаще всего мы получаем странные глюки и ошибки буквально из неоткуда и по абсолютно непонятной причине.
А почему? А потому что раньше процесс изменения конфигурации был делом достаточно сложным и затратным: нужно было найти программиста, заплатить ему денег, снять конфигурацию с замочка, что удорожало ее поддержку и сопровождение… Поэтому чаще всего обходились сравнительно безобидными внешними отчетами и обработками.
Если же решались на доработку, то занимался этим какой-никакой, но специалист.
Зато теперь – полная свобода самовыражения. Пошли на Инфостарт, накачали расширений и давай «прокачивать» базу. И никаких программистов не надо. Даже конфигуратор открывать не придется.
И, как часто бывает, прокачивая какое-то одно направление мы с большой вероятностью столкнемся с тем, что применяемые расширения где-то пересекаются и начинают мешать друг другу. Причем этот процесс может быть абсолютно непредсказуемым.
Например, в базе А набор расширений может работать без ошибок, а в точно такой же базе Б – глючить напропалую. А почему? А потому что расширения добавлены в разном порядке. Следовательно итоговый код будет разным, с разными последствиями.
Как быть? Да никак, расширения стали нормой жизни, их будут качать и ставить. Но всегда надо иметь это ввиду и при непонятном поведении базы сразу проверять список расширений.
Ну и стараться все-таки, хотя бы по диагонали, смотреть в код расширений, прежде чем их ставить и контролировать из пересечение. Не умеете сами – позовите специалиста.
👍13🔥3❤1
Автоматический перезапуск открытых приложений после загрузки Windows
Вы активно работаете, у вас много открытых окон приложений и тут возникает необходимость выключить или перезагрузить компьютер.
А еще хуже, если система выполнит перезагрузку сама, например, для плановой установки обновлений.
Знакомая ситуация?
Очень часто именно по этой причине многие откладывают перезагрузку или установку обновлений, потому что не хотят терять рабочую среду, где уже открыто все что надо.
Но начиная с Windows 10 2004 появилась возможность сохранять состояние приложений и автоматически запускать их после включения или перезагрузки.
Для этого перейдите в Параметры - Учетные записи - Варианты входа и включите опцию Перезапустить приложения.
Также это можно сделать через реестр. Для включения:
Для отключения:
Если приложение не хочет сохранять состояние и перезапускаться, что обычно бывает со старыми приложениями, то перейдите в его Свойства и на закладке Совместимость установите опцию Зарегистрируйте эту программу для перезагрузки.
Небольшая тонкость, если приложение было запущено с правами Администратора, то его перезапуск произойдет с обычными правами.
Вы активно работаете, у вас много открытых окон приложений и тут возникает необходимость выключить или перезагрузить компьютер.
А еще хуже, если система выполнит перезагрузку сама, например, для плановой установки обновлений.
Знакомая ситуация?
Очень часто именно по этой причине многие откладывают перезагрузку или установку обновлений, потому что не хотят терять рабочую среду, где уже открыто все что надо.
Но начиная с Windows 10 2004 появилась возможность сохранять состояние приложений и автоматически запускать их после включения или перезагрузки.
Для этого перейдите в Параметры - Учетные записи - Варианты входа и включите опцию Перезапустить приложения.
Также это можно сделать через реестр. Для включения:
reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v RestartApps /t REG_DWORD /d 1
Для отключения:
reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v RestartApps /t REG_DWORD /d 0
Если приложение не хочет сохранять состояние и перезапускаться, что обычно бывает со старыми приложениями, то перейдите в его Свойства и на закладке Совместимость установите опцию Зарегистрируйте эту программу для перезагрузки.
Небольшая тонкость, если приложение было запущено с правами Администратора, то его перезапуск произойдет с обычными правами.
🔥32👍12🤝2
ImgCompress – сервис обработки изображений для самостоятельного размещения
Сегодня достаточно популярны онлайн сервисы для конвертации и обработки изображений, которые позволяют быстро и удобно выполнить базовые задачи обработки без привлечения дополнительного софта.
Это действительно удобно, но есть один тонкий момент – ваши изображения передаются третьей стороне, что может быть не всегда приемлемо. В тоже время подобные задачи никто не отменял?
Как быть? Создать собственный аналогичный сервис. Почему именно сервис? Ведь можно поставить клиенту нужное ПО? Можно, но это потребует настройки каждого ПК отдельно, да и скорость работы будет сильно зависеть от аппаратной части.
Кроме того, пользователи могут работать с различных устройств и операционных систем, что создаст очередной зоопарк или заставит искать что-то универсальное. В то время как сервис станет единой унифицированной точкой работы с изображениями.
Простым, но в тоже время удобным и функциональным инструментом является ImgCompress – он поддерживает на чтение 70 форматов изображений, позволяет быстро из конвертировать и изменять размер. Также присутствует локальный ИИ для удаления фона.
Для его установки потребуется один единственный докер контейнер, для запуска создайте следующий
Две последних опции позволяют отключить лого и управление хранилищем изображений.
Контейнер достаточно большой, более 600 МБ, что, скорее всего, обусловлено наличием локальной модели ИИ.
Для работы с сервисом перейдите по адресу http://IP_address:3001, где вас встретит привычный и интуитивно понятный интерфейс.
Перетаскиваем файлы, выбираем выходной формат и качество, при необходимости указываем до какого размера изменить изображения. Нажимаем Start, ждем пока изображения обработаются, скачиваем результат, можно по одному, можно сразу архивом.
Кроме указания качества можно управлять сжатием по требуемому размеру выходного файла. Просто указываем максимальный размер, и программа сама подберет уровень сжатия, это полезно, когда нужно конвертировать сразу много файлов, не превышая некоторый размер.
В правом нижнем углу кнопка управления хранилищем, там мы можем повторно скачать уже конвертированные файлы, но учтите, что контейнер не имеет внешних томов, поэтому все результаты пропадут при перезапуске контейнера. Это не плюс и не минус, просто нужно иметь это ввиду.
ИИ по удалению фона изображения работает в целом неплохо, на уровне бесплатных сервисов, зато достаточно быстро. Для простых изображений с однородным фоном – вообще очень хорошо, в иных случаях понадобится доработка руками.
При этом все операции производятся исключительно локально, в облако ничего не уходит.
В целом ImgCompress – это простой и удобный инструмент, не без своих особенностей и недостатков, но полностью локальный и позволяющий закрыть вопрос базовой обработки изображений своими силами в локальном контуре предприятия.
Сегодня достаточно популярны онлайн сервисы для конвертации и обработки изображений, которые позволяют быстро и удобно выполнить базовые задачи обработки без привлечения дополнительного софта.
Это действительно удобно, но есть один тонкий момент – ваши изображения передаются третьей стороне, что может быть не всегда приемлемо. В тоже время подобные задачи никто не отменял?
Как быть? Создать собственный аналогичный сервис. Почему именно сервис? Ведь можно поставить клиенту нужное ПО? Можно, но это потребует настройки каждого ПК отдельно, да и скорость работы будет сильно зависеть от аппаратной части.
Кроме того, пользователи могут работать с различных устройств и операционных систем, что создаст очередной зоопарк или заставит искать что-то универсальное. В то время как сервис станет единой унифицированной точкой работы с изображениями.
Простым, но в тоже время удобным и функциональным инструментом является ImgCompress – он поддерживает на чтение 70 форматов изображений, позволяет быстро из конвертировать и изменять размер. Также присутствует локальный ИИ для удаления фона.
Для его установки потребуется один единственный докер контейнер, для запуска создайте следующий
docker-compose.yml:services:
imgcompress:
image: karimz1/imgcompress:latest
container_name: imgcompress
restart: always
ports:
- "3001:5000"
environment:
- DISABLE_LOGO=false
- DISABLE_STORAGE_MANAGEMENT=false
Две последних опции позволяют отключить лого и управление хранилищем изображений.
Контейнер достаточно большой, более 600 МБ, что, скорее всего, обусловлено наличием локальной модели ИИ.
Для работы с сервисом перейдите по адресу http://IP_address:3001, где вас встретит привычный и интуитивно понятный интерфейс.
Перетаскиваем файлы, выбираем выходной формат и качество, при необходимости указываем до какого размера изменить изображения. Нажимаем Start, ждем пока изображения обработаются, скачиваем результат, можно по одному, можно сразу архивом.
Кроме указания качества можно управлять сжатием по требуемому размеру выходного файла. Просто указываем максимальный размер, и программа сама подберет уровень сжатия, это полезно, когда нужно конвертировать сразу много файлов, не превышая некоторый размер.
В правом нижнем углу кнопка управления хранилищем, там мы можем повторно скачать уже конвертированные файлы, но учтите, что контейнер не имеет внешних томов, поэтому все результаты пропадут при перезапуске контейнера. Это не плюс и не минус, просто нужно иметь это ввиду.
ИИ по удалению фона изображения работает в целом неплохо, на уровне бесплатных сервисов, зато достаточно быстро. Для простых изображений с однородным фоном – вообще очень хорошо, в иных случаях понадобится доработка руками.
При этом все операции производятся исключительно локально, в облако ничего не уходит.
В целом ImgCompress – это простой и удобный инструмент, не без своих особенностей и недостатков, но полностью локальный и позволяющий закрыть вопрос базовой обработки изображений своими силами в локальном контуре предприятия.
1👍33❤3👌3👎1🤝1
BentoPDF -швейцарский нож для работы с PDF
Онлайн сервисы для работы с PDF не менее популярны, чем сервисы для работы с изображениями, но несут в себе еще большее количество угроз, связанных с загрузкой документов третьей стороне.
Это связано с тем, что PDF зачастую содержат более чувствительную информацию, нежели изображения, а также то, что из них можно легко извлекать текст и анализировать его.
Поэтому свой сервис для работы с PDF – это не прихоть, а разумная необходимость. Тем более что сделать это несложно. Мы будем использовать известный проект BentoPDF, для его запуска используйте
После чего переходите по адресу
Возможностей много, практически всё, что можно придумать при работе с данным форматом. Поддерживается как конвертация в PDF, так и обратно, распознавание текса, извлечение отдельных данных, защита, оптимизация для веб и т.д. и т.п.
И все это исключительно локально, без передачи данных на сторонние сервера. Ваши документы остаются в вашей инфраструктуре.
Отдельного внимания заслуживает визуальный конструктор пайплайнов, который позволяет настроить, сохранять и использовать готовые сценарии обработки для PDF, что позволяет легко автоматизировать повседневные задачи.
Онлайн сервисы для работы с PDF не менее популярны, чем сервисы для работы с изображениями, но несут в себе еще большее количество угроз, связанных с загрузкой документов третьей стороне.
Это связано с тем, что PDF зачастую содержат более чувствительную информацию, нежели изображения, а также то, что из них можно легко извлекать текст и анализировать его.
Поэтому свой сервис для работы с PDF – это не прихоть, а разумная необходимость. Тем более что сделать это несложно. Мы будем использовать известный проект BentoPDF, для его запуска используйте
docker-compose.yml:services:
bentopdf:
image: ghcr.io/alam00000/bentopdf:latest
ports:
- '3000:8080'
restart: unless-stopped
После чего переходите по адресу
http://IP_address:3000, где вы попадете в рабочую среду продукта, которая внешне не отличается от публичных сервисов.Возможностей много, практически всё, что можно придумать при работе с данным форматом. Поддерживается как конвертация в PDF, так и обратно, распознавание текса, извлечение отдельных данных, защита, оптимизация для веб и т.д. и т.п.
И все это исключительно локально, без передачи данных на сторонние сервера. Ваши документы остаются в вашей инфраструктуре.
Отдельного внимания заслуживает визуальный конструктор пайплайнов, который позволяет настроить, сохранять и использовать готовые сценарии обработки для PDF, что позволяет легко автоматизировать повседневные задачи.
1👍54🤝5❤2👎1