Search
Write a publication
Pull to refresh
5
0
Tolkachev Konstantin @kasperos

ИТ: администрирование, рем., диагн., и т.д. и т.п.

Send message

«Прозрачный» Squid с фильтрацией HTTPS ресурсов без подмены сертификатов (x86)

Reading time9 min
Views263K
Не секрет, что в больших конторах тема фильтрации Интернета довольно актуальная. С этой задачей справляется немало программных и аппаратных решений. Но в настоящее время все те сайты, которые мы резали ранее, работают по протоколу HTTPS, т.е. порт 443. Как известно, данный протокол проследить, прослушать и т. п., невозможно. А любой кеширующий фильтрующий прокси-сервер, редиректор и т. п. фильтрует только HTTP, т.е. порт 80. Как же резать Вконтакте, Одноклассники, iphide.info и многие другие подобные сайты? Как блокировать доступ к личной почте в организации, если использование оной запрещено порядками в организации? Да, можно фильтровать по IP адресам, но они частенько меняются, да и на многих ресурсах несколько IP адресов. Блокировать их на уровне файрвола как-то совсем не православное решение, и не совсем удобное.

И вот, совсем недавно, мне один товарищ рассказал, что он поднимает у себя в конторе кеширующий прокси с фильтрацией HTTPS, меня это заинтересовало.
Читать дальше →

Корпоративный иммунитет: создаём систему централизованного управления сетевой безопасностью в компании и её филиалах

Reading time4 min
Views17K
Правила игры изменились. Еще вчера мы специализировались на решениях для малого и среднего бизнеса, и не из-за того, что обладали какими-либо техническими ограничениями, а лишь потому, что на рынке было засилие тяжеловесов в IT отрасли. Наше ПО попросту не рассматривали корпорации, как комплексное решение в области безопасности, хотя и устанавливали Traffic Inspector для защиты отдельных офисов и небольших подразделений.

Но с середины 2014 года, в связи с изменением рыночной конъюнктуры и санкционной политики западных компаний, в наш офис стали все чаще поступать запросы о возможности объединения наших программно-аппаратных устройств в единое решение для корпораций. В результате чего, нами был разработан новый продукт Traffic Inspector Enterprise – комплексная система защиты разветвленной сети под управлением единой консоли.



Итак, как мы к этому пришли?
Читать дальше →

Не-фон неймановский компьютер на базе комбинаторной логики

Reading time8 min
Views27K
Здравствуйте. В этой статье я расскажу про свой хобби-проект не-фон неймановского компьютера. Архитектура соответствует функциональной парадигме: программа есть дерево применений элементарных функций друг к другу. Железо — однородная статическая сеть примитивных узлов, на которую динамическое дерево программы спроецировано, и по которой программа «ползает» вычисляясь.


Примерно так работает дерево, только здесь для наглядности вычисляются арифметическое выражение, а не комбинаторное; шаг на рисунке — один такт машины.

Сейчас готов ранний прототип, существующий как в виде потактового программного симулятора, так и в виде реализации на ПЛИС.
Читать дальше →

Критический взгляд со стороны на процессоры Мультиклет / Multiclet

Reading time5 min
Views27K
В последние пару недель на многих сайтах были заметки о начале производства (на азиатских заводах) отечественных процессоров Multiclet с «прорывной архитектурой и фантастической производительностью», в том числе и на Хабре: Первая опытно-промышленная партия отечественных мультиклеточных процессоров MCp. Все эти заметки в целом рассматривали разработку с позитивной стороны, основываясь на преимуществах в изложении разработчиков. Я всегда интересовался отечественными разработками, и попробую рассказать об этом процессоре чуть более критически, и описать в меру своих возможностей суть этой новой архитектуры.

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

Мультиклеточный процессор — это что?

Reading time18 min
Views52K
Многие слышали о мультиклеточной архитектуре, процессорах и даже первых устройствах на них. Особенно продвинутые пользователи опробовали свои алгоритмы. Были проведены первые простые тесты производительности, а также пользователь Barsmonster, вытравил кристалл процессора Р1. Сейчас уже проходит первые проверки процессор R1 и скоро будет доступен всем. Но ответ на вопрос о том, как работает мультиклеточная архитектура и в чём её отличие, знают не все. Попытаемся сейчас ввести в курс дела.
Читать дальше →

Как я, в итоге, написал новую RTOS, протестированную и стабильную

Level of difficultyMedium
Reading time40 min
Views84K
Я работаю со встраиваемыми системами в течение нескольких лет: наша компания разрабатывает и производит бортовые компьютеры для автомобилей, зарядные устройства, и т.д.

image


Процессоры, используемые в наших продуктах — это, в основном, 16- и 32-битные микроконтроллеры Microchip, имеющие RAM от 8 до 32 кБ, и ROM от 128 до 512 кБ, без MMU. Иногда, для самых простых устройств, используются еще более скромные 8-битные чипы.

Очевидно, что у нас нет (разумных) шансов использовать ядро Linux. Так что нам нужна какая-нибудь RTOS (Real-Time Operating System). Находятся даже люди, которые не используют никаких ОС в микроконтроллерах, но я не считаю это хорошей практикой: если железо позволяет мне использовать ОС, я ее использую.

Несколько лет назад, когда мы переходили с 8-битников на более мощные 16-битные микроконтроллеры, мои коллеги, которые были гораздо более опытными, чем я, рекомендовали вытесняющюю RTOS TNKernel. Так что это — та ОС, которую я использовал в разных проектах в течение пары лет.

Не то, чтобы я был очень доволен ею: например, в ней нет таймеров. И она не позволяет потоку ждать сообщения сразу из нескольких очередей. И в ней нет программного контроля переполнения стека (это действительно напрягало). Но она работала, так что я продолжал ее использовать.
Читать дальше →

Чеклист для творческих процессов

Reading time6 min
Views12K


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

В компании Wild Apricot, где я работаю, мы используем чеклисты как один из инструментов для контроля качества релизов достаточно широко. У нас это список действий, которые надо обязательно выполнить что бы фича ушла в релиз. У нас есть чеклисты разработчика, тестировщика (о!.. сколько у тестировщиков тест-листов...), и даже чеклист аналитика и дизайнера. Сравнительно недавно я занимался его переработкой и хотел бы поделится уроками, которые при этом получил.
Читать дальше →

Не пора ли реляционным базам данных на свалку истории?

Reading time10 min
Views32K
Здравствуйте, меня зовут Дмитрий Карловский и я… антиконформист, то есть человек, который не держится за свои привычки и всегда готов их поменять, если в том есть необходимость. Например, как и многие разработчики, я начинал изучение баз данных с реляционных. Хотя реляционная алгебра и довольно красива в своей простоте, я постоянно ловил себя на мысли, что пытаюсь впихнуть круглую фигуру в квадратное отверстие и получалось как-то не герметично.



Нет, я не буду рассказывать вам про MongoDB или ещё какую неполноценную «убийцу SQL». Статей на тему «SQL vs NoSQL» сравнивающих на самом деле реляционные субд с документными и так полно:


Но у большинства из них есть фатальный недостаток — авторы просто не в курсе, что моделей данных в СУБД есть куда больше, чем два упомянутых: от узкоспециализированных «словарей», то универсальных «графов». А популярные «реляционные» и «документные» находятся лишь где-то по середине между универсальностью и специализированностью.

Давайте сравним типичных представителей упомянутых типов СУБД (от большего к меньшему).

  • Популярность: Oracle, MongoDB, Redis, HBase, OrientDB.
  • Функциональность: OrientDB, Oracle, MongoDB, HBase, Redis.
  • Скорость: очень сильно зависит от задачи, данных и реализации приложения. Я пересмотрел кучу бенчмарков, везде всё по разному.
Читать дальше →

Пол Грэм: Что мы хотели знать еще в школе

Reading time17 min
Views31K
Январь 2005
(Я написал эту речь для выступления перед выпускниками школы. Мне не удалось с ней выступить, так как школьная администрация запретила меня приглашать.)

Когда я рассказал, что меня пригласили выступить перед старшеклассниками, мои друзья очень заинтересовались. Что такого ты мог бы им рассказать? Я же поинтересовался у них, что бы они хотели услышать от более опытного взрослого, когда учились в школе? И теперь я расскажу вам, что мы все хотели бы знать еще в школе.
Читать дальше →

Как перестать настраивать и начать жить или настройка Puppet в школьном классе на 25 компьютеров

Reading time7 min
Views30K
Можно настраивать компьютеры по одному, но иногда их становится слишком много...



Так уж вышло, что я устроился преподавателем на один бесплатный курс для школьников по разработке под Android, спонсируемый одной крупной корпорацией, и, естественно, мне потребовалось осваивать соответствующую технику в количестве 25 ноутбуков, 25 планшетов, 2 стационарных компьютеров и сенсорной панели. До недавнего времени ноутбуки использовались с ОС Windows 8.1, но мало кого устраивала производительность и стабильность работы этой ОС при разработке в Eclipse и Android Studio. После одного года под Windows, наше руководство решило все ноутбуки перевести на Xubuntu 14.04, чтобы разрешить эти сложности. Был подготовлен образ, настроенный под конкретную модель ноутбуков, что у нас использовалась, и со всеми необходимыми программами. Накатил и работай. Одна беда — не было предусмотрено никакого решения для централизованного управления конфигурацией. На мой логичный вопрос по этому поводу был дан ответ, что внедрение подобной системы усложняет процедуру установки Linux на ноутбуки и, поскольку в образе уже все сделано как надо, никаких изменений после его установки вносить не понадобится. (ох уж эти оптимисты!)
Читать дальше →

PE (Portable Executable): На странных берегах

Reading time18 min
Views165K


Эта статья представляет из себя рассказ о том как устроены исполняемые файлы (в точку! Это именно те штуки, которые получаются после компиляции приложений с расширением .exe). После того, как написан код, подключены библиотеки, подгружены к проекту ресурсы (иконки для окон, какие-либо текстовые файлы, картинки и прочее) всё это компонуется в один единственный исполняемый файл, преимущественно с расширением .exe. Вот именно в этот омут мы и погрузимся.
*Статья находится под эгидой «для начинающих» поэтому будет изобиловать схемами и описанием важных элементов загрузки.
На палубу

Небольшой путеводитель по ZPL

Reading time5 min
Views84K

Добрый день, Хабрахабр.


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

Зебры они такие
Механизм формирования этикеток выглядит следующим образом: сначала с машины пользователя (компьютер, терминал сбора данных) на принтер отправляется специальным образом оформленная строка, затем внутренний процессор принтера обрабатывает эту строку, и выводит ее на печать.Но язык, на котором формируется строка для принтера (называется ZPL) на первый взгляд вызывает у непосвящённых нервную икоту и мандраж.
Прошу под кат, всех кто хочет разобраться в данном вопросе.
Читать дальше →

Инструменты командной строки для веб-разработчика

Reading time3 min
Views40K
Жизнь веб-разработчика омрачена сложностями. Особенно неприятно, когда источник этих сложностей неизвестен. То ли это проблема с отправкой запроса, то ли с ответом, то ли со сторонней библиотекой, то ли внешний API глючит? Существует куча различных прилад, способных упростить нам жизнь. Вот некоторые инструменты командной строки, которые лично я считаю бесценными.
Читать дальше →

Один заказчик, два помещения, четыре провайдера и восемь связей

Reading time5 min
Views22K
Один из заказчиков попросил сделать так, чтобы связь между его офисом и складом была постоянной и безопасной. Как мы это делали и что получилось, а что нет.
Читать дальше →

Поздравление с 1 сентября от Vert Dider

Reading time2 min
Views10K


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

Физика радиационных эффектов, влияющих на электронику в космосе

Reading time14 min
Views291K
Технологический процесс с проектными нормами 32 нм.
Два ядра ARMv7 с тактовой частотой 1,3 ГГц
Оперативная память – 1 Гбайт.


Технологический процесс с проектными нормами 150 нм.
Одно ядро PowerPC с тактовой частотой 200 МГц.
Оперативная память – 256 Мбайт.


Сверху – параметры центрального процессора iPhone5, внизу – марсохода Curiosity. Бортовой компьютер марсохода стоит приблизительно в двести раз дороже нового айфона. Почему так? Центральный процессор космического аппарата должен быть устойчивым к воздействию радиации. На Хабре уже была хорошая обзорная статья о космической электронике, а я постараюсь подробнее рассказать о физических принципах и эффектах, стоящих за сбоями и отказами в космосе.
Читать дальше →

Микроэлектроника для космоса и военных

Reading time13 min
Views308K
Возможное, многие из вас думали после ситуации с Фобос-Грунтом — что такого особенного в микросхемах для космоса и почему они столько стоят? Почему нельзя поставить защиту от космического излучения? Что там за история с арестом людей, которые микросхемы экспортировали из США в Россию? Где все полимеры?

На эти вопросы я и попробую ответить в этой статье.

Disclaimer: Сведения получены из открытых источников и могут быть не вполне точными. Я лично с военной электроникой не работаю, а кто работает — те статьи писать не могут. Буду рад дополнить и исправить статью.
Читать дальше →

Подводные камни использования сессий в PHP

Reading time13 min
Views148K
image
Приветствую, уважаемое сообщество.

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

Цель этой статьи — осветить подводные камни использования сессий в PHP. Конечно, есть документация по PHP и масса примеров, и данная статья не претендует на полное руководство. Она призвана раскрыть некоторые ньюансы работы с сессиями и оградить разработчиков от ненужной траты времени.

Читать дальше →

Может ли информационная безопасность увеличивать доходы, повышать лояльность клиентов и решать другие бизнес-задачи?

Reading time4 min
Views4.9K
Обычно информационная безопасность “продается” (производителями заказчикам, а службами ИБ/ИТ своему руководству) под видом борьбы со страхом (утечки, вируса, DDoS и т.п.) или выполнения нормативных требований (ФЗ-152, 382-П Банка России, 17-й приказ ФСТЭК, 378-й приказ ФСБ). Это традиционный взгляд на безопасность и на средства ее реализующие. Если посмотреть описания многих продуктов, то мы увидим, что именно так они и позиционируются. Оно и понятно — это универсальные драйвера, которые не зависят от компании, которой предлагается купить межсетевой экран, средство контроля доступа в Интернет, антивирус, систему предотвращения вторжений или что еще. И это правда. Межсетевой экран Cisco ASA with FirePOWER Services будет одинаково бороться с несанкционированным доступом, что в России, что в Австралии, что в Великобритании. А система мониторинга аномальной активности внутри сети Cisco Cyber Threat Defense так же эффективно будет обнаруживать обошедший периметровые средства защиты вредоносный код и в США, и в Украине, и в Норвегии.



Ситуация с compliance требует чуть больше сфокусированности. Очевидно, что 17-й приказ ФСТЭК по защите государственных информационных систем — это чисто российское изобретение, но зато применимое ко всем государственным и муниципальным учреждениям нашей необъятной Родины. А законодательство по защите информации в автоматизированных системах управления технологическими процессами хоть и есть во многих странах мира, но все-таки оно отличается друг друга. Требования 31-го приказа ФСТЭК и стандарта NERC CIP, стандарта ISA/IEC 62443 и катарского стандарта по безопасности критических инфраструктур пусть и схожи по сути, но разные в части, например, оценки соответствия, а значит предлагаемые для их реализации решения уже должны иметь свою специфику.



Но тут мы приходим к тому, что в текущей непростой экономической ситуации
Читать дальше →

Игра для самых маленьких — простая идея, которую не стыдно включить в резюме

Reading time6 min
Views48K

Предыстория


Мой сын, как, наверное, все дети программистов, получил свою первую клавиатуру ещё когда не умел сидеть. Сейчас ему чуть меньше года, но он уже понимает разницу между «игрушечной» и «настоящей» (папиной) клавиатурой — если колотить по кнопкам настоящей, то на экране меняется картинка, а компьютер иногда издаёт какие-то звуки.

КДПВ

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

Чтобы процесс освоения компьютера стал для детёныша более увлекательным, я решил написать ему простенькую игру. Будучи программистом со стажем, весь процесс решено было построить «правильно».

Требования


Заказчик (мой сын, возраст <1 года), как и все нормальные заказчики затруднился письменно изложить непротиворечивые и полные требования к продукту, поэтому пришлось помочь писать самому.

Функциональные:
  • Приложение работает в режиме полного экрана.
  • Можно нажимать на всё подряд, но самые доступные методы выхода или переключения программ должны быть заблокированы.
  • Визуальная обратная связь — цвет фона меняется при нажатии, в центре экрана отображается нажатый символ.
  • Звуковая обратная связь — приложение издаёт звук при нажатии на клавишу.
  • Предсказуемое поведение — цвет фона, символ и звук должны быть всегда одинаковыми для одной и той же клавиши.

Не функциональные:
  • Мне должно быть не стыдно за написанный код.
  • Код должен быть ценен сам по себе.
  • Архитектура и все решения должны быть «правильными» — как в заказном проекте.

Кроме того было принято решение использовать гибкий итеративный подход к разработке с малыми циклами разработки, заканчивающимися получением обратной связи (SCRUM).

В качестве языка программирования и среды разработки были выбраны C# и Visual Studio, так как они обеспечивали исполнителю наибольшую скорость работы.
Читать дальше →

Information

Rating
Does not participate
Location
Екатеринбург, Свердловская обл., Россия
Registered
Activity