Итоги 2016 года

www.ihor.ru/company

Вот и наступил последний день уходящего, 2016-го года! Согласно неписаной, но общепринятой традиции — подведу итоги.

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

С другой стороны, простое время бывает только у тех, кто сидит на месте.
Движение вперёд всегда требует напряжения — физического и энергетического, ментального и духовного. Так было всегда, так всегда и будет. Только движение позволяет нам понять кто мы есть на самом деле, почувствовать свою истинную природу.
Поэтому, не смотря на все трудности, мы сильно продвинулись вперёд.
Отмечу наиболее важные моменты, этого года:
  • «Борьба с DDoS-атаками» — наверно это главный лозунг нашей компании в этом году. Начав с использования сторонней защиты, мы очень быстро пришли к пониманию, что для масштабного хостингового проекта обязательно наличие собственного центра очистки трафика. Мы провели тестирование большого количества оборудования от различных вендоров. Анализировали различные типы атак и учились на них реагировать. Проект еще не закончен, но на текущий момент нам удалось существенно улучшить стабильность работы сети нашего дата-центра и свести к минимуму негативное влияние от атак.
  • Борьба с DDoS-ами потянула за собой существенную перестройку нашей сети. Мы в четыре раза расширили пропускную способность наших каналов между ЦОД-ом и основной точкой обмена трафиком с другими операторами, расположенной на ММТС-9. Проведено много настроек и оптимизаций на магистральном сетевом оборудовании, а также обновление прошивок (наверно все помнят многочисленные объявления о сетевых работах в течение года).
  • В конце 2015 года мы запустили услугу аренды выделенных серверов и постарались подать её в оригинальном виде. Не традиционный выбор готовых конфигураций, а конструктор, который позволит заказчику получить именно тот сервер, который ему нужен. За этот год услуга прошла хорошую обкатку, приобрела много улучшений и превратилась в достойный продукт, которым можно гордиться. Это произошло во многом благодаря тем отзывам и замечаниям, которые мы получили от наших клиентов в процессе работы над заказами.
  • Благодаря модернизации сети и развитию услуги аренды выделенных серверов мы добавили такую важную вещь для современного рынка, как аренда порта 10G на сервер, как обычно, мы постарались сделать её максимально доступной. Уже есть первые пользователи, которые заказали высокоскоростные порты.
  • Закончили миграцию VDS, которая началась еще в 2015 году, из старого кластера в (первой версии) в новые, собранные по единому стандарту и имеющие массу улучшений в плане юзабилити и стабильности работы.
  • Добавили возможность использования приватной сети для VDS.
  • Реализовали полноценную поддержку протокола IPv6.
  • Расширили пропускную способность внешних каналов до 90 Гбит/с.
  • Существенно улучшили стабильность работы серверов виртуального хостинга. Добавили много современных плюшек, таких как Let's Encrypt и PHP 7.
  • Существенно переработали систему мониторинга практически всех важных параметров предоставляемых нами услуг. Наш сервер мониторинга уже выполняет по несколько тысяч проверок в секунду, контролируя всё, что только можно, от состояния железа до работы отдельных процессов на серверах.
  • Было много юридической работы, одним из важных результатов которой стало появление новой редакции Договора, отвечающего всем современным правовым требованиям, а также появление SLA.
  • Существенно переработана структура работы технической поддержки, увеличен штат и квалификация специалистов. Это позволило значительно сократить время реакции на запросы клиентов и повысить качество ответов.
  • Переход на новую панель управления BILLmanager 5.
  • Запуск программы реселлинга наших услуг.
  • Существенно оптимизированы наши DNS-серверы, которые поддерживают работу уже более 83 тысяч доменов.
  • Расширили линейку тарифов VDS и оптимизировали цены.
  • Генерируемый нами трафик вырос более чем в 3 раза и пробил планку в 30 Гбит/с.
  • Почти в 2 раза выросла наша команда, количество сотрудников компании составляет уже порядка 40 человек.
  • В 4 раза выросло количество активных клиентов и превысило значение в 12 тысяч.

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

Все эти достижения стали возможны исключительно благодаря Вам (именно с большой буквы), нашим клиентам, партнёрам и нашей команде!

Хочу выразить Огромную Благодарность, нашим Пользователям, за понимание того, каким не простым делом мы занимаемся, за терпение в случае неудач и трудностей, с которыми мы сталкиваемся, за неравнодушие и активность, которые вы проявляете, помогая своими советами, рекомендациями и оказанием помощи в решении самых различных задач.

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

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

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

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

Генеральный директор и Основатель
ООО «ТК МАРОСНЕТ» и проекта Айхор Хостинг
Иван Лунгов

13 августа

Сегодня нет электричества, целый день висим на дизеле, полет нормальный


Город вернул электричество, переключаемся

Калькулятор для размещения серверов



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

www.ihor.ru/datacenter
www.ihor.ru/colocation

Открытие API для работы с услугами от российского лоукост-хостера (часть 1)

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



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

В качестве биллинговой системы мы используем продукт российской компании ИСПсистем — BILLmanager4. Для всех продуктов ИСПсистем есть открытое API и оно описано в большей или меньшей степени на их официальном сайте документации ispdoc.com
Работать с API можно как из командной строки, обращаясь непосредственно к интерпретатору mgrctl, так и через адресную строку браузера (или любое другое приложение, которое будет отправлять запрос на веб-сервер: curl, wget и т.п)
Исходя из документации можно составить запрос к любому из продуктов, НО при работе с биллингом требуется некоторое количество информации, которая доступна только со стороны хостинг-провайдера.

Сам запрос для заказа виртуального сервера, к примеру, KVM Ferrum на один месяц с автоматическим помесячным продлением, шаблоном ОС Centos-6.7-x86_64-minimal без использования лицензии ISPmanager, будет выглядеть так:
https://billing.ihor.ru/billmgr?authinfo=<USER>:<PASS>&addon_1101=20&addon_1103=1&addon_1104=1&addon_1110=1&addon_1791=4&enum_1112=21&enum_1106=25&agree=on&domain=test-for.habr&ostempl= Centos-6.7-x86_64-minimal&period=1210&price=1100&autoprolong=1210&payfrom=neworder&func=vds.order.7&sok=ok


Теперь попробуем расшифровать все это нагромождение переменных и цифр.
Сам запрос можно разделить условно на две части: это URL биллинга и передаваемые параметры запроса биллингу.
Сами параметры можно распределить следующим образом:
Описание параметров
  • Авторизация — authinfo

В качестве данных авторизации указывается логин и пароль пользователя, зарегистрированного в биллинге.
  • Тарифный план — price

Каждому тарифному плану соответствует свой идентфикатор в биллинге, берется из таблицы «Тарифные планы».
  • Параметры тарифного плана – addon_

К параметрами тарифного плана относятся параметры виртуального сервера, его ресурсы. Каждый параметр тарифного плана имеет свой идентификатор и свое значение по умолчанию, которое соответствует размеру диска, количеству ядер процессора и оперативной памяти, а так же IPv6- и IPv4-адресам.
  • Дополнительные услуги – enum_

В дополнительные услуги входят DNS-серверы и использование лицензии ISPmananger.

(параметры по умолчанию для KVM Ferrum)
  • Период заказа — period
  • Автопродление – autoprolong
Идентификатор периода заказа и автопродления для каждой из услуг абсолютно одинаковы.
  • Доменное имя сервера – domain

Доменное имя должно быть уникальным. Иначе появится ошибка
Ошибка: The domain is already in use. Specify a different domain name.
При массовом добавлении виртуальных серверов, рекомендую использовать формат +<порядковый номер>.
  • Шаблон ОС – ostempl

Неполный список шаблонов приведен в этом тексте чуть ниже. Обращаю внимание, что при заказе шаблона ОС без ISPmanager, в установке значения дополнительных услуг следует отключить использование панели управления ISPmanager (для всех тарифных планов этот идентификатор одинаков — 25)
  • Параметры оплаты – payfrom

В примере я привел значение параметра оплаты — neworder, что соответствует отдельному заказу с оплатой для каждого сервера. payfrom=neworder.
  • Оплата заказа – func

