• Двухфакторная аутентификация при монтировании зашифрованного раздела LUKS с помощью Yubikey 4

    Часть 3: Yubikey 4 и LUKS




    Введение


    В статье рассматривается реализация двухфакторной аутентификации с помощью ключа Yubikey 4 для монтирования зашифрованного раздела LUKS.

    Процесс реализации двухфакторной аутентификации с помощью ключа Yubikey 4 для монтирования зашифрованного раздела LUKS можно разбить на три части:

    1. Подготовка LUKS раздела.
    2. Подготовка к использованию ключа Yubikey 4 в операционной системе.
    3. Непосредственно использование ключа Yubikey 4 для двухфакторной аутентификации.

    Начальные условия:

    • Linux Mint 18 Sarah 64-bit
    • Yubikey 4
    Читать дальше →
  • Полифазный сон — история удачного опыта

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



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

      Суть полифазного сна в том, что вместо одного продолжительного сна в сутки, мы спим понемногу, несколько раз в течение дня. Одной из популярных схем полифазного сна является «Режим Uberman», предлагающий разбиение дня на 6 коротких (20-30 минут) периодов сна, чередующиеся с равномерными (около 4 часов) периодами бодрствования. Это означает, что общее время сна сокращается до 2-3 часов в сутки.

      Нормальный человеческий сон состоит из 90-минутных циклов, и каждый такой цикл завершается фазой быстрого сна (REM). REM – наиболее важная фаза сна, именно во время нее мы видим сны, а лишение человека REM – фазы, в течение длительного времени ведет к серьезным нервным расстройствам. Во время практики полифазного сна, организм учится входить в REM немедленно после засыпания, а не в конце цикла. Поэтому первую неделю, пока организм будет адаптироваться к укороченным циклам сна, он будет испытывать повышенную нагрузку. Зато потом будет чувствовать себя отлично, возможно даже лучше, чем прежде.
      Читать дальше →
    • Блокчейн в 200 строк кода

      Основная концепция блокчейна довольно проста: распределенная база данных, которая поддерживает постоянно растущий список упорядоченных записей.

      Однако, многоe остается непонятным, когда мы говорим о блокчейне, так же остается много проблем, которые мы пытаемся решить с его помощью. Это относится и к популярным блокчейн проектам, таким как Биткоин (Bitcoin) и Эфириума (Ethereum). Термин «блокчейн» обычно сильно привязан к концепции типа денежных переводов, смарт-контрактов или криптовалюты.

      Это делает понимание блокчейна сложнее, чем есть на самом деле. Особенно исходный код. Здесь я пройдусь по супер-простой реализации блокчейна в 200 строк кода JavaScript под названием NaiveChain.

      Структура блока


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

      image
      Хэш предыдущего блока необходимо найти в блоке для сохранения целостности цепи
      Читать дальше →
      • +31
      • 53,8k
      • 8
    • Что происходит с командами при использовании BaseCamp, Trello, YouTrack, Smartsheet, Slack, YouGile. Обзор часть 1

        Привет, Хабровчане! В статье расскажу про опыт использования систем планирования/управления/взаимодействия, каждой из которых пользовались в компании RedHelper не менее 6 месяцев. Упор будет делаться не на функции систем, а на то, что меняется в команде при использовании инструмента автоматизации.

        BaseCamp Trello YouTrack Smartsheet Slack YouGile

        Обзор BaseCamp Trello YouTrack Smartsheet Slack YouGile

        В конце — обзор собственного инструмента YouGile, который для нас сегодня оказался универсальным местом планирования и общения. Сначала сделали “на коленке” для себя, с очень простой идеей — Agile Board, где каждая задача это чат. Сейчас запущен для публичного тестирования.
        Читать дальше →
      • Рекомендации по продвижению проекта в США

          Для многих индустрий на сегодняшний день существует простой закон: если вы успешны на американском рынке, то вам гораздо проще выходить на другие. Но есть еще одно непреложное правило — наладить бизнес-процессы и запустить продажи удаленно практически невозможно. Работайте и развивайте свой бизнес там, где собираетесь продавать, и ваши шансы на успех станут гораздо выше.

          В то время, как большинство стартапов мечтают попасть на западный берег, восточный зачастую остается недооцененным. Хотя именно здесь находится мировая столица диджитал и потребления — Нью-Йорк, а рядом — Бостон, Вашингтон, Чикаго. К тому же Нью-Йорк удобнее расположен — 7 часов временной разницы с Москвой против 10-11 часов разницы западного берега.
          Читать дальше →
        • Dash — блокчейн, который уже не остановить

          • Перевод
          image

          В 2008 году некто, назвавшийся Сатоси Накамото, опубликовал документ под названием «Биткойн: одноранговая сеть системы электронной наличности». В то время мало кто понял о чём речь, но этот документ изменил мир навсегда. Блокчейн-проекты, вдохновлённые оригинальным экспериментом Сатоши под названием «Биткойн», стали появляться повсюду регулярно. Большинство из этих проектов являются всего лишь клонами Биткойна с небольшими изменениями в оригинальном Биткойн-протоколе. Некоторым из этих проектов удалось стать успешными, однако большинство потерпели неудачу. Наличие такого рода экспериментов следует рассматривать как очень здоровый аспект существования криптовалютной экосистемы. Причина в том, что чем больше будет создано конкурирующих проектов, предлагающих услуги, основанные на блокчейне, тем большее количество из них сможет стать успешными.
          Читать дальше →
        • Настройка wifi авторизации через sms под ubuntu 16.04

          Привет Хабр! Не так давно, в нашей организации встала задача узаконить wifi доступ, но чтобы в дальнейшем использование системы было бесплатно. (Согласно постановлению Правительства №758 от 31 июля 2014г. и №801 от 12 августа 2014 г. — все публичные WIFI сети обязаны производить идентификацию пользователей). У нас 10 залов для мероприятий (от 30 до 400 человек), а в день в среднем проходит от 4 до 12, плюс постоянная текучка народа и капризные пользователи.

          image
          Читать дальше →
        • Сделай сам веб-сервис с асинхронными очередями и параллельным исполнением

          • Tutorial

          rq Каждый должен делать свою работу качественно и в срок. Допустим, вам нужно сделать веб-сервис классификации картинок на базе обученной нейронной сети с помощью библиотеки caffe. В наши дни качество — это асинхронные неблокирующие вызовы, возможность параллельного исполнения нескольких заданий при наличии свободных процессорных ядер, мониторинг очередей заданий… Библиотека RQ позволяет реализовать все это в сжатые сроки без изучения тонны документации.


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

          Читать дальше →
        • Ethereum-блокчейн и его использование на практике

            imageПривет, Хабр! На связи Wirex, финтех стартап, предоставляющий услуги платежей и денежных переводов с использованием blockchain, минимизируя банковское посредничество. И мы продолжаем цикл статей, посвященных Ethereum и связанным с ним проектам. В предыдущих выпусках мы рассказали о том, как Ethereum вышел на передовую мира блокчейн, а также о том, как устроена децентрализованная автономная организация The DAO(которая, кстати, в прошедшую пятницу была взломана и теперь будет закрыта с возвратом средств инвесторам). Сегодня поговорим о практическом применении Эфириума. Но для начала несколько слов о блокчейне в общем и о том, как Ethereum позволил блокчейну из распределенной базы транзакций превратиться в часть вычислительной одноранговой сети общего назначения. Как нам кажется, довольно неплохо этот процесс описывал основатель Plex.ai Терек Джуди в блоге Microsoft.

            В 2009 году произошел запуск Биткойн, базы данных, работа которой основана на новой структуре данных, получившей название «блокчейн».

            Блокчейн — это логически связанная последовательность информационных блоков, каждый из которых содержит данные о группе транзакций и ссылку на предыдущий блок. Это позволяет связать воедино все когда-либо выполненные транзакции. Структура копируется на все узлы (компьютеры) системы, что позволяет каждому участнику иметь достоверную информацию обо всех транзакциях без какой-либо необходимости получать ее из централизованного источника.
            Читать дальше →
          • «Под капотом» индексов Postgres

            • Перевод

            Капитан Немо у штурвала «Наутилуса»

            Индексы — один из самых мощных инструментов в реляционных базах данных. Мы используем их, когда нужно быстро найти какие-то значения, когда объединяем базы данных, когда нужно ускорить работу SQL-операторов и т.д. Но что представляют собой индексы? И как они помогают ускорять поиск по БД? Для ответа на эти вопросы я изучил исходный код PostgreSQL, отследив, как происходит поиск индекса для простого строкового значения. Я ожидал найти сложные алгоритмы и эффективные структуры данных. И нашёл.

            Здесь я расскажу о том, как устроены индексы и как они работают. Однако я не ожидал, что в их основе лежит информатика. В понимании подноготной индексов также помогли комментарии в коде, объясняющие не только как работает Postgres, но и почему он так работает.
            Читать дальше →
          • Пути более эффективного использования PostgreSQL

            Прочитав статью Базы данных в онлайн играх и особенно комменты к ней, я в очередной расстроился от мысли, что многие разработчики меняют БД в своём проекте, пытаясь этой сменой решить свои проблемы, не исчерпав, однако, всех возможностей, предоставляемой заменяемой БД. Я принимаю участие в работе над проектом, БД которого характеризуется:
            • Количеством транзакций порядка 5'000 — 10'000 в секунду
            • Объемом примерно в 100ГБ (который бодро растёт)
            • Примерно равным количеством операций на чтение/запись
            • Преимущественно мелкими транзакциями

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

            Я опишу некоторые проблемы, с которыми мы сталкиваемся, и применённые решения. Если кто-то сочтёт это полезным — ради Бога. Если кто-то поправит — я буду только рад обнаружить уязвимость в используемых подходах и увеличить эффективность работы БД. Описанное может быть применено без вмешательства в логику приложения, исключительно путём модификации схемы БД.
            Читать дальше →
          • Как перезагрузить сервер?

              Abstract: описание видов ребута, рассказ про sysrq, ipt_SYSRQ, ipmi, psu.

              Как перезагрузить сервер? — Это вопрос, который обычно задают ну очень начинающим пользователям, которые путаются между halt, shutdown -r, reboot, init 6 и т.д.

              Опытный администратор уточнит вопрос: «а что с сервером не так?» Разные виды отказов серверов требуют разных видов ребута — и неверно выбранный вариант приведёт к тяжелейшим последствиям, из которых визит в веб-морду IPMI/DRAC/iLO с целью «доперезагрузить» будет самым лёгким. Самым тяжёлым в моей личной практике была командировка эникейщика в соседний город. С целью «нажать ребут» на одиноко стоящем сервере.

              В этой статье: что мешает серверу перезагрузиться и как ему помочь.

              Начнём с теории ребута.

              При выключении или перезагрузке сервера менеджер инициализации (в большинстве современных дистрибутивов — systemd, в эксцентричной Ubuntu 14.04 до сих пор upstart, в архаичном хламе — sysv-init) в определённом порядке посылает всем демонам команду «выключись». И большинство демонов (например, СУБД, вроде mysql) знают, как выключаться правильно. Например, закончить все транзакции, сохранить все несохранённые данные на диск и т.д. Для in-memory СУБД, наподобие redis, это и вовсе может быть критичным: не сохранил — потерял.

              Старые системы иницализации ждали неограниченно долго каждый из инит-скриптов. Например, если «шутник» добавил вам в «stop» веточку «sleep 3600», то ваш сервер будет перезагружаться час с хвостиком. А если там цифра поболе, или просто программа, которая не хочет завершаться, то и ребут никогда не закончится.
              Читать дальше →
            • Сравнение Tarantool с конкурентами в Microsoft Azure

                image

                Tarantool — NoSQL СУБД, которая разрабатывается и широко используется в Mail.Ru Group. Об объемах использования можно сделать вывод по публикациям:


                Недавно Mail.Ru Group выпустила виртуальную машину с предустановленным Tarantool для Microsoft Azure:


                Мы решили проверить, насколько хорошо Tarantool работает в Microsoft Azure в сравнении с другими подобными предложениями — Azure Redis Cache, Bitnami Memcached, Aerospike и VoltDB. Под словом «хорошо» будем понимать «быстро», то есть сравнивать будем число обрабатываемых запросов в секунду (Throughput, RPS).
                Читать дальше →
              • Поняв Docker

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


                  К вашему сведению! В этой статье мы рассматриваем само явление docker-контейнеров, а не составляем список микросервисов, которые гнездятся внутри. Этим мы займемся в следующей серии, во имя справедливости!


                  UPDATE: пришлось заменить «докер» на «docker», иначе статья не ищется. Заранее прошу прощения за все «docker'ы» в тексте. Селяви.


                  Что мы имеем сегодня


                  • Зоопарк дубовых VPS-хостингов.
                  • Дорогие IaaS и PaaS с гарантированным vendor lock in.
                  • Уникальные сервера-снежинки.
                  • Ворох устаревших зависимостей на неподдерживаемой операционке.
                  • Скрытые связи частей приложения.
                  • Незаменимый админ полубог на скейтборде.
                  • Радуга окружений: development, testing, integration, staging, production.
                  • Генерация конфигов для системы управления конфигами.
                  • Feature flagging.
                  docker run docker
                • D std.ndslice как замена Python Numpy

                  Предисловие: Я пишу на Python более 6 лет и могу назвать себя профессионалом в этом языке. Недавно я даже написал о нем книгу. Однако последние 8 месяцев я переключился на D и уже 4 месяца активно участвую в разработке этого языка по части расширения стандартной библиотеки Phobos. Так же я участвовал в код-ревью модуля std.ndslice о котором и пойдет речь.

                  std.ndslice так же как и Numpy предназначен для работы с многомерными массивами. Однако в отличие от Numpy ndslice имет крайне низкий оверхэд так как базируется на ranges (диапазонах), которые используются в штатной библиотеке повсеместно. Ranges позволяют избежать лишние процедуры копирования, а так же позволяют красиво организовать ленивые вычисления.

                  В этой статье мне хотелось бы рассказать о том какие преимущества std.ndslice дает по сравнению с Numpy.
                  Читать дальше →
                • Это не паранойя: источники угроз в системе GSM и защита от них

                    Несмотря на впечатляющие пророчества о скором исчезновении GSM, он продолжает существовать и развиваться.

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

                    Именно таким было начало нашего будущего поста об угрозах, которые возникают в сети GSM. Но совсем недавно на Хабре был опубликован пост про историю с дубликатами. В комментариях шло бурное обсуждение вопросов безопасности на уровне SIM и даже предложение создать бизнес на продаже «номеров, которые нельзя украсть». Мы в Tottoli GSM тут же приняли решение немного изменить публикацию и рассказать подробно не только об угрозах, но и о простом методе защиты, который уже придуман и успешно используется.


                    Читать дальше →
                  • Разработаны гибкие сенсоры для носимой электроники

                      image

                      Благодаря совместной работе инженеров из института им. Макса Планка, Саарского университета и Университета Карнеги-Меллон удалось создать прототип плёнки, чувствительной к прикосновениям и нажатиям, которая работает даже при растяжении и изгибании. Такую плёнку можно будет использовать для разработки носимых устройств.

                      Плёнка, которую учёные назвали iSkin, изготовлена на силиконовой подложке. Перфорированные слои из полидиметилсилоксана (ПДМС) чередуются с проводящими слоями покрытого углеродом полимера. Общая толщина плёнки – не более 0,7 мм.
                      Читать дальше →
                    • Как рестораны создают меню: 4 дизайн-техники



                        В наши дни рестораны не только внедряют системы автоматизации и изучают посетителей с помощью Google, но и уделяют все больше внимания вопросам дизайна. Сегодня мы рассмотрим несколько подходов, которые применяются для того, чтобы создать более привлекательные меню (традиционные и, скажем, для просмотра на iPad).
                        Читать дальше →
                      • PostgreSQL 9.5: что нового? Часть 1. INSERT… ON CONFLICT DO NOTHING/UPDATE и ROW LEVEL SECURITY

                        Часть 2. TABLESAMPLE
                        Часть 3. GROUPING SETS, CUBE, ROLLUP
                        В 4 квартале 2015 года ожидается релиз PostgreSQL 9.5. Как всегда, новая версия кроме новых багов приносит новые фичи и «плюшки». В данной статье будут рассмотрены две из них, а именно INSERT… ON CONFLICT DO NOTHING/UPDATE и Row-level security. Уже вышла вторая альфа-версия, поэтому самые нетерпеливые могут её установить и попробовать новый функционал.
                        Скачать можно тут
                        Читать дальше →
                      • Карандаш vs приложение: Сложности при создании системы автоматизации ресторана



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