The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

23.04.2015 13:44  Выпуск открытой P2P-системы синхронизации файлов Syncthing 0.11

Доступен значительный релиз системы синхронизации файлов Syncthing, решающей задачи, сходные с проприетарной системой BitTorrent Sync. Syncthing позволяет организовать автоматическую синхронизацию файлов пользователя на нескольких устройствах. Синхронизированные данные не загружаются на транзитные облачные хранилища, а напрямую реплицируются между системами пользователя при их одновременном появлении в online.

Для обмена данными применяется развиваемый проектом протокол BEP (Block Exchange Protocol), который находится в активном развитии и после стабилизации позволит создавать сторонние реализации систем синхронизации данных, совместимые с Syncthing. При синхронизации файл логически разбивается на блоки, которые являются неделимой частью при передаче данных между системами пользователя. При наличии идентичных блоков на нескольких устройствах, при синхронизации на новое устройство копирование осуществляется с распределением отдачи трафика по узлам, по аналогии с работой системы BitTorrent. Чем больше устройств участвуют в синхронизации, тем быстрее будет проходить репликация новых данных за счёт распараллеливания. Возможно создание больших сетей совместно используемых данных, в которых принимают участие разные пользователи. Предоставляются гибкие средства контроля доступа и создания исключений для синхронизации.

Синхронизируется содержимое файлов, время модификации и, в зависимости от операционной системы, права доступа и символические ссылки. Не переносятся между системами информация о владельце/группе, специализированные файлы (fifo, сокеты), расширенные атрибуты и ACL. Такие операции как переименование или изменение прав доступа синхронизируются на уровне обновления метаданных, без необходимости повторной передачи содержимого. Похожим способом синхронизируются изменения файлов - по сети передаются только изменившиеся блоки данных. Каналы передачи данных формируются при помощи TLS, все узлы аутентифицируют друг друга по сертификатам и идентификаторам устройств, для контроля целостности применяется SHA-256. Для определения узлов синхронизации в локальной сети может быть использован протокол UPnP, при котором не требуется ручной ввод IP-адресов синхронизируемых устройств.

В версии 0.11 добавлены средства для выявления и устранения конфликтов синхронизации, например, когда файл был изменён одновременно на двух устройствах. Ранее, частичным решением проблемы с конфликтами было включение режима версионирования, при котором ведётся сохранение изменений и предоставляется возможность отката состояния файла на определённый момент времени. Теперь в случае конфликта, активным остаётся более новый файл, а другой сохраняется под именем "file.sync-conflict-YYYMMDD-HHMMSS.ext".

В новом выпуске также реализованы многочисленные оптимизации, например, вместо периодического опроса сервера, графический интерфейс теперь в push-режиме принимает обновления состояния со стороны сервера. Изменены настройки сборщика мусора для снижения нагрузки на CPU во время синхронизации больших файлов. Проведена оптимизация синхронизации большого числа мелких файлов и сканирования содержимого больших файлов. Из-за изменения формата БД ветка Syncthing 0.11.x не является совместимой с ранее установленными выпусками Syncthing 0.10.x, поэтому требуется явное ручное инициирование обновления или выполнение команды "syncthing -upgrade". При первом запуске новой версии БД будет перестроена.

Код Syncthing написан на языке Go и распространяется под свободной лицензией MPL. Поддерживается работа в Linux, Android, Windows, OS X, FreeBSD и Solaris. Для настройки системы и мониторинга предусмотрен встроенный web-интерфейс, CLI-клиент и GUI Syncthing-GTK, в котором дополнительно предоставляются средства управления узлами синхронизации и репозиториями. Для упрощения поиска узлов Syncthing развивается сервер координации обнаружения узлов, для которого также имеется готовый образ для запуска в Docker.



  1. Главная ссылка к новости (https://forum.syncthing.net/t/...)
Лицензия: CC-BY
Тип: Программы
Ключевые слова: syncthing, sync
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, Аноним (-), 14:13, 23/04/2015 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    Пока inotify и обход nat не запилят штука абсолютно бесполезная.
     
     
  • 2.3, Xasd (ok), 14:21, 23/04/2015 [^] [ответить]     [к модератору]
  • +/
    если в этой штуке нет IPv6 -- то она действительно бесполезна а если есть -- то... весь текст скрыт [показать]
     
     
  • 3.6, Мимопроходил (?), 14:39, 23/04/2015 [^] [ответить]    [к модератору]  
  • +/
    ipv6 есть. Насколько хорошо работает не знаю.
     
  • 3.15, Аноним (-), 14:59, 23/04/2015 [^] [ответить]    [к модератору]  
  • +/
    > он либо native либо Miredo либо тунель --

    А для miredo/teredo остались живые серваки?

     
     
  • 4.28, Xasd (ok), 16:14, 23/04/2015 [^] [ответить]    [к модератору]  
  • +/
    ServerAddress 83.170.6.76
     
     
  • 5.34, Аноним (-), 17:46, 24/04/2015 [^] [ответить]    [к модератору]  
  • +/
    А это кто такой и за что ему так? :)
     
  • 4.44, Аноним (-), 14:12, 29/04/2015 [^] [ответить]    [к модератору]  
  • +/
    teredo.trex.fi
    teredo.remlab.net
     
  • 3.20, Аноним (-), 15:28, 23/04/2015 [^] [ответить]    [к модератору]  
  • –2 +/
    вот мне делать больше нефига, дополнительную хрень ставить, разрабатывать нужно обход несимметричного NAT, благо не шибко сложная штука но судя по разрабам они это не осилят.
     
  • 3.43, Аноним (-), 09:48, 28/04/2015 [^] [ответить]    [к модератору]  
  • +/
    ipv6 не нужен
     
  • 2.21, Аноним (-), 15:32, 23/04/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    Полагаться на inotify при синхронизации - сразу эту синхронизацию угробить Слиш... весь текст скрыт [показать]
     
  • 1.2, Аноним (-), 14:15, 23/04/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • –5 +/
    syncthing-gtk на гводо бейсике, мда уж лучше веб интерфейс пилить помогли.
     
     
  • 2.4, Xasd (ok), 14:23, 23/04/2015 [^] [ответить]     [к модератору]  
  • +2 +/
    с кучей дыр, типа Clickjacking, CSRF, XSS которые будут там десятилетиями нах... весь текст скрыт [показать]
     
     
  • 3.5, ГеккоШтат (?), 14:37, 23/04/2015 [^] [ответить]    [к модератору]  
  • +1 +/
    Используй ВПН, Люк.
     
     
  • 4.8, Xasd (ok), 14:44, 23/04/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    почитай станачало как эти дыры эксплуатируются злоумышленник должен подсунуть ... весь текст скрыт [показать]
     
     
  • 5.13, Аноним (-), 14:56, 23/04/2015 [^] [ответить]     [к модератору]  
  • +2 +/
    1 Жать на ссылки не обязательно, js это и без тебя может сделать 2 Но есть та... весь текст скрыт [показать]
     
  • 4.9, Аноним (-), 14:45, 23/04/2015 [^] [ответить]    [к модератору]  
  • +3 +/
    впн до локалхоста, чтобы не спёрли его вебгуй?
     
  • 3.7, Аноним (-), 14:44, 23/04/2015 [^] [ответить]    [к модератору]  
  • +/
    А зачем веб-интерфейс торрент-клиента выставлять на публику? Разреши доступ для 127.0.0.1, и всё.
     
     
  • 4.10, Xasd (ok), 14:47, 23/04/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    в этом-то вся и проблема -- 127 0 0 1 -- не спасает от CSRF и от Clickjacking ... весь текст скрыт [показать]
     
     
  • 5.12, Аноним (-), 14:53, 23/04/2015 [^] [ответить]    [к модератору]  
  • +/
    > а на Linux.Org.Ru -- до сих пор не поправили (тема про удаление
    > аватарок, злоумышленником --уже создавалась на linux.org.ru )

    Это не баг, это фича :)

     
  • 5.14, Аноним (-), 14:57, 23/04/2015 [^] [ответить]    [к модератору]  
  • +2 +/
    > в этом-то вся и проблема -- 127.0.0.1 -- не спасает от CSRF
    > и от Clickjacking. :-)

    От них NoScript в фоксе и ему подобных спасает.

     
     
  • 6.32, Xasd (ok), 21:01, 23/04/2015 [^] [ответить]     [к модератору]  
  • +/
    сделай одолжение найди мне версию NoScript в которой бы вместо чёртовой-к... весь текст скрыт [показать]
     
     
  • 7.36, Аноним (-), 12:00, 25/04/2015 [^] [ответить]     [к модератору]  
  • +1 +/
    Зачем У тебя и так все зашибись Но если ты не хочешь разбираться - аватары буд... весь текст скрыт [показать]
     
  • 5.16, Аноним (-), 15:00, 23/04/2015 [^] [ответить]    [к модератору]  
  • –1 +/
    Эм, CSRF и Clickjacking по умолчанию предполагает что злоумышленнику известен URI атакуемого, ну поменяй ты порт на другой к веб кую или ип адрес и все, хватит уже балаболи специалист.
     
     
  • 6.17, Xasd (ok), 15:14, 23/04/2015 [^] [ответить]    [к модератору]  
  • +3 +/
    > ну поменяй ты порт на другой

    ну ты не делай детские ошибки при изготовлении web-ui ..

    > хватит уже балаболи специалист.

    вот диалог:

    1. я всего лишь написал о том что в web-ui -- дыры.

    2. мне предложили использовать 127.0.0.1

    3. я объяснил что это не спасает.

    4. теперь ты мне предлагаешь заменять какие-то номера портов или\и делать другие мутные настройки...

    блин, люди -- откуды вы берётесь вообще(?) -- ЕСЛИ ЕСТЬ ДЫРА ТО ЕЁ НАДО ИСПАВЛЯТЬ (или лучше не допускать), а не придумывать какие-то левые способы запутать злоумышленника, или обзывать меня "специалистом"..

    с фигали ты *меня* "специалистом" (саркастично) обозвал -- если дыру допустил НЕ Я а тот кто делал web-ui ?

    я всего лишь указал на эту дыру -- для этого не нужно быть "специалистом".

    > злоумышленнику известен URI атакуемого

    учитывая что злоумышленником может быть человек за моей спиной (иногда сидящий около меня на 2 метра.. но не ближе чем 2 метра, то есть не имеет физического доступа до моего компа) -- то наверняка он знает какой URI ..

     
  • 5.18, Аноним (-), 15:19, 23/04/2015 [^] [ответить]     [к модератору]  
  • +/
    Зато RequestPolicy http requestpolicycontinued github io спасает Вот именн... весь текст скрыт [показать]
     
     
  • 6.23, Xasd (ok), 15:39, 23/04/2015 [^] [ответить]    [к модератору]  
  • +/
    звучит интересно :)
     
  • 3.19, Аноним (-), 15:24, 23/04/2015 [^] [ответить]     [к модератору]  
  • +/
    Clickjacking вообще не про это, это обман юзера чтоб он кликнул XSS - недостато... весь текст скрыт [показать]
     
     
  • 4.25, Xasd (ok), 15:44, 23/04/2015 [^] [ответить]    [к модератору]  
  • +/
    > очень легко защитить он нее

    ясное дело что легко..

    но для этого об этом должен знать разработчик webapp .. а они довольно часто почему-то не знают (хотя вроде бы всё элементарно).

    > Clickjacking вообще не про это, это обман юзера чтоб он кликнул.

    когда юзер кликнет -- то щёлкнет например на "удалить" на авторизованном webapp .... это может иметь несущественные последствия, а может иметь и существенные. кто знает.

    нажимать на "удалить" -- пользователь совсем не хотел, и если злоумышленник заставил сделать это против воли пользователя -- то это дыра и не как иначе.

    и тоже исправляется элементарно (http-header-для-CSP или использовать Framekiller) .. но точно также -- об этом должен знать разработчик (если он не знает -- то кто будет исправлять?).

     
  • 2.27, Fidel Castro (?), 16:11, 23/04/2015 [^] [ответить]    [к модератору]  
  • +/
    Можно по старинке конф файл править.
     
  • 1.11, Аноним (-), 14:52, 23/04/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    131 мег на скрине? Для всего лишь синхры файлов?

    Фигасе, этот их thing память жpeт как половина моего DE.

     
     
  • 2.35, Аноним (-), 03:55, 25/04/2015 [^] [ответить]    [к модератору]  
  • +/
    У моего awesome 120mb :)
     
  • 1.22, Аноним (-), 15:38, 23/04/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Отличная вещь этот (уже) наш Syncthing!
     
  • 1.24, KOT040188 (?), 15:44, 23/04/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Добавление папок для синхронизации по прежнему мозговыносящее? После BitTorrent Sync это полная жесть…
     
     
  • 2.29, Аноним (-), 16:41, 23/04/2015 [^] [ответить]     [к модератору]  
  • +/
    После недавней уязвимости в BitTorrent Sync, дающей выполнить код на другом комп... весь текст скрыт [показать]
     
     
  • 3.31, KOT040188 (?), 18:55, 23/04/2015 [^] [ответить]    [к модератору]  
  • +/
    А кто его выполнять будет в локальной сети? Мне мой мозг дороже…
     
  • 1.30, t28 (?), 17:47, 23/04/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    > Код Syncthing  написан на языке Go

    Спасибо.

     
  • 1.33, Аноним (-), 11:57, 24/04/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Ну что Go прочно входит в нашу жизнь. Обратите внимание, что уже не Python стандарт для написания подобного барахлишка.

    Пора брать книжки и учебники и изучать новый языкю.

     
     
  • 2.42, Аноним (-), 20:31, 26/04/2015 [^] [ответить]    [к модератору]  
  • +/
    > Пора брать книжки и учебники и изучать новый языкю.

    Какая разница, на чем написана никому не нужная поделка?

     
  • 1.37, Crazy Alex (ok), 12:04, 26/04/2015 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    А кто знает - есть ли подобные штуки, которые синхронизировали в несколько облаков параллельно? Только не веб-сервисы - я ещё не совсем спятил, чтобы учетки от аккаунтов давать какой-то сторонней хрени. Сами синхронизируемые данные-то, понятно, шифруются.
     
     
  • 2.41, Аноним (-), 18:14, 26/04/2015 [^] [ответить]     [к модератору]  
  • +/
    Чем оно тебе поможет ... весь текст скрыт [показать]
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor