Как стать автором
Обновить
50
0
Тимофей Кулин @rekby

Системный администратор, разработчик.

Отправить сообщение

Защита от прослушивания разговоров — строим безопасную SIP телефонию своими руками

Время на прочтение7 мин
Количество просмотров75K
image
Привет, Хабр!
В этот раз хочу рассказать о технологиях шифрования VoIP звонков, о том какую защиту дают разные подходы и как организовать наиболее защищенную от прослушивания голосовую связь с технологическими гарантиями безопасности.
В статье я постараюсь доступно изложить особенности таких технологий как SIP\TLS, SRTP и ZRTP. И продемонстрирую конкретные схемы использования на примере нашего сервиса ppbbxx.com

Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии9

Когнитивное сопротивление правил и инструкций

Время на прочтение8 мин
Количество просмотров47K


У нас в университете было три преподавателя матанализа и аналитической геометрии. Первая читала нам учебник на лекциях и люто всех ненавидела. Второй доказывал всё сам и объяснял, что делает. Было весело, потому что иногда мы заходили в тупик и возвращались. Третий до кучи рассказывал байки и практические задачи на то, что объяснял. Угадайте, у кого средние результаты группы были лучше.

Я к тому, что в нашем мире любое чтение инструкции — это вынужденная мера. И если уж пользователю нужно что-то прочесть и осознать, лучше подать информацию быстро, понятно и в привязке к реальному миру.

Расскажу, как мы упрощаем понимание правил и инструкций к настольным играм. В целом, тот же набор механик подходит для улучшения ряда интерфейсов, практически любых технических текстов и вообще вещей, где разум инженера-архитектора встречается с разумом экзогенного пользователя.
Читать дальше →
Всего голосов 85: ↑82 и ↓3+79
Комментарии63

Нативная UI-библиотека для Go

Время на прочтение3 мин
Количество просмотров56K
Один из частых вопросов про Go — существует ли хорошая кроссплатформенная UI-библиотека на Go. Как правило, вопрошающих отсылали либо к go-qml, либо к andilabs/ui (биндинги к C-реализациям нативного UI для каждой платформы), но в целом достойного проекта по нативному Go UI пока не было. На днях же, пару разработчиков из Google открыли для open-source мира проект gxui, который нацелен восполнить нишу нативных UI-библиотек для Go.

Проект еще сырой, но выглядит неплохо и перспективно.

Давайте взглянем поближе.


Читать дальше →
Всего голосов 24: ↑21 и ↓3+18
Комментарии36

Свой Cocaine. Облачная платформа Яндекса

Время на прочтение12 мин
Количество просмотров54K
Мы уже рассказывали на Хабре про облачную инфраструктуру Яндекса. Сегодня пришёл черёд от слов перейти к делу — мы хотим по шагам показать, как можно развернуть собственное облако на Elliptics и Cocaine.



Схема


Давайте рассмотрим установку небольшого облачка, в котором можно запустить тестовое приложение использующее flask.

Это облачко состоит из следующих элементов:
  • cocaine-runtime, запускающий приложения в Docker;
  • Docker-registry для хранения образов приложений;
  • Elliptics в качестве распределенного хранилища приложений, а также конфигурации облака;
  • агрегирующая нода cocaine-runtime — единая точка входа в облако для клиентского кокаинового кода;
  • HTTP-frontend как альтернативный способ для доступа к приложениям.

Читать дальше →
Всего голосов 101: ↑92 и ↓9+83
Комментарии65

Как мы объясняли детям, кто такой программист

Время на прочтение7 мин
Количество просмотров73K

Он волосат, небрит и очень программист

@bobuk показал человека-паука и сказал, что айтишники спасают человечество. Потому что помогают решать проблемы. И ещё в качестве примера привёл Леонардо да Винчи с его вертолётом. Дети вертолёт не запомнили, но прыжки человека-паука на экране оценили. И ещё все узнали Нотча, написавшего Майнкрафт практически в одну харю.

Но давайте-ка я начну сначала и расскажу, что привело нас к открытию исходников игры «Такси», пришиванию пуговиц к сосискам и рассказу целой толпе детей про сложную и опасную профессию программиста.
Читать дальше →
Всего голосов 83: ↑73 и ↓10+63
Комментарии41

Как вернуть подчиненным интерес к работе

Время на прочтение4 мин
Количество просмотров12K
Медведь идет по берегу реки. Этот день для него был удачным, он нашел заросли малины, подкрепился вкусными кореньями и даже вытащил из норки жирного бурундука. Медведь наелся. Он лениво смотрит в воду горной речки и видит: на порогах плещется лосось.

