четверг, 1 июня 2017 г.

Синхронизация между локальными каталогами и каталогами другого компьютера по SSH в Linux, Ubuntu, Linux Mint. ПО Unison

Недавно возникла задача по синхронизации данных между каталогами (папками, но в Linux правильнее говорить не папки, а каталоги) двух компьютеров в ЛВС. Оба компьютера функционируют под управлением Linux и не используют Samba, отдав предпочтение SSH.

После поиска и чтения описаний предлагаемых вариантов было принято решение использовать ПО Unison. При принятии решения учитывались требования:
– способность ПО работать по SSH;
– минимальное погружение в синтаксис командной строки при настройке заданий;
– наличие графической оболочки;
– отсутствие автоматизации выполнения заданий не является критичным.


Unison – утилита для синхронизации файлов, написанная на языке OCaml. Она позволяет синхронизировать две копии файлов, на локальном компьютере или на двух разных хостах, обновляя каждую копию в зависимости от произведённых изменений.

Unison работает под Unix-подобными операционными системами и под Windows. Он также может работать с разными платформами одновременно, например, синхронизируя файлы между Windows-ноутбуком и Unix-сервером.
В отличие от простых утилит для создания зеркал и резервных копий, Unison умеет работать с изменениями в обеих копиях файлов. Неконфликтующие изменения могут вноситься автоматически, а конфликтующие определяются и отображаются для ручного разрешения.
Unison работает между любыми компьютерами, соединёнными между собой глобальной или локальной сетью, через сокет или зашифрованное соединение. Он приемлемо работает на медленных PPP-соединениях. Передача небольших изменений в больших файлах оптимизируется протоколом, похожим на rsync.
Unison также позволяет восстановить копии файлов после обрыва связи или некорретного завершения работы.

В настоящее время активная разработка прекращена, а команда разработчиков сфокусировалась над проектом Harmony.

Источник: Википедия


Установку ПО в Linux Mint можно произвести из менеджера программ, задав в окне поиска unison.


Для установки отметить Unison-gtk


После установки вызов программы производится из меню "Инструменты":



При первом запуске программы не имеется никаких настроек, поэтому высвечивается запрос на создание и настройку профиля. Нажмите на кнопку "Добавить".




Укажите имя профиля и его описание. Если описание можно не указывать, то имя профиля указать необходимо. Без этого не станет активной кнопка "Вперёд".

Далее указывается тип синхронизации, которых может быть несколько. Кликая по стрелочке выбора, меняю Local на SSH и снова нажимаю "Вперёд".


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

В следующем окне мастера необходимо указать узел и пользователя, с полномочиями которого будет производиться соединение с сервером SSH. Как установить и настроить SSH (OpenSSH) на своём домашнем компьютере читайте здесь.


В моём случае в поле Host было указано H67.vot, так как преобразование имени в адрес IP производится маршрутизатором MikroTik. В Вашем случае необходимо или указать адрес IP (с назначением статического IP узлу, с которым будете соединяться), или назначить выдачу Вашим модемом постоянного адреса IP (пример для "Промсвязь" ZXV10 H208L). В дальнейшем на узле, который будет соединяться по SSH с другим компьютером, этот постоянный адрес IP прописать в файл /etc/hosts как IP имя компьютера. Редактировать hosts необходимо под правами суперпользователя, например, sudo gedit /etc/hosts или sudo xed /etc/hosts.

Далее будет предложено указать локальный и удалённый каталоги.



Обратите внимание, что при соединении с сервером SSH каталогом сервера, от которого будет производиться навигация, является корневая точка монтирования, т.е. /  Поэтому каталог удалённого узла (Remote directory) необходимо прописать с полным путём. У Вас будет что-то наподобие  /home/пользователь/каталог.

Следующее окно можно смело пропустить, так как файловая система FAT в описываемом случае использоваться не будет и в финальном окне мастера указать "Применить".



В главном окне программы появился профиль. Таких профилей, соответствующих заданию по синхронизации может быть сколько душе будет угодно. Как видно из кнопок справа, их можно изменить, удалять или добавлять другие профили.


Запуск задания осуществляется по кнопке "Открыть".


При этом будет выдан запрос на ввод пароля пользователя, под полномочиями которого будет произведено соединение с сервером SSH (OpenSSH).


Сначала не будет показано никакого отображения содержания каталогов, так как будет произведено сравнение их содержания. Об этом свидетельствует "Looking for changes" в нижней части окна.


