OwnCloud - это свободное и открытое веб-приложение для организации своего собственного "облачного" хранилища файлов. Отличается предоставлением пользователю полного контроля над своими данными - информация размещается на подконтрольных пользователю системах. Иными словами с помощью ownCloud вы сможете сделать свой вариант drumbox, yandex диск или SkyDrive , но используя свое облако вы избавитесь от одного из недостатков облаков других компаний предоставляющих этот сервис, все данные будут храниться на ваших дисках (подконтрольных вам дисках) . OwnCloud можно сделать как на VDS/VPS (виртуальные сервера арендуемые у хостера), так и на домашнем компьютере. В этой статье я остановлюсь на домашнем варианте, хотя установка и возможности не будут отличаться от установки на VDS/VPS.

Для начала разберем, что же такого особенного предоставляет OwnCloud:

1 Первое что приходит в голову- хранилище файлов (фото, видео, документы). В случае если вы разворачиваете OwnCloud на своем компьютере можно не ограничиваться 10-20 Гб (как у сторонних сервисов), а смело использовать 500 Гб, 1 Тб и т.д.

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

3 Можно открывать/ создавать тестовые файлы (.ODF .odt, ODP, .ods расширения), прослушивать музыку, просматривать видео.

4 Сможете синхронизировать данные с компьютером (Windows, Mac, Linux).

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

Предлагаю перейти к установке OwnCloud. В этой статье я буду устанавливать на Ubuntu Server 12.04. Установка OwnCloud требует минимум усилий, достаточно запустить команду

sudo apt-get install owncloud

Потребуется подтвердить установку дополнительных пакетов.

Во время установки потребуется ввести пароль для SQL, рекомендую использовать пароль не менее 8 символов с заглавными буквами, цифрами и спец знаками (!"№#$).

Спустя несколько секунд установка будет закончена. Теперь необходимо создать базу данных для работы с облачным хранилищем, для этого выполните команды:

mysql -u root -p
create database <имя_базы_mysql>;
grant all privileges on owncloud.* to <имя_пользователя_mysql>@localhost identified by "пароль_пользователя_mysql";
exit

Например:

mysql -u root -p
create database owncloud;
grant all privileges on owncloud.* to root@localhost identified by "Cloud50$";
exit

Теперь вы сможете донастроить ownCloud, для этого необходимо в браузере зайти по ссылке

/owncloud

В моем случае:

192.168.1.6/owncloud

В открывшемся веб интерфейсе необходимо ввести учетные данные для входа в облачное хранилище (рекомендую указать сложный пароль с заглавными буквами, цифрами и спец знаками (!@#!"№)), путь хранения файлов и данные SQL (логин и пароль).

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

После этого вы попадете на веб интерфейс вашего облака.

Для того, что бы загрузить файл, нажмите кнопку со стрелкой и выберите необходимый файл для загрузки. Как вы можете заметить файлы можно загрузить ограниченного размера (этот размер берется от объема оперативной памяти). Это значение можно изменить в настройках.

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

Выбор версии ownCloud

В репозиториях Debian вообще нет никакой версии ownCloud, даже устаревшей. Возможно, это и к лучшему. В Ubuntu эта программа есть, но из-за нее недавно разразился скандал . Если кратко, разработчики ownCloud попросили удалить свой софт из репозитория Ubuntu, потому как разработчики Ubuntu оставляли дыры в ownCloud даже после выпуска официальных заплаток. Видимо, были сильно заняты интеграцией очередного магазина в Unity. Но сейчас не об этом.

Версию будем брать не из репозиториев, а с официального сайта, самую свежую (из стабильных). Заходим на страницу загрузок и выбираем вариант Archive Files (for server owners). В открывшемся окне жмем на слове Unix. Запускается загрузка архива с ownCloud. На момент написания этой статьи в ходу была версия 7.0.2. Прямая ссылка: https://download.owncloud.org/community/owncloud-7.0.2.tar.bz2 .

Прежде чем закрыть окно браузера, скачаем и руководство для админа: http://doc.owncloud.org/server/7.0/ownCloudAdminManual.pdf . Согласно одному известному правилу, если ничего не получится, придется наконец-то прочитать мануал. Но лучше не доводить до крайностей и пробежаться по разделу Installation до установки ownCloud.

LAMP

Устанавливается LAMP за 2 минуты. Еще столько же уйдет на правку конфигурационных файлов и все сразу заработает. В Debian. На другие дистрибутивы моя гарантия не распространяется. А вот тюнинг отдельных компонентов LAMP - это настоящее искусство. Есть спецы по MySQL, есть по Apache, на тюнинг может уйти много времени, сил, а иногда и денег. Особенно в условиях ограниченных ресурсов (если вы запускаете ownCloud на стороннем хостинге). Но нам сейчас это не понадобится.

ownCloud и Apache

Берем архив с ownCloud и распаковываем в директорию /var/www.

Cp owncloud-7.0.2.tar.bz2 / var/ www/ cd / var/ www/ tar xf owncloud-7.0.2.tar.bz2

Разумеется, все операции под root. Затем нужно переименовать директорию owncloud в название вашего сайта. Например, если для доступа к облачному хранилищу будет использоваться домен mysupercloud.ru, тогда переименовываем так:

Mv owncloud mysupercloud.ru

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

Теперь очень важный шаг, о котором многие забывают, но потом мучаются с правами доступа. И в итоге выставляют на все 777, подвергая свою систему опасности. Web-сервер Apache работает под отдельным пользователем и в отдельной группе. Связано это с тем, что если злоумышленник сможет хакнуть Apache через дыру в самом сервере или через дыру в скриптах сайта, то получит лишь ограниченный доступ к системе. Фактически, каккер сможет перезаписывать только содержимое некоторых файлов в /var/www. Передадим Апачу права на файлы ownCloud:

Chown -R www-data:www-data owncloud

Убедимся, что все в порядке:

Ls -al

Теперь создадим виртуальный Web-сайт, должным образом настроив Apache. Поскольку разработчики Debian любят пользователей, монолитный конфигурационный файл был изящно распилен на части, с которыми уже работать удобнее. На этом сюрпризы от разработчиков Debian не заканчиваются. К услугам пользователей удобный инструментарий a2ensite/a2dissite/a2enmod/a2dismond. Это скрипты на Perl, которые сокращают работу с конфигурационным файлом Apache до минимума.

Переходим в директорию /etc/apache2/sites-available, берем заготовку default и копируем ее под новым именем. Как и в случае с названием директории с owncloud, желательно использовать название домена:

Cp default owncloud

Открываем скопированный файл для редактирования. Очень важно точно указать значения для трех переменных: ServerName, DocumentRoot и Directory. Никаких опечаток, иначе на заработает!

ServerName owncloud ServerAdmin webmaster@localhost DocumentRoot /var/www/owncloud Options FollowSymLinks -MultiViews AllowOverride All Order allow,deny allow from all ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined

То есть, в ServerName мы прописываем имя домена (то, что пользователь будет набирать в адресной строке браузера, чтобы получить доступ к ownCloud). DocumentRoot и Directory указывают на директорию с файлами ownCloud.

Теперь запустим сайт:

A2ensite owncloud service apache2 restart

Сайт нам уже отвечает, хотя установка еще далека от завершения. Внимание: если используется «ненастоящий» домен, то его следует явно прописать в /etc/hosts!

На этом настройка Apache завершается и переходим к настройке MySQL.

ownCloud и MySQL

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

Если вы разбираетесь в MySQL, вы легко выполните это с помощью командной строки и прекрасной утилиты mysql. Остальным я рекомендую воспользоваться web-интерфейсом к MySQL под названием phpmyadmin. Этот софт есть в стандартном репозитории Debian, устанавливается командой apt-get install phpmyadmin и работать начинает практически сразу, ведь LAMP у вас уже настроен. Пользователю остается лишь запустить браузер и перейти по адресу http://localhost/phpmyadmin . В целях безопасности рекомендую подправить конфигурацию Apache, чтобы доступ к phpmyadmin имели только пользователи из локальной сети. Дело в том, что phpmyadmin - на редкость дырявое ПО и каккеры часто сканируют сайты в поисках именно phpmyadmin.

Итак, создаем в phpmyadmin пользователя owncloud и присваиваем ему хитрый пароль. Создаем базу данных owncloud. Даем пользователю owncloud полные права на доступ к базе owncloud. На этом настройка MySQL заканчивается. Переходим непосредственно к установке.

Внимание: создавая базу данных, в пункте «сравнение» указывайте utf8_general_ci.

Настройка ownCloud

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

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

A2enmod dav a2enmod dav_fs service apache2 restart

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

В заключении

Если к этой теме будет проявлен дальнейший интерес, то я расскажу о том, как настроить красивые адреса URL (http://owncloud/settings/admin вместо http://owncloud/index.php/settings/admin), как включить безопасный протокол HTTPS вместо HTTP и том, как расширить возможности ownCloud. Спасибо за внимание!


Версия 4.5.1 - 24.10.2012

Fix path encoding in breadcrumb
-Fix sharing of files with special characters
-Fix upercase/lowercase probelm in usernames with WebDAV
-Fix LDAP plugin with Postgres
-Fix userID migration
-Fix sharing of mounted Files
-Delete userfiles after deleting a user
-Make Webinterface work with nonstandard path
-Fix retrieval of Quota, Email via LDAP
-Show a warning in installer if .htaccess is not working
-Fix Shared folder caching
-Increase security by using openssl random number generator
-Fix syncing of rollback files
-Fix the swift files backend
-Disallow user to delete own account
-Security: Fix multiple XSS vulnerabilities (oC-SA-2012-001)
-Security: Fix a timing attack in the “Lost Password” implementation (oC-SA-2012-002)
-Various smaller fixes

Скачать - Download: (cкачиваний: 599)
MD5: (cкачиваний: 92)

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

ownCloud 2012 Клиент Windows (.EXE)
ownCloud 2012 клиент для Windows, позволит вам подключиться к частным серверам ownCloud 2012. С его помощью вы можете создавать папки в вашем домашнем каталоге, и сохранить содержимое этих папок синхронизировав с вашем ownCloud сервером. Просто скопируйте файл в директорию и клиент ownCloud 2012 сделает все остальное. Версия 1.0.5.
Windows 8, 7, Vista, XP - Server: ownCloud 2012+, 3.0.2+, 4.0.3+
(cкачиваний: 555)
Windows 8, 7, Vista, XP - Server: 4.5.0+
(cкачиваний: 254)

ownCloud 2012 Mac OS X Клиент (.dmg)
ownCloud 2012 Mac OS X клиент для Linux, позволит вам подключиться к частным серверам ownCloud 2012. С его помощью вы можете создавать папки в вашем домашнем каталоге, и сохранить содержимое этих папок синхронизировав с вашем ownCloud сервером. Просто скопируйте файл в директорию и клиент ownCloud 2012 сделает все остальное. Версия 1.0.5.
Mac OS X - Server: ownCloud 2012+, 3.0.2+, 4.0.3+
(cкачиваний: 63)
Mac OS X - Server: 4.5.0+
(cкачиваний: 254)

ownCloud 2012 Linux Клиент
ownCloud 2012 Linux клиент для Linux, позволит вам подключиться к частным серверам ownCloud 2012. С его помощью вы можете создавать папки в вашем домашнем каталоге, и сохранить содержимое этих папок синхронизировав с вашем ownCloud сервером. Просто скопируйте файл в директорию и клиент ownCloud 2012 сделает все остальное. Версия 1.0.5.
openSUSE, Fedora, Debian or Ubuntu Server: ownCloud 2012+, 3.0.2+, 4.0.3+

openSUSE, Fedora, Debian or Ubuntu Server: ownCloud 4.5.0+

ownCloud Android App
Новейшая версии 1.3 теперь доступна в Google Play. Проводит автоматическое обновление и стоит всего 99 центов.
Вы также можете скачать и сотрудничать с сообществом разработчиков.
Android 2.3.6 +

ownCloud iOS App
ownCloud приложение для IOS (Apple iPhone, Apple IPad и Apple Ipod Touch) теперь доступен за 99 центов в магазине Apple!
Apple iOS


Версия 4.5.0 - 10.10.2012

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

Монтирование внешних накопителей: Администраторы теперь могут монтировать внешние облачные накопители (Dropbox, Google, Swift, S3 и др.) и решать, будут ли они доступны всем пользователям, группе или конкретному пользователю. Теперь пользователи могут делать то же самое, обеспечивая единую синхронизацию файлов и разделять возможности на несколько облачных сервисов, используя ownCloud в качестве единой точки доступа.

Быстрая синхронизация: Используя уникальный идентификатор и алгоритм, механизм синхронизации теперь сравнивает файлы и папки по идентификатору синхронизации, а не штампу времени. Это избавляет от необходимости проводить синхронизацию настольного компьютера и сервера, а также имеет дополнительное преимущество, резко снижая нагрузку на сервер ownCloud.

Внутренние Администраторы для групп: Администраторы теперь могут назначить одного или нескольких администраторов в группах в системе ownCloud, что позволяет специальная группа доступа и упрощенная система обмена между сотрудниками, подрядчиками, поставщиками и партнерами.

Файл версий: Загрузка файла с совпадающем именем файла в ownCload через веб-интерфейс теперь будет генерировать новую версию файла, и отображать загруженный файл в качестве новой версии.

Расширение сети: пользователи получили улучшенные решения для работы, когда они делятся файлами. Можно изменять и удалять файлы, назначать права, устанавливать время доступа, а также пароль на доступ к файлу по URL.

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

Синхронизация общей адресной книги. Адресные книги теперь можно синхронизировать с другими устройствами.

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

Impress: С помощью приложения Impress, загрузка файлов и просмотр презентаций стал динамичней, веселей и интерактивней.

Скачать - Download: (cкачиваний: 150)
MD5: (cкачиваний: 38)


Версия 4.0.8 - 10.10.2012

Show Login Button when user and password are autocompleted

-Security: Fix for insufficiently Random Values (CVE-2008-4107)
-Security: Fixed multiple XSS vulnerabilities (CVE-2012-5056)
-Security: Fixed a HTTP header injection (CVE-2012-5057)
-Security: Fixed an Auth bypass in /lib/base.php (CVE-2012-5336)

Скачать - Download: (cкачиваний: 37)
MD5: (cкачиваний: 27)

Show Login Button when user and password are auto-completed
-Sanitize LDAP base, user and groups
-Fix non active Adressbooks
-Calendar: Remove double html encoding
-Fix label for versioning in admin settings
-Add parent directory into filecache if it Âdoesn´t exist
-Handle non writable files correctly
-Disable webfinger completely if not activated
-Security: Disable user listings in DAV
-Check file blacklist for file renames
-Security: Fix XSS bug in Gallery
-Security: Several CSRF security fixes
-Security: Validate cookie to prevent auth bypasses
-Special thanks to Julien Cayssol for reporting several security problems

Скачать - Download:
Для доступа к данным, сохраненным в ownCloud, можно использовать веб-интерфейс или протокол WebDAV. Дополнительно к хранению данных можно отметить функции поддержки средств для обеспечения совместного доступа и возможность синхронизации между различными машинами таких данных, как адресная книга, календарь-планировщик и закладки, с возможностью их просмотра и редактирования с любого устройства в любой точке сети. Исходный код системы распространяются в рамках лицензии AGPL. Сервер ownCloud можно развернуть на любом хостинге, который поддерживает выполнение PHP-скриптов и предоставляет доступ к SQLite, MySQL или PostgreSQL.

В версии ownCloud 4 появились поддержка версионного контроля изменений файлов, поддержка шифрования данных, интерфейс для ведения планов (TODO), встроенный просмотрщик ODF-файлов, возможность монтирования внешних хранилищ.

Это Свободное и открытое веб-приложение для синхронизации данных, расшаривания файлов и удалённого хранения документов в «облаке». Возможности

  • Хранение файлов с использованием обычных структур каталогов, или с использованием WebDAV
  • Криптография
  • Синхронизация между клиентами под управлением Windows (Windows XP, Vista, 7 и 8), Mac OS X (10.6 и новее) или Linux
  • Календарь (также как CalDAV)
  • Планировщик задач
  • Адресная книга (также как CardDAV)
  • Потоковое мультимедиа (используется Ampache)
  • Администрирование пользователей и групп (с использованием OpenID или LDAP)
  • Расшаривание контента между группами или используя публичные URL
  • Онлайн текстовый редактор с подсветкой синтаксиса и сворачиванием
  • Закладки
  • Механизм сокращения URL
  • Фотогалерея
  • Просмотрщик PDF (используется PDF.js)
  • Просмотрщик ODF файлов (.odt, .odp, .ods)
  • Модуль логирования

Установка Установку ownCloud я решил сильно упростить, используя готовый дистрибутив от Bitnami , в который интегрированы Apache и PHP. Скачиваем и запускаем установочный файл. Выбираем папку для установки.
Создаем учетную запись администратора.
Указываем хост сервера. Я указал IP-адрес.
Настраиваем почту.Этот этап можно пропустить и настроить почту позже.
Пропускаем предложение посетить сайт Bitnami.
Все готово для установки, жмем Далее.
Ждем завершения установки.
После завершения установки запускаем Bitnami ownCloud Stack.

Настройка ownCloud. В Bitnami ownCloud Stack нажимаем Go To Application, в браузере открывается приветственная страница. Жмем ссылку «Access Bitnami ownCloud Stack».
Открывается окно входа в ownCloud.
Вводим регистрационные данные, указанные на этапе установки. Получаем полнофункциональный облачный сервис!
В верхнем меню слева выбираем Приложения.
У меня список приложений загружался почему-то очень долго. В нем выбираем LDAP User and Group backend и включаем приложение.
Далее заходим в Администрирование.
Опускаемся до LDAP-секции и видим сообщение, что модуль LDAp для PHP не установлен. Включаем (раскомментируем) в php.ini строку extension=php_ldap.dll . Не забываем перезапустить серверы в Bitnami ownCloud Stack на вкладке Manage Servers, чтобы изменения вступили в силу.

Настройка интеграции ownCloud с LDAP. Заходим под администраторской учетной записью в меню Администрирование. Проматываем вниз и ставим галочку напротив Enable LDAP Backend.
Далее возвращаемся к LDAP-секции и заполняем ее. Предварительно я создал пользователя owncloudaduser в контейнере Users. Ему не нужно членство в каких-то группах корме Domain Users. Пароль сделаем ему бессрочным. Во второе поле пишем содержимое атрибута distinguishedName из влкадки Редактора атрибутов. Она станет доступна в свойствах учетной записи, если в оснастке Active Directory Users and Computers в меню Вид (View) включить Дополнительные компоненты (Advanced Features).
На вкладке Login устанавливаем атрибут для входа. У меня это имя пользователя LDAP.
Далее на вкладке Дополнительно устанавливаем параметры подключения. Делаем нашу конфигурацию активной.
Заполняем настройки каталога.
Затем Специальные атрибуты. Важно заполнить поле mail, если вы планируете использовать уведомления по почте.
Не забываем Сохранить настройки. Возвращаемся на вкладку Пользователи. В качестве объектов я указал User, и сразу нашлось 1483 пользователя.
Вот и все, интеграция ownCloud с LDAP завершена.