Піднімаємо сервіс для зберігання і синхронізації конфіденційних даних

  1. Додаємо другий рівень шифрування
  2. Онлайнові сховища з упором на безпеку

Сьогодні можливості 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).

Реалізована можливість відправки повідомлень іншим користувачам через стандартний механізм нотифікації KDE (Open Collaboration Services API, спочатку проект розвивався під егідою KDE)

Інтерфейс ownCloud організований логічно і зручно

Для доступу використовується веб-браузер або 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). З'єднання додатково «закривається» за допомогою SSL. На відміну від інших сервісів, не пропонуються клієнти і можливість синхронізації, тільки завантаження / розвантаження через браузер. Адміністратор не може отримати доступ до файлів, але може переглянути структуру даних.

Mega.co.nz пропонує 50 Гб місця, але доступ тільки через веб Mega Wuala шифрує файли до передачі на хостинг

Кожне рішення має свої плюси і мінуси, тому потрібно вибирати виходячи з конкретних завдань. ownCloud і AjaXplorer підкуповують своїми багатими функціями, а Seafile - легкістю і простотою, а також можливістю групової роботи.