Несколько способов установки Cloud Pentest Lab с помощью OwnCloud


Несколько способов установки Cloud Pentest Lab с помощью OwnCloud

Запустите браузер и перейдите по адресу https://owncloud (в вашем случае адрес будет тот, который вы указывали в ServerName). В появившемся окне задайте имя администратора и пароль к этой учетной записи. Чуть ниже нажмите на ссылку «Система хранения данных», нажмите на кнопку MySQL и укажите информацию для доступа к созданной в MySQL базе данных — название базы, имя пользователя и пароль. Нажимайте кнопку «Завершить установку».

Опс! На экране предупреждение, что Apache работает без поддержки протокола WebDAV. Собственно, через этот протокол пользователь и работает со своими файлами на сервере. Раз ownCloud просит WebDAV, я считаю, что ему нужно это дать: a2enmod dav a2enmod dav_fs service apache2 restart

Снова заходим на главную страницу owncloud и видим радостное приветствие. Любезный ownCloud готов начать нас обслуживать.

Установленный ownCloud

Поднимаем сервис для хранения и синхронизации конфиденциальных данных

Сегодня возможности NFS, SMB/CIFS, FTP уже не удовлетворяют требования пользователей, поэтому все более популярными становятся онлайновые сервисы вроде Dropbox. Они имеют простой интерфейс и удобны в работе, но вместе с тем не гарантируют приватность размещаемых данных. Чтобы обеспечить максимальную безопасность информации, мы рекомендуем использовать свой собственный облачный сервер.

Наверное, самый популярный проект, позволяющий организовать собственное хранилище файлов для обмена данными между пользователями. Причем по возможностям он давно обогнал Dropbox, поскольку кроме шаринга пользователь получает еще календарь, закладки, адресную книгу (с группировкой по категориям), список дел TODO и так далее. Реализовано шифрование файлов, после активации данной возможности информацию не может просмотреть даже администратор. Возможен контроль версий файлов (в качестве бэкенда используется Git, при нехватке пространства старые редакции автоматически удаляются), установка квот и ограничений на максимальный размер файлов. Корзина позволяет восстанавливать файлы и каталоги, удаленные через веб-интерфейс. Пользователь может просматривать PDF- и ODF-файлы, рисунки в фотогалерее, прослушивать музыку. Предусмотрено редактирование текстовых файлов при помощи онлайн-редактора. Доступна синхронизация файлов, календаря и адресной книги с мобильным устройством или ПК и с другими системами, поддерживающими протокол remoteStorage. Система полнотекстового поиска, основанная на движке Apache Lucene, позволяет искать не только по именам файлов, но и по их содержимому.

Базовые возможности легко расширить при помощи плагинов, часть из них предоставляется самим проектом, доступны разработки третьих сторон. Большую коллекцию плагинов можно найти в репозитории. Здесь находим модуль, проверяющий сохраняемые файлы на наличие вирусов (с помощью ClamAV), модуль для организации музыкального сервера, позволяющий прослушивать музыкальную коллекцию с любого устройства в сети, хранилище подкастов и видеороликов с доступом через веб-интерфейс или медиаплеер. Таким же образом добавляется поддержка OpenID и LDAP, а также работа с внешними хранилищами Dropbox, Swift, FTP, SFTP, Google Docs, S3 и WebDAV.

Доступ к данным предоставляется как для зарегистрированных на сервере пользователей ownCloud (помечаются как общие/Shared), так и без регистрации для анонимного посетителя (в виде прямой ссылки). Реализована возможность отправки уведомлений другим пользователям через стандартный механизм нотификации KDE (Open Collaboration Services API, изначально проект развивался под эгидой KDE).

Интерфейс ownCloud организован логично и удобно

Другие статьи в выпуске:

Хакер #176. Анонимность в интернете

  • Содержание выпуска
  • Подписка на «Хакер»

Для доступа используется веб-браузер или WebDAV, KDE KIO-Slaves, при помощи которых можно подключить хранилище в виде сетевого диска. Интерфейс системы локализован и организован логично и просто, поэтому с его освоением не должно возникнуть проблем у пользователя с любым уровнем подготовки. Разработаны клиенты ownCloud Desktop Client и Mobile Clients, позволяющие синхронизировать данные с настольной системой под управлением Windows, Linux и OS X либо мобильным устройством Android (доступен в двух версиях — платной и бесплатной) или iOS (iPhone/iPad/iPod). Кроме этого, в интернете можно найти большое количество расширений и приложений App Store, позволяющих сделать работу с ownCloud еще более удобной. Например, для файловых менеджеров Dolphin, Nautilus, Finder и Explorer доступны модули интеграции с ownCloud.

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

Написан ownCloud на PHP и JavaScript, в качестве СУБД можно использовать SQLite, MySQL или PostgreSQL. Для развертывания подойдет стандартный LAMP- или WAMP-сервер, а сам процесс достаточно тривиален.

К сожалению, проект имеет длинную историю взломов — в разное время в коде ownCloud исследователи находили многочисленные критические уязвимости (выполнение произвольного PHP-кода на сервере, получение полного доступа к календарям других пользователей и другие). Поэтому при выходе новой версии советуем незамедлительно обновляться.

Возможности ownCloud расширяются при помощи плагинов

Добавляем второй уровень шифрования

Все публичные облачные хранилища шифруют информацию, но, например, в случае с Dropbox или SkyDrive администраторы могут ее просмотреть. Поэтому если мы хотим сохранить конфиденциальность данных, лучшим способом будет их предварительное шифрование перед отправкой на сервер. Для этого можно использовать любую программу с нужной функцией, вроде TrueCrypt, но это неудобно. Выручают специализированные решения:

  • Viivo (ранее SecretSync) обеспечивает простой способ для шифрования локальной папки перед отправкой на Dropbox. После установки программы создается новый каталог и все, что в него копируется, автоматически шифруется (AES-256) и синхронизируется с Dropbox. Бесплатен для персонального и коммерческого использования. Доступны клиенты для Windows, OS X, iOS и Android.
  • Boxcryptor работает по принципу, схожему с Dropbox, Google Drive и Microsoft SkyDrive, SugarSync и хранилищами, использующими WebDAV, но шифрует файлы при помощи AES-256. Совместим с Windows, OS X, iOS и Android. Версия Free с базовыми возможностями (достаточными для персонального использования) доступна бесплатно.
  • CryptSync совместима с Dropbox, Google Drive, SkyDrive и другими. Доступна сборка только под Windows. Распространяется по условиям GNU GPL.

AjaXplorer — решение, выросшее за пять лет из файл-менеджера, используемого для управления файлами на веб-сервере, в полноценную платформу уровня предприятия для обмена данными между пользователями при помощи веб-интерфейса, iOS- и Android-клиента или WebDAV. Возможно простое создание мини-сайта, на котором будут публиковаться списки размещенных документов. Доступно превью для большинства распространенных форматов (аудио, видео, PDF, офисные документы). В случае изменения каталога или файла заинтересованные пользователи получают оповещение. Реализован планировщик. Доступ к файлам могут получить как зарегистрированные, так и анонимные пользователи.

Работа с AjaXplorer напоминает настольное приложение

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

Возможна аутентификация средствами Active Directory / LDAP, HTTP, CAS, FTP, OTP и другими. Разделение прав основано на ролях, применяемых к пользователям и группам, администрировать сервер могут несколько человек, которым четко задаются права. Администратор имеет возможность мониторить деятельность пользователей в режиме реального времени.

Обеспечивается шифрование в течение сеанса HTTPS и данных на уровне файловой системы при помощи EncFS. В июне 2013 года профессиональным агентством безопасности во Франции был проведен аудит AjaXplorer, в результате которого уязвимостей, специфических для веб-приложений, обнаружено не было.

Доступны плагины (Bridges), позволяющие интегрировать AjaXplorer в популярные CMS, базирующиеся на PHP, — Drupal, WordPress и Joomla. Доступен соответствующий API, поэтому список легко расширить. Плагин AjaXplorer for Filelink для Mozilla Thunderbird позволяет автоматически заменять большие вложения в сообщении сгенерированной ссылкой на хранилище AjaXplorer.

Модульность позволяет при необходимости нарастить возможности и собрать систему под конкретные нужды. Например, обеспечить доступ к другим источникам данных (файловая система, FTP, SFTP, Samba, Amazon S3, Dropbox, HPCloud, IMAP, POP и так далее), проверять файлы антивирусом. Также при помощи плагинов подключается текстовый и офисный редактор (через веб-сервис Zoho), реализуется возможность просмотра изображений, отображение Exif-информации, проигрывание аудио- и видеофайлов и многое другое. Поведение некоторых модулей можно настраивать более тонко, но для этого конфиги придется редактировать вручную. Например, чтобы установить разрешенные для просмотра и загрузки типы файлов, следует заглянуть вserver/conf/conf.access.fs.inc.

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

Для индексации и для быстрого поиска по хранилищу используется библиотека Apache Lucene.

Написан AjaXplorer с использованием HTML, PHP, Ajax и JavaScript. Используются стандартные драйверы файловой системы, поэтому сервер легко переносить и масштабировать.

Самый молодой продукт обзора — Seafile. Первые версии были представлены в конце 2012 года, но до релиза 1.3 интерфейс был только на китайском языке, поэтому популярность он лишь начинает набирать. В Seafile реализованы не только функции хранения и синхронизации данных, но и элементы совместной работы с контентом. Пользователь может создавать любое количество библиотек (по сути, отдельное виртуальное хранилище) и открывать доступ для групп, контактов или без ограничений. Допущенные пользователи через библиотеку обмениваются файлами. В случае изменений предусмотрена возможность отправки уведомлений. При создании библиотеки возможна активация доступа по паролю и шифрование. В случае активации шифрования документ «закрывается» до отправки на сервер (его могут просмотреть только допущенные пользователи), поддерживается HTTPS. На уровне библиотеки также реализовано отслеживание версий (по умолчанию 60 дней, можно изменить число, хранить всю историю или отключить совсем), доступ к предыдущим редакциям, восстановление удаленного файла, аудит (кто и когда внес изменения). Поддерживается предварительный просмотр основных типов файлов, обсуждение информации с участниками группы, функции ведения списков задач и управления проектами, персональное Wiki.

В Seafile можно создать несколько библиотек, которые затем синхронизировать по отдельности

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

Доступ к данным возможен как через веб-интерфейс, так и при помощи клиента Seafile (Windows, Linux, OS X, Android и iOS).

Код проекта написан на языке Python и распространяется под лицензией GPLv3, для хранения метаданных используется SQLite. Версия Community Edition серверной части предлагается бесплатно для Linux и Raspberry Pi, для Windows цена составляет 150 долларов. Также есть Pro Edition с большими возможностями: доступ по WebDAV, функции поиска, оповещение по email и другое (подробнее здесь). Кроме того, можно размещать файлы на сервере разработчика (бесплатно предоставляется до 1 Гб).

Онлайновые хранилища с упором на безопасность

Найти хранилище для своих файлов сегодня легко, свои варианты предлагают и разработчики ОС, например Apple iCloud, Ubuntu One, Microsoft SkyDrive. Но со временем обнаруживались те или иные проблемы в безопасности, хостеры признают, что могут контролировать контент и закрыть аккаунт. Естественно, у пользователей возникало разумное сомнение, стоит ли впредь доверять свои личные файлы «кому попало». Как результат, появились альтернативные сервисы, заявляющие о большей защищенности информации:

  • Wuala — шифрование файлов производится локально при помощи клиента (Windows, Linux, Android, iOS, Java — веб-доступ), а затем они загружаются на сервер. При этом данные разделяются на несколько частей, которые хранятся в разных местах, что обеспечивает меньшую вероятность их потери. Используется AES-256 для шифрования, RSA-2048 подпись и обмен ключами при совместном использовании папок, SHA-256 для проверки целостности; поддерживается SSL. Все ключи для расшифровки хранятся локально. Администраторы сервиса могут просмотреть лишь количество занимаемого места, от них скрыты даже метаданные. Правда, это означает, что и восстановить информацию при потере пароля невозможно (доступна подсказка пароля). При необходимости шифрование можно отключить. При совместном использовании файлов шифрование также не используется. Бесплатно доступно 5 Гб, пространство можно увеличить до 1 Тб.
  • SpiderOak — проект, развивающийся с 2007 года, по принципу аналогичен Wuala. Пользователю бесплатно предоставляется 2 Гб, в дальнейшем место можно наращивать до 100 Гб. Реализованы клиенты для Windows, Linux, iOS, Android и N900 (ожидается BlackBerry и Windows Phone), есть веб-доступ. Enterprise-версия отличается дополнительными возможностями, вроде SSO AD/LDAP, и расширенными функциями администрирования. Применяется многоуровневый подход к шифрованию с использованием комбинации AES-256/RSA-2048. Поддерживается SSL.
  • Tresorit — новый игрок, предлагающий бесплатно 5 Гб места (по акциям можно отхватить 50 Гб), шифрование ведется на стороне клиента (AES-256/SHA-512), реализованы агенты для Windows, iOS и Android. Веб-доступа нет. Общие файлы хранятся в зашифрованном виде и «раскрываются» после загрузки.
  • Mega — проект с участием Кима Доткома, предлагающий бесплатно 50 Гб места, с возможностью поднять за $$$ до 4 Тб. Файлы перед загрузкой зашифровываются (AES-128) на стороне пользователя через JavaScript (в будущем HTML5 API WebCrypto). Cоединение дополнительно «закрывается» при помощи SSL. В отличие от других сервисов, не предлагаются клиенты и возможность синхронизации, только загрузка/выгрузка через браузер. Администратор не может получить доступ к файлам, но может просмотреть структуру данных.

Mega.co.nz предлагает 50 Гб места, но доступ только через веб

Wuala шифрует файлы до передачи на хостинг
Каждое решение имеет свои плюсы и минусы, поэтому нужно выбирать исходя из конкретных задач. ownCloud и AjaXplorer подкупают своими богатыми функциями, а Seafile — легкостью и простотой, а также возможностью групповой работы.

Шаг 2 — Настройка корневого каталога документов

Установленный нами пакет ownCloud копирует веб-файлы в директорию /var/www/owncloud на сервере. Конфигурация виртуального хоста Apache настроена для выдачи файлов из другой директории. Нам нужно изменить параметр DocumentRoot в нашей конфигурации, чтобы он указывал на новую директорию.

Чтобы определить, какие файлы виртуального хоста ссылаются на ваше доменное имя или IP-адрес, нужно использовать утилиту apache2ctl с опцией DUMP_VHOSTS. Отфильтруйте результаты по доменному имени или IP-адресу вашего сервера, чтобы определить, какие файлы нужно отредактировать с помощью следующих нескольких команд:

  • sudo apache2ctl -t -D DUMP_VHOSTS | grep server_domain_or_IP

Результаты будут выглядеть примерно так:

Output *:443 server_domain_or_IP (/etc/apache2/sites-enabled/server_domain_or_IP-le-ssl.conf:2) port 80 namevhost server_domain_or_IP (/etc/apache2/sites-enabled/server_domain_or_IP.conf:1)

В скобках показаны все файлы, ссылающиеся на доменное имя или IP-адрес, которые мы будем использовать для доступа к ownCloud. Это те файлы, которые вам нужно отредактировать.

Откройте каждый из совпадающих файлов в текстовом редакторе с привилегиями sudo:

  • sudo nano /etc/apache2/sites-enabled/server_domain_or_IP.conf

Найдите в каждом из файлов директиву DocumentRoot. Измените эту строку так, чтобы она указывала на директорию /var/www/owncloud:

Example DocumentRoot edit

Сохраните файл и закройте его после завершения. Завершите эту процедуру для каждого из файлов, ссылающихся на ваше доменное имя (или на IP-адрес, если у вашего сервера нет доменного имени).

Закончив редактирование, проверьте синтаксис файлов Apache и убедитесь, что в конфигурации отсутствуют заметные опечатки:

  • sudo apache2ctl configtest

В зависимости от вашей конфигурации вы можете увидеть предупреждение относительно настройки параметра ServerName как глобального. Если в конце страницы результатов отображается надпись Syntax OK, вы можете игнорировать это предупреждение. Если вы видите дополнительные ошибки, проверьте отредактированные файлы на наличие ошибок.

Если файлы прошли проверку синтаксиса, перезапустите службу Apache для активации изменений:

  • sudo systemctl reload apache2

Теперь Apache должен выводить ваши файлы ownCloud с вашего сервера.

Установка ownCloud

Загрузим актуальный релиз с официального сайта, используя утилиту Wget. Для начала переместим дистрибутив в директорию временного репозитория, чтобы установить доверенный сертификат: wget -nv https://download.owncloud.org/download/repositories/production/Ubuntu_16.04/Release.key -O Release.key sudo apt-key add — < Release.key

Теперь пропишем в официальном перечне обновляемого ПО Ubuntu сайт ownCloud, а затем установим:

sudo echo ‘deb https://download.owncloud.org/download/repositories/production/Ubuntu_16.04/’ > /etc/apt/sources.list.d/owncloud.list

sudo apt-get update sudo apt-get install owncloud-files

Перейдем к настройке серверной части.

Установка облачного хранилища ownCloud на Linux

В инструкции описан процесс установки, настройки облачного хранилища ownCloud на виртуальном сервере с операционной системой Linux и подключение по протоколу WebDAV.

Что это такое?

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

  • Для установки ownCloud на вашем сервере должен быть установлен LAMP-стек: Ubuntu, Centos 7.
  • Для PHP должны быть установлены следующие модули: imagick, common, curl, gd, imap, intl, json, ldap, mbstring, mcrypt, mysql, pgsql, smbclient, ssh2, sqlite3, xml, zip.
  • Также вы должны иметь права суперпользователя.

Установка

В нашем примере установка производится на Ubuntu 16, на других дистрибутивах некоторые команды могут отличаться, но процедура остается прежней. Скачайте пакет и ключи с последней версией продукта, на момент написания статьи последняя версия — 13.0.4, актуальную версию можно посмотреть на официальном сайте:

sudo curl https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.key | sudo apt-key add — echo ‘deb https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/ /’ | sudo tee /etc/apt/sources.list.d/owncloud.list

Обновите пакеты и установите программу:

sudo apt-get update sudo apt-get install owncloud-files

Конфигурация веб-сервера Apache

Создайте с помощью текстового редактора vi конфигурационный файл и откройте его:

Внесите следующие строки:

Alias /owncloud «/var/www/owncloud/» Options +FollowSymlinks AllowOverride All Dav off SetEnv HOME /var/www/owncloud SetEnv HTTP_HOME /var/www/owncloud

Примечание: у вас могут отличаться пути до каталога.

Далее создайте символьную ссылку:

ln -s /etc/apache2/sites-available/owncloud.conf /etc/apache2/sites-enabled/owncloud.conf

Также необходимо изменить права владения:

chown -R www-data:www-data /var/www/owncloud/

Для применения изменений перезапустите веб-сервер:

service apache2 restart

Подключение к хранилищу в браузере

Для подключения в браузере используйте ваш ip-адрес или домен:

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

Создание учетной записи -ввод учетных данных

После вы будете перенаправлены на страницу входа в хранилище, введите учетные данные администратора и нажмите Enter

Ввод данных для подключения

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

Интерфейс управления

Создание пользователя

Для создания нового пользователя хранилища на главной странице в правом верхнем углу кликните на ваш логин и в выпадающем меню нажмите Пользователи

Введите Имя пользователя

и
Пароль
, при необходимости укажите группу. Нажмите
Создать
.

В результате у вас появится новый пользователь со своим пространством для файлов.

Подключение через WebDav-клиент Cyberduck

Подключение к облачному хранилищу можно сделать по протоколу WebDAV с помощью клиента Cyberduck. Установите приложение и создайте новое подключение. В качестве протокола выберете WebDAV (HTTP)

. В поле
Сервер
введите адрес, который можно найти в настройках на странице в браузере.

, если вы не изменяли. Введите ваше
Имя пользователя
и
Пароль
. Нажмите
Подключиться
.


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *