Прошу прощения за грамматические и орфографические ошибки, если они есть. Сейчас 6 утра, и я готов лечь спать и вырубиться.

Запуск Steel Mountain Networks планировался на Рождество 2016 года. Однако в канун Рождества на сервере Discord я объявил, что запуск был отложен из-за возникшей семейной ситуации.

Сам запуск был навязан слишком рано. Я не закончил работу с веб-интерфейсом и не был полностью готов к запуску. Тем не менее, у меня было достаточно амбиций, чтобы думать, что я смогу закончить веб-интерфейс и настроить все серверы к Рождеству.

Реальность такова, что деньги были огромным препятствием. В настоящее время у нас всего 12 серверов, и наш ежемесячный счет составляет около 100–120 евро. Вся компания, которая впервые финансировала Steel Mountain Networks, была либо пожертвована, либо представляла собой деньги, которые у меня остались от моей летней работы.

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

Дебаты

Огромные споры, которые у меня были с самим собой, касались будущего Steel Mountain Network. Сам проект только начался из-за моего желания создать что-то из-за скуки моей жизни. Но это стало чем-то большим, и многих это заинтересовало.

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

Дело в том, что у меня был рабочий прототип. Если вы помните, я полностью переделал панель инструментов для Steel Mountain Networks. Сам прототип был функционален и готов к производству. Тем не менее, есть несколько проблем с этим.

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

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

Мы гордимся тем, что находимся не в США. У нас есть такие функции, как «DMCA Spoofing» и «Privacy Shelter», которые отключают ведение журнала или все действия и предотвращают удаление вашего веб-сайта из-за жалоб DMCA.

Однако использовать Invoice Ninja и доверять им данные и конфиденциальность наших клиентов было неправильным шагом. Во-первых, мне не следовало пытаться выбрать легкий путь, и из-за этой ошибки месяц был потрачен впустую.

Проект или сервис с открытым исходным кодом

Модуль для Steel Mountain Networks очень ценен. Это награда компании и проекта. Вот что делает Steel Mountain Networks функциональной. Модуль NGINX, который позволяет нашим серверам взаимодействовать друг с другом и распределять DDoS-атаки между несколькими серверами.

Однако сам модуль в значительной степени полагался на Testcookie, модуль NGINX, который позволяет пользователям назначать файлы cookie и бросать вызов пользователям, которые заходят на их веб-сайт. Мы также полагались на Naxsi, решение WAF для NGINX.

Две основные причины, по которым люди использовали Steel Mountain, заключались в том, что они полагались на какой-то модуль, который не поддерживался в течение 5 месяцев. Это было не то решение, за которое я хотел, чтобы пользователи платили.

Steel Mountain Networks не предназначена для получения прибыли. Цены говорят сами за себя. Мы могли бы легко взимать столько же, сколько Cloudflare, но мы этого не делаем. Steel Mountain Networks больше фокусируется на защите веб-сайтов, чем на их использовании и получении прибыли. У меня были моменты, когда я хотел увеличить цену Steel Mountain Networks намного выше необходимой цены. На самом деле мы зарабатываем всего 2 доллара с каждой продажи. Каждый раз, когда пользователь покупает план веб-сайта за 5 долларов, мы зарабатываем 2 доллара с этой продажи. Вся прибыль идет на расширение сети и создание новых функций в Steel Mountain Networks.

Открытие нашего исходного кода сделало бы сервис в некотором смысле бесполезным. Cloudflare делает «открытый исходный код» в том смысле, что они выпускают старый код и никогда не обновляют его снова. Они выпускают части своей инфраструктуры и делают невозможным воссоздание Cloudflare. В какой-то момент я хочу выпустить исходный код Steel Mountain Networks. В отличие от Cloudflare, я соберу весь наш исходный код в один модуль и дам подробные инструкции по его настройке.

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

План

Я не буду хранить никаких секретов о прогрессе Steel Mountain Networks и буду говорить об этом очень открыто. Делать частые обновления в этом блоге и в Твиттере. Я бы сказал, что Steel Mountain Networks готова примерно на 50%. Сам веб-интерфейс можно доделать, но сам модуль готов только на 10%.

Я хочу, чтобы модуль мог выполнять аналитику в реальном времени, измерения пропускной способности, ограничение скорости, WAF, вызов JS/cookie, централизованное ведение журнала и был масштабируемым. Я хочу все это в одном модуле и не полагаться на другие модули. Конечно, мы будем полагаться на другие проекты для оперативной аналитики, такие как Graphite, программное обеспечение для веб-графики, которое может анализировать базы данных и файлы журналов. Мы будем использовать Morgoth, что позволит нашему программному обеспечению учиться на прошлых атаках. Мы будем использовать Netflow, Ntop, InfluxDB, Fastnetmon (возможно) и многое другое, чтобы наша платформа была максимально эффективной. Но полагаться на стороннее приложение, такое как Invoice Ninja или модуль, такой как Testcookie, было неправильным способом.

Часть, которая займет больше всего времени, — это живая аналитика и система проверки JS/cookie. Ко всему прочему имею представление как это сделать. За последние несколько дней я прочитал много статей и документации по программному обеспечению, чтобы лучше понять, что мне нужно делать. На мой взгляд, самый ранний запуск Steel Mountain Networks — март.

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

Steel Mountain Networks обеспечила финансирование на месяц работы. Тем не менее, я планирую расширить сеть еще больше. Если вы хотите помочь Steel Mountain Networks, лучший способ помочь нам прямо сейчас — сделать пожертвование, чтобы мы могли настроить тестовую среду и опробовать новые методы. Поскольку мы не компания с инвесторами, мы полагаемся на вас.

Прошу прощения за грамматические и орфографические ошибки, если они есть. Сейчас 6 утра, и я готов лечь спать и вырубиться.

Если у вас есть какие-либо вопросы, не стесняйтесь писать мне на следующих платформах:

XMPP: [email protected]

Твиттер: @chessboard

Дискорд сервер: https://discord.gg/4eHBcYp