Содержание статьи
Вообще говоря, первым делом я рассматривал более безобидные варианты вроде Dropbox или Google Drive. Поставить одну из них на сервер, и пусть синхронизирует папки с компьютером, а при желании можно и на телефоне открыть. Но бесплатно в этих сервисах доступно не так много места, а платить за хранение одних и тех же файлов дважды совершенно не хочется — один раз хостеру VPS, где лежат данные, второй раз — за Dropbox. Да и что‑то свое иметь всегда приятнее, верно?
Поиски показали, что найти решение одновременно простое и не совсем кустарное не так‑то легко. Зато в любом треде на эту тему обязательно появляются люди, которые поставили себе ownCloud или Nextcloud и рапортуют о ровном и приятном полете на протяжении долгих лет. И хоть я и не поклонник мегакомбайнов, звучало это достаточно заманчиво, чтобы дать им шанс.
Обе программы — это платформы, которые сами по себе заменяют Dropbox и дают возможность управлять файлами и шейрить их, но после установки плагинов начинают напоминать миниатюрную операционку. Здесь тебе и почтовые программы, метящие на роль Gmail, и коллаборативные редакторы на манер Google Docs, и календари с планировщиками, и заметки, и майндмапы и прочие майндфаки.
При этом ownCloud — штука далеко не новая, в «Хакере» о нем писали еще в 2014 году. Nextcloud посвежее и развивается активнее: первый релиз состоялся в 2016 году, а текущая версия на момент написания этой статьи — двадцатая.
Пристально изучив оба, я обнаружил, что Nextcloud вполне можно назвать младшим братом ownCloud, причем родным, а не двоюродным. Сходства видны на каждом шагу, включая даже некоторые элементы интерфейса и названия файлов. Такое ощущение, будто создатели Nextcloud не долго думая просто стянули весь код предшественника и принялись модернизировать его.
Обе компании находятся в Германии, так что история могла быть более запутанной и повествовать о расколе среди сотрудников ownCloud. Но нам об этом ничего не известно, так что просто возьмем Nextcloud, как более модный, и приступим к установке.
Установка
Детально раскатывание Nextcloud на своем сервере описано в документации, так что повторять ее мы не будем и только пробежимся по основным пунктам — чтобы ты представлял себе масштабы работ и не пропустил важные шаги, если решишь повторить мой путь.
Вот что потребуется сделать в общих чертах.
-
Скачать и распаковать дистрибутив. Есть разные способы установки, включая пакеты для популярных дистрибутивов Linux и контейнер Docker, но то, как именно ты заполучишь Nextcloud на свой сервер, не так уж важно (по крайней мере, до первого обновления). Я выбрал самый топорный метод — просто скачал архив и распаковал его в папку
/
. Важно: права на файлы нужно передать пользователю www-data (var/ www/ chown
).-R www-data nextcloud - Убедиться, что в системе есть PHP и все нужные зависимости. Их достаточно много, чтобы завести какой‑нибудь Composer, но я просто поставил пакеты для нужной версии PHP из репозитория Ubuntu.
- Установить MySQL или другую поддерживаемую СУБД и по инструкции завести в базе пользователя с нужными правами. Настройку самой СУБД пока можно пропустить, но, если Nextcloud у тебя приживется надолго, стоит потом вернуться к этому.
- Установить и настроить веб‑сервер. Это может быть Apache или nginx — для обоих есть примеры конфигов, причем в случае с nginx, который выбрал я, — крайне подробные. Тебе потребуется поправить название сервера, путь к папке и, возможно, версию php-fpm. Кстати, убедись, что у тебя установлены php-fpm и php-mysql (или драйвер той БД, которую ты используешь).
- Получить SSL-сертификат. И в данном случае это важно — без HTTPS не все заведется как положено. Бесплатный серт Let’s Encrypt вполне подойдет, а Certbot его выдаст и добавит в конфиг веб‑сервера буквально парой команд.
Когда все будет готово, не спеши перезапускать сервер! Как только ты это сделаешь, Nextcloud начнет на весь мир показывать установщик, которым, по идее, может воспользоваться кто угодно и станет админом твоего облака вместо тебя 🙂 Чтобы избежать этого, можешь либо завершить процесс установки через командную строку, либо настроить веб‑сервер таким образом, чтобы он не пускал кого попало. Тебя выручит авторизация (директива auth_basic
) либо белый список, в который будет входить только твой IP (директивы allow <
и deny
).
В любом случае для работы с Nextcloud тебе понадобится задать логин и пароль для админской учетки, а также указать базу данных и креды ее пользователя, которого ты создавал. В общем, если ты когда‑нибудь устанавливал WordPress или phpBB, то ты точно справишься.
Интерфейс и приложения
После долгих приключений в темном подземелье консоли мы выбираемся на поверхность, к цивилизации. На первый взгляд все очень модно.
Дашборд!
Файловый менеджер с картиночками!
Журнал изменений!
Магазин приложений!
Точнее, подобие магазина, потому что денег здесь не берут, все только даром.
Поскольку в первую очередь разработчики заменяли Dropbox, с шейрингом файлов здесь все в порядке: можно получить внутреннюю ссылку, поделиться с другим пользователем или сделать публично доступный URL. В последнем случае по ссылке будет открываться предпросмотр, но если дописать в конец /
, то и сам файл.
Еще можно назначить пароль и указать время, по истечении которого ссылка работать перестанет.
Но внимание, конечно, сразу перетягивает на себя магазин приложений. Всего аппликух ни много ни мало — 281 штука. Здесь есть всякие просмотрщики (например, для снимков в RAW, книжек в ePub, треков в GPX), музыкальные плееры, галереи для просмотра и публикации картинок, несколько видов таск‑трекеров и заметок, менеджер паролей и тому подобные вещи.
Вот, к примеру, отличный редактор диаграмм на основе исходных кодов Draw.io, о котором я когда‑то писал в рубрике WWW. Он устанавливается буквально одной кнопкой, после этого можно создавать, открывать и редактировать файлы с диаграммами.
Не стоит, впрочем, ждать, что все приложения будут ставиться одной кнопкой и идеально работать, наделяя Nextcloud новой восхитительной возможностью. Приложухи здесь очень разные — как по качеству, так и по требованиям.
Например, бывает нужно что‑то дополнительно вручную устанавливать на сервер, а приложение Nextcloud служит только фронтендом. Так, нельзя просто взять и в один клик поставить коллаборативный редактор документов Collabora — нужен соответствующий сервер.
То же и с почтой. Программа с незатейливым названием Mail — это лишь клиентская часть, и если ты хочешь не только развернуть свой вебовый почтовик, но и не зависеть от сторонних сервисов POP3/SMTP/IMAP, то устанавливать, настраивать и поддерживать сервер придется самостоятельно. Разработчики рекомендуют использовать Mail-in-a-Box — как наиболее простой в установке.
Случается и так, что приложения требуют, например, определенной версии PHP или самого Nextcloud. В общем, забыть о том, что ты теперь сам себе админ, не выйдет.
Торренты и youtube-dl
Вряд ли сегодня кого‑то удивишь торрент‑клиентом с вебовым интерфейсом, но приятно, когда скачанными файлами легко управлять. Что касается youtube-dl — знаменитой программы для стягивания видео с YouTube и множества других сервисов (включая Twitter, TikTok и даже Pornhub), то у него и вовсе нет своего графического интерфейса. Так что иметь возможность открыть в браузере страничку, вбить туда URL и заполучить файл — идея неплохая, особенно если речь об использовании с мобильного устройства.
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»