Так как весь заказ виртуального сервера состоит из 7 шагов, то в API, что не особо очевидно на первый взгляд, следует указывать не только саму функцию vds.order, но и номер последнего шага — 7. Таким образом полное значение этого пункта выглядит так: func=vds.order.7
  • Подтверждение пользовательского соглашения – agree

При заказе любой из услуг мы предлагаем ознакомиться с пользовательским соглашением и принять его (тогда заказ уходит на активацию) или не принять его (тогда заказ отменяется). В API этот пункт так же обязателен: agree=on.

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

Чтобы не загромождать текст большими таблицами со всеми тарифными планами, я приведу только ту часть, которая поможет разобраться, как была составлена строка для заказа виртуального сервера с тарифным планом KVM Ferrum. А так же два других младших тарифных плана SSD и OVZ


Список шаблонов
  • FreeBSD-11-amd64-minimal
  • Centos-6.7-x86_64-minimal
  • Debian-7-x86_64-minimal
  • Debian-8-x86_64-ispconfig
  • Ubuntu-16.04-x86_64-minimal
  • CentOS-7-x86_64-ispmgr5

Если запрос составлен корректно и заявка на активацию новой услуги принята, Вы получите в ответ что-то типа этого:
<script language='JavaScript'>fr_master('startpage=vds', 'top.');</script>

Ниже в качестве бонуса прикладываю несколько скриптов для заказа произвольного количества виртуальных серверов для консоли Linux и Windows.
Если в комментариях будет проявлен интерес к развитию темы работы с API нашего биллинга, мы постараемся описать ее более подробно, с использованием различных языков программирования и программных продуктов для интеграции.
Пример на BASH
#/bin/bash
#
# Данные для авторизации
USER=user
PASS=password

# Заказать 10 виртуальных серверов
for i in {1..10}
do
/usr/bin/curl https://billing.ihor.ru/billmgr?authinfo=$USER:$PASS&addon_1101=20&addon_1103=1&addon_1104=1&addon_1110=1&addon_1791=4&enum_1112=21&enum_1106=25&agree=on&domain=$USER-$i.ru&ostempl= Centos-6.7-x86_64-minimal&period=1210&price=1100&autoprolong=1210&payfrom=neworder&func=vds.order.7&sok=ok"
done


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

Пример на PowerShell, файл curl.exe должен находиться в той же директории, откуда выполняется скрипт
USER=user
PASS=password

for ($i=1; $i -lt 10; $i++) {
.\curl.exe https://billing.ihor.ru/billmgr?authinfo=$USER:$PASS&addon_1101=20&addon_1103=1&addon_1104=1&addon_1110=1&addon_1791=4&enum_1112=21&enum_1106=25&agree=on&domain=$USER-$i.ru&ostempl= Centos-6.7-x86_64-minimal&period=1210&price=1100&autoprolong=1210&payfrom=neworder&func=vds.order.7&sok=ok"
}

Наша цель - сделать качественную защиту для всех наших клиентов!



Теперь, немого о текущей ситуации и о том, что нами было проделано в последнее время.
По моему ощущению 2016 год пройдет под знаком DDoS. Думаю, что в этом году мы все станем свидетелями огромного количества атак на всё подряд и на всех подряд. Об этом свидетельствуют целый ряд факторов:
  1. Мощность средней атаки выросла в 3-6 раз по сравнению с предыдущим годом. По нашей собственной статистике, в 2015 году редкая атака на наши ресурсы превышала 10 Гбит/с. Но буквально с декабря прошлого года средняя сила атак стала 25-30G, а самая крупная атака на нас была почти в 60G.
  2. Стоимость подобных атак стала стоить копейки. Буквально за 5$ в месяц, можно купить аккаунт и поливать налево и направо.
  3. В этом году уже пошли массовые атаки на различных хостеров, положили не только нас и нескольких коллег по цеху обитающих здесь на серчах, но даже и нынешнего лидера российского хостинга: roem.ru/21-03-2016/221280/regru-fall/ Также, прошли успешные атаки и на другие очень крупные интернет-ресурсы.

Но больше всего в текущем положении дел удручает то, что большинство IT-компаний просто не готовы своими инфраструктурами выдерживать возросшую силу ддос-атак.
Собственно говоря, отсутствие здесь моих комментов на этой неделе было связано как раз с тем, что мною и моей командой были проведены целый ряд ключевых встреч и переговоров по организации защиты нашего ДЦ от DDoS-атак. И самое печальное во всем этом, что вопрос упирается не деньги, а в отсутствие технических возможностей для быстрого развертывания хорошей защиты на необходимом уровне практически у всех, с кем мы общались. Вот несколько примеров:
  1. Один из ведущих экспертов по развитию услуг информационной безопасности одного из операторов большой тройки был сильно удивлен, когда мы сказали, что ддосы в 30G на нас это норма, а в пике было и 60. В своей практике он не сталкивался с ддосами больше 25G (везет ему, если бы у нас это было пиковым значением, наверное вообще почти никто не заметил бы из наших клиентов), при этом они активно продвигают свою услугу защиты от ддос, с центром очистки с максимальной пропускной способностью до 80G. Хватит на 1,5 таких клиента как мы .
  2. На наше предложение оператору связи №1 в России, расширить с ними стык на М9 с 10 до 80G, сначала долго совещались между собой, потом сказали, что оперативно смогут поднять только до 20G, а к концу апреля только до 40G. Как-то так...
  3. Ну о том, как прилег ТТК, когда мы встали под ддос-гвард, я уже писал… Поступало и много других предложений для защиты нас от атак аж до 20G!.. Здорово конечно, но это мы как-нибудь и сами отфильтруем.
В общем кажется мне, что в этом году у многих будут откровения и много SLA полетят в топку ддосов.

В общем то, это было понятно, что надо наращивать инфраструктуру еще в прошлом году. Но, к сожалению, не всегда получается делать все настолько быстро как мне того хочется, мир — достаточно инертная штука ).
Тем не менее, подвижки есть.
Попытка прикрыться ДДоС-Гуардом, оказалась не совсем удачной. Хотя со многими атаками они успешно справились, было несколько, достаточно мощных атак, от которых шатало самих гвардов и их апстримов. С добавлением нас в качестве клиентов, возникло ощущение, что возможности их системы фильтрации были на пределе своих ресурсов (честно говоря, думалось, что мы не очень большой генератор трафика, но видимо, получается, что не маленький).

Также, идея пропускать весь трафик через фильтры оказалась не очень удачной. Хотя это и дает возможность моментальной реакции при начале атаки, возникает очень много ложных срабатываний (из-за этого и происходили спонтанные обрывы сессий).
Тем не менее, мы продолжаем переговоры с гвардами и на понедельник запланирована встреча с ними у нас в офисе на предмет обсуждения альтернативных схем эффективной защиты от атак.
В настоящий момент, мы переключились под защиту от Ростелекома, которая построена на железках одного из лидеров в этой области Arbor Networks. Плюсы — фильтрация трафика происходит только в случае атаки. Минусы — время срабатывания детектора атаки и перевод трафика на очистку может достигать до 5 минут из-за этого и наблюдаются периодические провалы в доступности ресурсов. В течение этой недели нам удалось настроить фильтры на ключевые ресурсы совместно со специалистами из РТ. Некоторые ресурсы были переведены под постоянную защиту.

По этому, если Ваш сайт или сервер атакуют мелкими но частыми атаками, пишите в поддержку, будем вешать их на постоянную защиту.
Закончено тестирование антиддос-железки Radware DefensePro. В целом, наши админы остались довольны тестовым образцом. По этому поставили на заметку к возможному приобретению старшей модели. Однако, ждем железку от Huawei которая должна приехать к нам до 15 апреля на тест. Поскольку ее производительности хватит на закрытие от атак всего ДЦ, финальные тесты попробуем провести на живом трафике, о чем оповестим заранее. По окончании тестов будем определятся с покупкой.
Сегодня (в пятницу), привезли на тест анализатор атак от Инновентики, поставили на стенд, будем проводить испытания.
Анализатор атак понадобится в дальнейшем для выстраивания правильного контура очистки, наподобие того, как это сделано в OVH.

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