В рамках проекта Sandstorm развивается платформа для персональных web-серверов
18 июля 2016 года
Проект Sandstorm, развивает новую открытую платформу для обеспечения работы персональных серверов, позволяющую обычным пользователям без лишних усложнений запускать web-приложения на собственном оборудовании или во внешнем облаке. Код написан на языке С++ и доступен под лицензией Apache 2.0.
Для создания инфраструктуры достаточно запустить один скрипт и зайти в web-интерфейс, после чего можно в один клик запустить приложения из специального каталога, в котором представлены такие программы, как WordPress, MediaWiki, MediaGoblin, GitWeb, Apache Wave, EtherCalc, GitLab, Etherpad и Wekan. Т.е. неспециалист может легко без наличия каких-то особых технических навыков создавать решения для совместной работы, редактирования документов в стиле Google Docs, запускать чаты, создавать самодостаточные системы ведения блогов и т.п. Пользователь также может создавать резервные копии состояния приложения и переносить их между системами. Все данные на диске хранятся в зашифрованном виде.
В Sandstorm используется необычный подход к обеспечению изоляции: приложение запускается в изолированном контейнере, при этом отдельный изолированный контейнер привязывается к данным и создаётся для каждого обрабатываемого в приложении объекта - например, для каждого редактируемого в Etherpad документа или создаваемого в Wekan канала в чате. Обращение к внешним ресурсам и другим изолированным окружениям требует явного подтверждения операции от пользователя, что позволяет неплохо защититься от эксплуатации уязвимостей в различных обработчиках контента.
Например, при открытии подготовленного злоумышленником документа с эксплоитом, атака не выйдет за пределы окружения текущего документа и не приведёт к проблемам в окружениях для редактирования других документов. Каждый сеанс работы с приложением осуществляется с использованием случайно сгенерированного имени хоста (например, https://96cab9109791f52540022c1f857ecee7.sandstorm.example.com/(недоступная ссылка)) - обратиться к приложению можно только зная данное имя или имея доступ к учётной записи пользователя-владельца в Sandstorm.
Кроме того, Sandstorm позволяет контролировать доступ к каждому объекту/документу и гибко управлять предоставлением полномочий и средствами для совместной работы. В том числе, можно открыть возможность обращения к запущенному экземпляру приложения для другого пользователя и контролировать кто и когда обращался к экземпляру приложения или документу. Для доступа к приложениям используется единый набор параметров идентификации (Single Sign-on), задаваемый в интерфейсе Sandstorm и не требующий создания отдельных аккаунтов в приложениях. В свою очередь, учётная запись в Sandstorm может быть привязана к внешним службам идентификации, например, к аккаунтам в Google, Twitter и GitHub.
Подобный подход к изоляции и аутентификации может потребовать адаптации приложений для приведения их в вид, пригодный для использования в Sandstorm. Программы распространяются через централизованный каталог, в котором размещены в формате пакетов SPK. В настоящее время в каталоге доступно 58 приложений. Приложения обновляются автоматически как только появляются новые версии пакета, что позволяет всегда поддерживать окружение в актуальном состоянии и оперативно блокировать уязвимости. Все пакеты и обновления доставляются с верификацией по цифровой подписи.
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.