`

СПЕЦІАЛЬНІ
ПАРТНЕРИ
ПРОЕКТУ

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Александр Москалюк

Сам себе Dropbox

+44
голоса

Через анонс на Hacker News нашел относительно простую в обращении утилитку Syncthing, которая позволяет воссоздать базовую функциональность Dropbox – синхронизацию конкретной папки на своем сервере со своими ключами для шифрования.

Код (на языке Go) лежит в открытом доступе на GitHub, клиенты для каждой из операционных систем доступны там же. После установки syncthing каждый из хостов получает уникальный ключ, двухсторонний обмен которыми и создает канал для синхронизации папки. Под Windows это по умолчанию C:\users\<current_user>\Sync, под линуксом это ~/Sync.

Для VPS я использую Digital Ocean (512 МБ оперативки, 20 ГБ дискового пространства, терабайт траффика за $5 в месяц), из дешевых еще есть Atlantic.net или Ubiquity, под сервер можно приспособить и домашний компьютер с большим жестким диском, если он всегда находится в онлайне.

Интерфейс для обмена ключами пока существует только в Web-версии, которая запускается сугубо локально, поэтому на VPS-сервере придется (и в документации этот момент не очень подробно описан)

  • разархивировать нужную версию syncthing в отдельную папку (пакетов для apt-get или yum у них еще нет)
  • запустить linux-клиент, чтобы дать ему возможность создать конфигурационный файл
  • в конфигурационном файле по адресу ~/.config/syncthing/config.xml найти строку <address>127.0.0.1:8080</address> и временно заменить ее на <address>:8080</address>
  • открыть порт 8080 через /sbin/iptables, если доступ к нему закрыт
  • перезапустить клиент ./syncthing дабы тот считал новые конфигурационные данные
  • добавить нужные ключи на обоих клиентах, между которыми требуется синхронизация, по адресу http://123.456.789.012:8080, где 123.456.789.012 – IP сервера
  • конфигурационный файл ~/.config/syncthing/config.xml вернуть в изначальное положение, порт 8080 при необходимости снова закрыть от внешнего доступа
  • перезапустить клиент ./syncthing дабы тот считал новые конфигурационные данные

[VE4LG] 2014/05/13 05:59:05 INFO: syncthing v0.8.5 (go1.2.2 linux-amd64) jb@jborg-mbp 2014-05-11T18:46:09Z
[VE4LG] 2014/05/13 05:59:05 INFO: My ID: VE4LGU2XU QQQQQQQQQQQ WWWWWWWW EEEEEEEEE RRRRRRRRRRRR TTTTTTTTTTT YYYYYYYYY
[VE4LG] 2014/05/13 05:59:05 INFO: Starting web GUI on http://127.0.0.1:8080/ [VE4LG] 2014/05/13 05:59:05 INFO: Populating repository index
[VE4LG] 2014/05/13 05:59:08 INFO: No UPnP IGD device found, no port mapping created (read udp4 0.0.0.0:41696: i/o timeout)
[VE4LG] 2014/05/13 05:59:08 INFO: Sending local discovery announcements
[VE4LG] 2014/05/13 05:59:08 INFO: Sending global discovery announcements
[VE4LG] 2014/05/13 05:59:08 OK: Ready to synchronize default (read-write)

Статус канала для синхронизации можно всегда проверить в Web-интерфейсе на локальной машине по адресу http://127.0.0.1:8080

Сам себе Dropbox

Сам себе Dropbox

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

+44
голоса

Напечатать Отправить другу

Читайте также

Прикольно. Спасибо. Недавно Зубинский в своем блоге bittorrent sync советовал для тех же целей.

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT