Search
Write a publication
Pull to refresh
3
0
Дмитрий Куликов @DmitryKulikov

User

Send message

Exim + DKIM на примере FreeBSD 8.2

Reading time4 min
Views44K

Что такое DKIM и как оно работает


DKIM (расшифровывается как DomainKeys Identified Mail) — метод идентификации письма по доменным ключам.
DKIM настраивается на почтовом сервере для того, чтобы подписывать исходящие письма цифровой подписью. Наличие такой подписи в заголовке отправленного письма сообщает серверу-получателю, что оно действительно было отправлено с указанного домена.
Известно, что в СПАМ-письмах часто в поле From: ставят е-mail, не имеющий совершенно никакого отношения к отправителю. В этом случае DKIM поможет распознать реальное письмо от спама. В отличие от других методов цифровой подписи письма, DKIM совместим с существующими форматами и протоколами и может быть плавно интегрирован в имеющиеся системы доставки и получения почты.

Подпись письма происходит на SMTP-сервере с помощью секретного ключа (Private key), а расшифровка подписи происходит на сервере-получателе или клиентской программе с помощью публичного ключа (Public key). Что интересно, публичный ключ хранится в DNS, что позволяет убить сразу двух зайцев. Во-первых, нет необходимости прикладывать Public key с каждым письмом для его расшифровки. А во-вторых, в таком случае DKIM позволяет сообщать серверам-получателям что делать с письмом, которое не имеет цифровой подписи, но якобы отправлено от вас. Эта технология называется ADSP (Author Domain Signing Practices). ADSP также хранится в DNS SMTP-сервера и доступен всем и отовсюду.

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

Небольшая задача на C/C++ для разминки

Reading time3 min
Views41K
Предлагаю решить задачу. Как вариант, можно предложить решить ее соискателям при проведении собеседований (в дополнение). Задача очень просто решается, но создает паузу у людей, не встречавшихся с ней раньше или не попытавшихся проанализировать свойства операторов-циклов при изучении или после.

Условие задачи

Grab — новый интерфейс для работы с DOM-деревом HTML-документа

Reading time5 min
Views36K

Исторический экскурс


Ранее я уже писал на хабре о Grab — фреймворке для написания парсеров сайтов: раз, два, три, четыре. В двух словах, Grab это удобная оболочка поверх двух библиотек: pycurl для работы с сетью и lxml для разбора HTML-документов.
Читать дальше →

Рассуждения о нулевой итерации в Scrum

Reading time5 min
Views12K
Приветствую, хабровчане!

Сегодня я решился написать свою первую статью на Хабр (так что уж не судите строго).
В этой, как и в большинстве последующих статей от меня, я буду говорить об Agile. Scrum и некоторых моментах из этой серии, на мой взгляд, являющихся интересными тем, кто увлекается данным направлением.
В этой статье я решил поговорить о нулевой итерации в Скрам, ее использовании в массах, и также попробовать определить является ли нулевая итерация частью true-Scrum или чертой темных Скрам-батов, которая приобрела свое название в угоду Скрам-брендингу.
Читать дальше →

Дон Джонс. «Создание унифицированной системы IT-мониторинга в вашем окружении» Глава1.Управление вашим IT окружением: четыре вещи, которые вы делаете неправильно

Reading time21 min
Views42K

От переводчика

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

Начав выкладывать на хабре некоторые свои статьи и переводы, касающиеся тематики мониторинга ИТ-инфраструктуры, мне опять пришлось столкнуться с очень узким и техническим пониманием этой темы, которое у меня уже когда-то было и поэтому у меня однажды возникла идея изложить это системно. Я даже начал, не торопясь, писать статью на эту тему, но интуитивно понятные вещи не очень хорошо ложились на бумагу – за деревьями не получалось леса. Конечно, у нас у всех есть Google и возможность подсмотреть что пишут другие авторы, но не тут-то было. Бесчисленные статьи и заметки в блогах были посвящены техническим аспектам взгромождения очередной системы мониторинга на очередную версию операционной системы и связанное с этим героическое преодоление трудностей. Cтатей по методологии мониторинга, принципами выбора метрик, правильного построения процесса и увязывания его с бизнесом было очень мало и они также описывали некоторые частные случаи применения мониторинга для решения той или иной проблемы и не более того. А потом мне случайно попалась в руки совсем небольшая книга Дона Джонса «Создание унифицированной системы ИТ-мониторинга в вашем окружении (ENG)».
Читать дальше →

2 апреля в Петербурге состоится High Performance Conference 4.0