Зачем сытому медведю лезть в ледяную воду за рыбой, ведь для него есть много пищи на берегу. Кстати говоря, рацион медведя на 75% состоит из растительной пищи. Но мишка прыгает в реку и ловит лосося. Эта рыба поможет ему накопить жир к зиме и, в итоге, выжить.

Откуда медведь знает, что впереди зима, и ему нужно копить жир для спячки? Вряд ли он вообще знает, что такое жир. Он просто следует каким-то своим инстинктам и ныряет в воду.

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

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

Казалось бы, поощрения в реальном мире должны мотивировать сильнее, чем эфемерные «ачивки» компьютерных игр. Человеку должно быть выгоднее тратить свое время на повышение своих профессиональных навыков и выполнение рабочих задач, ведь от этого напрямую зависит его материальный выигрыш. А выращенные кабачки на «ферме» не могут принести ничего, кроме ощущения потраченного впустую времени. Что заставляет людей переселяться из реального мира в виртуальный?

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

Для этого природа придумала дофамин — гормон удовольствия при ожидании награды.
Читать дальше →
Всего голосов 37: ↑30 и ↓7+23
Комментарии27

SELinux – описание и особенности работы с системой. Часть 1

Время на прочтение11 мин
Количество просмотров275K


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

Читать дальше →
Всего голосов 76: ↑74 и ↓2+72
Комментарии13

Как конкретно можно сделать детское образование в России лучше (и первый практический шаг)

Время на прочтение10 мин
Количество просмотров60K


У нас 41-43 место из 65 по образованию по исследованию ОСЭР и 49 место по Education Index ООН.

После получения трёх высших, 13 лет я занималась тем, что учила айтишников, учёных и других странных людей, последний проект – Курсера в России. Год назад начала изучать детское образование. Ниже – моё ИМХО, но, думаю, многое вам хорошо знакомо. На мой взгляд, в детском образовании в России есть несколько важных областей для развития.

Вот с позиции детей:
  1. Дети не видят практического применения получаемым знаниям.
  2. Нет механизмов выбора профессии. Дети могут, например, выбирать своё будущее по наиболее доброму учителю (любимый предмет — желаемая профессия — специальность в универе — приплыли).
  3. Дети в целом жаждут знаний, но им очень хочется разнообразить процесс их получения и в школе.
  4. Ну, и они почти никуда не выходят, а их надо водить на разные интересные экскурсии и встречать с интересными людьми.

С позиции родителей и преподавателей:
  1. Дети недогружены: знаний даётся куда меньше, чем при СССР, например. С другой стороны они в конце обучения перегружены подготовкой к ГИА, ЕГЭ.
  2. Дети изначально живут в новой информационной среде, которая комфортна для них, но не очень комфорта для учителей.
  3. Дополнительное образование в крупных городах — это, порой, дичайшая логистика, например, нужно посреди дня везти ребёнка на другой конец города.
  4. Проблемы с кадрами: нужно быть реально круто замотивированным, чтобы полноценно и качественно работать с детьми.
Читать дальше →
Всего голосов 96: ↑86 и ↓10+76
Комментарии106

Создание point-to-multipoint тоннелей на базе инкапсуляции GRE в Linux 2.6

Время на прочтение4 мин
Количество просмотров17K
В ОС Linux встроена поддержка двух типов тоннелей: ipip и gre. В том виде, в котором тоннели традиционно используются в системе, без разницы, какой из них использовать: они оба дают в точности одинаковые накладные расходы к пакетам, посылаемым в тоннель IPv4-in-IPv4 (специально проверял), одинаково защищаются средствами IPsec и занимают одинаковое процессорное время для обработки. Однако, это разные типы тоннелей, и возможности gre значительно более широкие.
К сожалению, нигде в интернете не описывается очень удобная и замечательная особенность gre-тоннелей, и большинство (если не все) администраторов Linux не знают о такой возможности, как mGRE-тоннели. К счастью, мы намереваемся восполнить этот недостаток :-)

Читать дальше →
Всего голосов 21: ↑18 и ↓3+15
Комментарии6

В чем польза ZooKeeper для админов и разработчиков. Семинар в Яндексе

Время на прочтение7 мин
Количество просмотров91K

Привет! Меня зовут Андрей Степачев. В конце прошлого года я выступил перед коллегами с небольшим рассказом о том, что такое ZooKeeper, и как его можно использовать. Доклад изначально был рассчитан на широкий круг аудитории и может быть полезен и разработчикам, и админам, желающим разобраться, как все это примерно работает.





Начнем, пожалуй, с истории появления ZooKeeper. Сначала, как известно, в Google написали сервис Chubby для управления своими серверами и их конфигурацией. Заодно решили задачу с распределенными блокировками. Но у Chubby была одна особенность: для захвата локов необходимо открывать объект, потом закрывать. От этого страдала производительность. В Yahoo посчитали, что им нужен инструмент, при помощи которого они могли бы строить различные системы для конфигураций своих кластеров. Именно в этом основная цель ZooKeeper — хранение и управление конфигурациями определенных систем, а локи получились как побочный продукт. В итоге вся эта система была создана для построения различных примитивных синхронизаций клиентским кодом. В самом ZooKeeper явных понятий подобных очередям нет, все это реализуется на стороне клиентских библиотек.


Стоит отметить, что протокол, используемый Zookeeper называется ZAB, ссылки на описания протокола приведены в конце статьи.



Читать дальше →
Всего голосов 58: ↑53 и ↓5+48
Комментарии22

Конструктор для «Умного Дома» — от идеи до воплощения

Время на прочтение16 мин
Количество просмотров162K


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

Проект, начавшийся в формате «для души», удивительным образом вышел за рамки хобби, и вырос серьезную разработку. В основе лежало желание создать систему, интересную как в плане технического творчества и программирования, так и удобную для повседневного использования. Хотя работа еще в разгаре, уже отчетливо видны контуры задуманного: распределенная система, высокотехнологичный «конструктор» для реализации всевозможных идей умного дома, с хорошей масштабируемостью.
Читать дальше →
Всего голосов 93: ↑92 и ↓1+91
Комментарии86

Техподдержка всего мира: местный колорит IT, сдобренный своей версией английского

Время на прочтение14 мин
Количество просмотров77K

Всемирная техподдержка


За время работы в техподдержке одной не самой маленькой отечественной софтверной фирмы у меня накопился большой багаж впечатлений от общения с самыми разными людьми множества национальностей, проживающих в самых разнообразных странах. Но речь пойдёт не о банальном разделении на плохих и хороших, или умных и глупых, а о тех впечатлениях, что оставляют после себя эти люди, формируя образ как страны в целом, так её IT-отрасли в частности. Рассматривать я буду и с точки зрения использования главного языка международных коммуникаций с сопопутствующими манерами, так и с чисто профессионального подхода к сфере IT.

Конечно можно возразить, мол, что это за разделение такое, но такую вещь как национальный колорит отрицать ну никак нельзя, как и то, что он накладывает свой отпечаток на все сферы жизнедеятельности человечества.
Но начнём по порядку
Всего голосов 166: ↑161 и ↓5+156
Комментарии70

OpenHAB — стань программистом собственного жилища

Время на прочтение9 мин
Количество просмотров199K
image
Дом — это машина для жилья
Ле Корбюзье

В этом посте я расскажу об opensource проекте домашней автоматизации openHAB.
openHAB переводится как "Open Home Automation Bus". Это значит, что он нацелен на создание универсальной платформы для объединения всей домашней «умной» техники в единую систему управления.

Что же это дает на практике? Под катом я расскажу о том, как с помощью этого решения можно создать настоящий интернет вещей в своем доме.

Читать дальше →
Всего голосов 60: ↑57 и ↓3+54
Комментарии96

Учимся логично делать прототипы

Время на прочтение9 мин
Количество просмотров65K
Зачем вам это?

  • Если вы знаете как делать сайт, этот метод поможет вам убедить заказчика, почему вы предлагаете ему именно этот вариант.
  • Если вы заказываете сайт, то сэкономите от 2 до 10 часов объяснений что вам нужно и зачем.
  • Если вы стартапер, то вся ваша команда сможет участвовать в создании нового сайта или лэндинга. Тот самый случай, когда одна голова хорошо, а команда лучше.
  • Если вы учите стартаперов, то сможете помочь им выглянуть из позиции «я знаю как надо» и без сопротивления подвести их к началам CusDev-a.

Читать дальше →
Всего голосов 58: ↑53 и ↓5+48
Комментарии9

Как передать сообщение, понятное через 10 000 лет

Время на прочтение2 мин
Количество просмотров67K
Такой вопрос поставили в 1990 году перед группой учёных, чтобы решить проблему долгосрочного обслуживания хранилища ядерных отходов Waste Isolation Pilot Plant (WIPP). Здесь применяется метод глубокого геологического захоронения отходов. Нормативный срок службы сооружения — 10 000 лет. После размещения капсул в соляной шахте на глубине 600 м и запечатки хранилища отходы можно оставить без обслуживания. Поскольку вода не проникала туда примерно 250 млн лет, можно осторожно предположить, что этого не случится ещё 200 000 лет, пока отходы опасны для жизни.

Пройдут века и тысячелетия. На территории США будут возникать новые культуры и цивилизации. Возможно, они будут говорить на новых языках и не иметь письменности. Вопрос в том, как сообщить будущим людям об опасности данного места?

Для решения этой сложной задачи собрали рабочую группу. Очень интересно посмотреть на предложенные ими варианты.
Читать дальше →
Всего голосов 101: ↑73 и ↓28+45
Комментарии228

Почему иконки чаще мешают удобству, хотя и выглядят красиво

Время на прочтение2 мин
Количество просмотров31K
Только что посмотрел прекрасный ролик, в котором показан ответ на вопрос из известного вирусного клипа «Какие-то люди и Эксперт» (про семь красных перпендикулярных линий).

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

Проблема достаточно простая. Кто не хочет читать — посмотрите быстрый разбор нововведения на Ютубе, а также пример с иконками без надписей и с ними (и убедитесь в заголовке поста), а так прошу под кат.
Читать дальше →
Всего голосов 73: ↑56 и ↓17+39
Комментарии81

Обзор CentOS 7. Часть 4: Смягчение DDoS атак TCP SYN Flood. Тест в облаке бесплатно

Время на прочтение5 мин
Количество просмотров23K
В первой части обзора CentOS 7 было рассказано о поддержке контейнеров Linux в Cent OS 7. Во второй части мы поговорили об управлении идентификацией. В третья части обзора мы коснулись сетевой файловой системы NFS и ее окружению. В этой статье поговорим о смягчении DDoS атак TCP SYN Flood. В конце поста ссылка на бесплатное тестирование CentOS 7 в облачной VPS от Infobox.



DDoS (Distributed Denial of Service) атаки становятся все более частым явлением, из-за того, что бизнес становится все более зависимым от сети Интернет. Одна из самых распространенных видов DDoS – SYN Flood. Эта основная атака конечных хостов, ставящая ваш сервер на колени. В результате ваш сервер не может правильно обрабатывать входящие запросы.

Важно заметить, что описанные механизмы защиты доступны в CentOS 7, но не включены по умолчанию.
Читать дальше →
Всего голосов 20: ↑15 и ↓5+10
Комментарии1

Memory management в ядре Linux. Семинар в Яндексе

Время на прочтение4 мин
Количество просмотров65K
Привет! Меня зовут Роман Гущин. В Яндексе я занимаюсь ядром Linux. Некторое время назад я провел для системных администраторов семинар, посвященный общему описанию подсистемы управления памятью в Linux, а также некоторым проблемам, с которыми мы сталкивались, и методам их решения. Большая часть информации описывает «ванильное» ядро Linux (3.10), но некоторая часть специфична для ядра, использующегося в Яндексе. Вполне возможно, семинар окажется интересен не только системным администраторам, но и всем, кто хочет узнать, как в Linux устроена работа с памятью.



Основные темы, затронутые на семинаре:
  • Задачи и компоненты подсистемы управления памятью;
  • Аппаратные возможности платформы x86_64;
  • Как описывается в ядре физическая и виртуальная память;
  • API подсистемы управления памятью;
  • Высвобождение ранее занятой памяти;
  • Инструменты мониторинга;
  • Memory Cgroups;
  • Compaction — дефрагментация физической памяти.

Под катом вы найдете более подробный план доклада с раскрытием основных понятий и принципов.
Читать дальше →
Всего голосов 113: ↑107 и ↓6+101
Комментарии15

Wolfram Alpha Pro

Время на прочтение2 мин
Количество просмотров56K


Сегодня официально представлена продвинутая версия научного поисковика Wolfram Alpha Pro. Это самый значительный апдейт за всё время существования поисковой системы. Хотя её и раньше трудно было назвать «поисковой системой», а сейчас это вообще нечто фундаментально иное.

Итак, на что способен Wolfram Alpha Pro за пять долларов в месяц?


Читать дальше →
Всего голосов 139: ↑134 и ↓5+129
Комментарии80

Установка и настройка KVM под управлением CentOS 6

Время на прочтение10 мин
Количество просмотров240K
Приветствую вас, Хабражители!

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

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

Disclaimer
Поправьте, если не так, но в поиске я не нашел реализации данной задачи именно на CentOS с подробным описанием всех шагов для новичков.
Хорошая серия статей написана librarian, но они для Debian.
Естественно, для бывалых админов, в этом никакой проблемы нет, но повторюсь, моя задача — описать подробную инструкцию для новичков.

Вопрос: в Интернете есть множество руководств для установки Qemu KVM под CentOS, возразите вы, и чем же данная статья будет интересна?
Ответ: здесь описывается полный цикл установки и настройки необходимых для виртуализации компонентов, установка гостевых виртуальных машин (ВМ), настройка белой и серой сети для ВМ, а также некоторые аспекты, которые помогут упростить управление ВМ, используя проброс графики с удаленного сервера на свой ПК и запуском virt-manager.


Помните 7 шагов?
Другая 7-ка! Прошу под кат!
Всего голосов 36: ↑34 и ↓2+32
Комментарии44

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность