Как стать автором
Обновить
39
0
Илья @unicast

IT Manager, Musician, Couchsurfer

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

Single sign-on для SSH своими руками

Время на прочтение13 мин
Количество просмотров20K
TL;DR В этот статье мы установим single sign-on для SSH от Google. За кулисами мы воспользуемся OpenID Connect (OICD), краткосрочными SSH сертификатами, несколькими хитростями конфигурации SSH, и опенсорсными пакетами step-ca и step от Smallstep. Мы настроим SSH Certificate Authority и воспользуемся им, чтобы загрузить в нашей системе нового пользователя и новый хост. Этот метод привносит много преимуществ помимо single sign-on, так как отпадает нужда в сборе, передаче и контроле файлов authorized_keys, хоть и требует больше подготовительной работы по сравнению с настройкой типичной пары открытого/секретного SSH ключей.

Как не следует пользоваться SSH


Еще в далеком 2004 году кто-то научил меня копипастить открытый ключ в файл authorized_keys. С тех пор я продолжал невинно копировать один и тот же старый публичный ключ на каждый сервер, с которым мне приходилось работать, и у меня постоянно не получалось сделать это с первого раза, потому что я забывал корректно настраивать chmod.
Читать дальше →
Всего голосов 24: ↑24 и ↓0+24
Комментарии4

Встраиваем прием платежей в мобильное приложение, или почему можно забыть про PCI DSS и PA DSS

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

А нужен ли PCI DSS?


Рано или поздно большинство владельцев и разработчиков интернет-магазинов и мобильных приложений, принимающих платежи в онлайне, задаются вопросом: «должен ли мой проект соответствовать требованиям стандартов PCI DSS?».

PCI DSS — это стандарт безопасности, который применяется для всех организаций сферы обработки платежных карт: торговых точек, процессинговых центров, финансовых учреждений и поставщиков услуг, а также других организаций, которые хранят, обрабатывают или передают данные держателей карт и (или) критичные аутентификационные данные.

Стандарт PA-DSS распространяется на поставщиков приложений и иных разработчиков приложений, которые хранят, обрабатывают или передают данные держателей карт и (или) критичные аутентификационные данные.


image

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

С мобильным приложением все немного сложнее.
Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии16

Debian-пакеты с человеческим лицом на примере Zabbix 1.8

Время на прочтение4 мин
Количество просмотров11K
Написать эту статью меня заставили две вещи: во-первых, есть ощущение, что после статей типа "делаем debian-пакет на коленке", большинство хабравчан утвердятся во мнении, что debian-пакеты придумали извращенцы для извращенцев. Во-вторых, вышел zabbix 1.8 — замечательная система мониторинга, в которой, судя по новостям, наконец-то занялись проблемами юзабилити админского интерфейса.

Связывает два этих события то, что zabbix 1.8 пока нет в репозиториях убунты, а компилировать и ставить из исходников что-то на продакшн-серверах, это, конечно, недостойное джентльмена занятие. В общем, есть повод показать, как делаются debian-пакеты.

Итак, хе-хе, приступим :)

apt-get install dh-make devscripts cdbs libmysqlclient-dev libcurl4-gnutls-dev
wget sunet.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/1.8/zabbix-1.8.tar.gz
tar zxvf zabbix-1.8.tar.gz
cd zabbix-1.8
dh_make --createorig


На вопрос dh_make, какого типа пакет мы хотим создать, нужно ответить «b» (cdbs). В результате будет создан шаблонный пакет, с кучей файлов в директории debian на все случаи жизни (большую часть мы потом удалим).

Создание пакетов — это все-таки немножко шаманство и магия. Дело в том, что более простые, чем zabbix, программы, уже на этом этапе можно заканчивать пакетировать. Т.е. если для установки программы нужно сделать только ./configure && make install, то все готово, можно собирать и ставить. Zabbix — несколько более сложный вариант, поэтому впереди еще несколько шагов:

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

100 ресурсов и инструментов для продвижения стартапов на международном рынке

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


Большой интерес к нашей исходной компиляции на эту тему вдохновил нас на адаптацию пары (1, 2) добротных подборок, составленных пользователями GitHub.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии2

Стендапы в стиле Kanban

Время на прочтение5 мин
Количество просмотров44K
Stand-up meeting, Daily Scrum Meeting или просто планёрки стали привычной практикой в IT. Я описывал различные нюансы стендапов ещё 5 лет назад в статье Stand-up meeting: лучшие и худшие практики. Казалось бы, техника проведения стендапов уже рассмотрена со всех сторон. Что в планёрке может быть сложного? Но совсем недавно наша компания начала практиковать несколько другой подход, с помощью которого мы ускорили выход задач в релиз.

Всё началось, когда летом 2014 года в Москве мы с Асхатом шли на тренинг и он обратил моё внимание на разницу между стендапами в Scrum и Kanban. До этого я не придавал особого значения таким нюансам. У нас в компании для части проектов используется Kanban, но стиль стендапов остался от Scrum'а.

Сейчас мы поменяли подход к стендапам, об этом я расскажу дальше, покажу разницу между тем, что было и тем, что стало. В конце статьи есть ссылки для более глубокого погружения в тему с описанием разных мнений и нюансов.
Читать дальше →
Всего голосов 20: ↑20 и ↓0+20
Комментарии7

Организация разделов на системном диске в облаке Селектел

Время на прочтение4 мин
Количество просмотров11K
abstract: Этот пост описывает организацию системного диска на машинах в облаке и объясняет, почему именно так.

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

Мотивация


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

Вот проблемы, которые возникают в связи с этим:
  • Возможность изменить размер диска и корневой файловой системы
  • Возможность создать дополнительные разделы
  • Возможность подключить диски от одной машине к другой
  • С этого диска надо ещё и загрузиться

Наиболее примитивным решением является
Читать дальше →
Всего голосов 30: ↑25 и ↓5+20
Комментарии81

1967 года рождения и моложе

Время на прочтение6 мин
Количество просмотров220K
Прочитав этот и этот топики на печальную пенсионную тему я решил поделиться внутренними наработками нашей кадровой службы для наших сотрудников. Дальше много несмешного текста без картинок.
Читать дальше →
Всего голосов 98: ↑87 и ↓11+76
Комментарии116

Паяльная станция Lukey702

Время на прочтение3 мин
Количество просмотров221K
SMD Rework Station Lukey702

Долго думал в какой блок опубликовать. Станция дешевая, стоит в России от 1600 до 2500 рублей, в зависимости от жадности продавцов. Считаю, каждому самодельщику необходимо иметь такой девайс. Я давно хотел приобрести такую, и не понятно, как я раньше, обходился без нее! Станция компактная, те, кто знает другие поделки фирмы Lukey, станции старого поколения, сделанные в здоровенных железных ящиках, оценят, эргономичный корпус и органы управления.

image
Читать дальше →
Всего голосов 75: ↑70 и ↓5+65
Комментарии97

Защита игрового сервера Source Dedicated Server от атак небольшими UDP-пакетами

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

Рассмотрим один из способов борьбы с данным видом вандализма.
Читать дальше →
Всего голосов 7: ↑5 и ↓2+3
Комментарии5

NeoTokyo — новый Source мод

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


Начать стоит с того, что эта модификация разрабатывалось американской студией RADI-8, и начинала своё существование на движке Unreal Tornament 2004 с октября 2004 года а ныне выпущенная на движке Source и является бесплатной. Это красивый, командный шутер, сделанный в sci-fi стилистике и с вдохновением от аниме «Ghost in the Shell», «AKIRA», и от игры Counter-Strike. По сравнению с другими бесплатно существующими модами игра не только отличается очень красивыми и проработанными картами, оружием и персонажами, но и очень интересным геймплеем. Цель игры заключается в том, что бы захватить "призрака" и отнести его на вражескую базу, или убить всех противников. В достижении этой цели вам помогут 20 различных видов оружия, и 3 различных класса, каждый из них уникален и обладает своим уникальным прибором зрения.
Обладатель «призрака»(флага) может видеть всех членов вражеской команды на расстоянии 50м.

Подкатом — особенности игры, геймплейное видео, а так же ссылки на скачку самой игры и скриншоты.
Читать дальше →
Всего голосов 38: ↑29 и ↓9+20
Комментарии47

Секреты профессиональной оценки людей на интервью

Время на прочтение11 мин
Количество просмотров40K
На хабре уже проходило несколько статей об оценке персонала (например здесь), о том, как интерпретировать услышанное от кандидатов. Хочу рассказать о поведенческом интервью, которое успешно использую уже 7 лет и учу этому других.

Основный недостаток большинства оценочных процедур – их субъективность, низкая надежность при оценке знаний и навыков человека. Люди не хотят говорить правду, зачастую выдают теоретические знания за практические навыки. Чтобы отобрать правильных кандидатов, разработаны несколько видов интервью. Одно из них – это поведенческое – то из немногих, которое действительно позволяет понять, что же реально знает и умеет кандидат.

Читать дальше – будет много букв и примеров …

Читать дальше →
Всего голосов 88: ↑69 и ↓19+50
Комментарии49

DatePicker: Выбор даты

Время на прочтение1 мин
Количество просмотров1.4K
Нужно было сделать календарь.

Стандартный jQuery не подходит. Слишком прост. Спроектировал такой на макете:

image

Помнится мне я видел реализацию подобного. Но только где?
Всего голосов 27: ↑18 и ↓9+9
Комментарии20

Читаем мануалы — об одном секрете include

Время на прочтение2 мин
Количество просмотров818
Для тех, кто приходит в мир PHP с С или других языков зачастую бывают откровением некоторые особенности языка, которые описаны в документации, но, тем не менее, часто ускользают из виду.

Сегодня я хочу рассказать о нестандартном (с точки зрения большинства программистов) использовании оператора include в PHP

Оказывается, что этот оператор, помимо своей основной работы — включения в Вашу программу внешнего файла, может еще и вести себя как функция, то есть возвращать значение.
Читать дальше →
Всего голосов 49: ↑31 и ↓18+13
Комментарии33

10 юзабилити-преступлений, которых вы не должны совершать

Время на прочтение2 мин
Количество просмотров4.5K
На стадии дизайна и разработки мы должны учитывать прописные истины и основные концепции для улучшения юзабилити сайта. В этой статье описываются классические, но непростительные ошибки в области веб-дизайна и способы их решения.

Преступление #1: В формах метки не связаны с полями ввода


crime1
Использование атрибута «for» позволит пользователям кликать по метке, для выбора соответствующего поля формы. Это особенно важно для чекбоксов и радиокнопок — увеличить область клика.
Читать дальше →
Всего голосов 325: ↑289 и ↓36+253
Комментарии160

LightSleeper: Лучшее изобретение после подушки

Время на прочтение1 мин
Количество просмотров1.7K
LightSleeper умное устройство, которое проецирует успокаивающий свет на потолок. Который движется по кругу перед глазами. Вы просто следите за светом в течение нескольких минут, и незаметно для себя проваливаетесь в сон.
image
Читать дальше →
Всего голосов 54: ↑45 и ↓9+36
Комментарии122

Agestar USB Server — конвертор USB-Ethernet

Время на прочтение2 мин
Количество просмотров4.7K
Встала задача купить десяток принтсерверов (хотят на одной фирме все принтера сделать независимыми от компьютеров). Пока читал прайсы, встретил вот такой устройство — Networking Adapter with 4 Port USB Server Function LB3.
image

В описании сказано, что можно подключать принтеры, да и вообще почти любые устройства. Решил купить одну штуку на пробу, ибо на 10 принтсерверах экономия получается почти в два раза.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии12

DDoS — как выжить от школьников?

Время на прочтение3 мин
Количество просмотров5.5K
DDoS-атака — сокращение от Distributed Denial Of Service Attack. Это когда куча зараженных компьютеров посылают на сервер множество запросов. В итоге сервер тратит все свои ресурсы на обслуживание этих запросов и становится практически недоступным для пользователей. Размер атак бывают разные, от крупных может спасти только специалист и Cisco Guard :) и такое решение стоит не менее 1000$/мес. Но такие атаки, слава богу, довольно редкое явление. Чаще всего мы видим простые атаки, которые делают как правило школьники (им же все интересно). Создать свой ботнет не сложно, можно даже купить готовый :). Но такие атаки тоже могут нанести вред нашему веб-проекту. Что же делать если атака маленькая и платить огромные деньги специалисту мы не хотим?
Читать дальше →
Всего голосов 38: ↑28 и ↓10+18
Комментарии15

Простой способ организации очереди из AJAX-запросов

Время на прочтение2 мин
Количество просмотров4K
Постановка задачи

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

Однако в такой системе неизбежно возникает следующий момент: пользователь может подряд быстро нажать на несколько ссылок «подробнее», в то время как сервер будет долго обрабатывать входящие запросы. Если в AJAX используется только один объект XMLHttpRequest (обычно так и есть), то все запросы свалятся в нем «в кучу», и результат запроса отобразится не там, где нужно. Таким образом, встает задача организовать очередь из однотипных асинхронных запросов к серверу, так, чтобы последующий выполнялся только после того, как закончится предыдущий.

Читать дальше →
Всего голосов 11: ↑6 и ↓5+1
Комментарии11

Пять условий офигительного тех. саппорта

Время на прочтение5 мин
Количество просмотров13K
Последние пять лет я работаю в тех. саппорте. И у меня сложилось некоторые принципы, следование которым, на мой взгляд, сделает любой тех. саппорт клёвым и офигительным. А если им не следовать, то саппорт будет унылым и неклёвым.

Сразу поясню, что эти советы/правила больше относятся к саппорту через HelpDesk или e-mails, у телефонной поддержки есть некоторые свои особенности.

1. Быстрая реакция и ответы


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

К сожалению быстрый саппорт, доступный 24/7, это дорого: нужно больше людей и нужна круглосуточно доступная инфраструктура. Чаще всего это просто невыгодно, особенно если вы не крупная корпорация, а маленький стартапчик.

В этом случае нам поможет одна интересная штука.
Читать дальше →
Всего голосов 145: ↑135 и ↓10+125
Комментарии110

Информация

В рейтинге
Не участвует
Откуда
Berlin, Berlin, Германия
Дата рождения
Зарегистрирован
Активность