Как только это действие будет завершено, то отобразится список необходимых действий (столбец Action). На рисунке ниже показано, что имеются каталоги (dir), которые необходимо получить от узла H67 и каталоги, которые необходимо на него загрузить, так как на H67 отсутствуют каталоги, имеющиеся на локальном компьютере.


В главном окне программы имеются кнопки выбора действий. Нажимаю кнопку "Go".


При выполнении задания будут отображены ход процесса, оставшееся время выполнения задания, скорость обмена данными, процент выполнения для каталогов, файлов и их наименования.




После завершения задания в окне статуса появляется долгожданное complete.


Теперь содержание синхронизируемых каталогов двух узлов в моей домашней ЛВС идентично.

Настройки и протоколы работы программы расположены в скрытом каталоге .unison домашнего каталога пользователя системы. Настройки конкретного профиля находятся в файле prf.

пятница, 19 мая 2017 г.

Bajoo через браузер


На днях Bajoo уведомило об организации доступа к облаке через веб-интерфейс. Вход осуществляется по адресу https://web.bajoo.fr 
В настоящее время доступны только английский и французский языки интерфейса, переключение между которыми осуществляется по значкам в правом верхнем углу.


Сама форма входа проста: пользователь и пароль. Если нет учётной записи, то для её создания нажать на ссылку "Create a new account".


Для забывших пароль есть ссылка его сброса "Forgotten password?" в правом нижнем углу страницы авторизации.


Далее всё просто. Слева расположен перечень Ваших папок с данными.


Справа находятся кнопки выхода и переключения языка.


Прямо по центру – ссылки для перехода в Вашим данным.


Нажимаем на нужную и переходим к перечню файлов и папок.


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

Чтобы скачать файл кликните по его ссылке. Вам будет предложено ввести пароль для его расшифровки.


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


Описание Bajoo, установку клиента и предоставление папок в доступ другим пользователям читайте в предыдущей публикации.

четверг, 4 мая 2017 г.

Bajoo – 25 Гб облака с шифрованием данных бесплатно


Bajoo был мне известен ещё 5-6 лет назад. Однако в то время Bajoo не предлагал клиента синхронизации для Linux, поэтому долгое время не находил у меня применения.

Отличительной чертой Bajoo является полное шифрование данных на стороне облака, что может быть востребовано для резервирования своих данных с учётом критерия "кругом все враги".


Большой Брат следит за тобой – читать, СОРМ – читать.

Кроме того, Bajoo предоставляет возможность организации папок совместного доступа к данным.

Подробнее о сервисе можно прочитать на русской странице официального сайта.

Что использовать Bajoo необходимо установить клиент синхронизации и создать учётную запись. Для установки клиента для своей программной платформы нажмите на кнопку "Скачать БАЖУ".


Для установки в Ubuntu и Linux Mint используйте команды терминала (справедливо для Ubuntu не ниже 16.04 и Linux Mint не ниже 18):

sudo add-apt-repository ppa:bajoo/client && sudo apt update && sudo apt install python-bajoo

В процессе установки в систему будут установлены дополнительные пакеты, необходимые для работы Bajoo.


После установки запустите клиент Bajoo и создайте учётную запись, которую необходимо активировать по ссылке, направленной на указанный Вами адрес электронной почты.






При первом входе необходимо произвести зарегистрировать ключ GPG и указать секретную фразу. Секретная фраза выполняет роль пароля для входа в учётную запись Bajoo при запуске клиента синхронизации данных. Кроме того, можно изменить предлагаемое по умолчанию местоположение папок Bajoo.


После выполнения указанных выше действий можно запустить клиент синхронизации данных.



Секретная фраза определяет ключ шифрования, который будет сгенерирован для шифрования Ваших данных, загружаемых на Bajoo. Т.е. с помощью пароля Вы можете зайти в свой аккаунт, а получить доступ к своим зашифрованным данным только после ввода секретной фразы.

Если пароль ещё можно сбросить (запросить у системы сброс пароля), то секретную фразу не восстановит Вам никто, так как никому кроме Вас она не известна. Поэтому если Вы забыли свою секретную фразу и никак не можете её вспомнить, то у Вас 1 выход – зайти в свой аккаунт по браузеру и удалить свои данные. На своём Linux также удалите содержание каталогов:  .config/Bajoo,  /.cache/Bajoo,  /.local/share/Bajoo  и снова запустить клиент Bajoo. В Windows ищите скрытые папки с настройками Bajoo в папке своего профиля.
Вывод: никогда не забывайте свою секретную фразу на Bajoo.

После первого запуска на подставке рабочего стола (в трее) Вы увидите значок оранжевого цвета с не совсем понятной поясняющей надписью "Разделенные данные в процессе синхронизации...".


Обратитесь к настройкам клиента через правый клик мышкой по значку.


На первом этапе представляют интерес пункты "Bajoo folder", "Manage my folders" и "Настройки". "Покинуть" соответствует команде "Выйти" (остановить работу клиента).

Bajoo folder откроет в файловом менеджере папки Bajoo Вашего компьютера.


При этом MyBajoo является папкой (в Linux – каталогом) для синхронизации Ваших данных, а "Разделённые данные" содержит те данные, которыми Вы обмениваетесь с другими пользователями Bajoo или осуществляете над этими данными совместную работу.

При вызове "Manage my folders" осуществляется переход в раздел управления Вашими папками. Впрочем, в этот же раздел Вы будете перенаправлены и при вызове "Настройки".


MyBajoo, как было отмечено выше, является папкой (в Linux – каталогом) для синхронизации Ваших данных, которая в терминологии Bajoo называется "Персональная папка". Когда все Ваши данные в Bajoo зашифрованы и синхронизированы, то отображается значок зелёного цвета с пояснением "Up to date", в противном случае – оранжевого и пояснением "Sync in progress.



Более подробные сведения можно получить при нажатии на кнопку "Детали".



Раздел "Мой аккаунт" отображает адрес электронной почты, на который зарегистрирован Ваш Bajoo, а также расход дискового пространства и кнопки отключения аккаунта и досье.



При нажатии на "Открыть мое досье Бажу" происходит открытие в файловом менеджере папки Bajoo Вашего компьютера.

Раздел "Параметры" определяет, должен ли запускаться клиент Bajoo при старте системы или его запуск будет производиться вручную, работу через прокси и другие настройки. В настоящее время настройки ограничения скорости скачивания и загрузки в облако лично у меня затемнены.


Возможно, что это объясняется тем, что "Тип аккаунта: Тест бета аккаунта – 25 Гб".

Кстати говоря, фраза "... Тест бета аккаунта – 25 Гб" послужила предметом моего обращения в службу поддержки (пока поодержка доступна только на английском языке). Заданный мной вопрос содержал просьбу пояснить: будут ли данные 25 Гб моего акканута и далее в моём распоряжении или эти гигабайты изменятся в сторону уменьшения после истечения "... Тест бета аккаунта ...".

В своём ответе Guillaume (работник службы поддержки пользователей) пояснил, что 25 Гб даны на всё время жизненного цикла моей учётной записи, так как в настоящее время Bajoo – это Bajoo2. Имевший место ранее Bajoo, предоставлявший бесплатно 5 Гб являлся Bajoo1.

Как только Ваши данные будут зашифрованы и синхронизированы с облаком, значок на подставке рабочего стола (системный лоток, трей) изменит свой цвет на зелёный.


Что ж, настало время перейти к "Разделенным данным". Как Вам уже известно, эти данные соответствуют папкам совместного доступа (совместной работы).

Перейдите в управление папками (Manage my folders) и нажмите на самую верхнюю кнопку


Введите имя папки и тип доступа: совместный обмен, публичный обмен. В примере ниже рассматривается совместный обмен.


Автоматически в папке (в Linux – каталоге) "Разделенные данные" будет создаваться папка с указанным именем.


Чтобы добавить пользователей в создаваемую папку совместного обмена


в строке ниже введите адрес электронной почты пользователя (естественно, что у него уже должен быть установлен клиент Bajoo)


и в поле справа определите права доступа "Прочтение Запись", "Одиночное прочтение", "Админ". Так как интересует возможность совместной работы, то оставим предлагаемое по умолчанию "Прочтение Запись" и нажимаем на кнопочку светло-зелёного цвета.


В окне пользователей будет автоматически добавлен пользователь, предоставивший папку в доступ, с правами "Админ".


Пользователю, которому была дана папка в доступ, ничего делать не требуется. Данная папка будет ему добавлена автоматически, например.



Примечание. Лично у меня имеет место ситуация, при которой добавленные и синхронизированные данные начинают отображаться в папке совместного доступа только при очередном старте Bajoo.


Bajoo drop служит для предоставления контента тем, у кого не установлен клиент Bajoo. Сервис доступен только на английском языке. При вызове команды из правого контекстного меню управления клиентом откроется веб-страница, в верхней части которой имеется меню навигации


Upload files – загрузить файлы.

My files – ваши файлы.

About – о сервисе.

Bajoo – главная страница Bajoo.

Blog – понятно, что это переход на блог.

В центральной части станицы отображается форма загрузки. Вверху имеется настройка срока хранения с движком ступенчатого выбора 30 дней, 7 дней, 24 часа


и возможностью включения удаления загруженного файла после его первого скачивания


Сервер имеет ограничения на срок хранения в зависимости от размера файлов.

0-50 Мб – 30 дней.

50 Мб - 1 Гб – 7 дней.

1 Гб и более – 1 день.

В центральной части расположена форма выбора файлов (до 4 Гб) для загрузки на сервис


Нажмите на чёрную кнопку и укажите 1 или несколько файлов для загрузки.

Сначала у Вас будет складываться впечатление, что ничего не происходит. Обратите внимание на то, что сервис призывает Вас быть терпеливыми. Это обусловлено тем, что контент при загрузке шифруется.


Вы можете в любой момент отменить загрузку нажав на крестик справа:


После загрузки зашифрованного контента на сервер будут отображены ссылки на скачивание, удаление и отправку ссылки по электронной почте. Если Вы загружаете несколько файлов, то для каждого из них будет свой набор таких ссылок.




При отправке нескольких файлов ссылки на них можно отправить с помощью сервера Bajoo. Нажмите на "SEND ALL LINKS BY EMAIL".

Укажите адрес (адреса через запятую), при необходимости измените тему (Email subject) и текст сообщения (Email body):



Укажите способ отправки: сервер Bajoo (левая кнопка) либо свой почтовый клиент (правая кнопка).


Получатель получит сообщение:



При переходе по ссылке для скачивания выбранного файла потребуется время на его расшифровку. Ход процесса будет отображаться полоской более тёмного цвета:


Для отказа нажмите кнопку "ABORT".

После завершения расшифровки файла и готовности его скачать появится страница с кнопкой "GET THE FILE":


При переходе по ссылке My files в браузере будет отображён список загруженных Вами файлов:



Вверху имеются 3 кнопки чёрного цвета:

EXPORT LOCALSTORAGE DATA

IMPORT LOCALSTORAGE DATA

PURGE EXPIRED FILES FROM LOCALSTORTAGE

Export localstorage data – экспорт ссылок на сохранённые данные. Эспорт производится в файл data.json


Если сохранённый файл открыть в текстовом редакторе, то можно просмотреть его содержание:


Import localstorage data является обратной операцией вышеуказанному.

Purge expired files from localstaroge – удалить из отображения данные с истёкшим сроком хранения. Сюда же относятся и данные, ссылки на которые были удалены вручную.

Крестик справа от имени файла указывает на включение режима удаления файла после 1-го скачивания, а корзина – на удаление ссылки на скачивание, что равносильно удалению файла.


При удалении файла по ссылке в браузере отображается подтверждающее сообщение, например:


В заключение приведу несколько абзацев из описания Bajoo своего сервиса.


Ваши данные 100% подчиняются французскому законодательству, предпологающему защиту личных данных и уважение частной жизни. Кроме этого, все папки зашифрованы и могут считываться только пользователем с помощью секретной фразы.

Только вам возможен доступ к содержимому на вашем Бажу и только вы можете совершать обмен файлов на выбор. вы единственный несете ответственность за содержимое файлов хранящихся на Бажу и за их обмен.

Каждый синхронизированный документ в Бажу скопирован на 3 отдельных серверах, принадлежащих Франции. Только вы имеете доступ к вашим данным используя секретную фразу.

Доступ к серверам под тщательным контролем: знаки доступа, идентификация при каждом входе выходе… Настоящий сейф!

Шифровка с первого резервного копирования
Шифровка с ПК
Только вам известна расшифровка
Шифровка с помощью ключа GPG прямо с вашего компьютера
Резервное копирование и синхронизация в реальном времени, поддерживающее кодирование SSL (Secure Sockets Layer)

БАЖУ продумал все таким способом, что вы единственный способный зашифровать и расшифровать ваши файлы.


Похожим сервисом является MEGA. В этой заметке Вы можете узнать как настроить выборочную синхронизацию на MEGA. 


Читайте также Bajoo через web