Pull to refresh

Comments 41

Возможно стоило бы поменять apache на nginx и отказаться от самоподписного сертификата в пользу бесплатного Let’s Encrypt, но, видимо, не в этот раз.

Обязательно используйте nginx. А Let’s Encrypt уже выдает wildcard сертификаты.
отказаться от самоподписного сертификата в пользу бесплатного Let’s Encrypt, но, видимо, не в этот раз.

Если бы я делал домашний сервер, вот как раз этого я бы не стал делать ни в коем случае. А сделал бы именно самоподписанный сертификат и certificate pinning в каком-то виде на клиентах.

А можно поподробнее — почему не Let's Encrypt?

Потому что нет смысла, у Let's Encrypt другая цель. Сертификат с публичным доверием вам нужен, если вы собираетесь пускать на свой ресурс круг лиц, которых вы никак не контролируете. И идеология Let's Encrypt (частая смена сертификатов) плохо сочетается с certificate pinning (когда клиент жестко привязывается к сертификату сервера, и при любой смене последнего выдает предупреждение), а второе — в случае домашнего сервера "для своих", на мой взгляд, куда более надежная мера защиты, чем то, что пропагандирует Let's Encrypt.

Так и доменное имя не нужно потому что за него платить и его могут отозвать / увести.

Одно из удобств NC, это раздать файл кому-то. Не надо ничего никуда закачивать, просто дал ссылку и все, она еще и удалиться сама через указанное время. В таком случае самоподписанный сертификат не удобен, т.к. вызывает лишние вопросы, особенно если на «той» стороне не слишком разбирающийся в вопросе пользователь.

По-моему, предельно ясно, что всё зависит от сценария использования. Делаете публичный сервис — нужно зарегистрированное доменное имя, сертификат от публичного УЦ, и т.п. Делаете чисто для себя и близких — всё это нафиг не нужно и может быть даже вредно.

а почему не owncloud? Интересны преимущества.

Nextcloud является форком Owncloud, разработку которого ведёт та же команда и тот же автор, что начал оригинальный проект. К нынешнему Owncloud они никакого отношения уже не имеют.

но тем не менее, какова причина выбрать форк?

Я лично его выбрал потому, что Nextcloud продолжают активно развивать те же люди, которые изначально придумали и запилили Owncloud. Всё, что сейчас делает Owncloud GmbH — отпиливает «премиум-функционал» community edition, и навязывает платный саппорт и хостинг этого облака на каких-то своих серваках где-то там.
Все верно, моя мотивация, когда озадачился выбором, именно поэтому склонилась к NC.
Там примерно та же история, что и с eGroupware:
1. была дружная команда, пилили чистый opensource долгими зимними вечерами
2. потом решили, что колпашить саппортом 24/7 бесплатно как-то некузяво — и запилили типа «VIP-доступ»: «за дегни — любой каприз». Заметим: opensource — основное, все причуды — за дегни (это — нормально)
3. деньги пошли, начальству понравилось — и возник вопрос…
4. и commerce превратилось в основное, а opensource — по остаточному принципу
5. ну и пацаны разругались (там тоже свой Столман есть)
Итого: местный столман форкнул egroupware, переобозвал, накинул ништяков — и продает VIP-доступ кому нужно (схема примерно как RedHead).
Ну и использует преимущества opensource по-полной (бесплатное тестирование, например)
Короче — «всё сложно» (tm)
Ну, справедливости ради, RedHat не отдаёт готовые образа RHEL даже под freeware, позволяя по лицензии лишь 14-дневный триал. Да, никто не спорит, образ качается без проблем, потом к нему винтятся EPEL и что-нибудь там ещё, и все живут долго и счастливо — но вопрос формального нарушения лицензии остаётся.

То, что есть CentOS — оставим за рамками, это предмет отдельной дискуссии.
Ох уж эти новомодные облачные self-hosted стораджи с интерфейсом и блекджеком вокруг этого…

Вот бы кто запили тулзу которая синхронизировало бы указанные мной папки в какой нить S3 или OpenStack Swift. И что бы на удаленном сторадже держало непременно шифрованную версию. Есть такие представители как rclone и syncany, но они как-то не про фоновый режим. Точнее первый не про фоновый режим, а второй заброшен.

А свистопляски с крутым web-gui… нафига она мне. Если это для энтерпрайза разных уровней, то там их стошнит от одного упоминания PHP на бекенде. А если для домашней синхронизации личных файликов, то web-gui нафиг мне не нужен.
А чем плох rclone (если хочется шифрование) или вообще s3 sync (если без шифрования) + cron?
тем что я хочу «типа дропбокс». что бы изменил файлик и он отправляется в облако. а не ждать когда выполниться cron-task
Ну ок, Fswatch для получения изменений + rclone. Обернуть в маленький демон на любом знакомом (или не очень) языке и все. Делов меньше чем на день.
rclone — имеет возможность работы на винде, fswatch исключительно линуксовая приблуда.
но в целом спасибо. попробую
Я конечно извиняюсь, но зачем там вообще GUI и особенно сборка чего-то из исходников?
Я насколько понял, вы там какой-то файловый менеджер собираете? Он чем так особенно хорош, что нужен именно он?
Для вашей связки, по моему мнению, имеет смысл взять минимальную сборку debian, netboot вроде называется и поставить ее без GUI. Из физической консоли надо только поставить sshd и mc. А дальше уже ставить пакеты подключившись по ssh. Это же банально удобнее, чем за клавиатурой «сервера» сидеть.
Ну и как и многие, я бы предложил nginx. Ставится все из пакетов. Примеров конфига полно.
Да, всё верно. Этот вопрос неоднократно поднимался в комментах к первой части)

Основная задача моей писанины — показать тем, кто впервые с Linux, что им можно удобно и привычно пользоваться как и Windows и при этом ещё и решить вполне себе практичную задачу. GUI линукса дорос до этого — это уже совсем не то, что было 15 лет назад. С момента публикаций прошлых статей мне три человека написали, что по этим мануалам сделали себе сервис вообще ранее про Linux только читая. По моему — это круто. Это значит я столько времени писал получается всё же не зря. Нечего новичка сразу садить на голый терминал и говорить как это всё круто — ввод должен быть плавным и понятным. А сделать «по нормальному» чисто утилитарный веб-сервер — это поставить ОС без графики и далее настраивать по мануалам, старательно пропуская всю графическую часть. Но это моё, чисто субьективное представление о том, что человеку, который связывается с линук очень редко проще создать каталог или символьную ссылку через удобный графический интерфейс, а не вспоминать через гугл, что надо вводить ln -s и чего-то там дальше.

По поводу файлового менеджера — это больше религиозный вопрос) Я без тотала в виндовс не представляю как работать) Наиболее приближенный к нему в линукс, из того, что я перебрал в своё время, — это дабл коммандер. Там даже по плагинам совместимость некоторая есть. И за эти три года этот софт хорошо эволюционировал.
«По поводу файлового менеджера — это больше религиозный вопрос)»
Это не религиозный, а очень технический вопрос.
В Windows хорошо — там только Проводник и подвязанные на него через WinAPI virtual FS (and nothing else).
В Linux всё намного хуже (демократия в действии):
* mc — своя пачка костылей
* Gnome — gnome_vfs (или как его там) с подлежащими
* KDE — kio_*
* xfse, lxde и иже — gvfs_*
* icewm — «пилите, Шура»
* тысячи их
То есть, разработчикам файлового менеджера приходится поддерживать совместимость? Но они же не работают с самой ФС — наверняка на уровне какой-то абстракции? Просто насколько это сложно я не могу себе представить.
«Я тебе скажу один вещь — только ты не обижайся...» © к/ф «Мимино»:
* на сегодня не существует единого механизма подключать «просто так» любые ресурсы (hdd/sdd/usb storage/ftp/ssh/webdav/иное") к любым ОС (Windows/MacOS/iOS/Android/Linux/иное).
* разработчики корячатся, как могут. Особенно когда Microsoft воспринимает и реализует стандарт WebDAV по-своему — это реально бесит.
* на уровне абстракций — это FUSE, но там для пользователя сильно не PnP. Ну и тормоза дикие.
1. «Я конечно извиняюсь, но зачем там вообще GUI и особенно сборка чего-то из исходников?»
Скорее всего человек не очень гуру в линухе, поэтому «не стреляйте в пианиста — играет как может».
Одно то, что он транслирует свои первые впечатления — очень дорого стоит.
Те, кто родился с линухом на борту, знают: ОС — отдельно, графика — отдельно. В Windows GUI встроено в ядро, и это накладывает свой отпечаток на восприятие ОС.
Не стреляйте в пианиста.
2. По тексту он ничего не собирал («make install» not detected)
3. насчет nginx: оно, конечно, турбо — но периодически валится. Заваленный апач я вижу на два порядка реже. Но это — дело вкуса, конечно.
Верно, не гуру. Но дело даже не в этом, а в целевой задаче. 7 лет назад, ещё на хабре, я написал свою первую статью на ресурсе, которая была посвящена настройке FTP-сервера. И там, да — там была одна консоль и народ сказал, что статья отличная. А ведь это был реально как-то первый опыт — я ж вообще ничего не знал и мало что понимал. Сейчас задача совсем иная — получить окружение на которое можно перелезть с винды. А веб-сервер и NC это просто как дополнительные плюшки «а вот что ещу можно сделать», за что я и получаю критику. Ведь стоит изменить название и всё встанет на свои места, но оно написалось уж как написалось.
«Сейчас задача совсем иная — получить окружение на которое можно перелезть с винды»
Это очень сложно.
Вы хотите из любого приложения любого Linux открыть любой файл на любом ресурсе.
На сегодня это не реально.
I'm sorry

PS. вишенка на торте: линух хотя бы пытается это сделать; Microsoft и Apple — нет.

По пункту 3: у меня обратный опыт. Особенно когда апача внезапно переполняется беклог (по различным причинам). Правда, я использую только стабильные версии nginx и настраиваю сетевой стек. От того предлагаю данный пункт считать религиозными и из обсуждения убрать )

«Наверное, вы все заметили, что со стилем текста к концу статьи стал какой-то непорядок.»

\var\www\nextcloud\lib\private\Files\Filesystem.php
/var/www/nextcloud/lib/private/Files/Filesystem.php

Не понял…
Ну, это мой косячёк, но проблема была масштабнее. Надо было скриншотить)
Штука заключаласьв том, что если код фильтра nextcloud.conf был обрамлён в теги «code», то этот стиль почему-то применялся до конца статьи. Сейчас уже нормально всё — за день починили)
Случайно восстановил косяк)
Оказывается глобально никто ничего не исправлял — всего скорее администрация втихаря (мне никто ничего не писал!) просто подправили проблемный кусок текста.
А ещё можно было всё это сделать в Docker. Получился бы файлик для Docker-compose, который можно было бы скопировать на любой сервер и запустить, и всё сразу само поднимается. И никаких конфигов.
Подробнее — в коммент не влезет. Ставите вместо всего
apt install docker.io docker-compose
, создаёте файл docker-compose.yml с конфигом, запускаете
docker-compose up -d
и всё — имеете фтп, прокси и почту. Параметр image гуглится, остальное берётся из справки к image. Сам всё скачает, запустит, и следить будет, чтобы не упало. И в файрволле дырочки просверлит.
AlexanderS
Не замечали проблем на мобильном клиенте?
У меня уже не в первый раз так происходит: меняю в вэбинтерфейсе пароль от пользователя, ввожу его же на телефоне в клиенте и клиент начинает жутко тупить, фото не синхронизируются, а делают вид, постоянно висит в трее плашка, что вход не осуществлён. В общем, одно расстройство :(
Я использую FolderSync, так как мне нужна только синхронизация в одну сторону, а родной клиент так не умеет. Поэтому у меня нет статистики по работе родного клиента. Но когда-то я его ставил и никаких проблем с авторизацией не возникало. Если только один момент — после создания пользователя лучше сначала войти под ним через веб-интерфейс, чтобы создались все нужные стартовые папки — в противном случае, припоминаю, у меня какие-то косяки были.
Да в том-то и дело, что уже некоторое время пользуюсь, и программами на телефоне, и вебинтерфейсом. Т.е все необходимые файлы/папки созданы.
Когда игрался ещё на Cubieboard+hdd этот глюк заметил, но тогда списал на глючность связки и медлительность одноплатника. Хотя, пароль пробовал даже из одной цифры и всё равно клиент на телефоне писал что неверно ввёл :(
Хм, когда вернусь из командировки могу попробовать мобильное приложение в связке с тем сервером, который я сам сделал. Чисто из интереса. У вас проблема именно с официальным клиентом, другой софт работает, синхронизирует?
другим софтом пока не пробовал
Всё нормально. Вот схема эксперимента:



Синхронизируются две папки — «Folder Sync 1» и «Folder Sync 2». «Folder Sync 2» находится на смартфоне с андроидом 6.0.1 и синхронизируется клиентом NC 3.1.0. Смартфон через Wi-Fi подключен к роутеру, к которому так же подключен ПК по Ethernet. Внутри ПК установлен десктопный клиент NC 2.3.3.1, который синхронизирует папку «Folder Sync 1». На ПК так же установлен софт виртуализации, который обеспечивает работу виртуального ПК, являющимся сервером Nextcloud 13.0.2. Сервер настроен в стоответствии с частями 2-4 моей писанины.

Необходимо заметить, что нужно разрешить сетевой доступ софту виртуализации и открыть вхоядщие по порту 443 в файрволе, а так же настроить проброс порта 443 через виртуальный маршрутизатор (см. вторую часть моей писанины). Так же если на смартфоне работает брандмауэр — надо разрешить сетевую активной для клиента Nextcloud.

Учётная запись для синхронизации была создана через веб-интерфейс и первая авторизация под ней была так же сделана через веб-интерфейс. Я успешно синхронизировал порядка пары гигабайт.
Кстати, есть одно замечание. Десктопный клиент при синхронизации закачивал и удалял файлы без проблем. А вот на телефоне мобильный клиент файлы исправно удалял при синхронизации, но не закачивал их. Если в папку «Folder Sync 1» положить файл, то этот файл в течении десятка секунд «улетит» на сервер, после чего синхронизируется с мобильным клиентом, однако в папке «Folder Sync 2» появится только ссылка на файл, но закачается он только если по нему тапнуть. Я так понял это фишка только мобильного клиента и у него действительно пока нет автозагрузки, что как-то не радует — хотелось бы иметь у себя полную копию и не зависеть от инета.
Sign up to leave a comment.

Articles