Reading time1 min
Views5.1K
Впервые конференция по высоким нагрузкам пройдет Петербурге! 2 апреля в Holiday Inn «Московские Ворота» своим опытом поделятся представители из JetBrains, Microsoft, Jelastic и Badoo и Яндекс.Денег.

image

HPC 4.0 соберет программистов, тим-лидов и руководители IT-департаментов и компаний, которые смогут задать вопросы экспертам по высоким нагрузкам и обсудить собственные решения с коллегами.

После докладов состоится after-party с алкоголем и неформальным общением.

Программа мероприятия и акция для Хабрапользователей

Field-level OCR. What is it for?

Reading time6 min
Views9K
Мы уже анонсировали крутую штуку под названием ABBYY Cloud OCR SDK. Она постепенно набирает популярность — на днях сервис распознал миллионную страницу. Кажется, это хороший повод повысить OCR-грамотность настоящих и будущих пользователей. Итак, начнём.

Сегодня речь пойдёт о существовании двух видов распознавания – Full Page OCR и Field-level OCR. Эти подходы отличаются не только ценой, между ними есть фундаментальные различия в том, зачем они нужны. К сожалению, далеко не все начинающие разработчики в области OCR понимают эти различия, и вынуждены учиться на ошибках. И более того, многие крупные и хорошо известные игроки на рынке Data Capture продолжают до сих пор использовать однопроходный алгоритм там, где будет хорош многопроходный (т.е. Full Page OCR вместо Field-level). Причины такого их поведения банальны: приложение написано много лет назад, и им слишком дорого переделывать архитектуру, UI, заново обучать своих партеров. И они вынуждены расплачиваться за это ограничениями в области качества распознавания.
Читать дальше →

Win32/Theola похищает данные систем онлайн-банкинга с использованием плагина для браузера Google Chrome

Reading time3 min
Views15K
Win32/Theola представляет из себя вредоносный компонент семейства буткитов Win32/Mebroot.FX (известен с 2007 г.). Вредоносное ПО Theola включает в себя специальные плагины для браузеров, которые Mebroot устанавливает для проведения мошеннических операций, связанных с онлайн-банкингом. В этом посте мы расскажем об анализе, который провел Александр Матросов для этих вредоносных плагинов к браузеру, и ответим на вопрос: каким образом осуществляется похищение денежных средств при работе с системой онлайн-банкинга на зараженной машине.

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

Живучий SCSI

Reading time5 min
Views74K
Раз уж мы начали рассматривать историю хранения данных — познакомимся поближе с одной из технологий, которую мы в прошлой статье упомянули только вскользь. Удивительно в этой технологии то, что, появившись в самом начале 80-х, она с разными изменениями дожила до современности, и не собирается уступать позиции. Речь пойдет о SCSI.

«Отцами-основателями» SCSI можно считать компанию Shugart Associates, стандарт из которого родился впоследствии SCSI изначально носил слегка неблагозвучное для русского уха название SASI (Shugart Associates System Interface). Компания эта, ныне не так широко известная, в конце 70-х практически доминировала на рынке дисководов, и именно эта компания предложила популярный формат 5¼ дюймов. Контроллеры SASI обычно были размером в половину диска и подключались 50-пиновым плоским кабелем, который впоследствии стал коннектором SCSI-1.



За переименованием стандарта стоял ANSI, к 1982 году разработавший стандарт этого интерфейса. Дело в том, что политика ANSI не разрешает использовать названия компаний названии стандартов, поэтому SASI был переименован в «Small Computer System Interface», что и дало знакомую нам аббревиатуру. «Отец» стандарта Ларри Бушер (Larry Boucher) хотел, чтоб эта аббревиатура читалась как «сэкси», но прочтение от Дал Аллана (Dal Allan) «сказзи» прижилось больше.

Несмотря на то, что в основном SCSI ассоциируется с жесткими дисками, этот стандарт позволяет создавать практически любые устройства, подключаемые по данному интерфейсу. Со SCSI выпускалась масса устройств: жесткие диски, магнитооптические накопители, CD и DVD приводы, стриммеры, принтеры и даже сканеры (LPT порт был слишком медленным для работы цветных сканеров высокого разрешения).

Несмотря на то, что в большинстве «простых компьютеров» SCSI как интерфейс не встречается, набор команд этого стандарта широко используется. Например, набор команд SCSI программно реализован в едином стеке Windows для поддержки устройств хранения данных. Так же, практически стандартом стала реализация команд SCSI поверх IDA/ATA и SATA интерфейсов, используемых для работы с CD/DVD и BlueRay, названная ATAPI. Так же эта система команд, реализованная поверх USB, стала частью стандарта Mass Storage Device, что позволяет использовать любые внешние USB хранилища данных.



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

Метрики в Scrum и Kanban

Reading time3 min
Views92K
По разным причинам Scrum получил очень широкое распространение среди IT компаний. Многие компании и отдельные команды начали внедрять Scrum в своих проектах. У одних это получается, у других не очень. Грамотный и опытный специалист перед внедрением чего-то нового всегда задумывается о метриках. Как убедиться, что внедрение Scrum идет по плану? Улучшается ли производительность команды? Нет ли каких-то проблем? Если вы тоже задавались этими вопросами, добро пожаловать под кат.
Читать дальше →

Настраиваем SSH ключи на Node-ах Jenkins без ssh-доступа к ним

Reading time2 min
Views8.2K


Всем привет! Думаю у каждого, кто когда-либо настраивал Jenkins для работы с Git-ом возникала проблема генерации ключей на Node-ах.

В очередной раз когда мне этим пришлось заняться я оказался в нелёгкой ситуации — ssh доступа к серверу с Jenkins-ом и к его слейвам у меня не было и, соответственно, ключи я сгенерировать не мог. Но всё оказалось не так плохо.

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

Жизнь насекомых, или Как мы ловим «баги» в обновлениях антивирусных баз

Reading time4 min
Views5.4K
К сожалению, ошибки бывают у всех. И «Антивирус Касперского» не миновал этой участи. У нас случаются «баги» в обновлениях, некоторые из которых доставляют пользователям неприятные хлопоты. Все подобные случаи мы тщательно расследуем, делаем выводы, и «подкручиваем» технологии тестирования.

А как вообще тестируются антивирусные обновления?


По вполне понятной причине в антивирусной индустрии технологические подробности тестирования обычно держатся за семью печатями. Попробуйте поискать в Интернете — сколько-нибудь полезной информации по этому поводу нет.
С другой стороны, тестирование обновлений — очень интересная тема, достойная внимания читателя. И нам здесь есть чем поделиться.
В конце 90-х «Лаборатория Касперского» была одной из первых в индустрии, кто автоматизировал процесс и уже около 15 лет постоянно развивает его.
Читать дальше →

Анонс второй волны спикеров и 25-и докладов конференции DevCon 2013

Reading time18 min
Views3.6K
image

Уважаемые коллеги, разработчики и тестировщики программного обеспечения. От лица команды организаторов конференции DevCon 2013 я рад анонсировать очередную порцию докладчиков конференции и первую треть тем докладов и их описаний.

Подготовка к конференции идет полным ходом, ранее мы анонсировали ряд ключевых докладчиков и целый набор активностей, которые будут идти параллельно основной программе: школа функционального программирования, интенсивный тренинг по тестированию ПО, мастер-классы от Гайдара Магданурова по бизнесу и Асхата Уразбаева с Виктором Стрелковым по гибким методологиям Agile/Scrum, хакатон “Ночь кодирования”.

Ниже вы найдете список первой трети докладов конференции и анонс докладчиков, которые выступят в рамках основной программы на DevCon 2013.
Читать дальше →

6 практических советов для начинающих при построении простого BI-решения

Reading time4 min
Views44K
Данной статьей хотелось бы показать шаги и предложить некоторые рекомендации в процессе создания BI-решения с использованием практически всего стека BI компании Microsoft. В создании BI-решения будут использованы SQL Server, SQL Service Integration Services, SQL Server Analysis Services.

Для примера мы выбрали разработку нашей компании RetailIQ — BI-систему глубокого анализа чеков розничных продаж, поставок и складских запасов для сети аптек. Для общего понимания контекста темы: все данные выгружаются из учетных систем (1С, М-Аптека и т.д.), верифицируются, складываются в специальную базу данных с последующим построением многомерных OLAP-кубов. Из источников (учетных систем) с помощью ETL мы перекачиваем данные в хранилище, на основе которого строим куб, о котором дальше пойдет речь.

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

Видеокурс по DevTools от Google и Codeschool

Reading time1 min
Views24K
image

Известные нам по гениальным обучающим скринкастам Rails for Zombies, Try Ruby и Try Git — команда Codeschool объединилась с корпорацией добра для создания Try DevTools — подробнейшего обучающего курса из семи глав, который, конечно же, является абсолютно бесплатным.
Читать дальше →

Курс лекций «Стартап». Питер Тиль. Стенфорд 2012. Занятие 12

Reading time26 min
Views73K

Весной 2012 г., Питер Тиль (Peter Thiel), один из основателей PayPal и первый инвестор FaceBook, провел курс в Стенфорде — «Стартап». Перед началом Тиль заявил: «Если я сделаю свою работу правильно, это будет последний предмет, который вам придется изучать».

Один из студентов лекции записывал и выложил транскипт. В данном хабратопике astropilot переводит двенадцатое занятие.

Занятие 1: Вызов будущего
Занятие 2: Снова как в 1999?
Занятие 3: Системы ценностей
Занятие 4: Преимущество последнего хода
Занятие 5: Механика мафии
Занятие 6: Закон Тиля
Занятие 7: Следуйте за деньгами
Занятие 8: Презентация идеи (питч)
Занятие 9: Все готово, а придут ли они?
Занятие 10: После Web 2.0
Занятие 11: Секреты
Занятие 12: Война и мир
Занятие 13: Вы — не лотерейный билет
Занятие 14: Экология как мировоззрение
Занятие 15: Назад в будущее
Занятие 16: Разбираясь в себе
Занятие 17: Глубокие мысли
Занятие 18: Основатель — жертва или бог
Занятие 19: Стагнация или сингулярность?
Читать дальше →

Мобильный захват: что говорят, как все обстоит на самом деле и что будет

Reading time5 min
Views8.4K
image От переводчика. Одним из направлений деятельности нашей компании является промышленное сканирование документов.
В зарубежных текстах по проблематике ECM (Enterprise Content Management) термин capture употребляется для обозначения операции оцифровки документов, их распознавания, индексирования и сохранения в системе. Как и многие другие термины из области ECM, не имеет буквального аналога в русском языке. Обычно его переводят как «захват» (мы используем именно этот вариант) или «ввод».

Под оцифровкой документов зачастую принято понимать их сканирование и распознавание. Но значение термина «захват» значительно шире: в системы электронного документооборота и хранения документов вводятся не только отсканированные бумажные документы: очень часто бывает необходимым конвертировать в подходящий для долгосрочного хранения формат и сохранять в системе документы, полученные по факсу или электронной почте. Операции захвата подразумевают не только перевод графического изображение в текст, но и последующий анализ текста с последующим извлечением нужных данных.

Технологии захвата данных с помощью мобильных телефонов и планшетов становятся все более популярными в зарубежном ECM-сообществе. Мобильный захват позволяет, например, автоматизировать такие рутинные операции, как оплата счетов. Уже есть программы, анализирующие снимки счетов и извлекающими из них данные о сумме к оплате, которые затем передаются в приложения для управления электронными платежами.
В последние годы в области мобильного захвата появилось много интересных разработок. Уже есть сканеры, позволяющие сканировать документ, просто перелистывая страницы:



Является ли всеобщее увлечение мобильными технологиями данью моде или же началом действительно революционных изменений? Попытаемся разобраться в этом, обратившись к зарубежным публикациям по теме. Цикл статей по проблеме использования мобильных устройств в ECM мы начинаем с перевода статьи Криса Райли, директора по маркетингу американской компании Pingar. Статья написана почти два года назад, но многие из высказанных мыслей не утратили актуальности и сейчас.



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

Пишем свой bootloader

Reading time12 min
Views67K
Это статья была написана для людей, которым всегда интересно знать как работают разные вещи. Для тех разработчиков которые обычно пишут свои программы на высоком уровне, C, C++ или Java — не важно, но при этом столкнулись с необходимостью сделать что-то на низком уровне. Мы будем рассматривать низкоуровневое программирование на примере работы bootloader-а.

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


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

Балансировка входящих соединений на iptables

Reading time3 min
Views27K
Предположим, что у вас есть некий сервис, принимающий входящие соединения и возникла задача балансировки нагрузки и/или отказоустойчивости.

В общем виде схема выглядит так:
клиент ----> балансировщик ---> бэкенд (сервис)


Готовых балансировщиков под конкретные нужды множество. Например, nginx — отличный балансировщик для веб-приложений, haproxy для tcp-соединений.

Так почему iptables?

Диалоги о Big Data

Reading time7 min
Views8.7K
-Привет!

-Здоров. Как ты? Жив?

-Держусь. Можно даже сказать, что бодр и весел. Ну что, будем делать заказ? Какие нынче предпочтенья – дорада на гриле или «Биф фингер мит»?

-Даже не знаю. Скорее второе. А как продвигаются дела на фронте продажи решений в сфере ИТ? Успеваете подвозить «железо» на склад? Или уже образовался дефицит, и приходиться давать не больше двух в одни руки?

-Практически. Скоро будем работать в две смены – с утра продаем, вечером грузим (смеется). Был на форуме «Big Data 2013», который проводили «Открытые системы»?

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

Information

Rating
Does not participate
Location
Саров (Нижегородская обл.), Нижегородская обл., Россия
Date of birth
Registered
Activity