Однажды появилась необходимость собрать все уроки, обучающие материалы (tutorials) с habrahabr и geektimes в одном месте и немного их систематизировать. В этом сборнике обучаек представлены более 100 статей на тему ардуино с пометкой «tutorial», либо содержащие несложные для новичков проекты на ардуино, а также немного видеоуроков по смежным темам. Статьи разделены на 10 тематик по сферам применения собранных устройств. Также хочется напомнить, что весь обучающий материал, опубликованный на habrahabr и geektimes является интерактивным: в любой момент можно задать вопрос автору в комментариях к статье. Как правило авторы на них отвечают. Этот сборник будет дополняться новыми обучайками (tutorials) по мере их публикации.
Shvarov Vsevolod @chaynick
User
Call Manager & Skype connect через CUBE
2 min
11KВ предыдущем топике я описал как сделать звонки из CCM в Skype Connect. На что было справедливо указано, что для таких целей нужно использовать Cisco CUBE. Пришо время и память, что бы превратить старую 2811 в кубик и сделать кошерную интеграцию.
+1
Новый сенсорный материал для измерения деформации, влажности, температуры, давления… и что же дальше?
7 min
60KПривет Хабра!
Так получилось, что я родился еще в Советском Союзе. Дело было в небольшом наукограде рядом с Москвой, в семье научных сотрудников. Рос в лучших традициях окончания советской эпохи, учился в обычной школе. Физика и математика давались мне легко, а вот гуманитарные науки не очень. В старших классах начал готовился к поступлению в институт, а по выходным копал картошку и собирал колорадских жуков, но сам мечтал быть бизнесменом и носить красный пиджак. Как и планировалось, я поступил в приличный технический ВУЗ, окончил его и получил специальность инженер-физик, как и мой отец. Но желание зарабатывать больше, чем родители у меня осталось. Поэтому карьера физика меня не радовала. И вот сейчас я работаю в инвестиционном бизнесе. Все бы ничего, но как-то мы разговорились с родителями о том, чем они сейчас занимаются. Оказалось, что спустя 20 лет работы, они пришли от теоретической науки к практической. И именно тут столкнулись с весьма банальной и простой проблемой – как из научного открытия сделать полезный и продаваемый продукт для потребителя? Но обо всем по порядку.
Так получилось, что я родился еще в Советском Союзе. Дело было в небольшом наукограде рядом с Москвой, в семье научных сотрудников. Рос в лучших традициях окончания советской эпохи, учился в обычной школе. Физика и математика давались мне легко, а вот гуманитарные науки не очень. В старших классах начал готовился к поступлению в институт, а по выходным копал картошку и собирал колорадских жуков, но сам мечтал быть бизнесменом и носить красный пиджак. Как и планировалось, я поступил в приличный технический ВУЗ, окончил его и получил специальность инженер-физик, как и мой отец. Но желание зарабатывать больше, чем родители у меня осталось. Поэтому карьера физика меня не радовала. И вот сейчас я работаю в инвестиционном бизнесе. Все бы ничего, но как-то мы разговорились с родителями о том, чем они сейчас занимаются. Оказалось, что спустя 20 лет работы, они пришли от теоретической науки к практической. И именно тут столкнулись с весьма банальной и простой проблемой – как из научного открытия сделать полезный и продаваемый продукт для потребителя? Но обо всем по порядку.
+76
Протез от DARPA — настоящее технологическое чудо
1 min
146KВчера вечером была опубликована небольшая заметка о новом протезе, который выглядит очень необычно, можно даже сказать, футуристично. В комментариях проскочила информация о том, что есть еще более современный протез, который позволяет управлять всем «железом» при помощи мышц и нервов своей руки. При этом существует даже обратная связь, и человек чувствует прикосновение к «пальцам» протеза. И действительно, такой протез существует, хотя и находится в стадии разработки. Разрабатывается все это в рамках программы RE-NET (Reliable Neural-Interface Technology).
+74
Celestia
5 min
40KВ свете обострившегося интереса к космонавтике и астрономии на Хабре (спасибо NASA и Curiosity), хотелось бы рассказать о замечательном свободном планетарии, созданным Крисом Лорелом — Celestia (а точнее, о расширенной сборке Celestia Extended Pack).
Кстати, именно с помощью Celestia была создана заставка к всенародно любимому сериалу Теория большого взрыва :)
+63
Unity3D + Google Services: мультиплеер для вашего проекта на Android и iOS
7 min
53KВ этой статье я хочу рассказать об использовании игровых сервисов Google в вашем приложении на Unity. На написание данного материала меня сподвигло достаточно большое количество проблем, встретившихся во время разработки нашего приложения, а также отсутствие каких-либо материалов на русском языке по этой теме. Да и собственно, на английском тоже. Описание использующегося плагина на гитхабе очень краткое и не дает ответа на возможные проблемы с работой сервисов. Думаю, здесь не стоит пояснять, что мультиплеер и рейтинги игроков зачастую повышают интерес пользователей, а следовательно и вашу возможную прибыль. А благодаря данной статье начинающие разработчики смогут начать использовать данные преимущества.
+11
Всё, что вы хотели знать о Ethernet фреймах, но боялись спросить, и не зря
9 min
298KСтатья получилась довольно объёмная, рассмотренные темы — форматы Ethenet фреймов, границы размеров L3 Payload, эволюция размеров Ethernet заголовков, Jumbo Frame, Baby-Giant, и много чего задето вскользь. Что-то вы уже встречали в обзорной литературе по сетям передачи данных, но со многим, однозначно, не сталкивались, если глубоко не занимались изысканиями.
Начнём с рассмотрения форматов заголовков Ethernet фреймов в очереди их появления на свет.
Форматы Ehternet фреймов.
1) Ethernet II
Рис. 1
Начнём с рассмотрения форматов заголовков Ethernet фреймов в очереди их появления на свет.
Форматы Ehternet фреймов.
1) Ethernet II
Рис. 1
+71
Пишем скрипты для Cisco AXL
5 min
14KФирма, в которой я работаю, для IP-телефонии использует в том числе и Cisco Unified Communications Manager (CUCM). В один прекрасный момент мне понадобилось автоматически отслеживать состояние телефонов — а именно, зарегистрированы ли они, находятся ли они в Hunt Group и т.п. Несколько часов усиленного гуглежа, собирание скудной информации по кусочкам, и начали появляться более-менее работоспособные скрипты. Ими я и поделюсь в этой статье. Версия моего CUCM — 7.1.5, IP-адрес предполагается 10.0.0.10. Скрипты будут на PHP, но можно запросто переписать на любой другой язык.
+2
Уязвимость в BMC-контроллере Supermicro позволяет получить доступ к паролям управляющего интерфейса
1 min
31KВ BMC (Baseboard Management Сontroller) чипе, используемом в материнских платах Supermicro, выявлена уязвимость, позволяющая злоумышленнику получить доступ к паролям входа в управляющий интерфейс. Проблема вызвана тем, что содержимое файла с паролями выводится среди бинарного блока данных, который можно получить без аутентификации через сетевой порт 49152. Техника эксплуатации очень проста, достаточно подключиться к порту 49152 и выполнить команду «GET /PSBlock». Пароли выдаются в открытом виде, без хэширования.
Выявившие уязвимость исследователи безопасности предупреждают, что им удалось обнаружить в сети 31964 серверов, подверженных данной проблеме, при этом на 3296 (10%) из этих систем применялись пароли, заданные по умолчанию. Предоставляемый BMC-контроллером IPMI-интерфейс предоставляет средства для мониторинга и управления оборудованием, в том числе позволяет отслеживать состояние датчиков, управлять питанием, прошивками и дисками, удалённо загрузить на сервере собственную ОС по сети, организовать работу консоли удалённого доступа для атаки на базовую ОС и изменения настроек BIOS.
Проверить свой сервер можно банально подключившись к уязвимому порту с помощью telnet:
telnet ip_ipmi 49152
далее
GET /PSBlock
если Вы в тексте ответа увидели свои пароли, то Вам стоит задуматься об обновлении прошивок.
Источник...
upd:
Скачать обновления прошивки, можно по ссылке.
+29
Wi-Fi сети: проникновение и защита. 3) WPA. OpenCL/CUDA. Статистика подбора
24 min
359KВ предыдущей части мы детально рассмотрели «читерские» приёмы обхода «защит» (скрытие SSID, MAC-фильтрация) и защит (WPS) беспроводных сетей. И хотя работает это в половине случаев, а иногда и чаще — когда-то игры заканчиваются и приходится браться за тяжёлую артиллерию. Вот тут-то между вашей личной жизнью и взломщиком и оказывается самое слабое звено: пароль от WPA-сети.
В статье будет показан перехват рукопожатия клиент-точка доступа, перебор паролей как с помощью ЦП, так и ГП, а кроме этого — сводная статистика по скоростям на обычных одиночных системах, кластерах EC2 и данные по разным типам современных GPU. Почти все они подкреплены моими собственным опытом.
К концу статьи вы поймёте, почему ленивый 20-значный пароль из букв a-z на пару солнц более стоек, чем зубодробительный 8-значный, даже использующий все 256 значений диапазона.
Оглавление:
1) Матчасть
2) Kali. Скрытие SSID. MAC-фильтрация. WPS
3) WPA. OpenCL/CUDA. Статистика подбора
+166
Wi-Fi сети: проникновение и защита. 2) Kali. Скрытие SSID. MAC-фильтрация. WPS
20 min
643KПервая часть цикла была очень живо встречена хабрасообществом, что вдохновило меня на ускоренное написание следующей части. К предыдущей статье было оставлено много дельных комментариев, за что я искренне благодарен. Как говорится, хочешь найти огрехи в своих знаниях — напиши статью на Хабр.
В этой статье мы поговорим о том, как можно обнаружить «скрытые» сети, обойти MAC-фильтрацию на точке доступа и почему же WPS (QSS в терминологии TP-LINK) — это «бэкдор в каждом доме». А перед этим разберёмся, как работает беспроводной адаптер и антенна и как Kali Linux (ex. Backtrack) поможет нам в тестах на проникновение в беспроводные сети.
Всё это так или иначе уже описывалось ранее, как здесь, так и на других ресурсах, но данный цикл предназначен для сбора разрозненной теории и практики воедино, простым языком, с понятными каждому выводами.
Перед прочтением настоятельно советую ознакомиться с матчастью — она короткая, но на её основе базируются все наши дальнейшие действия и выводы.
Оглавление:
1) Матчасть
2) Kali. Скрытие SSID. MAC-фильтрация. WPS
3) WPA. OpenCL/CUDA. Статистика подбора
+165
Особенности протокола маршрутизации EIGRP
7 min
31KПривет! В этой статье я расскажу про интересные особенности протокола маршрутизации EIGRP.
Основы EIGRP отлично описаны в одной из статей цикла СДСМ: 6. Сети для самых маленьких. Часть шестая. Динамическая маршрутизация.
В первой половине статьи кратко описаны некоторые факты об этом протоколе, а во второй — несколько интересных примеров с топологией и командами.
Ну что, пора заняться практикой?
Основы EIGRP отлично описаны в одной из статей цикла СДСМ: 6. Сети для самых маленьких. Часть шестая. Динамическая маршрутизация.
В первой половине статьи кратко описаны некоторые факты об этом протоколе, а во второй — несколько интересных примеров с топологией и командами.
Факты про EIGRP
- В феврале 2013 года Cisco решила открыть EIGRP. Стоит отметить, что был открыт не исходный код, а лишь информация, необходимая для реализации протокола. В итоге появился драфт RFC. Последнее обновление 10.04.2014. В этом документе не была раскрыта ключевая особенность — Stub, без которой пользоваться протоколом практически бесполезно. Интересна реакция других вендоров: на сегодняшний день никто, кроме Cisco, не внедрил поддержку этого протокола в своём оборудовании.
- EIGRP для расчёта метрики использует 5 K-values, которые являются лишь модификаторами (коэффициентами), и 4 значения метрики. Надёжность (reliability) и загрузка линка (load) являются динамическими параметрами, поэтому эти значения пересчитываются только при изменении в сети. K5 — это дополнительный коэффициент надёжности, и никакого отношения к MTU он не имеет! Напомню общую формулу расчёта метрики:
А если K5 = 0, то формула имеет такой вид:
где min_bandwidth — это пропускная способность наихудшего линка в kbps,
а total_delay — это сумма задержек всех линков в мкс (микросекундах).
Для изменения метрики обычно меняют delay, так как bandwidth влияет на QoS, кроме этого, изменение bandwidth не всегда меняет метрику (если наихудший линк не изменился).
Минимальное значение MTU действительно подсчитывается, но не принимает никакой роли в определении лучшего пути. В своей топологии в GNS3 я тестировал несколько десятков раз с помощью команд redistribute connected metric и maximum-paths 1. Несмотря на различное значение MTU, лучший путь выбирается тот, который был изучен ранее. Также интересно, что в драфте RFC упоминается дополнительный коэффициент K6 и 2 дополнительных значения метрики: джиттер (jitter) и энергия (energy). - Feasibility Condition не всегда легко понять в первый раз. Но логика очень простая: если ты говоришь мне, что у тебя метрика больше, чем метрика моего лучшего пути, значит есть шанс, что твой путь проходит через меня, что в свою очередь означает петлю. Из-за этого часто очевидные для инженера «пути-без-петли» могут не рассматриваются протоколом как feasible successors. Помните, EIGRP не видит всей сети — а лишь то, что говорят соседи.
- EIGRP — Distance Vector протокол, никакой гибридности в нём нет.
- С помощью show ip eigrp neighbors detail можно посмотреть, является ли сосед тупиковым (stub) роутером.
- Помните, с помощью команды show ip eigrp topology видны лишь successors и feasible successors. Чтобы посмотреть все возможные пути, необходимо добавить ключевое слово «all-links»: show ip eigrp topology all-links.
- В IOS 15 наконец-то отключена по умолчанию автоматическая суммаризация, ура! Прощай команда no auto-summary!
- Значения таймеров (hello и hold) могут быть неодинаковыми. Кстати, значение таймера hold передаётся соседу и означает: «если в течение X секунд ты от меня не получишь hello, значит я больше недоступен».
- EIGRP использует свой транспортный протокол (IP protocol number: 88) — RTP (Reliable Transport Protocol). Не стоит путать его с другим известным протоколом Real-time Transport Protocol (тоже RTP), который используется для передачи потоков реального времени, например VoIP (в связке с SIP). EIGRP также использует мультикаст адрес: 224.0.0.10. Не забывайте во входящем ACL разрешать EIGRP трафик, например с помощью записи: permit eigrp any any.
- Из-за различных значений административной дистанции (AD) для внутренних (90) и внешних (170) маршрутов, EIGRP позволяет избежать некоторых проблем при редистрибьюции (redistribution).
- Помните, что 2 роутера могут быть соседями, и при этом у них может не быть adjacency. С помощью команды show ip eigrp neighbors показываются лишь соседи. В выводе этой команды стоит обратить внимание на поле Q Cnt: если там не ноль, то вполне возможно, что у вас есть проблема в сети (например, неустановленное adjacency).
- EIGRP кроме суммарного маршрута может отправить и конкретный специфический маршрут. Эта особенность называется EIGRP Leak Map. Это полезно, если мы хотим сделать traffic engineering. Идея очень похожая на bgp unsuppress-map. Для этого необходимо применить команду: ip summary-address eigrp as-number summary-address summary-mask leak-map leak-map-route-map.
- Как верно добавил alk0v, в отличие от OSPF, EIGRP поддерживает балансировку нагрузки при разной метрике (unequal cost load balancing). Для этого необходимо использовать команду variance. Стоит помнить две вещи: это работает только для successors/feasible successors и, по умолчанию, CEF выполняет балансировку per-destination. Последнее значит, что 2 пакета, у которых соответствующие IP адреса отправителя и получателя одинаковые, всегда будут выходить из одного и того же интерфейса, что заметно усложняет проверку. Если вы всё же хотите это проверить, то можно переключить CEF в режим per-packet (в режиме конфигурации интерфейса используйте команду ip load-sharing per-packet) или вообще его отключить (команда no ip cef в глобальном конфигурационном режиме, не рекомендуется).
Ну что, пора заняться практикой?
+15
Зд-принтер: Взгляд со стороны головы
15 min
90KОбщий взгляд — как их использовать, родные аналогии. Скромная реальность. Только FDM, только домашний, живьём — зато изнутри и подробно. Хотэнд? В разрезе, с зонами и графиком температур. Достоинства и недостатки, свойства различных решений при конструировании печатающих головок. Особенности печати триммерной леской, и опыты по получению таблиц оптимальных настроек скоростной печати капроном(нейлоном). Выводы из них. Об организации хорошей подачи капронового прутка в экструдере. Всё очень захватывающе и драматично.
Про 3Д-принтеры сейчас пишут много, пишут с восторгом, описывается множество моделей и технологий, а так же множество их умений. И вот, стою я перед Вами, простой русский мужик из Литвы (С), с 3Д-принтером. Конечно, собрал его сам. Не из набора — полтора года назад наборов было мало, и они были дороги. Всё планировал и выбирал сам, ориентируясь исключительно на Интернет. Но я не об этом хочу рассказать, я хочу рассказать о том, что было потом — после его постройки, и думается вопросы — Зачем это? — Что он может делать? — Почему его покупают? — задают себе многие люди увлечённые техникой.
Давайте по-порядку: сначала я его строил. Это было очень интересно, в том плане, что приходилось постоянно решать множество технических вопросов, находить причины нештатной работы — путём вычисления, зачастую по косвенным признакам. Этакая игра в технические загадки. Заработало. Налаживал. Увидел порядочно возможных усовершенствований. Сделал несколько — с большим удовольствием. Потом разработал реально удобный узел концевого датчика для принтера. Его я даже один раз продал. Ну, комплект датчиков — на этом не разбогатеешь, но зато, какое удовольствие я получил от искренней благодарности покупателя. Повозившись с печатающей головкой — убедился, что она, несмотря на хорошее качество изготовления ( брэндовая MK IV) имеет и ряд недостатков. Да и была она только одна — а покупать ещё, дорого. Разработал свою — будете смеяться, с первого раза что-то получилось, хоть и не идеально. Правда, я ведь не так слепил, а внимательно изучил, что имелось, почитал, что пишут, и только тогда сделал. Потом стал разбираться. Ставить опыты. Был долгий перерыв — разочарование и депрессия, но это не связано с принтерами, так, соломинка подломившая спину слону. Сейчас у меня 4 головки, разных диаметров и принтер печатает в три раза быстрее, чем считается нормальным и печатает слоем 150 микрон. Причём печатает не дорогим импортным филаментом, а дешёвой леской для триммеров. Получается очень-очень прочно, хотя и не без хитростей.
Про 3Д-принтеры сейчас пишут много, пишут с восторгом, описывается множество моделей и технологий, а так же множество их умений. И вот, стою я перед Вами, простой русский мужик из Литвы (С), с 3Д-принтером. Конечно, собрал его сам. Не из набора — полтора года назад наборов было мало, и они были дороги. Всё планировал и выбирал сам, ориентируясь исключительно на Интернет. Но я не об этом хочу рассказать, я хочу рассказать о том, что было потом — после его постройки, и думается вопросы — Зачем это? — Что он может делать? — Почему его покупают? — задают себе многие люди увлечённые техникой.
Давайте по-порядку: сначала я его строил. Это было очень интересно, в том плане, что приходилось постоянно решать множество технических вопросов, находить причины нештатной работы — путём вычисления, зачастую по косвенным признакам. Этакая игра в технические загадки. Заработало. Налаживал. Увидел порядочно возможных усовершенствований. Сделал несколько — с большим удовольствием. Потом разработал реально удобный узел концевого датчика для принтера. Его я даже один раз продал. Ну, комплект датчиков — на этом не разбогатеешь, но зато, какое удовольствие я получил от искренней благодарности покупателя. Повозившись с печатающей головкой — убедился, что она, несмотря на хорошее качество изготовления ( брэндовая MK IV) имеет и ряд недостатков. Да и была она только одна — а покупать ещё, дорого. Разработал свою — будете смеяться, с первого раза что-то получилось, хоть и не идеально. Правда, я ведь не так слепил, а внимательно изучил, что имелось, почитал, что пишут, и только тогда сделал. Потом стал разбираться. Ставить опыты. Был долгий перерыв — разочарование и депрессия, но это не связано с принтерами, так, соломинка подломившая спину слону. Сейчас у меня 4 головки, разных диаметров и принтер печатает в три раза быстрее, чем считается нормальным и печатает слоем 150 микрон. Причём печатает не дорогим импортным филаментом, а дешёвой леской для триммеров. Получается очень-очень прочно, хотя и не без хитростей.
+81
Базовая анимация с iTween
5 min
31KTutorial
Вы когда-нибудь занимались созданием анимации в своей игре? Задавать подобный вопрос, наверное, глупо, практически в каждой игре есть какая-никакая, но анимация и вам приходилось иметь с ней дело. Напомню, что занятие это более чем утомительное, чаще всего приходиться придумывать свои наработки, чтобы хоть как-то облегчить себе жизнь. Но зачем заниматься лишней работой, делать это плохо, когда это уже сделано, и сделано хорошо!? Давайте познакомимся с инструментом под названием iTween.
+13
Работа с Корутинами в Unity
4 min
302KTutorial
Корутины (Coroutines, сопрограммы) в Unity — простой и удобный способ запускать функции, которые должны работать параллельно в течение некоторого времени. В работе с корутинами ничего принципиально сложного нет и интернет полон статей с поверхностным описанием их работы. Тем не менее, мне так и не удалось найти ни одной статьи, где описывалась бы возможность запуска группы корутинов с продолжением работы после их завершения.
Хочу предложить вам небольшой паттерн, реализующий такую возможность, а также подбор информации о корутинах.
+15
Прекратите скручивать (восклицательный знак)
6 min
1.7MTutorial
+652
Boids — простой алгоритм перемещения групп юнитов
3 min
31KВо время разработки клона одной игрушки мне понадобилось перемещать группы юнитов от одной планеты к другой. Первое что пришло в голову — заспавнить юниты один за другим и двигать их по прямой. Но это выглядело не очень весело, кроме того — нужно было как-то обходить планеты. После беглого ознакомления с алгоритмами группового перемещения я решил попробовать Boids. В итоге получилось такое:
Под катом описание алгоритма с примерами кода.
Под катом описание алгоритма с примерами кода.
+57
Как надо хешировать пароли и как не надо
4 min
260KВ очередной раз, когда мы заканчивали проводить аудит информационной безопасности веб-проекта, моя личная бочка с гневом переполнилась негодованием так, что оно перелилось через край в этот пост.
Постараюсь очень лаконично и быстро обрисовать ситуацию с хэшами.
Сразу определю какую задачу применения хешей буду рассматривать — аутентификация пользователей. Не токены восстановления паролей, не аутентификация запросов, не что-то еще. Это также не статья про защиту канала передачи данных, так что комментарии по challenge-response и SSL неуместны!
+99
Вещи которые вы возможно не знали о Unity3D
3 min
37KО чём телега
Я бы хотел описать возможности, ну и частично особенности которые присутствуют при разработке на данном движке. С Unity3D работаю уже около трёх лет, так что мыслей накопилось достаточно для средненькой такой статьи. Местами буду через чур мудрить, и рассказывать о том что вам вряд ли пригодится, но по большой части рассказ будет о очень простых и часто используемых вещах (если знать о них конечно).
+22
Устройство беспроводного контроллера Cisco и получение рутового доступа к нему
16 min
47KКо мне часто обращаются с запросами траблшутинга беспроводных контроллеров Cisco, часть из которых проистекает от незнания того, как те устроены и работают. Контроллер беспроводных точек доступа – это не привычный роутер или коммутатор с IOS, это специализированный компьютер (либо виртуалка) с Линуксом внутри. Сегодня мы познакомимся с аппаратными платформами разных контроллеров, узнаем о механизме их лицензирования, разберем на части одну прошивку, и получим рутовый доступ к устройству.
+20
Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity