UPD от 23 февраля 2015. Проверено - успешно встаёт в джейл на текущем nas4free 1349, TheBrig 0.8. Устанавливал текущий owncloud 8.0.0 По сравнению с предыдущей редакцией внесены заметные изменения. /UPD
UPD от 30 августа 2015. Проверено - успешно встаёт в джейл на текущем nas4free 10.2.0.2.1810, Устанавливал текущий owncloud 8.1.1 По сравнению с предыдущей редакцией внесены изменения. /UPD
Предисловие. Источником послужила ветка на форуме nas4free. Низкий поклон fsbruva за скрипт для установки. Старую версию скрипта можно скачать из командной строки fetch -oowncloud_injail.sh "http://forums.nas4free.org/download/file.php?id=1198"
Только, к сожалению, написан он так, что если что-то пошло неправильно, надо начинать чуть не с пересоздания джейла. А возможностей сделать неправильно - море, мне лично без ошибки не удалось ни разу, вы - можете попытаться. Поэтому для криворуких типа себя я разбил скрипт на 4 части и их чуть-чуть обработал напильником. Кроме того, для текущей версии понадобилась заменить pkg_add на pkg install и добавить кое-что. Скрипт лежит на моём Яндекс Диске.
tar надо скачать и, после создания джейла owncloud, надо (например - через ftp) загрузить на NAS в /mnt/Pool/Ext/Jails/owncloud/tmp
(заменить на путь из хоста к папке tmp вашего owncloud).
На выбор, другой вариант, вместо ftp - положить tar куда-то на NAS и скопировать в целевую папку, командой
nas4free ~/ root~$ cp -a /mnt/Pool/Media/111/ow_scripts.tar /mnt/Pool/Ext/Jails/owncloud/tmp/
или комплектным файловым менеджером.
Создаём джейл owncloud. NB Я настоятельно советую создать под джейл отдельный датасет owncloud Disks|ZFS|Datasets|Dataset, плюсик снизу и ставить в него. У меня датасет Ext/Jails/owncloud, то есть виден как отдельная подпапка в папке где лежат джейлы.
Запоминаем IP джейла, мои скрипты настроены на 192.168.1.55 Если у вас другой IP редактируйте вначале каждый из них (кроме первого).
Там же указан номер версии owncloud. У меня свежий на сегодня 8.0.0, если не подойдёт - ставьте свой. Речь идёт о параметрах
server_ip="192.168.1.55"
owncloud_version="8.0.0"
ПРИМ Для версии 8.1.1_1 пришлось грузить 8.1.1
Чуть ниже мы проверим какой owncloud предлагается в данный момент.
1) Заходим в джейл
jexec 5 tcsh
cd /tmp
системное приглашение у нас изменилось, было что-то вроде nas4free ~/ root~$, стало
root@owncloud:/tmp #
Качаем сюда ow_scripts.tar как описано выше.
2) разархивируем
tar -xf ow_scripts.tar
Даём скриптам права на исполнение (для единообразия, т.к. права должны уже быть)
cd ow_sh
chmod a+x ow*.sh
3) Ставим новый менеджер пакетов
root@owncloud:/ # pkg
на все вопросы - соглашаемся, жмём y
4) Проверим, какая на сегодня версия Owncloud в пакетах (но ставить ПОКА НЕ БУДЕМ)
root@owncloud:/ # pkg install owncloud
бла-бла
New packages to be INSTALLED:
owncloud: 8.0.0
бла-бла
Proceed with this action? [y/N]:
Запомнили 8.0.0, жмём N для отказа от установки - она чуть сложнее
5) Все скрипты ниже настроены на версию 8.0.0 Если версия сменилась - надо КАЖДЫЙ из скриптов отредактировать, заменив в начале файла
owncloud_version="8.0.0"
на то, что вам нужно. Там же можно заменить IP и порт, если они у вас другие.
для редактирования полезно установить редактор nano
root@owncloud:/ # pkg install nano
6) Устанавливаем пакеты
./ow1_inst.sh
Здесь всё должно скачаться и установиться. Я делал это много раз и не знаю уж почему, очень часто первая часть пакетов скачивается и ставится, а в конце идут сообщения Protocol error - и пакеты в конце списка не качаются. Судя по форуму - это не у одного меня.
Если у вас такое случится - обратите внимание в сообщениях какой пакет последний установился нормально, откройте скрипт
nano ow1_inst.sh
и закомментируйте (или удалите) строки для пакетов, которые успешно установлены. Затем перезапустите скрипт.
Переходить к следующему шагу - только после успешной установки
7) Конфигурирование базы данных mysql
Это самый сложный этап. Он связан с генерацией криптографических ключей. Перед началом придумайте пароль и парольную фразу, вам их придётся вводить. Очень советую также до запуска скрипта выбрать адрес электронной почты, к которой у вас будет доступ и URL, по которому вы будете ходить на owncloud извне. Если вы сконфигурировали DDNS как описывалось, то, что-то типа vasia_pupkin@no-ip.info
Скрипт удаляет тестовый доступ к mysql, генерирует через openssl ключи и сертификаты для доступа из интернет к вашему облаку.
Готовы?
./ow2_mysql.sh
На многие вопросы пойдет ответ по умолчанию путём нажатия Enter, там указано [Y/n]
Но там, где просят пароль и парольную фразу - их придётся ввести (и сохранить на всякий случай в надёжном месте. Пароль из ключа удалён и восстановить его не удастся. Если вы будете переставлять NAS и захотите сохранить ваши данные в личном облаке, пароль и парольная фраза могут понадобиться.)
Также придётся ввести для собственного же удобства параметры сертификата. Вы его сейчас будете подписывать и в ваших интересах дать ту информацию, которую вы узнаете, когда ваш сайт (или подменённый злым хакером ;) будет предъявлять вам сертификат.
Например
Country Name (2 letter code) [AU]:RU
State or Province Name (full name) [Some-State]:Moscow
Locality Name (eg, city) []:Kolomna
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Private
Organizational Unit Name (eg, section) []:.
Common Name (e.g. server FQDN or YOUR name) []:vasia_pupkin.no-ip.com
Email Address []:vasia_pupkin@gmail.com
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:.
В результате в /root будут созданы ключи и сертификаты. Важно. Сертификаты имеют срок годности, в нашем случае - год. Через год процедуру генерации сертификата придется повторить с теми же паролем и парольной фразой. Иначе будет ругаться каждый раз при доступе.
8) Конфигурируем веб сервер. Тут главное перед запуском скрипта не забыть установить верный IP, если 192.168.1.55 вам не подходит
./ow3_lighttpd.sh
Сильно советую после исполнения проверить синтаксис конфига
lighttpd -t -f /usr/local/etc/lighttpd/lighttpd.conf
Если всё хорошо - он напишет Syntax OK
Если вы более одного раза запускали скрипт - Syntax OK не получите. Посмотрите что делает скрипт и откатите изменения. Если не понимаете - вам проще убить джейл и сделать всё заново. Не расставайтесь, я раз 10 это сделал ;)
Если получилось - установка выходит на финишную прямую
9) Качаем и ставим owncloud
./ow4_owncloud.sh
В результате должен запуститься вебсервер. Если сообщений нет - проверяем работоспособность
10) Пишем в браузере
https://192.168.1.55:81
Если получите "Соединение было сброшено" - значит вместо https вы набрали http. Не пойдёт, пускаем к себе в облако только по защищённому протоколу.
Здесь вы должны видеть предупреждение системы безопасности о том, что сертификат предъявлен недостоверный, самоподписаный. Так как вы сами же этот сертификат и изготовили несколькими минутами раньше, стоит его принять. Напоминаю, сертификат не вечный, срок действия год. Через год снова ругаться будет.
Ну и, наконец, видим вебгуй owncloud.
Не обязательно, но желательно нажать на строку Хранилище и база данных и использовать наш MySQL, а не SQLite, который слабенький.
11) Войдём в нашу клетку (у вас будет не 2, а другой номер, см командрй оды)
Создадим папку Каталога с данными и дадим ему владельца www
<code>nas4free ~/ root~$ jexec 2 tcsh
owncloud / >mkdir /data_root
owncloud / >chown -R www /data_root
owncloud / >chmod -R 770 /data_root/</code>
12) Теперь возвращаемся к диалогу из п 10 - при настройке БД он выглядит так.
Имя администратора и пароль - придумываете сейчас. Причём пароль стоит выбирать стойкий, никаких Masha_13. Что-то длинное, с буквами, цифрами и спецсимволами, без словарных слов. Мы в сеть это собираемся вывалить... И как-то сохраните, я не разбирался как его восстанавливать.
Каталог с данными мы создали в п 11 - можете выбрать свой. Я туда собираюсь монтировать через fstab папки с хост системы.
Настройки базы данных - жмём кнопку MySQL/MariaDB
пользователь - root
пароль - который вы чуть раньше, в 7 пункте, задали. Обратите нимание, это НЕ root хост системы, это root базы данных. Так что не надо писать сюда root пароль от хоста - не примет.
Имя базы данных, думал я, любое -
Жмём завершить установку, и если всё ОК - попадаем в своё облако.
13) И видим интерфейс
На сегодня хватит.
Хорошая идея - снять снапшот с джейла, если вы что-то собираетесь с ним скерьёзно переделывать.
Нам осталось сделать так, чтобы к owncloud был доступ извне. И ещё я хотел прикрутить Fail2ban, но пока прикручиваю.
← Ctrl ← Alt
Ctrl → Alt →
← Ctrl ← Alt
Ctrl → Alt →