Посібник з Parlons Cloud Portal
Як користуватися постійно ввімкненим обліковим записом із телефона та розміщувати облікові записи для себе й інших.
Зміст
- 1. Для чого потрібен Портал
- 2. Терміни цього посібника
- 3. Установлення застосунку
- 4. Під'єднання застосунку до облікового запису
- 5. Головний екран
- 6. Чати
- 7. Контакти
- 8. Гаманець
- 9. Вузол
- 10. Додавання інших пристроїв: запрошення власника
- 11. Розміщення друзів: гостьові запрошення
- 12. Інструменти вузла: Terminal IDE і панель керування
- 13. Довідник налаштувань
- 14. Сповіщення, дзвінки та постійне з'єднання
- 15. Використання облікового запису з інших застосунків Parlons
- 16. Резервні копії, відновлення та перенесення
- 17. Усунення несправностей для власників облікових записів
- 18. Який хост вам потрібен?
- 19. Один обліковий запис на власній машині: однорядкові інсталятори
- 20. Один обліковий запис на VPS: deploy-parlons-cloud.sh
- 21. Багато облікових записів: служба parlons-tenants
- 22. Створення, призупинення та видалення орендарів
- 23. Запрошення власника та гостьові запрошення із сервера
- 24. Локальна вебпанель
- 25. Довідник параметрів командного рядка
- 26. Команда parlons
- 27. Файли в каталозі даних
- 28. Порти, брандмауери, TLS і зворотні проксі
- 29. Оновлення та відкат
- 30. Журнали
- 31. Примітки щодо безпеки для операторів
- 32. Усунення несправностей для операторів
- 33. Глосарій
Ваш обліковий запис Parlons, що працює онлайн на машині, яка ніколи не засинає, а керуєте ним ви зі свого телефона.
Цей посібник охоплює:
- Parlons Cloud для Android («Портал»), версія 0.2.90 (пакет Android
com.eurobuddha.parlons.cloud, Android 9 або новіший). - Parlons Cloud — програму-хост, з якою він зв'язується, версія 0.11.124 (
parlons-cloud-0.11.124.jar). Вона запускає один обліковий запис на вашій власній машині або одразу багато облікових записів як службуparlons-tenants(--tenants <dir>).
Обидві програми можна завантажити на сторінці випусків: https://github.com/eurobuddha/maxima/releases.
| Програма | Тег випуску | Файл для завантаження |
|---|---|---|
| Портал (Android) | portal-v0.2.90 | parlons-cloud-portal-0.2.90-release.apk |
| Parlons Cloud (хост) | cloud-v0.11.124 | parlons-cloud-0.11.124.jar |
SHA-256 файлу parlons-cloud-0.11.124.jar:
0ae833429b641393f93b427695784b534e8a2a06a7194eba74e57aed4f19b231
Частина A — для тих, хто користується обліковим записом через застосунок «Портал». Частина B — для тих, хто розміщує облікові записи. Кожне завдання описано пронумерованими кроками. Написи, які ви бачите на екрані, виділено жирним. Команди, які ви вводите, наведено в блоках коду.
Супутні посібники: Посібник з Parlons! — для повного застосунку Parlons!, і Посібник з Parlons Node — для Parlons Node (повного вузла Minima з вбудованим обліковим записом Parlons).
1Для чого потрібен Портал
Обліковий запис Parlons — це невелика програма, яка тримає вашу ідентичність онлайн. Вона зберігає ваші контакти й історію чатів, отримує повідомлення, коли ваш телефон вимкнено, і дає змогу кожному під'єднаному пристрою бачити ту саму розмову. Їй потрібна машина, яка постійно ввімкнена й має вихідний доступ до інтернету.
Android-застосунок Parlons Cloud (у цьому посібнику — «Портал») — це вікно до такого облікового запису. Він не має власної ідентичності для чату. Під час під'єднання він створює лише власний ключ пристрою, а далі керує обліковим записом через наскрізно зашифрований транспорт Parlons. На першому екрані застосунку сказано так:
Ваша ідентичність, чати й гаманець живуть на вашому постійно ввімкненому вузлі — доступному з будь-якого пристрою. Цей телефон під'єднується до нього як захищений клієнт. Ніхто інший не зможе під'єднатися без вашого одноразового коду, і ви будь-коли можете відкликати доступ цього телефону.
Хто ним користується
- Ті, хто запускає власний обліковий запис на Raspberry Pi, Mac mini, домашньому сервері чи VPS (частина B, розділи 19 і 20) і хоче мати його на телефоні Android.
- Ті, хто запускає Parlons Node (повний вузол Minima з вбудованим Parlons). Parlons Node також запускає обліковий запис Parlons, тож Портал під'єднується до нього так само. Власники вузлів отримують у застосунку додаткові інструменти (розділ 12).
- Ті, хто має розміщений обліковий запис. Хтось інший запускає хост, який тримає онлайн багато облікових записів, по одному на людину (частина B, розділ 21). Оператор хоста дає вам запрошення, і ви за ним під'єднуєтеся до власного облікового запису.
На iPhone ту саму роботу виконує застосунок Parlons; він під'єднується до тих самих видів облікових записів за тим самим запрошенням. Повний застосунок Parlons! для Android інший: він зберігає ідентичність на самому телефоні й не під'єднується до облікового запису (розділ 15).
Що таке обліковий запис і що таке орендар
| Термін | Що це |
|---|---|
| Обліковий запис | Одна ідентичність Parlons (24 слова) з контактами, чатами, під'єднаними пристроями, налаштуваннями і, зазвичай, гаманцем. Працює всередині parlons-cloud, Parlons Node або настільного застосунку-вузла. |
| Обліковий запис власника | Обліковий запис, що належить тому, хто керує машиною. На Parlons Node це власна ідентичність вузла. |
| Орендар | Один обліковий запис усередині хоста з багатьма обліковими записами. Кожен орендар — це папка <dir>/<name>/ з такою самою структурою, як в окремого облікового запису. У кожного своя ідентичність, пристрої, контакти, чати й резервна копія. |
| Розміщений обліковий запис (гість) | Звична назва орендаря, створеного для друга. Гості не мають доступу до облікового запису власника, його термінала Minima чи керування розміщенням. |
| Обліковий запис лише для чату | Гість, створений вбудованим розміщенням облікового запису власника (Parlons Node, minimaCore Desktop, minimaDesk або окремий parlons-cloud з увімкненим розміщенням). Має лише чат, дзвінки й файли; гаманець, термінал вузла, розміщення NFT і керування хостом вимкнено. |
Що хост може, а чого не може
- Він не може читати ваші повідомлення під час передавання, як і чиїсь інші: усе між пристроями запечатано наскрізним шифруванням.
- Він може читати те, що зберігається на цій машині. Ваш обліковий запис тримає там історію чатів і ключі, тож оператор має до них такий самий доступ, який мали б ви на власній машині. Обирайте хост, якому довіряєте так, як довірили б людині свою поштову скриньку. Або запустіть власний (частина B).
2Терміни цього посібника
Повний глосарій наведено в кінці (розділ 33). Кілька слів, потрібних одразу:
- Адреса: постійна адреса вашого облікового запису. Починається з
MAX#, має кілька сотень символів і ніколи не змінюється. Діліться нею — так люди можуть з вами зв'язатися. У цьому посібнику адреса ніколи не скорочується, і ви теж цього не робіть: завжди копіюйте її повністю. - Код під'єднання: одноразовий код у форматі
ABCD-EFGH-JKLM(три групи по чотири символи). Спрацьовує один раз. Створення нового коду замінює старий. - Запрошення: адреса й код під'єднання в одному рядку: адреса, потім
?code=, потім код. Один QR-код запрошення під'єднує телефон. - Пристрій: усе, що під'єднано до облікового запису (телефон, команда
parlonsу терміналі, власна вебпанель хоста). У кожного свій ключ, і його доступ можна відкликати, не змінюючи ідентичності облікового запису.
Частина A. Користування обліковим записом через застосунок «Портал»
3Установлення застосунку
Як установити застосунок
- На телефоні Android відкрийте https://github.com/eurobuddha/maxima/releases і знайдіть випуск із тегом
portal-v0.2.90. - Завантажте прикріплений до нього APK:
parlons-cloud-portal-0.2.90-release.apk. - Відкрийте завантажений файл. Якщо Android попросить, дозвольте браузеру чи файловому менеджеру встановлювати застосунки, а потім торкніться Установити.
- Відкрийте Parlons Cloud. Перший екран має заголовок Запустіть Parlons у хмарі. Перейдіть до розділу 4, щоб під'єднати його.
Застосунку потрібен Android 9 або новіший. Він запитує такі дозволи, коли вони вперше знадобляться: камера (сканування QR-кодів, відеодзвінки, фото), мікрофон (голосові повідомлення й дзвінки), сповіщення та робота у фоновому режимі.
Як оновити застосунок
- Завантажте новіший
parlons-cloud-portal-<version>-release.apkзі сторінки випусків. - Відкрийте його й торкніться Установити. Android установить його поверх старого.
- Відкрийте Parlons Cloud. Під'єднання зберігається, тож застосунок одразу відкриває ваш обліковий запис.
Як видалити застосунок
Застосунок не використовує хмарне резервне копіювання Android, тому видалення стирає ключ пристрою цього телефона. Сам обліковий запис не зачіпається.
- На іншому під'єднаному пристрої відкрийте Вузол → Під'єднані пристрої і торкніться Відкликати поруч із цим телефоном (розділ 9).
- Видаліть Parlons Cloud у налаштуваннях застосунків Android.
- Щоб пізніше знову користуватися телефоном, установіть застосунок і під'єднайте його новим кодом (розділ 10).
4Під'єднання застосунку до облікового запису
Вам потрібне запрошення (або адреса плюс код під'єднання) з одного з таких місць:
| Де працює ваш обліковий запис | Звідки береться запрошення |
|---|---|
| Ваш власний комп'ютер, установлено однорядковим інсталятором | Виводиться наприкінці встановлення текстом і QR-кодом (розділ 19). Пізніше: parlons invite або parlons newcode на тому комп'ютері. |
Ваш власний VPS, установлено через deploy-parlons-cloud.sh | Виводиться скриптом розгортання (розділ 20). |
| Parlons Node | sudo parlons-pair --admin на сервері (розділ 23). |
| Розміщений обліковий запис | Його дає оператор хоста, або власник показує його через Показати запрошення (розділ 11). |
| Обліковий запис, яким ви вже користуєтеся на іншому пристрої | Той пристрій: Вузол → Під'єднати мій інший пристрій (розділ 10). |
Як під'єднатися за запрошенням
- Відкрийте Parlons Cloud. Перший екран має заголовок Запустіть Parlons у хмарі.
- Зробіть одне з такого:
- Торкніться Сканувати QR-код під'єднання і наведіть камеру на QR-код запрошення. Застосунок заповнить обидва поля й покаже Адресу й код під'єднання відскановано.
- Або вставте повне запрошення в поле Адреса облікового запису або запрошення для під'єднання. Коли ви торкнетеся Підключитися й під'єднати, частину з кодом буде перенесено в поле Код під'єднання.
- Або вставте лише адресу в перше поле, а код (наприклад,
ABCD-EFGH-JKLM) введіть у Код під'єднання.
- Торкніться Підключитися й під'єднати.
- У рядку стану з'явиться Під'єднання до мережі…, потім Обліковий запис знайдено — під'єднання….
- З дійсним кодом застосунок одразу відкриває ваш обліковий запис. Код тепер використано. Жодному іншому пристрою не потрібно його схвалювати.
Застосунок запам'ятовує введену адресу, тож після невдалої спроби її не доведеться вводити знову.
Як під'єднатися без коду
Скористайтеся цим, коли маєте адресу, але не маєте коду. Цей телефон має схвалити інший, уже під'єднаний пристрій.
- Вставте повну адресу
MAX#у Адреса облікового запису або запрошення для під'єднання. - Залиште Код під'єднання порожнім.
- Торкніться Підключитися й під'єднати. Обліковий запис поставить цей телефон у список очікування. Застосунок покаже:
Запит на під'єднання надіслано. Підтвердьте його з уже під'єднаного пристрою, а потім відкрийте знову.
а під цим — ключ цього пристрою.
- На вже під'єднаному пристрої схваліть новий телефон. Скористайтеся одним зі способів:
- У Порталі: Вузол → Очікують підтвердження, потім Схвалити поруч із ключем.
- У терміналі з командою
parlons:parlons approve <key> - У вебпанелі: Пристрої, потім Схвалити під Очікування схвалення.
- На новому телефоні знову відкрийте Parlons Cloud і ще раз торкніться Підключитися й під'єднати.
Якщо під'єднання не вдається
| Повідомлення | Що це означає | Що робити |
|---|---|---|
| Не вдалося підключитися: … з Чи обліковий запис у мережі та чи правильна адреса? | Обліковий запис зупинено, він не має інтернету або щойно запустився. | Перевірте, чи адреса повна. Попросіть того, хто керує обліковим записом, перевірити, чи він працює (розділ 17). Спробуйте ще раз. |
| Не вдалося під'єднати: … | Код неправильний, уже використаний або замінений новішим. | Отримайте нове запрошення й під'єднайтеся знову. |
| Введіть або відскануйте адресу облікового запису | Поле адреси було порожнім. | Вставте або відскануйте адресу. |
Як прочитати примітку про налаштування сервера
- На першому екрані торкніться Ви тут уперше? Налаштуйте сервер облікового запису ▸. Відкриється коротка примітка про запуск власного сервера облікового запису. У ній показано команду розгортання та розташування повного посібника (
cloud/SETUP.mdу репозиторії). - Торкніться будь-якого сірого блоку, щоб скопіювати його текст. Застосунок покаже Скопійовано.
- Торкніться Налаштуйте сервер облікового запису ▾, щоб знову згорнути примітку.
Частина B цього посібника охоплює те саме докладніше.
Як змінити мову застосунку
- Відкрийте список мов:
- На першому екрані торкніться Змінити мову вгорі.
- Після під'єднання відкрийте Більше → Налаштування і торкніться верхньої кнопки з написом English · 简体中文 · Русский · Українська.
- Торкніться потрібної мови. Список закриється, і застосунок перемкне мову. Вибір діє лише на цьому пристрої.
5Головний екран
Після під'єднання застосунок відкривається на чотирьох вкладках: Чати, Контакти, Гаманець і Вузол. Гортайте або торкайтеся, щоб переходити між ними.
Верхня панель
- Parlons Cloud і версія застосунку.
- Індикатор стану показує, чи може застосунок зв'язатися з вашим обліковим записом:
- зелений, у мережі · N хостів (або N нових, коли є непрочитані повідомлення): обліковий запис доступний;
- Підключення…: застосунок ще намагається з'єднатися;
- червоний, недоступно: обліковий запис не відповів.
- Пошук шукає в повідомленнях, контактах і групах вашого облікового запису. Пошук виконується в самому обліковому записі, тож охоплює все, що там зберігається, а не лише те, що бачив цей телефон.
- Тема перемикає по колу Світла → Темна → Системна. Коротке повідомлення підтверджує новий вибір.
- Більше відкриває меню облікового запису:
| Пункт | Що він робить |
|---|---|
| Налаштування | Відкриває екран налаштувань (розділ 13). |
| Задати назву облікового запису | Переходить на вкладку «Вузол» і запитує нову назву облікового запису. |
| Копіювати адресу облікового запису | Копіює повну адресу MAX#. |
| Стан вузла | Переходить на вкладку «Вузол». |
| Від'єднати цей пристрій | Запитує Від'єднати цей пристрій?, а потім забуває обліковий запис на цьому телефоні. |
Як шукати в обліковому записі
- Торкніться Пошук на верхній панелі.
- Введіть запит у Пошук повідомлень…. Результати з'являться під Контакти та групи і Повідомлення. Нічого не знайдено. означає, що збігів немає.
- Торкніться результату, щоб відкрити цей чат. Торкніться Назад, щоб вийти з пошуку.
Як змінити тему
- Торкніться Тема на верхній панелі. Кожне торкання переходить до наступного варіанта: Світла, Темна, Системна.
- Коротке повідомлення на кшталт Тема: Темна підтверджує вибір.
Як скопіювати адресу облікового запису
- Торкніться Більше → Копіювати адресу облікового запису.
- Застосунок покаже Адресу облікового запису скопійовано. У буфері обміну — повна адреса
MAX#.
Як від'єднати цей телефон
- Торкніться Більше → Від'єднати цей пристрій.
- Діалог Від'єднати цей пристрій? пояснює, що цей телефон більше не керуватиме вашим хмарним обліковим записом.
- Торкніться Від'єднати. Застосунок повернеться до першого екрана.
- На іншому під'єднаному пристрої відкличте запис цього телефона (розділ 9). Доки ви цього не зробите, обліковий запис і далі показуватиме його як під'єднаний пристрій.
Від'єднати цей пристрій лише скасовує під'єднання на цьому телефоні. Ваш обліковий запис та його ідентичність залишаються на вузлі. Інші пристрої продовжують працювати, а цей телефон можна знову під'єднати новим кодом.
6Чати
Вкладка Чати показує ваші розмови, найновіші вгорі, з лічильниками непрочитаних.
Поки чатів немає, на вкладці написано: Розмов поки немає. Додайте контакт на вкладці «Контакти», а потім напишіть йому.
Як відкрити або знайти чат
- Відкрийте вкладку Чати.
- Щоб звузити список, введіть частину імені в поле пошуку вгорі.
- Торкніться чату, щоб відкрити його.
Як створити групу
Спершу вам потрібен хоча б один контакт. Інакше застосунок скаже Спочатку додайте контакти — групі потрібні учасники.
- На вкладці Чати торкніться кнопки Нова група.
- Введіть назву в Назва групи.
- Позначте принаймні одного учасника.
- Торкніться Створити. Застосунок покаже Групу створено, і група з'явиться в списку.
Якщо торкнутися Створити без назви чи без учасника, застосунок скаже Назвіть групу та виберіть хоча б одного учасника.
Як позначити чат прочитаним або очистити його
- На вкладці Чати утримуйте палець на чаті.
- Торкніться Позначити прочитаним (показується, коли є непрочитані повідомлення). Застосунок покаже Позначено прочитаним.
- Або торкніться Очистити повідомлення. З'явиться діалог Очистити цей чат?. Торкніться Очистити, щоб підтвердити. Застосунок покаже Чат очищено.
Очищення видаляє повідомлення лише з вашого облікового запису. Воно не відкликає надіслані повідомлення й не виводить вас із групи, і скасувати його неможливо.
Усередині чату
Підзаголовок — у вашому хмарному акаунті: повідомлення живуть в обліковому записі, а цей екран лише показує їх.
Як надіслати повідомлення
- Введіть текст у поле повідомлення внизу.
- Торкніться кнопки надсилання (коли є текст, на ній стрілка).
Як надіслати голосове повідомлення
- Залиште поле повідомлення порожнім. На кнопці надсилання буде мікрофон.
- Торкніться мікрофона. Відкриється діалог Голосове повідомлення з таймером і максимальною тривалістю.
- Говоріть.
- Торкніться Надіслати, щоб надіслати, або Скасувати, щоб відкинути запис. Занадто коротко — потримайте трохи довше означає, що запис був надто коротким.
Голосове повідомлення можна також почати через Прикріпити → Голосове повідомлення.
Як надіслати фото або файл
- Торкніться Прикріпити.
- Виберіть одне:
- Медіатека: виберіть фото. Діалог Надіслати фото дає змогу Додайте підпис…. Торкніться Надіслати.
- Приватний файл: відкриється засіб вибору файлів Android. Виберіть файл, щоб надіслати його в цей чат.
- Передавання файлів: відкриває список передавань файлів у цьому чаті.
- Щоб натомість зробити нове фото, торкніться кнопки камери біля поля повідомлення.
Як зателефонувати контакту
- Відкрийте чат віч-на-віч.
- Торкніться Голосовий дзвінок або Відеодзвінок на верхній панелі чату.
- Дозвольте доступ до мікрофона (і камери, для відео), коли застосунок уперше попросить.
- Під час дзвінка використовуйте Вимкнути мікрофон, Гучномовець, Змінити (перемкнути камеру) і Завершити.
Дзвінки можливі лише віч-на-віч. Як відповідати на дзвінок, описано в розділі 14.
Як переглянути відомості про контакт або групу
- Торкніться кнопки інформації на верхній панелі чату.
- Для контакту діалог показує його програмне забезпечення, коли його востаннє бачили в мережі, публічний ключ, адреси та платіжну адресу. Копіювати ключ копіює ключ повністю.
- Для групи діалог Група показує учасників. Якщо ви адміністратор групи, торкніться Змінити учасників, позначте або зніміть позначки з контактів і торкніться Зберегти. Застосунок покаже Групу оновлено.
Як виконати дію з одним повідомленням
- Утримуйте палець на повідомленні.
- Виберіть одне:
- Копіювати повідомлення (або Копіювати підпис на фото, Копіювати адресу контакту на надісланій адресі).
- Зберегти фото або Поділитися фото на зображенні. Збережено у Фото підтверджує збереження.
- Копіювати ідентифікатор транзакції на платежі.
- Інформація відкриває Інформація про повідомлення: коли його надіслано й коли воно надійшло, його стан (Надсилання…, Надіслано (ретранслятор прийняв), Доставлено, Прочитано, Не вдалося надіслати) і, для платежів, ідентифікатор транзакції.
Позначки означають те саме, що й у кожному застосунку Parlons:
| Позначка | Значення |
|---|---|
| ⋯ | у черзі, ще не передано хосту |
| ✓ | надіслано: хост прийняв його |
| ✓✓ | доставлено: власний пристрій одержувача підтвердив отримання |
| ✓✓ синього кольору | прочитано |
| ✗ | не вдалося: жоден хост не прийняв його; воно залишається у вихідних |
Як повторно надіслати недоставлене повідомлення
Якщо ваш обліковий запис не зміг зв'язатися з контактом за жодною відомою йому адресою, невдале повідомлення позначається ✗.
- Торкніться невдалого повідомлення. Діалог Повідомлення не доставлено пояснює, що ваш вузол не зміг зв'язатися з контактом.
- Торкніться Перепідключити (або Не зараз, щоб залишити як є). Застосунок покаже Перепідключення… і запитає в каталозі поточну адресу контакту.
- Знайдено нову адресу — незабаром надішлемо повторно означає, що невдалі повідомлення буде надіслано повторно автоматично. Адреса не змінилася — можливо, контакт просто не в мережі означає, що контакт, імовірно, не в мережі; повідомлення чекають у вихідних.
Оплата контакту в чаті
- У чаті віч-на-віч торкніться Прикріпити → Надіслати платіж. Діалог Надіслати платіж ім'я повідомляє: Оплачено з гаманця вашого хмарного акаунта.
- Виберіть Minima або MxUSD. MxUSD — це токен Minima, прив'язаний до долара, ідентифікатор токена
0x7D39745FBD29049BE29850B55A18BF550E4D442F930F86266E34193D89042A90. - Введіть суму (поле називається Сума (MINIMA) або Сума (MxUSD)) і, за бажанням, Коментар (необов'язково).
- Торкніться Надіслати. Застосунок покаже Платіж формується на вашому вузлі….
Платіж формується й підписується на машині, де працює ваш обліковий запис, а не на телефоні. Облікові записи лише для чату не можуть платити (розділ 8).
Якщо платіж показує ⚠ не підтверджено — перевірте баланс, перш ніж платити знову, перевірте вкладку «Гаманець», перш ніж надсилати його вдруге.
Для MxUSD потрібен оновлений хост. Перед платежем у MxUSD Портал 0.2.90 запитує хост облікового запису, чи враховує той ідентифікатор токена. Хост, який не може цього довести, проігнорував би токен і заплатив би ту саму суму в MINIMA, тому застосунок відмовляється надсилати й показує:
Помилка платежу: Хост цього облікового запису застарий для надсилання MxUSD — оновіть його (Parlons Node 0.2.135+, Parlons Cloud 0.11.121+, minimaCore Desktop 0.18.21+)
Нічого не надсилається. Попросіть того, хто керує хостом, оновити його до однієї з названих версій, а потім спробуйте ще раз. На платежі в Minima це не впливає.
7Контакти
Вкладка Контакти складається з трьох частин.
Адреса вашого облікового запису. Повна адреса MAX# з кнопками Копіювати, Показати QR і Поділитися адресою. Поділіться нею, щоб люди могли з вами зв'язатися — вона однакова на всіх пристроях. Поки обліковий запис ще під'єднується, тут показано (визначення…).
Ваші контакти. Із заголовком Контакти · N і полем Пошук контактів над списком. Торкніться контакту, щоб побачити відомості: Програмне забезпечення, Востаннє в мережі (або Зараз у мережі), Публічний ключ, його Адреси та Платіжна адреса (MINIMA), якщо контакт її опублікував. Звідти:
- Повідомлення відкриває чат.
- Більше пропонує Перейменувати, Перепідключитися зараз і Видалити контакт (кроки нижче).
Додавання контакту. Поле та кнопка Сканувати QR під Додавання контакту.
Як поділитися своєю адресою
- Відкрийте Контакти.
- Під Адреса вашого облікового запису торкніться одного з варіантів:
- Копіювати: застосунок покаже Адресу скопійовано. Вставте її в повідомлення для людини.
- Показати QR: дайте людині відсканувати QR-код з вашого екрана.
- Поділитися адресою: відкриється меню «Поділитися» Android. Виберіть застосунок, яким надіслати адресу.
Як додати контакт
- Відкрийте Контакти і прокрутіть до Додавання контакту.
- Внесіть адресу людини в поле одним зі способів:
- Вставте повну адресу. Вона починається з
MAX#або починається зMxі закінчується на@host:port. - Торкніться Сканувати QR і наведіть камеру на QR-код адреси.
- Вставте повну адресу. Вона починається з
- Торкніться Додати. Застосунок покаже Додавання…, потім Контакт додано.
Додавання — це рукостискання: ваш обліковий запис представляється за адресою людини, а вона відповідає своєю. Якщо додати не вдалося, застосунок покаже Не вдалося додати: … з причиною, наприклад цей обліковий запис зараз недоступний — перевірте, чи він у мережі, або відскануйте адресу ще раз. Якщо текст узагалі не є адресою, буде сказано Це не схоже на адресу Parlons — вона має починатися з Mx… або MAX#….
Як перейменувати контакт
- Відкрийте Контакти і торкніться контакту.
- Торкніться Більше → Перейменувати.
- У Перейменувати контакт введіть нове ім'я в Ім'я для цього контакту.
- Торкніться Перейменувати. Застосунок покаже Перейменовано. Ім'я діє лише у вашому обліковому записі.
Як перепідключитися до контакту
- Відкрийте Контакти і торкніться контакту.
- Торкніться Більше → Перепідключитися зараз. Застосунок покаже перепідключення….
- Знайдено нову адресу — перепідключено означає, що знайдено нову адресу контакту. Адреса не змінилася — можливо, контакт просто не в мережі означає, що нічого не змінилося.
Як видалити контакт
- Відкрийте Контакти і торкніться контакту.
- Торкніться Більше → Видалити контакт.
- Діалог запитує Видалити ім'я? і пояснює: Ваша адреса залишиться в цієї людини, і вона й надалі зможе вам писати. Це лише прибирає її з вашого списку.
- Торкніться Видалити. Застосунок покаже Видалено.
8Гаманець
Що показує вкладка Гаманець, залежить від виду облікового запису, до якого ви під'єднані.
Обліковий запис лише для чату
На вкладці написано Акаунт лише для чату: Цей розміщений акаунт включає чат, дзвінки й файли. Гаманець і керування хостом вимкнено. Більше тут нічого робити.
Обліковий запис Parlons Cloud (власний сервер або орендар на хості parlons-tenants)
Обліковий запис має власний гаманець. Його ключі виводяться із сід-фрази облікового запису й зберігаються на машині, де працює обліковий запис. Підписання відбувається там.
Що показує вкладка:
- Загальний баланс: MINIMA · гаманець вашого акаунта, з N доступно до надсилання · ключі живуть на вашому хмарному вузлі.
- Адреса отримання: адреса Minima облікового запису з кнопками Копіювати і Показати QR.
- Токени на цій адресі, кожен зі своїм ідентифікатором токена.
- Ключ підпису: Використано підписів: N / M. Кожен ключ підписує фіксовану кількість разів.
- Надіслати, Від'єднати гаманець на цей телефон… та Історія.
Як отримати кошти
- Відкрийте Гаманець.
- Під Адреса отримання торкніться Копіювати (застосунок покаже Адресу скопійовано) або Показати QR.
- Передайте повну адресу відправникові або дайте йому відсканувати QR-код.
Як скопіювати ідентифікатор токена
- Відкрийте Гаманець і знайдіть токен під Токени.
- Торкніться його. Застосунок покаже ID токена скопійовано. У буфері обміну — повний ідентифікатор токена.
Як надіслати Minima або MxUSD
- Відкрийте Гаманець і торкніться Надіслати.
- Введіть одержувача в Адреса Mx… або 0x… або торкніться Сканувати QR, щоб відсканувати адресу.
- Виберіть Minima або MxUSD.
- Введіть суму (Сума (MINIMA) або Сума (MxUSD)) і торкніться Продовжити.
- Прочитайте підтвердження Надіслати сума токен?. У ньому показано повну адресу й сказано: Це підписує й транслює справжню транзакцію, і її неможливо скасувати.
- Торкніться Підписати й надіслати. У стані з'явиться Підписання на вашому вузлі…, потім Трансляція через …, потім Надіслано.
Якщо не вдалося, застосунок покаже Не вдалося надіслати: … з причиною. Для MxUSD на хості, який не може довести, що враховує ідентифікатор токена, причина така: Хост цього облікового запису застарий для надсилання MxUSD — оновіть його (Parlons Node 0.2.135+, Parlons Cloud 0.11.121+, minimaCore Desktop 0.18.21+). Нічого не надсилається; попросіть оператора хоста оновити його (розділ 6).
Як переглянути минулий платіж
- Відкрийте Гаманець і прокрутіть до Історія. Там перелічено платежі, які цей телефон бачив, поки був під'єднаний (надіслані й отримані), найновіші вгорі.
- Торкніться платежу. Діалог покаже суму, другу сторону, час, коментар та ідентифікатор транзакції.
- Торкніться Копіювати ID транзакції, щоб скопіювати повний ідентифікатор транзакції.
Як задати лічильник використаних підписів
Робіть це, лише якщо ця сід-фраза підписувала транзакції на іншому пристрої. Лічильник можна лише збільшувати. Якщо задати його занадто малим, можна повторно використати одноразовий ключ і розкрити його.
- Відкрийте Гаманець і під Ключ підпису торкніться Встановити кількість використаних підписів….
- Введіть нове значення в Нова кількість використаних (> поточна) і торкніться Продовжити.
- Прочитайте Збільшити до N?. Там попереджено, що цю дію не можна скасувати.
- Торкніться Збільшити лічильник. Застосунок покаже Оновлення лічильника…, потім Лічильник збільшено.
Як від'єднати гаманець на цей телефон
Від'єднати гаманець на цей телефон… переказує усі доступні до надсилання кошти на гаманець, сід-фраза якого живе на цьому телефоні, у застосунку Minima Core. Ваша хмарна ідентичність залишається. Сервер зберігає перегляд нової адреси лише для спостереження.
- Спершу встановіть Minima Core: Більше → Налаштування → Minima Core на цьому телефоні → Отримати Minima Core. Без нього застосунок покаже Потрібен Minima Core.
- У Minima Core відкрийте Гаманець → Отримати й скопіюйте свою адресу.
- У Parlons Cloud відкрийте Гаманець і торкніться Від'єднати гаманець на цей телефон….
- Вставте адресу в Адреса Mx… з Minima Core і торкніться Продовжити.
- Прочитайте Перевести сума MINIMA?. Там показано повну адресу й сказано, що після цього хмара лише спостерігатиме за нею.
- Торкніться Перевести й від'єднати. Усі доступні до надсилання кошти буде переказано на цю адресу однією транзакцією.
Якщо застосунок каже Зараз нічого надіслати — спершу синхронізуйте або дочекайтеся підтверджень, зачекайте й спробуйте ще раз.
Обліковий запис Parlons Node
Гаманцем облікового запису є власний гаманець Minima вузла.
- Баланс · увесь гаманець: MINIMA · доступно до надсилання, з усіх адрес гаманця вашого вузла, з підтвердженими, заблокованими й непідтвердженими сумами та іншими токенами вузла.
- Відкрити гаманець відкриває повний гаманець: баланси зі значками токенів, галерея NFT, надсилання (швидке або з керуванням монетами), отримання з QR-кодом, усі монети, історія в блокчейні та карбування. Усе працює на вашому вузлі й підписується там.
- Пересинхронізувати гаманець на нову фразу… переводить гаманець вузла на нову фразу з 24 слів.
Як відкрити повний гаманець вузла
- Відкрийте Гаманець.
- Торкніться Відкрити гаманець. Відкриється повний гаманець із власними вкладками для балансів, надсилання, отримання, монет, історії й карбування.
Як пересинхронізувати гаманець вузла на нову фразу
Скористайтеся цим, коли ключі підпису вузла вичерпано або коли вам потрібна нова сід-фраза. Ваша ідентичність, під'єднані пристрої й контакти залишаються. Кошти на старій фразі залишаються на старій фразі, тож спершу перекажіть їх.
- Відкрийте Гаманець і торкніться Пересинхронізувати гаманець на нову фразу….
- Введіть нову фразу в 24 слова через пробіл. Будь-що, крім 24 слів, дає Це не 24 слова.
- Торкніться Пересинхронізувати. Застосунок покаже Пересинхронізацію розпочато — вузол перезапуститься приблизно за хвилину; той самий акаунт, нова адреса гаманця.
- Зачекайте приблизно хвилину. Застосунок перепідключиться сам.
Якщо згодом на вкладці написано Остання пересинхронізація НЕ пройшла — гаманець не змінено, далі вказано причину. Старий гаманець і далі використовується.
Адреса лише для спостереження
Якщо обліковий запис не має власної адреси гаманця, вкладка пропонує Гаманець лише для перегляду. Ваші ключі витрачання ніколи не залишають пристрій; вузол може спостерігати, але ніколи не витрачати.
- Відкрийте Гаманець.
- Введіть адресу
Mx…у Адреса отримання Mx…. - Торкніться Встановити адресу спостереження. Застосунок покаже Встановлення…, потім Адресу спостереження встановлено.
- Тепер вкладка показує баланс цієї адреси лише для читання.
9Вузол
Вкладка Вузол — це пульт керування обліковим записом. Потягніть униз або знову відкрийте вкладку, щоб оновити її.
Згори вниз:
- Ваше ім'я. Як ви відображаєтеся у списках контактів, на кожному пристрої. Торкніться Змінити, введіть нове ім'я (наприклад, eurobuddha) і збережіть. Показується вашим контактам і буде зараз повторно оголошено всім їм.
- Стан. Завжди ввімкнено — у мережі (або Вузол недоступний), з Час роботи, Підключені ретранслятори і Поштова скринька. На старішому хості картка повідомляє Оновіть вузол до parlons-cloud 0.4.1+, щоб бачити повний стан.
- Чому вузол на VPS — найкращий вибір. Нагадування про те, що обліковий запис робить для вас: Завжди ввімкнено, Один обліковий запис на всіх пристроях і чи є він ретранслятором (Ви — ретранслятор, з кількістю вузлів мережі, або Ретранслятор вимкнено).
- Постійна адреса. Адреса, що ніколи не змінюється — знаходить вас на будь-якому пристрої. Копіювати і Показати QR.
- Розміщені облікові записи (лише коли цей обліковий запис керує хостом): Керувати розміщеними обліковими записами (розділ 11).
- Інструменти вузла і Транспорт і хости (лише коли хост надає консоль вузла, як це робить Parlons Node): Відкрити Terminal IDE і Відкрити панель керування (розділ 12).
- Під'єднані пристрої (N). Кожен пристрій, який може керувати обліковим записом. Цей телефон позначено цей пристрій; інші показано як під'єднано. Торкніться Відкликати, щоб відключити пристрій. Він втратить доступ до вашого облікового запису. Ваша ідентичність НЕ змінюється — інші пристрої продовжують працювати. Цю дію не можна скасувати (для повторного під'єднання знадобиться новий код). Тут також з'являється власна вебпанель хоста як локальний пристрій; відкликання її доступу блокує панель.
- Очікують підтвердження (N). Пристрої, що попросили під'єднання без коду (Пристрій хоче під'єднатися). Торкайтеся Схвалити, лише якщо впізнаєте ключ.
- Під'єднати мій інший пристрій (розділ 10), з нагадуванням про те, що означає під'єднання пристрою.
Якщо обліковий запис не відповідає, вкладка показує Не вдається зв'язатися з вашим вузлом. і причину.
Як задати ім'я облікового запису
- Відкрийте Вузол або торкніться Більше → Задати назву облікового запису.
- Під Ваше ім'я торкніться Змінити.
- Введіть нове ім'я (наприклад, eurobuddha). У діалозі сказано: Показується вашим контактам і буде зараз повторно оголошено всім їм.
- Торкніться Задати. Застосунок покаже Ім'я встановлено — оголошуємо вашим контактам….
Як скопіювати або показати постійну адресу
- Відкрийте Вузол і знайдіть Постійна адреса.
- Торкніться Копіювати, щоб скопіювати повну адресу
MAX#, або Показати QR, щоб показати її як QR-код.
Як відкликати доступ під'єднаного пристрою
- Відкрийте Вузол і прокрутіть до Під'єднані пристрої (N).
- Знайдіть пристрій. Цей телефон позначено цей пристрій.
- Торкніться Відкликати.
- Прочитайте Відкликати доступ цього пристрою? і торкніться Відкликати. Застосунок покаже Відкликано.
Пристрій одразу втрачає доступ. Ваша ідентичність не змінюється, інші пристрої продовжують працювати. Щоб повернутися, пристрою знадобиться новий код. Відкликання доступу власної вебпанелі хоста блокує панель (розділ 24).
Як схвалити пристрій, що попросив під'єднання
- Відкрийте Вузол і прокрутіть до Очікують підтвердження (N). Кожен запис має вигляд Пристрій хоче під'єднатися з ключем.
- Порівняйте ключ із тим, який показує новий пристрій (розділ 4, «Як під'єднатися без коду»).
- Торкайтеся Схвалити, лише якщо ключі збігаються. Застосунок покаже Схвалено.
10Додавання інших пристроїв: запрошення власника
Під'єднання пристрою дає йому повне керування цим обліковим записом: його чатами, контактами і, якщо є, гаманцем. Діліться запрошенням для пристрою лише з тим, хто має керувати цим обліковим записом. Щоб запросити друга, натомість створіть окремий розміщений обліковий запис (розділ 11).
З Порталу
- Відкрийте Вузол і торкніться Під'єднати мій інший пристрій.
- Що буде далі, залежить від хоста:
- Хости без служби пароля адміністратора (орендар на хості
parlons-tenantsабо гостьовий обліковий запис): новий код створюється одразу. - Хости зі службою пароля адміністратора (окремий обліковий запис
parlons-cloud, Parlons Node 0.2.118 або новіший і настільні застосунки-вузли): застосунок запитує Запросити пристрій. Введіть пароль адміністратора, щоб надати іншому пристрою доступ до цього облікового запису власника й терміналу Minima. Залиште поле порожнім, щоб створити окремий розміщений обліковий запис для друга.- Введіть пароль адміністратора й торкніться Продовжити, щоб створити запрошення власника.
- Залиште поле порожнім і торкніться Продовжити, щоб натомість відкрити керування розміщеними обліковими записами (або, якщо розміщення не налаштовано, Розміщення на цьому сервері ще не ввімкнено).
- Хости без служби пароля адміністратора (орендар на хості
- Застосунок покаже Створено новий код під'єднання з одноразовим кодом і повним запрошенням. Торкніться Копіювати запрошення або QR, щоб показати його як QR-код, який відсканує новий пристрій.
Пароль перевіряється на сервері й ніколи не зберігається на телефоні. Неправильний пароль ніколи не видає коду. Після невдалої спроби зачекайте кілька секунд, перш ніж пробувати знову (Зачекайте кілька секунд, перш ніж знову вводити пароль адміністратора). Якщо пароль адміністратора ще не задано, сервер відповідає Задайте пароль адміністратора на сторінці Parlons Devices у застосунку-хості. Для сервера з командним рядком використайте: sudo parlons-pair --set-admin-password (у розділі 23 пояснено, як задати його на кожному виді хоста).
Без пароля адміністратора: схвалення
Пристрій завжди можна додати й без коду. Для схвалення пароль адміністратора не потрібен.
- На новому пристрої під'єднайтеся з порожнім полем Код під'єднання (розділ 4, «Як під'єднатися без коду»).
- На вже під'єднаному пристрої відкрийте Вузол → Очікують підтвердження (N).
- Торкніться Схвалити поруч із ключем нового пристрою.
- На новому пристрої ще раз торкніться Підключитися й під'єднати.
Із сервера
Див. розділ 23: sudo parlons-pair --admin на Parlons Node, parlons newcode в обліковому записі, установленому однорядковим інсталятором, або Пристрої → Новий код підключення у вебпанелі на будь-якому хості з панеллю.
Як відключити загублений або замінений телефон
Відкликання нічого не змінює у вашій ідентичності.
- На будь-якому іншому під'єднаному пристрої відкрийте Вузол → Під'єднані пристрої (N).
- Знайдіть загублений телефон і торкніться Відкликати, потім ще раз Відкликати для підтвердження.
Або з термінала з командою parlons:
- Виведіть список пристроїв із повними ключами:
parlons devices - Відкличте доступ загубленого телефона за його повним ключем:
parlons revoke <key>
11Розміщення друзів: гостьові запрошення
Якщо ваш обліковий запис керує хостом, на вкладці «Вузол» є картка Розміщені облікові записи: Розміщуйте друзів на цьому сервері. Кожна людина отримує власний обліковий запис і запрошення без доступу до вашого облікового запису чи терміналу Minima. Так власник створює облікові записи для людей, які не запускатимуть сервер.
Тут з'являються два види хостів:
| Хост | Що отримують гості | Хто налаштовує |
|---|---|---|
Вбудоване розміщення чатів у Parlons Node, minimaCore Desktop, minimaDesk або окремому обліковому записі parlons-cloud | Облікові записи лише для чату: чат, дзвінки й файли. Без гаманця, термінала чи керування хостом. До десяти облікових записів. | Власник вмикає його в застосунку або в панелі хоста. |
Служба parlons-tenants, підключена до Parlons Node (--manage-from-node, розділ 21) | Повноцінні облікові записи орендарів із власними чатами й гаманцями. Вони не можуть керувати обліковим записом власника чи вузлом. | Її встановлює оператор сервера. |
Як розмістити друга
- Відкрийте Вузол → Керувати розміщеними обліковими записами. З'явиться список із заголовком Розміщені облікові записи (N/ліміт) або Служба розміщення не в мережі.
- Лише для вбудованого розміщення: уперше торкніться Параметри розміщення → Увімкнути розміщення. Діалог Увімкнути розміщення? пояснює: Ваш комп'ютер зберігатиме ключі й повідомлення гостьових облікових записів і має залишатися ввімкненим. Спочатку встановіть пароль адміністратора на сторінці Parlons Devices у застосунку хоста. Торкніться Увімкнути. Розміщення не можна ввімкнути, доки не задано пароль адміністратора (розділ 23). За кілька секунд торкніться Оновити (Розміщення запускається. Оновіть за кілька секунд.).
- Торкніться Створити обліковий запис. Під Розмістити друга введіть назву облікового запису (наприклад, alice) і торкніться Створити. Назва — від 1 до 64 літер, цифр, крапок, підкреслень або дефісів і починається з літери чи цифри.
- Торкайтеся Оновити, доки обліковий запис не покаже працює. Його стан змінюється від запускається до працює (або повторна спроба, якщо запуск не вдався).
- Торкніться облікового запису, потім Показати запрошення. Діалог Запрошення для ім'я показує повне запрошення. Це запрошення під'єднує пристрій до облікового запису ім'я. Тримайте його в таємниці, доки його не використано. Торкніться Копіювати запрошення і надішліть його приватно або дайте відсканувати.
- Ваш друг установлює Parlons Cloud (Android) або Parlons (iPhone), сканує чи вставляє запрошення й торкається Підключитися й під'єднати. Дійсний код під'єднує одразу. Запрошення друга не дає доступу до вашого облікового запису.
Як призупинити або відновити розміщений обліковий запис
- Відкрийте Вузол → Керувати розміщеними обліковими записами.
- Торкніться облікового запису.
- Торкніться Призупинити обліковий запис. Діалог Призупинити ім'я? повідомляє: Їхній обліковий запис вийде з мережі. Його ідентичність і чати буде збережено. Торкніться Призупинити.
- Щоб повернути його, торкніться облікового запису, потім Відновити обліковий запис. Діалог Відновити ім'я? повідомляє: Їхній обліковий запис знову підключиться на цьому сервері. Торкніться Продовжити.
- Торкніться Оновити, щоб побачити новий стан.
Як зупинити вбудоване розміщення
- Відкрийте Вузол → Керувати розміщеними обліковими записами.
- Торкніться Параметри розміщення → Зупинити розміщення.
- Діалог Зупинити розміщення? повідомляє: Усі гостьові облікові записи вийдуть із мережі. Їхні ідентичності та чати буде збережено. Торкніться Зупинити.
Щоб знову його запустити, виконайте крок 2 з «Як розмістити друга».
Ліміт ураховує й призупинені облікові записи. Коли його досягнуто, створення ще одного завершується повідомленням Hosting limit reached (10 accounts) («досягнуто ліміту розміщення: 10 облікових записів») або іншим лімітом, який використовує хост.
Гість може керувати власним обліковим записом і під'єднувати власні інші пристрої. Він також може будь-коли створити резервну копію всього облікового запису й перейти до іншого хоста (розділ 16).
12Інструменти вузла: Terminal IDE і панель керування
Ці дві картки з'являються, лише коли обліковий запис працює на хості, що надає консоль вузла, тобто на Parlons Node. Звичайний обліковий запис parlons-cloud їх не має; керуйте його ретрансляторами й каталогом через вебпанель або команду parlons (розділи 24 і 26).
Відкрити Terminal IDE
Повний командний рядок Minima ВАШОГО вузла, а також IDE для скриптів KISS і робоче місце для ручних транзакцій - кожна команда виконується на вузлі через цей під'єднаний канал, вивід повний і доступний для копіювання. Екран Terminal IDE має чотири вкладки: Термінал, Скрипти, Транзакції і Журнали. Кожну команду записано в журнал вузла як виконану під'єднаним пристроєм. Команда quit відхиляється; перезапускайте вузол на сервері.
Як виконати команду Minima на вашому вузлі
- Відкрийте Вузол і під Інструменти вузла торкніться Відкрити Terminal IDE.
- На вкладці Термінал введіть команду в команда…, наприклад:
balance - Торкніться Виконати. Повний вивід з'явиться вище.
- Кнопками Попередня команда і Наступна команда переходьте між виконаними командами. Утримуйте кнопку обраного, щоб зберегти команду.
- Щоб зберегти вивід, відкрийте меню й виберіть Скопіювати весь вивід, Виділити й скопіювати вивід або Експортувати сесію…. Очистити термінал очищає екран.
Як читати журнал вузла
- У Terminal IDE відкрийте вкладку Журнали.
- Прокручуйте журнал. Його зчитано з вашого вузла через під'єднаний канал.
Відкрити панель керування
Хости, досяжність, статистика ретранслятора, MLS/розташування та журнал подій наживо — усе, чим користується оператор VPS. Екран Панель керування вузлом містить:
- Стан: версія, час роботи, контакти, поштова скринька, вихідні, публічний ретранслятор і його Перевірка ретранслятора (перевірено — ретранслює на цей вузол, під'єднано, перевірка… або не підключено), Пряма досяжність і Пряма адреса, якщо вона є.
- Ретранслятор (ви передаєте трафік для мережі): під'єднані клієнти, ретрансльовані повідомлення, збережені блоби, вузли мережі.
- Хости: ретранслятори, до яких під'єднано обліковий запис. Від'єднати прибирає один із них. Щоб додати, введіть
host:port(наприклад,relay.example.com:9501) або вставте текст QR-коду ретранслятора, потім Додати й підключитися. Перемикач Обліковий запис використовує вбудований список ретрансляторів вмикає або вимикає список, що постачається разом із програмою; його не можна вимкнути, доки у вас немає власного ретранслятора. - Розташування (MLS): де визначається ваша постійна адреса. Закріпити назавжди (або Закріпити знову), Зняти закріплення, Опублікувати повторно і Копіювати постійну адресу. Закріплено — контакти завжди знаходять вас за постійною адресою.
- Журнал подій з кнопками Очистити і Оновити.
Як додати ретранслятор до облікового запису
- Відкрийте Вузол → Відкрити панель керування.
- Під Хости введіть
host:port(наприклад,relay.example.com:9501) або вставте текст QR-коду ретранслятора. - Торкніться Додати й підключитися. Застосунок покаже Підключення…, і ретранслятор з'явиться в списку.
Як від'єднати ретранслятор
- Відкрийте Вузол → Відкрити панель керування.
- Під Хости торкніться Від'єднати поруч із ретранслятором. Застосунок покаже Від'єднання….
Як увімкнути або вимкнути вбудований список ретрансляторів
- Відкрийте Вузол → Відкрити панель керування.
- Під Хости перемкніть Обліковий запис використовує вбудований список ретрансляторів. Перш ніж вимкнути його, потрібно додати власний ретранслятор.
Як закріпити постійну адресу
- Відкрийте Вузол → Відкрити панель керування і знайдіть Розташування (MLS).
- Торкніться Закріпити назавжди (або Закріпити знову, якщо закріплення вже є). Застосунок покаже Постійну адресу закріплено.
- Копіювати постійну адресу копіює повну адресу.
- Щоб скасувати, торкніться Зняти закріплення. Щоб негайно знову розіслати свій запис у каталозі, торкніться Опублікувати повторно.
Як читати й очищати журнал подій
- Відкрийте Вузол → Відкрити панель керування і прокрутіть до Журнал подій.
- Торкніться Оновити, щоб побачити найновіші рядки, або Очистити, щоб очистити журнал.
13Довідник налаштувань
Відкрийте Більше → Налаштування.
| Розділ | Пункт | Що він робить |
|---|---|---|
| (вгорі) | Змінити мову | Вибирає мову застосунку для цього пристрою. |
| Ваш обліковий запис | Надсилати звіти про прочитання | Дозвольте людям бачити, коли ви прочитали їхні повідомлення. Задається на вашому вузлі — діє з усіх пристроїв. |
| Конфіденційність і безпека | Блокування застосунку | Вимагати відбиток пальця або PIN-код пристрою для відкриття Parlons Cloud. Спершу потрібно налаштувати в Android відбиток пальця або блокування екрана. |
| Дозволити показ екрана | Увімкнено за замовчуванням. Вимкніть, щоб приховати застосунок від знімків і запису екрана, поки його заблоковано. | |
| Сповіщення | Звук повідомлення | Відтворювати сигнал Parlons для нових повідомлень. Якщо вимкнено, сповіщення залишається, але без звуку (вібрація зберігається). |
| Налаштування вхідних дзвінків | Відкриває налаштування Android для мелодії дзвінка, вібрації та повноекранних сповіщень на заблокованому екрані. | |
| Ключі й резервна копія | Показати сід-фразу | Показує 24 слова облікового запису (розділ 16). |
| Створити резервну копію облікового запису… | Записує зашифровану резервну копію всього облікового запису у вибраний вами файл (розділ 16). | |
| Імпортувати ідентичність або резервну копію… | Замінює обліковий запис на сервері іншою ідентичністю (розділ 16; лише Parlons Node 0.2.117 або новіший). | |
| Minima Core на цьому телефоні | Відкрити Minima Core / Отримати Minima Core | Minima Core запускає повний вузол Minima на телефоні. Це місце для гаманця, незалежного від вашої хмарної ідентичності, і він потрібен для Від'єднати гаманець на цей телефон…. |
| Цей пристрій | Ретранслятори, з яких починає цей телефон | Де цей телефон спершу шукає ваш обліковий запис (див. нижче). |
| Налаштування сповіщень | Відкриває налаштування сповіщень Android для застосунку. | |
| Працювати у фоновому режимі | Просить Android вивести застосунок з-під оптимізації батареї. Показується, лише поки застосунок ще не виведено. | |
| Про застосунок | Версія порталу | Установлена версія. |
| Адреса облікового запису | Адреса вашого облікового запису (діліться нею — вона ніколи не змінюється), повністю. |
Як увімкнути або вимкнути звіти про прочитання
- Відкрийте Більше → Налаштування.
- Під Ваш обліковий запис перемкніть Надсилати звіти про прочитання. Налаштування зберігається у вашому обліковому записі, тож діє з усіх пристроїв.
Як заблокувати застосунок
- Спершу налаштуйте відбиток пальця або блокування екрана в налаштуваннях Android. Інакше застосунок скаже Спочатку налаштуйте відбиток пальця або блокування екрана в налаштуваннях телефону.
- Відкрийте Більше → Налаштування.
- Під Конфіденційність і безпека увімкніть Блокування застосунку.
- Відтепер під час відкриття застосунку з'являється Розблокувати Parlons Cloud. Скористайтеся відбитком пальця або PIN-кодом пристрою.
Щоб приховати застосунок від знімків і запису екрана, поки його заблоковано, вимкніть Дозволити показ екрана в тому самому розділі.
Як вимкнути сигнал повідомлень
- Відкрийте Більше → Налаштування.
- Під Сповіщення вимкніть Звук повідомлення. Нові повідомлення й далі надходять зі сповіщенням і вібрацією, але без сигналу.
Як змінити мелодію дзвінка та сповіщення про дзвінки на заблокованому екрані
- Відкрийте Більше → Налаштування.
- Під Сповіщення торкніться Налаштування вхідних дзвінків. Відкриються налаштування самого Android.
- Виберіть мелодію та вібрацію й дозвольте повноекранні сповіщення на заблокованому екрані.
Як тримати застосунок підключеним у фоновому режимі
- Відкрийте Більше → Налаштування і прокрутіть до Цей пристрій.
- Торкніться Працювати у фоновому режимі. Android запитає, чи дозволити застосунку ігнорувати оптимізацію батареї.
- Дозвольте. Пункт зникне, щойно застосунок буде виведено з-під оптимізації.
- Щоб перевірити канали сповіщень, торкніться Налаштування сповіщень у тому самому розділі.
Як відкрити або встановити Minima Core
- Відкрийте Більше → Налаштування і знайдіть Minima Core на цьому телефоні.
- Якщо Minima Core установлено, на картці написано Minima Core встановлено ✓. Торкніться Відкрити Minima Core.
- Якщо ні, торкніться Отримати Minima Core, щоб установити його.
Як задати ретранслятори, з яких починає цей телефон
Це ретранслятори, якими телефон користується, щоб знайти обліковий запис (власні ретранслятори облікового запису задаються в самому обліковому записі, розділ 12 або 24).
- Торкніться Ретранслятори, з яких починає цей телефон. У списку кожен ретранслятор позначено як вбудований або ваш.
- Щоб додати ретранслятор, введіть
host:portабо вставте текст QR-коду ретранслятора й торкніться Додати. Або торкніться Сканувати QR-код ретранслятора. Текст QR-коду ретранслятора починається зparlons-relay:. - Прибрати видаляє ваш власний ретранслятор. Потрібно залишити принаймні один; якщо прибрати останній власний, знову ввімкнеться вбудований список.
- Використовувати вбудовані ретранслятори (список, що постачається із застосунком) вмикає або вимикає вбудований список. Перш ніж вимкнути його, потрібно додати власний ретранслятор.
- Скинути повертає до вбудованого списку. Готово закриває діалог.
Зміни набувають чинності під час наступного перепідключення.
14Сповіщення, дзвінки та постійне з'єднання
Застосунок підтримує постійне зашифроване з'єднання з вашим обліковим записом як службу переднього плану Android, щоб повідомлення надходили зі сповіщеннями, а дзвінки дзвонили. Його постійне сповіщення — Підключено до вашого хмарного облікового запису. Після перезапуску телефона застосунок перепідключається сам, якщо пристрій під'єднано.
Канали сповіщень Android:
| Канал | Для чого |
|---|---|
| Повідомлення / Повідомлення (без звуку) | Нові повідомлення у вашому хмарному обліковому записі (канал без звуку — коли Звук повідомлення вимкнено). |
| Вхідні дзвінки | Вхідні дзвінки, зокрема повноекранні сповіщення на заблокованому екрані. |
| Хмарне з'єднання | Постійне сповіщення про з'єднання. |
| Оновлення карбування | Перебіг карбування NFT, запущеного з гаманця. |
Дзвінки. Голосові й відеодзвінки — лише віч-на-віч. Аудіо й відео зашифровано між двома пристроями. Застосунок уперше запитує доступ до мікрофона (і камери, для відео).
Як відповісти на дзвінок
- Вхідний дзвінок показує Вхідний дзвінок Parlons (або Вхідний відеодзвінок Parlons), на весь екран на заблокованому екрані, якщо Android це дозволяє.
- Торкніться Відповісти, щоб прийняти, або Відхилити, щоб відмовитися.
- Під час дзвінка використовуйте Вимкнути мікрофон / Увімкнути мікрофон, Гучномовець / Динамік, Змінити (перемкнути камеру, лише відео) і Завершити.
Як зателефонувати, див. розділ 6, «Як зателефонувати контакту».
Якщо повідомлення надходять із запізненням
- Відкрийте Більше → Налаштування → Цей пристрій і торкніться Працювати у фоновому режимі, якщо цей пункт показано (розділ 13).
- Переконайтеся, що Android дозволяє сповіщення застосунку (Налаштування сповіщень у тому самому розділі).
- Перевірте індикатор стану. На ньому має бути у мережі · N хостів.
- Якщо на індикаторі недоступно, можливо, зупинено сам обліковий запис (розділ 17).
15Використання облікового запису з інших застосунків Parlons
Одним обліковим записом можна керувати з кількох місць одночасно. Кожне з них — окремий під'єднаний пристрій із власним ключем.
- iPhone: застосунок Parlons (поки недоступний). Коли його випустять: відскануйте або вставте запрошення того самого виду; він під'єднується до облікового запису так само, як Портал. Кожному наступному пристрою потрібен власний новий код.
- Браузер на машині, де працює обліковий запис: вебпанель. Вона схожа на застосунок Parlons! (заголовок Parlons!, вкладки «Чати», «Контакти», «Пристрої», «Вузол», «Налаштування») і працює як локальний пристрій облікового запису (розділ 24).
- Термінал: команда
parlons. Установлюється однорядковим інсталятором.parlons chats,parlons send <contact key> helloта інші команди з розділу 26 керують обліковим записом так само, як телефон. - minimaCore Desktop і minimaDesk вбудовують ту саму панель на своїй сторінці Parlons для облікового запису, який запускає їхній вузол.
Повний застосунок Parlons! для Android не є клієнтом. Він зберігає власну ідентичність на телефоні й не під'єднується до облікового запису. Проте ідентичність можна переносити між ними: резервна копія, створена з вашого хмарного облікового запису (Створити резервну копію облікового запису…), відновлюється в застосунку Parlons! (ідентичність і контакти). Ніколи не запускайте одну ідентичність у двох місцях одночасно (розділ 16).
Як під'єднати iPhone до того самого облікового запису
Застосунок для iPhone поки недоступний. Ось кроки на час, коли його випустять.
- На вже під'єднаному пристрої відкрийте Вузол → Під'єднати мій інший пристрій і створіть нове запрошення (розділ 10).
- На iPhone відкрийте застосунок Parlons.
- Торкніться Сканувати QR акаунта і відскануйте запрошення або вставте його.
- Завершіть під'єднання в застосунку для iPhone. Дійсний код під'єднує одразу.
Ваш обліковий запис і застосунки інших людей. Будь-хто, хто користується будь-яким застосунком Parlons або класичним вузлом Minima з Maxima, може додати вашу адресу MAX# як контакт і писати вам.
16Резервні копії, відновлення та перенесення
Ваші 24 слова
Кожен обліковий запис — це 24 слова. Адреса облікового запису виводиться з них, тож ті самі слова будь-де дають ту саму адресу. Вони також є гаманцем Minima: будь-хто, хто їх прочитає, може витратити все, що на них зберігається.
Як побачити свої 24 слова
- Переконайтеся, що ніхто не бачить вашого екрана.
- Відкрийте Більше → Налаштування і під Ключі й резервна копія торкніться Показати сід-фразу.
- Діалог Показати сід-фразу? попереджає: Ця фраза керує вашою ідентичністю Parlons. Вона може відрізнятися від фрази гаманця сервера. Переконайтеся, що ніхто не дивиться. Вона передається на цей телефон зашифрованим каналом. Торкніться Показати.
- З'являться Ваші 24 слова. Запишіть їх на папері.
- Торкніться Закрити. Якщо натомість торкнутися Копіювати, застосунок скаже Скопійовано — буфер обміну очиститься через 60 с.
Фраза ідентичності й фраза гаманця можуть відрізнятися, наприклад після Пересинхронізувати гаманець на нову фразу… на Parlons Node або після імпорту ідентичності. Бережіть обидві.
Запишіть слова на папері й зберігайте папір офлайн. Ніколи не фотографуйте їх, не надсилайте електронною поштою і не вставляйте в чат.
Як створити резервну копію всього облікового запису
- Відкрийте Більше → Налаштування і під Ключі й резервна копія торкніться Створити резервну копію облікового запису….
- У Резервне копіювання облікового запису введіть парольну фразу в Парольна фраза (щонайменше 6 символів) і ще раз у Повторіть парольну фразу. Її НЕМОЖЛИВО відновити, якщо ви її втратите.
- Торкніться Створити резервну копію.
- Застосунок покаже Створення зашифрованої резервної копії…, а потім запитає, куди зберегти файл
.pbk. - Збережіть його в надійному місці. Резервну копію збережено підтверджує збереження. (Якщо надто довго не вибирати місце, застосунок скаже Термін дії резервної копії минув — експортуйте ще раз.)
Пакет шифрується вашою парольною фразою, перш ніж залишити вузол. Він містить ідентичність, під'єднані пристрої, налаштування, контакти й історію чатів у тому самому форматі .pbk, який читає застосунок для телефона. Медіафайли й вміст приватних файлів не входять. У терміналі той самий файл створює parlons backup <file.pbk>.
Як відновити обліковий запис на власній машині
- Створіть резервну копію (вище) або візьміть наявну.
- На машині, де працюватиме обліковий запис, відновіть пакет у порожню папку даних за допомогою
--restoreдо запуску облікового запису. Точні команди наведено в розділі 19, «Перенесення облікового запису на іншу машину». - Назавжди зупиніть стару копію.
Адреса не змінюється, тож кожен під'єднаний пристрій перепідключиться сам.
Як імпортувати ідентичність на Parlons Node із застосунку
Для цього потрібен Parlons Node 0.2.117 або новіший. На інших хостах застосунок скаже Оновіть Parlons Node до версії 0.2.117 або новішої, щоб імпортувати з цього застосунку.
- Спершу зупиніть ідентичність на її початковому пристрої або сервері.
- Відкрийте Більше → Налаштування і під Ключі й резервна копія торкніться Імпортувати ідентичність або резервну копію….
- Виберіть, що імпортувати:
- введіть Фраза відновлення; або
- виберіть Власна фраза (Minima anyphrase) для нестандартної фрази (кожен пробіл і кожна велика літера зберігаються); або
- торкніться Вибрати резервну копію .pbk натомість…, виберіть файл і введіть його Пароль резервної копії.
- Торкніться Переглянути імпорт. Перевірте нову адресу.
- Позначте Я зупинив цю ідентичність на її початковому пристрої чи сервері.
- Торкніться Імпортувати й перезапустити. Сервер перезапуститься (Сервер перезапускається. Перепідключення до імпортованої ідентичності…), і застосунок перепідключиться (Ідентичність імпортовано й підключено).
Це замінює ідентичність Parlons, контакти й чати сервера. Його гаманець Minima і фраза гаманця не змінюються. Попередній обліковий запис зберігається на сервері для відновлення. Якщо з'єднання обірветься, знову відкрийте екран і торкніться Продовжити / перевірити імпорт. Скасувати підготовлений імпорт скасовує імпорт до підтвердження. Ваша фраза ніколи не зберігається на телефоні.
Одна ідентичність — одне місце
Запускайте кожну ідентичність лише в одному місці одночасно. Дві копії плутають ваших контактів і можуть повторно використати ключі гаманця, які ніколи не можна використовувати повторно. Переносьте, а не копіюйте: назавжди зупиніть стару копію, перш ніж запускати нову.
Як піти від хоста
Піти можна будь-коли. Ваша адреса не змінюється, тож ваші контакти й під'єднані пристрої продовжать працювати.
- Створіть резервну копію всього облікового запису (вище) і збережіть парольну фразу.
- Попросіть хост призупинити стару копію (розділ 22, «Призупинення та відновлення»), щоб ідентичність ніколи не працювала у двох місцях.
- Відновіть пакет на власній машині й запустіть його (розділ 19, «Перенесення облікового запису на іншу машину»).
- Перевірте, що ваш телефон перепідключився до нової копії.
- Попросіть хост назавжди видалити стару копію.
17Усунення несправностей для власників облікових записів
| Ознака | Що робити |
|---|---|
| Не вдалося підключитися: … під час під'єднання, або на індикаторі недоступно | Обліковий запис не під'єднаний до ретранслятора: він зупинений, не має інтернету або щойно запустився. На його машині виконайте parlons status; на Parlons Node — journalctl -u parlons-node -f; для розміщеного облікового запису зверніться до оператора. |
| Не вдалося під'єднати | Код був неправильним, уже використаним або заміненим новішим. Попросіть нове запрошення. |
| Запит на під'єднання надіслано. Підтвердьте його з уже під'єднаного пристрою | Ви під'єдналися без коду. Схваліть цей пристрій з іншого під'єднаного пристрою, а потім знову відкрийте застосунок. |
| Для запрошення в обліковий запис власника потрібен пароль адміністратора | Хост захищає запрошення власника. Введіть пароль адміністратора або натомість схваліть під'єднання без коду (розділ 10). |
| Задайте пароль адміністратора на сторінці Parlons Devices у застосунку-хості… | Пароль адміністратора ще ніхто не задав. Розділ 23. |
| Розміщення на цьому сервері ще не ввімкнено / Служба розміщення не в мережі | Вбудоване розміщення вимкнено або служба орендарів хоста зупинена. Розділ 11, або зверніться до оператора. |
| У цьому обліковому записі доступні лише чат, дзвінки й файли; керування гаманцем і хостом вимкнено | Ви користуєтеся гостьовим обліковим записом лише для чату. |
| Повідомлення надходять із запізненням або лише коли застосунок відкрито | Налаштування → Цей пристрій → Працювати у фоновому режимі; дозвольте сповіщення; перевірте індикатор стану. |
| Галочка ніяк не стає подвійною | Інший пристрій ще не підтвердив отримання. Повідомлення чекає; воно не втрачене. |
| Повідомлення не доставлено | Торкніться Перепідключити в діалозі або Контакти → контакт → Більше → Перепідключитися зараз. |
| Кнопка сканування нічого не робить | Дозвольте доступ до камери, коли застосунок попросить. |
| Загублений телефон | Відкличте його доступ з іншого під'єднаного пристрою (розділ 10). Обліковий запис і його історія не постраждають. |
| Застосунок заблоковано після невдалого запиту відбитка пальця | Розблокувати Parlons Cloud запитує знову; PIN-код пристрою теж підходить. |
Де шукати журнали: Вузол → Відкрити панель керування → Журнал подій (Parlons Node); в інших випадках зверніться до того, хто керує машиною (розділ 30).
Частина B. Розміщення облікових записів
18Який хост вам потрібен?
| Вам потрібно | Використовуйте | Розділ |
|---|---|---|
| Власний обліковий запис на Mac, Linux-машині, Raspberry Pi чи ПК з Windows | Однорядковий інсталятор (get-parlons-cloud.sh / .ps1) | 19 |
| Власний обліковий запис на VPS, яким ви керуєте зі свого ноутбука, що також передає трафік ретранслятора | ops/deploy-parlons-cloud.sh | 20 |
| Облікові записи для кількох людей на одному сервері із зашифрованими сід-фразами на диску | ops/deploy-parlons-tenants.sh і служба parlons-tenants | 21 |
| Повний вузол Minima з вбудованим Parlons | Parlons Node (cloud/NODE-SETUP.md); додайте поруч parlons-tenants, щоб розміщувати друзів | 21, 23 |
| Гостьові облікові записи лише для чату всередині вашого власного облікового запису | Вбудоване розміщення (вебпанель або Портал) | 11, 24 |
Кожному хосту потрібна машина, яка постійно ввімкнена й має вихідний доступ до інтернету. Окремому обліковому запису не потрібні ні домен, ні сертифікат TLS, ні зворотний проксі. Вхідні порти потрібні, лише якщо хост також запускає ретранслятор для інших.
19Один обліковий запис на власній машині: однорядкові інсталятори
Як установити на Mac, Linux, Raspberry Pi або VPS
- Відкрийте термінал на машині, де працюватиме обліковий запис.
- Вставте це й натисніть Enter:
curl -fsSL https://raw.githubusercontent.com/eurobuddha/maxima/main/ops/get-parlons-cloud.sh | bash - Зачекайте, доки завершаться п'ять кроків. Останній екран покаже вашу адресу, QR-код запрошення й текст запрошення.
- На телефоні під'єднайте Портал за цим запрошенням (розділ 4).
- Одразу створіть резервну копію сід-фрази (нижче).
Як установити на Windows 10 або 11
- Відкрийте PowerShell.
- Вставте це й натисніть Enter:
irm https://raw.githubusercontent.com/eurobuddha/maxima/main/ops/get-parlons-cloud.ps1 | iex - Зачекайте завершення, потім під'єднайте телефон за виведеним запрошенням (розділ 4).
- Створіть резервну копію сід-фрази з
C:\Users\<you>\.parlons\seed.txt(нижче).
Скрипт для Windows сам про себе повідомляє, що автори ще не перевірили його на машині з Windows. Повідомляйте про будь-які проблеми.
Що робить інсталятор
Інсталятор:
- установлює Java 11 або новішу, якщо її немає (Homebrew на Mac, apt, dnf, apk або pacman на Linux, winget на Windows), а також
qrencode, де це можливо; - завантажує найновіший випуск
parlons-cloudз GitHub і перевіряє його контрольну суму SHA-256; - реєструє службу, яка переживає перезавантаження: агент launchd на Mac, користувацький модуль systemd (з linger) або системний модуль на Linux, заплановане завдання з назвою Parlons Cloud на Windows;
- запускає обліковий запис, під'єднує цей термінал як перший пристрій і створює новий код;
- виводить адресу облікового запису, запрошення для вашого телефона (текстом і QR-кодом) і команду
parlons.
Завершується це так (адресу й запрошення виведено повністю):
Your Parlons account is running (Parlons Cloud 0.11.124).
Address (share it; it never changes):
<the full MAX# address>
Pair your phone: open the Parlons Cloud app, tap Scan account QR, point it at this:
<a QR code, drawn in the terminal>
or paste the invite (the code half works once):
<the full invite>
BACK UP YOUR SEED NOW: ~/.parlons/seed.txt - it is your identity AND a wallet.
У тексті інсталятора написано Scan account QR — це напис застосунку для iPhone. В Android-Порталі кнопка називається Сканувати QR-код під'єднання.
Параметри
| Параметр | Дія |
|---|---|
… | bash -s -- --no-relay (Windows: .\get-parlons-cloud.ps1 -NoRelay) | Лише обліковий запис: без ретрансляції для інших. За замовчуванням обліковий запис також запускає ретранслятор на TCP-порту 9501. |
… | bash -s -- --update | Завантажити найновіший випуск і перезапустити. Повторний запуск команди встановлення робить те саме. |
… | bash -s -- --uninstall (Windows: -Uninstall) | Зупинити й видалити службу. Дані облікового запису зберігаються. |
PARLONS_DATA=<dir> | Папка даних (за замовчуванням ~/.parlons). |
PARLONS_HEAP=<size> | Купа Java (за замовчуванням 256m). |
За замовчуванням обліковий запис працює з --relay-port 9501 --no-direct: він ретранслює для інших на порту 9501, а на Linux інсталятор відкриває 9501 в ufw, якщо ufw активний. Якщо 9501 недоступний ззовні, нічого не ламається: обліковий запис і далі працює через мережу ретрансляторів, просто не передає чужих повідомлень. З --no-relay він узагалі не відкриває вхідних портів. Його вебпанель слухає на 127.0.0.1:9587 (розділ 24).
Як зробити ваш ретранслятор доступним для інших
- Установіть як зазвичай; ретранслятор увімкнено за замовчуванням.
- Переконайтеся, що TCP-порт 9501 доступний з інтернету: дозвольте його в брандмауері вашого хмарного провайдера або переадресуйте на домашньому роутері.
- На Linux інсталятор відкриває 9501 в ufw, якщо ufw активний.
- Перевірте порт з іншої машини (розділ 28).
Як установити без ретранслятора
curl -fsSL https://raw.githubusercontent.com/eurobuddha/maxima/main/ops/get-parlons-cloud.sh | bash -s -- --no-relay
На Windows завантажте get-parlons-cloud.ps1 і виконайте .\get-parlons-cloud.ps1 -NoRelay.
Як використати іншу папку даних або розмір купи
- Задайте змінну перед
bash:curl -fsSL https://raw.githubusercontent.com/eurobuddha/maxima/main/ops/get-parlons-cloud.sh | PARLONS_DATA=/srv/parlons PARLONS_HEAP=512m bash - Використовуйте ті самі змінні під час кожного наступного запуску інсталятора, щоб він знаходив ту саму папку.
Як оновити
- Виконайте:
parlons updateАбо знову виконайте команду встановлення. На Windows знову виконайте команду встановлення.
- Інсталятор завантажує найновіший випуск, перевіряє його SHA-256 і перезапускає обліковий запис.
- Перевірте, що він знову працює:
parlons status
Як видалити службу й зберегти дані
- Виконайте:
parlons uninstallНа Windows виконайте
.\get-parlons-cloud.ps1 -Uninstall. - Службу буде зупинено й видалено. Дані облікового запису залишаються в папці даних.
Щодня
| Mac / Linux | Windows | |
|---|---|---|
| Чи працює? | parlons status | parlons status |
| Стежити за журналом | parlons log | parlons log |
| Зупинити / запустити / перезапустити | parlons stop, parlons start, parlons restart | parlons stop, parlons start |
| Оновити | parlons update (або знову виконати команду встановлення) | знову виконати команду встановлення |
| Видалити службу, зберегти дані | parlons uninstall | .\get-parlons-cloud.ps1 -Uninstall |
| Відкрити вебпанель | parlons panel | parlons panel |
| Де що зберігається | ~/.parlons (дані), ~/.parlons/bin (програма), ~/.parlons-client (власний ключ пристрою термінала) | %USERPROFILE%\.parlons, %USERPROFILE%\.parlons-client |
Щоб видалити сам обліковий запис (ідентичність, чати, сід-фразу), деінсталятор пропонує вам самостійно видалити папку даних і ~/.parlons-client. Спершу створіть резервну копію: видалення сід-фрази видаляє ідентичність і всі кошти, що на ній зберігаються.
Резервна копія сід-фрази
~/.parlons/seed.txt (на Windows C:\Users\<you>\.parlons\seed.txt) містить 24 слова. Інсталятор ніколи їх не виводить.
- Переконайтеся, що ніхто не бачить вашого екрана.
- Покажіть слова:
cat ~/.parlons/seed.txtАбо з будь-якого під'єднаного термінала:
parlons seed. - Перепишіть їх на папір. Зберігайте папір у надійному місці й офлайн.
- Очистіть термінал.
Перенесення облікового запису на іншу машину
- На старій машині:
parlons backup my-account.pbk, виберіть парольну фразу. - Скопіюйте файл на нову машину.
- На новій машині відновіть його до запуску інсталятора, у папку, яку використовуватиме інсталятор:
mkdir -p ~/.parlons curl -fsSL -o ~/parlons-cloud.jar "$(curl -fsSL https://api.github.com/repos/eurobuddha/maxima/releases | grep -oE 'https://github.com/[^"]+/cloud-v[^"]+/parlons-cloud-[0-9.]+\.jar' | head -1)" java -jar ~/parlons-cloud.jar --data ~/.parlons --restore my-account.pbk curl -fsSL https://raw.githubusercontent.com/eurobuddha/maxima/main/ops/get-parlons-cloud.sh | bash--restoreзапитує парольну фразу в консолі й відмовляється працювати поверх наявної ідентичності. Він виводить, що відновив (ім'я, контакти, лічильники використання ключів, під'єднані пристрої та записи чатів). - Назавжди зупиніть стару машину: виконайте там
parlons uninstallі зберігайте її дані лише як холодну резервну копію.
Під'єднані пристрої перепідключаться самі, бо адреса та сама.
20Один обліковий запис на VPS: deploy-parlons-cloud.sh
Як розгорнути обліковий запис на VPS
- На власному комп'ютері отримайте копію репозиторію.
- Зберіть jar або покладіть випущений
parlons-cloud-0.11.124.jarуdist/:./gradlew :cloud:fatJar - Переконайтеся, що можете підключитися до VPS через SSH як root без запиту пароля.
- Запустіть скрипт розгортання:
ops/deploy-parlons-cloud.sh root@vps.example.com --port 9501 --name "My account" - Наприкінці скрипт виведе адресу облікового запису й одноразовий код під'єднання. Під'єднайте ними телефон (розділ 4).
- Один раз прочитайте сід-фразу й збережіть її офлайн:
ssh root@vps.example.com 'cat /var/lib/maxima/seed.txt' - Дозвольте порт ретранслятора в брандмауері вашого хмарного провайдера й перевірте його з іншої машини (розділ 28).
Щоб пізніше оновити, знову виконайте ту саму команду. Установлення й оновлення — одна й та сама операція.
Параметри
--port N (порт ретранслятора, за замовчуванням 9501), --name "…" (ім'я для показу), --jar FILE (за замовчуванням найновіший dist/parlons-cloud-*.jar), --heap 256m, --memmax 1024M, --blob 1024 (сховище медіа ретранслятора в MB), --peers h:p,h:p (вузли mesh-мережі для ретранслятора).
Скрипт ідемпотентний: установлення й оновлення — та сама команда. По черзі він:
- установлює Java без графічного інтерфейсу, якщо на сервері її немає;
- створює непривілейованого користувача
maximaі/var/lib/maxima(режим 700); - вивантажує jar у
/opt/maxima, перевіряє його SHA-256 і лише після цього спрямовує на нього символьне посиланняparlons-cloud.jar; - записує захищений
parlons-cloud.service(ізольований, з обмеженням пам'яті, фільтрацією seccomp і заблокованими адресами хмарних метаданих), що запускає--data /var/lib/maxima --relay-port <port> --no-direct --blobstore <MB>; - відкриває порт ретранслятора в ufw або firewalld, якщо один із них активний;
- запускає службу й перевіряє, що вона слухає;
- виводить адресу облікового запису й одноразовий код під'єднання.
Він ніколи не виводить сід-фразу. Прочитайте її один раз через SSH, як у кроці 6 вище.
Якщо скрипт не вивів адреси чи коду
- Підключіться до VPS через SSH.
- Знайдіть адресу в журналі:
journalctl -u parlons-cloud | grep 'permanent address' | tail -1 - Якщо пристрій уже під'єднано, початкового коду на диску немає. Створіть новий код з під'єднаного пристрою (розділ 10).
Ручне встановлення (чотири команди, мінімальний модуль) описано в cloud/SETUP.md. Зверніть увагу: коли обліковий запис працює під systemd, його вивід — це журнал, і програма навмисно ніколи не виводить туди нову сід-фразу; запустіть її один раз на передньому плані, якщо хочете побачити слова під час першого запуску, або прочитайте seed.txt пізніше.
21Багато облікових записів: служба parlons-tenants
Хост із багатьма обліковими записами тримає по одному постійно ввімкненому обліковому запису в кожній папці одного каталогу, усі в одному процесі. Він для людей, які не запускатимуть власний сервер: користувача iPhone, друга, рецензента. Кожен орендар має власну ідентичність, пристрої, чат і резервну копію й може будь-коли піти, забравши зашифрований пакет.
Як установити хост орендарів
Вам потрібна Linux-машина, яка постійно ввімкнена (512 MB RAM вистачає приблизно на десять облікових записів), і репозиторій на власному комп'ютері.
- На власному комп'ютері зберіть jar (
./gradlew :cloud:fatJar) або покладітьparlons-cloud-0.11.124.jarуdist/. - Переконайтеся, що можете підключитися до сервера через SSH як root за ключем (скрипт запускає SSH у пакетному режимі, тож не може відповісти на запит пароля).
- Виконайте:
ops/deploy-parlons-tenants.sh root@your.box - Зачекайте, доки скрипт перевірить, що хост працює й опитує орендарів.
- Скопіюйте
/etc/parlons-tenants.envіз сервера в надійне офлайн-сховище, окремо від резервних копій даних:scp root@your.box:/etc/parlons-tenants.env ./parlons-tenants.env.backup - Створіть першого орендаря (розділ 22).
Параметри
| Параметр | За замовчуванням | Значення |
|---|---|---|
--jar FILE | найновіший dist/parlons-cloud-*.jar, інакше cloud/build/libs/parlons-cloud.jar | Jar для встановлення. |
--heap SIZE | 512m | Купа Java (приблизно десять орендарів). |
--memmax SIZE | 768M | Обмеження пам'яті systemd. |
--dir PATH | /var/lib/parlons-tenants | Каталог орендарів (простий абсолютний шлях). |
--peers h:p,h:p | немає | Додаткові ретранслятори мережі як початкові вузли. |
--manage-from-node | вимкнено | Підключити до цієї служби інтерфейс власника Parlons Node (0.2.118 або новішого) на тому самому сервері (нижче). |
Скрипт:
- установлює Java без графічного інтерфейсу, якщо її немає;
- створює користувача
maximaі каталог орендарів (режим 700); - вивантажує jar у
/opt/maxima, перевіряє його SHA-256 і спрямовує на ньогоparlons-cloud.jar; - один раз записує файл парольної фрази розблокування
/etc/parlons-tenants.env(лише для root, випадкове значенняPARLONS_UNLOCK=) і захищенийparlons-tenants.service; - перезапускає службу й перевіряє, що хост працює й опитує орендарів.
Модуль запускає:
/usr/bin/java -Xmx<heap> -jar /opt/maxima/parlons-cloud.jar \
--tenants /var/lib/parlons-tenants --no-relay --no-direct --panel-port 9597 --unlock env
Тож за замовчуванням хост не відкриває жодного вхідного порту (він під'єднується до мережі ретрансляторів лише вихідними з'єднаннями) і може працювати поруч із Parlons Node на тому самому сервері. Нові орендарі створюються із зашифрованими сід-фразами (seed.enc), бо діє парольна фраза розблокування.
Створіть резервну копію /etc/parlons-tenants.env. Кожен seed.enc зашифровано нею. Без неї зашифровану сід-фразу неможливо відкрити.
З Parlons Node: --manage-from-node
Скористайтеся цим, коли на сервері вже працює Parlons Node (0.2.118 або новіший) і його власник має керувати гостями з Порталу.
- Перевірте, що на сервері встановлено
parlons-node. Без нього скрипт відмовляється працювати. - Виконайте:
ops/deploy-parlons-tenants.sh root@your.box --jar dist/parlons-cloud-0.11.124.jar --manage-from-node - Зачекайте, доки обидві служби перезапустяться.
- У Порталі, під'єднаному до вузла, відкрийте Вузол і перевірте, що з'явилася картка Розміщені облікові записи з Керувати розміщеними обліковими записами.
Скрипт додає файл доповнення /etc/systemd/system/parlons-node.service.d/hosted-accounts.conf (задає PARLONS_HOSTED_DIR як каталог орендарів і дозволяє вузлу писати туди), а потім перезапускає parlons-node. Наявний командний рядок і дані вузла зберігаються. Скрипт відмовляється працювати, якщо parlons-node не встановлено. Після цього власник може керувати гостями з Порталу: Вузол → Розміщені облікові записи → Керувати розміщеними обліковими записами (розділ 11), а із сервера — за допомогою sudo parlons-pair --guest <name> (розділ 23).
Вебпанелі для орендарів
deploy-parlons-tenants.sh записує в модуль --panel-port 9597. Кожен орендар отримує власну loopback-вебпанель: перший запущений займає 9597, наступний 9598 і так далі, у порядку запуску. Діапазон починається вище за 9587, бо Parlons Node на тому самому сервері вже займає 127.0.0.1:9587, типовий порт панелі.
У старіших модулях був --no-panel, тож їхні орендарі не мали панелі.
Як дати орендарям панелі на старішому модулі
- Повторно запустіть скрипт розгортання. Він перепише модуль із
--panel-port 9597:ops/deploy-parlons-tenants.sh root@your.box - Або відредагуйте модуль вручну на сервері. Спершу збережіть копію:
cp /etc/systemd/system/parlons-tenants.service /etc/systemd/system/parlons-tenants.service.before-panels systemctl edit --full parlons-tenantsУ
ExecStartзамініть--no-panelна--panel-port 9597. Потім:systemctl daemon-reload && systemctl restart parlons-tenants
Як дізнатися порт панелі орендаря
- На сервері прочитайте
panel.txtорендаря:sudo cat /var/lib/parlons-tenants/alice/panel.txt - Використовуйте цей порт. Не вгадуйте: номери видаються послідовно й не використовуються повторно, поки хост працює, тож призупинений і відновлений орендар повертається на наступному номері.
Якщо порт панелі зайнятий, панель цього орендаря не запускається (у журналі буде web panel could NOT start on 127.0.0.1:<port>). Сам обліковий запис працює далі. Повторний запуск deploy-parlons-tenants.sh перезаписує модуль, тож будь-які ручні зміни буде втрачено, і їх доведеться внести знову.
Як відкрити панель орендаря зі свого комп'ютера, описано в розділі 24.
Місткість
Кожен орендар під'єднується приблизно до трьох ретрансляторів мережі з однієї IP-адреси хоста, а ретранслятори обмежують кількість незареєстрованих з'єднань з однієї IP-адреси (за замовчуванням 32). Розраховуйте приблизно на десять орендарів на хост. Типовий ліміт створення розміщених облікових записів — десять, зокрема призупинені (-Dparlons.hosted.limit=<n> змінює його).
22Створення, призупинення та видалення орендарів
Створення
Як створити орендаря зі свого комп'ютера
- Виберіть назву: від 1 до 64 символів — літери, цифри,
.,_і-, починається з літери чи цифри. - Виконайте:
ops/tenant-new.sh root@your.box aliceДодайте
--dir <path>, якщо ви не використовували типовий каталог орендарів. - Зачекайте. Скрипт запускає на сервері
parlons-cloud --tenant-newвід імені користувачаmaxima. Він виводить waiting for hosted account alice to connect… і до 60 секунд чекає, доки запущений хост запустить новий обліковий запис. - Скопіюйте виведене запрошення й надішліть його приватно користувачеві облікового запису або перетворіть на QR-код будь-яким генератором QR.
Він виводить повністю:
address: <the full MAX# address>
pair code: <XXXX-XXXX-XXXX> (one-time)
invite: <the full invite>
A valid invite pairs immediately. Share it only with this account's user.
Нові облікові записи запускаються протягом п'яти секунд; більше нічого не перезапускається.
Як створити орендаря безпосередньо на сервері
- Підключіться до сервера через SSH як root.
- Виконайте:
runuser -u maxima -- java -jar /opt/maxima/parlons-cloud.jar --tenant-new /var/lib/parlons-tenants alice - Надішліть виведене запрошення приватно користувачеві облікового запису.
Інші способи створити орендаря: sudo parlons-pair --guest alice на Parlons Node з --manage-from-node (розділ 23) або Портал власника (розділ 11).
Призупинення та відновлення
Призупинені облікові записи зберігають ідентичність і чати. Призупинити обліковий запис / Відновити обліковий запис у Порталі власника робить те саме.
Як призупинити орендаря
- Підключіться до сервера через SSH.
- Створіть файл
.stopорендаря:touch /var/lib/parlons-tenants/alice/.stop - Протягом п'яти секунд журнал покаже
tenant alice: stopped (.stop).
Як відновити орендаря
- Видаліть файл
.stop:rm /var/lib/parlons-tenants/alice/.stop - Протягом п'яти секунд журнал покаже
hot-add: alice, і орендар знову запуститься.
Нове запрошення для наявного орендаря
Поточне запрошення орендаря лежить у /var/lib/parlons-tenants/<name>/invite.txt, поки є невикористаний код (pair-code.txt). Після використання обидва файли видаляються.
Як видати нове запрошення для орендаря
Скористайтеся одним зі способів:
- Зі свого комп'ютера. Знову виконайте команду створення для наявної назви:
ops/tenant-new.sh root@your.box aliceДля наявної папки вона не замінює ідентичність. Вона повторно видає невикористаний код або створює новий.
- З власного пристрою орендаря. Орендар відкриває у своєму Порталі Вузол → Під'єднати мій інший пристрій. Орендарі на хості
parlons-tenantsне мають пароля адміністратора, тож код створюється одразу. - З Порталу власника (з
--manage-from-node): Вузол → Керувати розміщеними обліковими записами, торкніться облікового запису, потім Показати запрошення.
Як прочитати невикористане запрошення на сервері
- Підключіться до сервера через SSH.
- Виконайте:
sudo cat /var/lib/parlons-tenants/alice/invite.txtЯкщо файлу немає, код уже використано. Видайте нове запрошення (вище).
Відновлення орендаря з резервної копії
Хост запускає будь-яку нову папку протягом п'яти секунд, а папка без сід-фрази отримує нову ідентичність. --restore записує seed.txt останнім. Тому відновлюйте в проміжну папку поза каталогом орендарів, а потім переміщуйте її туди.
- Скопіюйте файл
.pbkна сервер туди, де користувачmaximaможе його прочитати. - Виберіть назву орендаря, якої ще немає. Використовуйте проміжний шлях на тій самій файловій системі, що й каталог орендарів.
- В інтерактивному сеансі SSH (
--restoreзапитує парольну фразу в консолі) виконайте:sudo install -d -o maxima -g maxima -m 700 /var/lib/parlons-restore-alice sudo runuser -u maxima -- java -jar /opt/maxima/parlons-cloud.jar --data /var/lib/parlons-restore-alice --restore /path/alice.pbk - Введіть парольну фразу резервної копії, коли її запитають. Команда виведе, що відновлено.
- Перемістіть папку:
sudo mv /var/lib/parlons-restore-alice /var/lib/parlons-tenants/alice - Протягом п'яти секунд хост запустить її з відновленою ідентичністю.
Відновлений seed.txt зберігається відкритим текстом (режим 0600). Щоб зашифрувати його, виконайте наступну процедуру.
Шифрування наявних відкритих сід-фраз
- Переконайтеся, що ніхто не бачить вашого екрана, а потім прочитайте парольну фразу розблокування. Ви введете її на кроці 3:
sudo grep PARLONS_UNLOCK /etc/parlons-tenants.env - Зупиніть хост:
systemctl stop parlons-tenants - В інтерактивному сеансі SSH запустіть шифрування й, коли запитають, введіть ту саму парольну фразу, що й
PARLONS_UNLOCK:sudo runuser -u maxima -- java -jar /opt/maxima/parlons-cloud.jar --tenants /var/lib/parlons-tenants --unlock prompt --encrypt-seeds - Знову запустіть хост:
systemctl start parlons-tenants
Кожен seed.txt стає seed.enc. Кожен перевіряється, перш ніж буде видалено його відкритий текст.
Видалення орендаря
Команди видалення немає. Папка орендаря містить ключі облікового запису: поводьтеся з нею як із гаманцем.
- Призупиніть орендаря (
touch /var/lib/parlons-tenants/alice/.stop). - Переконайтеся, що людина має свою резервну копію або що обліковий запис їй більше не потрібен.
- Перемістіть папку з каталогу орендарів:
sudo mv /var/lib/parlons-tenants/alice /var/lib/parlons-removed-alice - Зберігайте її як холодну резервну копію або зітріть, коли будете певні.
23Запрошення власника та гостьові запрошення із сервера
Пароль адміністратора для під'єднання
Запрошення власника (коди, що дають повне керування обліковим записом власника) захищено паролем адміністратора для під'єднання на хостах зі службою пароля: окремий обліковий запис parlons-cloud, Parlons Node 0.2.118 або новіший і настільні застосунки-вузли. Гостьовим запрошенням він ніколи не потрібен.
- Він має містити від 10 до 1024 символів.
- Хост зберігає лише перевірювач (зашифрований за допомогою scrypt і AES-GCM) у
.admin-pairing-passwordу папці даних облікового запису; сам пароль він ніколи не зберігає. - Після кожної спроби хост чекає дві секунди, перш ніж прийняти наступну.
- Задати чи змінити його можна лише локально: у вебпанелі хоста, на сторінці Parlons Devices настільних застосунків або в командному рядку. Віддаленого скидання пароля немає.
- Наявні пристрої власника залишаються власниками, коли ви його додаєте.
Як задати пароль адміністратора на Parlons Node
- Відкрийте інтерактивний сеанс SSH на сервері вузла.
- Виконайте:
sudo parlons-pair --set-admin-password - На
Admin password (Enter for a guest invitation):введіть новий пароль (від 10 до 1024 символів). НаConfirm admin password:введіть його ще раз. - Команда виведе Admin pairing password saved. («Пароль адміністратора для під'єднання збережено»).
Без інтерактивного термінала вона зупиняється з повідомленням Use an interactive SSH terminal (ssh -t) for the admin password («Для пароля адміністратора використайте інтерактивний термінал SSH (ssh -t)»).
Як задати пароль адміністратора у вебпанелі
- Відкрийте вебпанель облікового запису (розділ 24).
- Відкрийте Пристрої і знайдіть Установити пароль адміністратора (або Змінити пароль адміністратора, якщо його вже задано).
- Щоб змінити наявний пароль, введіть його в Поточний пароль.
- Введіть новий пароль у Новий пароль і ще раз у Підтвердьте новий пароль. Він має містити щонайменше 10 символів.
- Натисніть Зберегти пароль. Панель підтвердить: Пароль адміністратора збережено. Тепер можна створити запрошення власника.
Як задати пароль адміністратора в командному рядку
- Відкрийте інтерактивний термінал на машині, де працює обліковий запис.
- Для облікового запису, розгорнутого через
deploy-parlons-cloud.sh, виконайте:sudo runuser -u maxima -- java -cp /opt/maxima/parlons-cloud.jar com.eurobuddha.maxima.cloud.AdminPairingPassword set /var/lib/maximaДля облікового запису, установленого однорядковим інсталятором, виконайте від свого імені:
java -cp ~/.parlons/bin/parlons-cloud.jar com.eurobuddha.maxima.cloud.AdminPairingPassword set ~/.parlons - Двічі введіть пароль. Команда виведе Admin pairing password saved.
У настільних застосунках-вузлах задавайте його на сторінці Parlons Devices застосунку.
sudo parlons-pair
parlons-pair установлюється разом із Parlons Node і показує те саме запрошення, що й вкладка «Вузол» застосунку.
| Команда | Що вона робить |
|---|---|
sudo parlons-pair | Запитує пароль адміністратора. Введіть його для запрошення власника; натомість натисніть Enter для гостьового запрошення, потім введіть назву облікового запису гостя. |
sudo parlons-pair --admin | Запрошення власника. Неправильний пароль завершується помилкою й ніколи не видає коду. |
sudo parlons-pair --guest alice | Створює (або використовує наявний) розміщений обліковий запис alice у каталозі орендарів і виводить його запрошення. Потребує служби розміщених облікових записів (розділ 21). |
sudo parlons-pair --set-admin-password | Задає пароль адміністратора. |
--data DIR | Каталог даних облікового запису власника (за замовчуванням /var/lib/parlons-node). |
--tenants-dir DIR | Каталог орендарів (за замовчуванням PARLONS_HOSTED_DIR, інакше /var/lib/parlons-tenants). |
Змінні середовища для перевизначення: PARLONS_HOSTED_DIR, PARLONS_NODE_JAR (за замовчуванням /opt/maxima/parlons-node.jar), PARLONS_CLOUD_JAR (за замовчуванням /opt/maxima/parlons-cloud.jar).
Вона виводить повну адресу MAX#, одноразовий код, QR-код (якщо встановлено qrencode) і повне запрошення. Якщо невикористаного коду немає, вона про це повідомляє; запустіть її ще раз, щоб отримати новий. Використані коди ніколи не відновлюються зі старих журналів чи застарілих файлів.
Як створити запрошення власника на Parlons Node
- Відкрийте інтерактивний сеанс SSH на сервері вузла.
- Виконайте:
sudo parlons-pair --admin - Введіть пароль адміністратора на запит
Admin password (Enter for a guest invitation):. Неправильний пароль виводить Incorrect admin password («Неправильний пароль адміністратора») і ніколи не видає коду. - Відскануйте виведений QR-код Порталом (Сканувати QR-код під'єднання) або вставте повне запрошення (розділ 4).
Як створити гостьове запрошення на Parlons Node
Для цього потрібна служба розміщених облікових записів (--manage-from-node, розділ 21).
- Відкрийте сеанс SSH на сервері вузла.
- Виконайте, вказавши назву облікового запису гостя:
sudo parlons-pair --guest alice - Команда створить розміщений обліковий запис
alice(або використає наявний) і виведе його запрошення. - Надішліть запрошення цій людині приватно.
Запуск sudo parlons-pair без параметрів запитує пароль адміністратора. Введіть його для запрошення власника. Або натомість натисніть Enter, потім введіть ім'я гостя на Hosted account name: для гостьового запрошення.
Звідки ще беруться запрошення
| Джерело | Запрошення власника | Гостьове запрошення |
|---|---|---|
| Портал, Вузол → Під'єднати мій інший пристрій | так (пароль адміністратора, якщо хост його має) | залиште пароль порожнім → розміщені облікові записи |
| Портал, Вузол → Керувати розміщеними обліковими записами → Показати запрошення | ні | так |
| Вебпанель, Пристрої → Новий код підключення | так (поле пароля адміністратора, якщо хост його має) | ні |
| Вебпанель, Пристрої → Розміщені облікові записи → Показати запрошення | ні | так |
ops/tenant-new.sh, --tenant-new | ні | так (власне запрошення цього орендаря) |
Початковий код під час першого запуску (pair-code.txt) | так, для найпершого пристрою | н/д |
Як створити запрошення власника командою parlons
- У терміналі, де
parlonsпід'єднано до облікового запису, виконайте:parlons newcode - Якщо хост має пароль адміністратора, команда запитає його в консолі через
Admin password:. Введіть його. Пароль ніколи не передається в командному рядку. - Команда виведе рядки
code :іinvite :. Відскануйте або вставте запрошення в застосунку Parlons Cloud. Частина з кодом спрацьовує один раз.
Для запиту потрібна інтерактивна консоль. Якщо запустити команду без неї (наприклад, зі скрипта), вона завершиться помилкою Admin password required for an owner-account invitation («Для запрошення в обліковий запис власника потрібен пароль адміністратора»).
24Локальна вебпанель
Кожен хост облікового запису надає вебпанель і API для свого облікового запису лише на loopback-адресі: http://127.0.0.1:<port>/. Типовий порт — 9587. Це той самий інтерфейс, що й на під'єднаному телефоні, але в браузері на тій самій машині й без під'єднання через мережу.
Як її відкрити
Посилання один раз виконує вхід у браузері. Обліковий запис одразу записує наступне невикористане посилання в panel-ticket.txt. Якщо відкрити використане посилання, ви побачите This link has been used or has expired («Це посилання вже використано або термін його дії минув»).
Як відкрити панель на машині, де працює обліковий запис
- У терміналі на цій машині виконайте:
parlons panelКоманда відкриє браузер з одноразовим посиланням.
- Або самостійно відкрийте посилання, збережене в
<data>/panel-ticket.txt(наприклад,~/.parlons/panel-ticket.txt).
Під'єднаний пристрій на іншій машині теж може попросити в облікового запису посилання, дійсне 60 секунд. parlons panel робить саме це, коли папка облікового запису розташована не на тій самій машині.
Як відкрити панель на сервері зі свого комп'ютера
Панель відхиляє будь-який Host, крім 127.0.0.1:<port> або localhost:<port>. Тому використовуйте SSH-тунель з однаковим номером порту на обох кінцях.
- Дізнайтеся порт. Окремий обліковий запис використовує 9587. Для орендаря прочитайте його
panel.txt(розділ 21). - На своєму комп'ютері відкрийте тунель і залиште його працювати:
ssh -L 9587:127.0.0.1:9587 root@your.boxДля першого орендаря на сервері з вузлом натомість використовуйте 9597 на обох кінцях:
ssh -L 9597:127.0.0.1:9597 root@your.box - У цьому сеансі SSH виведіть одноразове посилання. Для окремого облікового запису, розгорнутого через
deploy-parlons-cloud.sh:sudo cat /var/lib/maxima/panel-ticket.txtДля орендаря:
sudo cat /var/lib/parlons-tenants/alice/panel-ticket.txt - Скопіюйте посилання й відкрийте його в браузері на своєму комп'ютері.
Що вона показує
На панелі заголовка написано Parlons! з версією та Працює на Maxima, є індикатор стану й кнопки «Тема», «Пошук» і «Більше». Вкладки:
- Чати: розмови, лічильники непрочитаних, пошук, нова група, перегляд чату з фото, голосовими повідомленнями, файлами й дзвінками.
- Контакти: додавання, ваша адреса та QR-код, перейменування, визначення адреси, видалення, відомості.
- Пристрої:
- Підключити власний пристрій: Це дає доступ до цього облікового запису. Щоб запросити когось в окремий обліковий запис, скористайтеся розділом «Розміщені облікові записи» нижче. Новий код підключення показує запрошення як QR-код і як текст, з кнопкою копіювання. Якщо хост має пароль адміністратора, над нею з'являється поле Пароль адміністратора, а кнопка лишається неактивною, доки пароль не задано.
- Установити пароль адміністратора / Змінити пароль адміністратора (лише хости зі службою пароля): «Поточний пароль», «Новий пароль», «Підтвердьте новий пароль» (щонайменше 10 символів), Зберегти пароль.
- Розміщені облікові записи (коли обліковий запис керує хостом): Увімкнути розміщення / Зупинити розміщення, Оновити, поле Назва облікового запису з Створити обліковий запис і рядок для кожного облікового запису з його станом, Показати запрошення і Призупинити / Продовжити. Запрошення показується як QR-код і повний текст із Копіювати запрошення орендаря.
- Пристрої: кожен під'єднаний пристрій із повним ключем і Відкликати; пристрої в Очікування схвалення з Схвалити. Сама панель значиться як цей комп'ютер.
- Вузол: обліковий запис (ім'я, версія, час роботи, під'єднані ретранслятори, вузли мережі, під'єднані пристрої, поштова скринька/вихідні, постійна адреса повністю), Ваш ретранслятор, довідка Переадресація портів, коли працює ретранслятор, Ретранслятори (додати
host:portабо текст QR-коду ретранслятора, від'єднати, Використовувати вбудований список ретрансляторів), Якір каталогу (Закріпити найкращий ретранслятор, Очистити, Опублікувати повторно) і Журнал. - Налаштування: «Мова», «Профіль» (Ваше ім'я), «Підключені застосунки» (minimaDocs), «Конфіденційність» (Звіти про прочитання), «Вигляд» і Ця панель (Відкрити в браузері, Вийти).
Завдання в панелі
Як під'єднати власний пристрій з панелі
- Натисніть Пристрої.
- Під Підключити власний пристрій введіть Пароль адміністратора, якщо поле показано.
- Натисніть Новий код підключення. Панель покаже Новий код створено і запрошення як QR-код і як текст.
- Відскануйте QR-код Порталом (Сканувати QR-код під'єднання) або натисніть кнопку копіювання й вставте запрошення на новому пристрої.
Як схвалити або відкликати пристрій у панелі
- Натисніть Пристрої.
- Під Очікування схвалення натисніть Схвалити поруч із пристроєм, який ви впізнаєте. Панель покаже Схвалено.
- Щоб відключити пристрій, натисніть Відкликати поруч із ним і підтвердьте Відкликати цей пристрій? Він втратить доступ до облікового запису. Панель покаже Відкликано.
Як розмістити друга з панелі
- Натисніть Пристрої і прокрутіть до Розміщені облікові записи.
- Лише для вбудованого розміщення: натисніть Увімкнути розміщення і підтвердьте. Спершу задайте пароль адміністратора.
- Введіть назву в Назва облікового запису (наприклад, alice) і натисніть Створити обліковий запис. Панель повідомить: Обліковий запис створено. Оновіть за кілька секунд, а коли він запрацює, виберіть «Показати запрошення».
- Натискайте Оновити, доки стан облікового запису не стане працює.
- Натисніть Показати запрошення. Запрошення показується як QR-код і повний текст.
- Натисніть Копіювати запрошення орендаря і надішліть його цій людині приватно.
Щоб призупинити обліковий запис, натисніть Призупинити в його рядку й підтвердьте. Продовжити повертає його. Зупинити розміщення виводить з мережі всі вбудовані гостьові облікові записи; їхні ідентичності й чати зберігаються.
Як додати або видалити ретранслятор у панелі
- Натисніть Вузол і прокрутіть до Ретранслятори.
- Введіть у поле
host:port(наприклад,relay.example.com:9501) або вставте текст QR-коду ретранслятора й натисніть Додати. - Щоб видалити один із власних ретрансляторів, натисніть Видалити в його рядку. Панель покаже Від'єднано.
- Перемкніть Використовувати вбудований список ретрансляторів, щоб увімкнути або вимкнути вбудований список.
Як закріпити якір каталогу в панелі
- Натисніть Вузол і прокрутіть до Якір каталогу.
- Натисніть Закріпити найкращий ретранслятор. Рядок нижче покаже закріплено: … із ретранслятором.
- Очистити знімає закріплення. Опублікувати повторно негайно знову розсилає ваш запис у каталозі.
Як вийти з панелі в браузері
- Натисніть Налаштування і прокрутіть до Ця панель.
- Натисніть Вийти. Щоб повернутися, відкрийте нове одноразове посилання.
Чого вона не робить
Сід-фраза, резервне копіювання, надсилання з гаманця, платежі, консоль вузла й розміщення NFT у панелі недоступні. Cookie на комп'ютері — слабший захист, ніж телефон у вашій руці; усе це лишається на під'єднаних телефонах і в командному рядку.
Безпека панелі
- Вона слухає лише на
127.0.0.1. - Квиток перетворюється на сесійний cookie з HttpOnly і SameSite=Strict (неактивні сесії завершуються через сім днів).
- Запити зі стороннім
Host(DNS rebinding) або стороннімOriginвідхиляються; викликати можна лише методи облікового запису з дозволеного списку. - Для облікового запису панель — це локальний пристрій. Відкликання доступу цей комп'ютер з будь-якого телефона блокує панель. Щоб знову ввімкнути відкликану панель, зупиніть обліковий запис, видаліть
<data>/local-device.keyі знову запустіть його. - Будь-хто, хто може прочитати
panel-ticket.txt, може відкрити панель. Файл має режим 0600; залиште так.
--no-panel вимикає її. --panel-port <n> переносить на інший порт.
25Довідник параметрів командного рядка
java -jar parlons-cloud-0.11.124.jar [options]. Усі параметри, які приймає програма:
Окремий обліковий запис
| Параметр | За замовчуванням | Значення |
|---|---|---|
--data <dir> | ~/.parlons | Каталог даних облікового запису. |
--name <name> | зберегти збережене ім'я | Ім'я для показу облікового запису. |
--relay-port <n> | 9501 | Порт ретранслятора пулу, який цей обліковий запис запускає для мережі. |
--no-relay | (ретранслятор увімкнено) | Запускати обліковий запис без ретранслятора пулу. |
--direct-port <n> | 9536 | Порт прямої досяжності рівня 2. |
--no-direct | (пряму досяжність увімкнено) | Вимкнути пряму досяжність. |
--panel-port <n> | 9587 | Локальна вебпанель і API, лише на 127.0.0.1. |
--no-panel | (панель увімкнено) | Запускати без вебпанелі. |
--wallet rpc:<port>[:<secret-file>] | власний підписувач облікового запису на його сід-фразі | Використовувати як гаманець вузол Minima, що вже працює на цій машині, через його loopback RPC. Підписує вузол; обліковий запис зберігає лише ідентичність. Файл містить -rpcpassword вузла. |
--host <ip> | нічого не оголошувати | Публічна адреса, яку слід оголошувати. |
--relays <list> | немає | Додаткові ретранслятори мережі для під'єднання (через кому, host:port). |
--no-builtin-relays | (вбудований список увімкнено) | Не використовувати вбудований у програму список ретрансляторів як джерело початкових вузлів; лише --relays і ретранслятори, додані з панелі. Потрібен принаймні один. |
--peers <list> | немає (або MAXIMA_PEERS) | Вузли mesh-мережі для ретранслятора пулу (через кому). |
--blobstore <MB> | 1024 | Розмір сховища медіа ретранслятора в MB. |
--import-seed <file|prompt> | Прийняти наявну фразу з 24 слів, власну фразу Minima або сід у hex лише в новий каталог, потім завершити роботу. prompt зчитує її з консолі. | |
--restore <file.pbk> | Відновити зашифровану резервну копію в новий каталог, потім завершити роботу. Потрібна інтерактивна консоль. | |
-v, --version | Вивести parlons-cloud 0.11.124 і завершити роботу. | |
-h, --help | Вивести довідку й завершити роботу. |
Хост із багатьма обліковими записами
| Параметр | Значення |
|---|---|
--tenants <dir> | Запускати кожен обліковий запис <dir>/<name>/ у цьому одному процесі. Лише перший орендар відкриває порти ретранслятора та прямої досяжності; інші користуються ними спільно. Панель кожного орендаря займає --panel-port, +1, +2 … у порядку запуску (жодної з --no-panel). |
--unlock <prompt|env> | Парольна фраза, що відкриває файли seed.enc: запитується в консолі або зчитується з PARLONS_UNLOCK (для systemd). Потрібна, коли будь-яку сід-фразу орендаря зашифровано. Поки вона діє, нові орендарі отримують зашифровані сід-фрази. |
--tenant-new <dir> <name> | Команда оператора: створити <dir>/<name>/, зачекати (60 с), доки запущений хост запустить його, вивести його адресу, код під'єднання й запрошення, потім завершити роботу. |
--encrypt-seeds | З --tenants і --unlock: перетворити seed.txt кожного орендаря на seed.enc (scrypt і AES-GCM під парольною фразою розблокування), перевірити, видалити відкритий текст і завершити роботу. |
Змінні середовища та системні властивості
| Назва | Значення |
|---|---|
PARLONS_UNLOCK | Парольна фраза розблокування для --unlock env. Скрипт розгортання зберігає її в /etc/parlons-tenants.env. |
MAXIMA_PEERS | Вузли mesh-мережі, якщо --peers не вказано. |
-Dparlons.hosted.limit=<n> | Ліміт створення розміщених облікових записів (за замовчуванням 10). Якщо ви його збільшуєте, передайте його й до --tenant-new. |
-Dmaxima.relay.maxpersource=<n> | На ретрансляторах, які ви запускаєте: кількість дозволених незареєстрованих з'єднань з однієї IP-адреси (за замовчуванням 32). |
Типові порти коротко
| Порт | Що | Доступність |
|---|---|---|
| 9501/tcp | ретранслятор пулу | публічний, лише якщо ви запускаєте ретранслятор |
| 9536/tcp | пряма досяжність | публічний, лише якщо ввімкнено |
| 9587/tcp | вебпанель і API | лише loopback, ніколи не відкривайте назовні |
| 9597/tcp і вище | панелі орендарів на сервері з вузлом (якщо налаштовано, розділ 21) | лише loopback |
26Команда parlons
Однорядковий інсталятор установлює parlons. Це окремий під'єднаний пристрій (його ключ зберігається в ~/.parlons-client), тож він може керувати обліковим записом на цій машині чи будь-якій іншій.
Команди служби (обліковий запис цього комп'ютера): start, stop, restart, log [n], update, uninstall.
Команди облікового запису:
| Команда | Що вона робить |
|---|---|
whoami | Ключ цього пристрою і яким обліковим записом він керує. |
connect <account MAX#> | Спрямувати цей пристрій на обліковий запис. |
pair [<code>] | Під'єднати цей пристрій (з кодом або через очікування → схвалення). |
ping | Ім'я та адреса облікового запису. |
status | Ім'я, версія, час роботи, ретранслятори, ретранслятор пулу, під'єднані пристрої, постійна адреса. |
devices | Під'єднані пристрої та пристрої в очікуванні, з повними ключами. |
newcode | Створити новий одноразовий код і запрошення. Якщо хост має пароль адміністратора, запитує його в консолі (розділ 23). |
invite | Вивести невикористане запрошення з папки облікового запису на цій машині. |
panel | Відкрити вебпанель облікового запису в браузері (одноразове посилання). |
approve <key> / revoke <key> | Схвалити пристрій в очікуванні / відкликати доступ пристрою. |
name <display name> | Задати ім'я облікового запису (оголошується контактам). |
contacts, add <addr|MAX#>, rename <key> <name>, resolve <key> | Керування контактами. |
chats, read <peer key>, send <peer key> <msg>, markread <peer key> | Читання й надсилання повідомлень. |
pay <key> <amt> [memo] | Заплатити контакту з гаманця облікового запису. |
wallet address, wallet balance, wallet set <Mx>, wallet resync <file> | Гаманець облікового запису (resync: лише облікові записи вузлів). |
cmd <node command…> | Виконати будь-яку команду Minima на вузлі облікового запису (лише Parlons Node); повний вивід. |
nft put <file> …, nft list, nft newcollection, nft delete <path> | Розміщувати NFT-арт на вузлі (лише Parlons Node). |
figures, hosts [add|remove <host:port>], mls pin|clear|republish, nodelog [clear] | Статистика ретранслятора, ретранслятори, якір каталогу, журнал облікового запису. |
seed | Показати 24 слова облікового запису (лише у вашому терміналі). |
backup <file.pbk> | Записати зашифрований переносний пакет облікового запису. |
Запустіть parlons без аргументів, щоб побачити список.
Як керувати обліковим записом з іншої машини
Команда parlons на будь-якій машині може керувати будь-яким обліковим записом після під'єднання.
- Установіть
parlonsна цій машині однорядковим інсталятором (розділ 19) або скористайтеся вже встановленим. - Спрямуйте його на обліковий запис, використовуючи повну адресу
MAX#:parlons connect <account MAX#>Команда виведе
account saved. next: parlons pair <code>. - Під'єднайте його новим кодом з під'єднаного пристрою (розділ 10):
parlons pair ABCD-EFGH-JKLMКоманда виведе
paired ✓ — this device can now drive your account. - Або виконайте
parlons pairбез коду. Команда виведеpairing requested. Approve it from an already-paired device:і точний рядокparlons approve <key>, який треба виконати на під'єднаному пристрої. - Перевірте, що все працює:
parlons status
Як читати й надсилати повідомлення з термінала
- Виведіть список чатів (ім'я, останнє повідомлення, кількість непрочитаних):
parlons chats - Знайдіть повний ключ контакту:
parlons contacts - Прочитайте одну розмову:
parlons read <peer key> - Надішліть повідомлення:
parlons send <peer key> hello
Як заплатити контакту з термінала
- Знайдіть ключ контакту за допомогою
parlons contacts. - Заплатіть йому з гаманця облікового запису (сума в MINIMA, коментар необов'язковий):
parlons pay <key> 1.5 lunch - Команда виведе
payment building on your node ✓ (watch the chat bubble). Командаpayнадсилає лише Minima. MxUSD надсилайте з Порталу.
27Файли в каталозі даних
Каталог окремого облікового запису (~/.parlons, /var/lib/maxima) і кожна папка орендаря мають однакову структуру. Файли, позначені як секретні, мусять зберігати режим 0600 і ніколи не потрапляти в журнали, не вставлятися й не передаватися.
| Файл | Вміст |
|---|---|
seed.txt | Секретний. 24 слова (або імпортована фраза чи сід у hex). Ідентичність і гаманець. |
seed.enc | Секретний. Сід-фраза орендаря, зашифрована на диску парольною фразою розблокування. |
account.txt | Постійна адреса MAX#, записується, щойно обліковий запис під'єднався. Публічний. |
pair-code.txt | Секретний. Невикористаний одноразовий код під'єднання. Видаляється після використання. |
invite.txt | Секретний. Повна адреса, потім ?code=, потім код. Видаляється, коли код використано. |
panel.txt | Loopback-URL панелі. |
panel-ticket.txt | Секретний. Одне невикористане одноразове посилання на панель. |
local-device.key | Секретний. Ключ пристрою панелі. Видаліть (за зупиненого облікового запису), щоб знову ввімкнути відкликану панель. |
.admin-pairing-password | Перевірювач пароля адміністратора (ніколи не сам пароль). |
devices.json | Під'єднані пристрої. |
wallet/ | Лічильники використання ключів гаманця. |
.stop | (орендарі) Наявність файлу = цього орендаря призупинено. |
hosted-chat/ | (облікові записи власника) Вбудовані гостьові облікові записи лише для чату, по папці на кожен; .enabled позначає, що розміщення ввімкнено. |
account-history/ | (Parlons Node) Облікові записи, замінені імпортом ідентичності, збережені для відновлення. |
log/cloud.log | (облікові записи з інсталятора) Журнал облікового запису. |
Каталог орендарів також містить .host-status.json — сигнал активності хоста (які орендарі працюють або дають збій), що оновлюється кожні п'ять секунд.
28Порти, брандмауери, TLS і зворотні проксі
- Окремому обліковому запису не потрібен вхідний порт, домен чи сертифікат. Він з'єднується з мережею через ретранслятори, а телефони з'єднуються з ним через власний зашифрований транспорт Parlons, а не через вебпорт. Однорядковий інсталятор (без
--relay) і хост орендарів обидва працюють з--no-relay --no-direct. - Щоб інші могли дістатися вашого ретранслятора (увімкнено за замовчуванням;
--no-relayвимикає його), TCP 9501 (або ваш--port) має бути доступним з інтернету. Скрипти відкривають його в ufw або firewalld, якщо ті активні. Брандмауер у консолі хмарного провайдера (Hetzner Cloud Firewall, Vultr Firewall Group, група безпеки AWS) теж має його дозволяти; це звична причина ситуації «телефон підключається, але під'єднання нестабільне». Перевірте з іншої машини, а не із самого сервера:nc -z -G 5 vps.example.com 9501 && echo reachable - Порт ретранслятора — не HTTP. Він працює безпосередньо за мережевим протоколом Maxima. Не ставте його за зворотний HTTP-проксі чи термінатор TLS; клієнти під'єднуються до нього звичайним TCP, а повідомлення всередині вже запечатано наскрізним шифруванням.
- Вебпанель ніколи не можна відкривати назовні. Вона прив'язана до
127.0.0.1і відхиляє запити, у якихHostне є її власним loopback-джерелом, тож зворотний проксі під доменним іменем отримає wrong host. Відкривайте її через SSH-тунель (розділ 24). - Брандмауери з правилами для вихідного трафіку. Хосту потрібен вихідний TCP до ретрансляторів, до яких він під'єднується. Серверу із забороною вихідного трафіку за замовчуванням потрібні правила для них.
Як відкрити й перевірити порт ретранслятора
Потрібно лише тоді, коли хост запускає ретранслятор.
- На сервері дозвольте порт у його власному брандмауері. Скрипти роблять це, якщо активний ufw або firewalld. Вручну для ufw:
ufw allow 9501/tcpДля firewalld:
firewall-cmd --permanent --add-port=9501/tcp && firewall-cmd --reload - У консолі вашого хмарного провайдера також дозвольте вхідний TCP 9501 у його брандмауері.
- З іншої машини (не із самого сервера) перевірте:
nc -z -G 5 vps.example.com 9501 && echo reachable reachableозначає, що порт відкрито. Відсутність виводу означає, що щось його досі блокує.
(TLS-фронти в мережі обслуговують інші речі, що працюють на Parlons Node, як-от шлюз гаманця й ретранслятор DEX; вони не є частиною хоста Parlons Cloud.)
29Оновлення та відкат
Кожне встановлення тримає jar із версією поруч зі сталим символьним посиланням, тож відкат — це одна зміна посилання.
| Хост | Оновлення | Відкат |
|---|---|---|
| Однорядковий інсталятор | parlons update або повторний запуск команди встановлення | ln -sf parlons-cloud-<OLDVER>.jar ~/.parlons/bin/parlons-cloud.jar && parlons restart |
deploy-parlons-cloud.sh | Повторно виконати ту саму команду (з --jar для конкретної збірки) | На сервері: cd /opt/maxima && ln -sf parlons-cloud-<OLDVER>.jar parlons-cloud.jar && systemctl restart parlons-cloud |
parlons-tenants | Повторно виконати ops/deploy-parlons-tenants.sh <box> (він зберігає /etc/parlons-tenants.env) | ln -sf parlons-cloud-<OLDVER>.jar /opt/maxima/parlons-cloud.jar && systemctl restart parlons-tenants |
Як перевірити завантажений jar
- Завантажте
parlons-cloud-0.11.124.jarз випускуcloud-v0.11.124. - Обчисліть його SHA-256. На Mac:
shasum -a 256 parlons-cloud-0.11.124.jarНа Linux:
sha256sum parlons-cloud-0.11.124.jar - Порівняйте з опублікованим значенням. Воно має збігатися точно:
0ae833429b641393f93b427695784b534e8a2a06a7194eba74e57aed4f19b231
Інсталятор і скрипти розгортання перевіряють SHA-256 за вас і відхиляють невідповідність.
Як оновити хост орендарів
- Створіть резервні копії
/etc/parlons-tenants.envі каталогів даних. - Якщо ви редагували модуль, збережіть копію:
cp /etc/systemd/system/parlons-tenants.service /etc/systemd/system/parlons-tenants.service.before-0.11.124 - Зі свого комп'ютера повторно запустіть скрипт розгортання з новим jar:
ops/deploy-parlons-tenants.sh root@your.box --jar dist/parlons-cloud-0.11.124.jarЗнову додайте
--manage-from-node, якщо використовували його. Скрипт зберігає/etc/parlons-tenants.env. Він перезаписує модуль із--panel-port 9597, тож повторно внесіть будь-які інші власні зміни. - Перевірте службу:
systemctl is-active parlons-tenants journalctl -u parlons-tenants | grep 'multi-account host' | tail -1У рядку має бути
Parlons Cloud 0.11.124. - Перевірте, що кожен орендар звітує (розділ 30).
Як виконати відкат
- На сервері (або в
~/.parlons/binдля облікового запису з інсталятора) перегляньте, які jar-файли з версіями ще лишилися:ls /opt/maxima/parlons-cloud-*.jar - Спрямуйте символьне посилання на старіший і перезапустіть, використавши рядок для вашого виду хоста з таблиці вище. Наприклад, на хості орендарів:
ln -sf parlons-cloud-0.11.122.jar /opt/maxima/parlons-cloud.jar && systemctl restart parlons-tenants - Перевірте версію в журналі, як у кроці 4 вище.
Застосунок «Портал» оновлюється незалежно: установіть новіший APK поверх старого (розділ 3).
30Журнали
| Хост | Де |
|---|---|
| Однорядковий інсталятор | parlons log або ~/.parlons/log/cloud.log |
deploy-parlons-cloud.sh | journalctl -u parlons-cloud -f |
parlons-tenants | journalctl -u parlons-tenants (рядки кожного орендаря позначено тегом parlons-cloud/<name>) |
| Parlons Node | journalctl -u parlons-node -f |
| З під'єднаного телефона | Вузол → Відкрити панель керування → Журнал подій (Parlons Node) |
| З панелі | Вузол → Журнал |
Як стежити за журналом
- Виберіть команду для вашого хоста з таблиці вище. Наприклад, на хості орендарів:
journalctl -u parlons-tenants -f - Щоб бачити лише одного орендаря, відфільтруйте за його тегом:
journalctl -u parlons-tenants | grep 'parlons-cloud/alice' - Натисніть Ctrl+C, щоб припинити стеження.
Корисні рядки:
Parlons Cloud 0.11.124 multi-account host: N tenant(s) under <dir>: хост запустився.tenant <name>: <Mx identity> (seed encrypted at rest): орендар запустився.hot-add: <name>: підхоплено нову папку.tenant <name>: stopped (.stop)/parked (.stop present): орендаря призупинено.tenant <name>: failed to start (…), retry in 60 s.web panel could NOT start on 127.0.0.1:<port>: ….
Програма ніколи не записує сід-фразу в журнал: під systemd новостворена сід-фраза не виводиться; програма пропонує один раз прочитати seed.txt через SSH. Коди під'єднання записуються лише в pair-code.txt і ніколи не потрапляють у журнал. Проте, коли шукаєте в журналах чи файлах модулів, відфільтровуйте все, що згадує сід-фрази (… | grep -v seed), і перевіряйте журнал, перш ніж кудись його вставляти.
31Примітки щодо безпеки для операторів
- Файли сід-фраз — це гаманці.
seed.txtіseed.enc— це ідентичності і гаманці Minima, з яких можна витрачати кошти. Ніколи не виводьте їх у журнал, звернення до підтримки, чат чи знімок екрана. Ніколи не копіюйте їх на машину, якій вони не потрібні. Нову сід-фразу читайте один раз через SSH і зберігайте офлайн. - Одна сід-фраза — один хост, завжди. Дві запущені копії однієї ідентичності рано чи пізно повторно використають одноразовий ключ підпису. Щоб перенести обліковий запис, відновіть його пакет на новому хості й назавжди зупиніть старий.
- Оператор може читати те, що зберігає хост. Постійно ввімкнений обліковий запис мусить тримати ключ у пам'яті, щоб діяти від імені власника. Шифрування на диску (
seed.enc) захищає образи дисків і резервні копії, але не від людини, яка запускає процес. Скажіть про це своїм гостям; сторінки посібника теж про це кажуть. - Вбудоване розміщення чатів зберігає сід-фрази гостей як приватні файли (режим 0600, відкритим текстом) у папці власника
hosted-chat/. Для захисту на випадок крадіжки диска використовуйте шифрування диска комп'ютера. Пароль адміністратора не шифрує гостьові облікові записи. - Парольна фраза розблокування в
/etc/parlons-tenants.envдоступна лише root. Зберігайте її резервну копію окремо від даних: втрата робить коженseed.encнечитабельним; витік разом із резервною копією даних зводить шифрування нанівець. - Запрошення — це ключі до облікового запису, доки їх не використано.
pair-code.txtіinvite.txtдають змогу першій людині, яка ними скористається, під'єднати пристрій. Надсилайте запрошення приватно, під'єднуйтеся без зволікань, а якщо запрошення могло витекти, створіть новий код (він замінює старий) або відкличте доступ пристрою, який ним скористався. - Пароль адміністратора захищає лише запрошення власника. Будь-хто з повним доступом SSH або доступом до термінала власника на сервері однаково керує сервером.
- Квиток панелі надає браузеру сесію як локального пристрою цього облікового запису. Тримайте
panel-ticket.txtу таємниці й не відкривайте порт панелі назовні. - Захищені модулі. Скрипти розгортання запускають хост від імені непривілейованого користувача
maxima, зNoNewPrivileges, без capabilities, зі списком дозволених системних викликів,ProtectSystem=strict, приватним/tmp,UMask=0077, заблокованим діапазоном адрес хмарних метаданих і обмеженням пам'яті. Зберігайте це, якщо пишете власний модуль. - Ніколи не скорочуйте ідентифікатори в усьому, що ви створюєте чи пересилаєте навколо цих хостів: адреси, ключі, коди й ідентифікатори транзакцій завжди потрібно показувати й копіювати повністю.
32Усунення несправностей для операторів
| Ознака | Причина й рішення |
|---|---|
| Інсталятор: not up after 90 s («не запустився за 90 с») | Показано останні рядки журналу. Зазвичай не встановилася Java або немає інтернету. Виправте це й знову запустіть інсталятор; нічого не втрачено. |
| Інсталятор: Could not reach GitHub to find the release («Не вдалося зв'язатися з GitHub, щоб знайти випуск») | Спробуйте пізніше або завантажте jar з https://github.com/eurobuddha/maxima/releases у ~/.parlons/bin і знову запустіть інсталятор. |
| ERROR: relay port 9501 is already in use («порт ретранслятора 9501 уже зайнятий») | Його займає інший ретранслятор або Parlons Node. Виберіть вільний порт через --relay-port або запускайте з --no-relay. З однорядковим інсталятором установлюйте без --relay. |
| web panel could NOT start on 127.0.0.1:9587 («вебпанель НЕ змогла запуститися на 127.0.0.1:9587») | Порт займає щось інше (часто Parlons Node). Використайте --panel-port з вільним портом (9597 на серверах із вузлом) або --no-panel. Обліковий запис працює й без панелі. |
| \<name\>: seed.enc needs --unlock («для seed.enc потрібен --unlock») | Запустіть хост з --unlock env (і заданим PARLONS_UNLOCK) або --unlock prompt. |
| --unlock env: PARLONS_UNLOCK is not set («PARLONS_UNLOCK не задано») | Файл EnvironmentFile=/etc/parlons-tenants.env модуля відсутній або порожній. Відновіть його з резервної копії. |
| --unlock prompt needs an interactive console (use --unlock env under systemd) («--unlock prompt потребує інтерактивної консолі; під systemd використовуйте --unlock env») | Саме так. |
| no invite after 60 s - is the host running? («немає запрошення через 60 с — чи працює хост?») | systemctl status parlons-tenants. Хост опитує каталог кожні п'ять секунд. |
| Hosted-account service is offline. Ask the server operator to start it. («Служба розміщених облікових записів офлайн. Попросіть оператора сервера запустити її.») | Хост орендарів не працює або не записував сигнал активності протягом останніх 90 секунд. Запустіть parlons-tenants. |
| Wait until this account is running before creating an invite / Account is connecting. Refresh in a few seconds. («Зачекайте, доки обліковий запис запрацює, перш ніж створювати запрошення» / «Обліковий запис підключається. Оновіть за кілька секунд.») | Орендар ще не під'єднався. Зачекайте, оновіть. |
| Hosted account is paused; resume it before issuing an invite («Розміщений обліковий запис призупинено; відновіть його, перш ніж видавати запрошення») | Видаліть його файл .stop. |
| Hosting limit reached (10 accounts) («Досягнуто ліміту розміщення: 10 облікових записів») | Призупинені облікові записи враховуються. Перемістіть невикористану папку або збільште -Dparlons.hosted.limit. |
| Set your admin password before enabling hosting («Задайте пароль адміністратора, перш ніж вмикати розміщення») | Спершу задайте пароль адміністратора (розділ 23). |
| Enable hosting before managing guest accounts («Увімкніть розміщення, перш ніж керувати гостьовими обліковими записами») | Вбудоване розміщення вимкнено; увімкніть його (розділ 11). |
| Guest hosting is unavailable. Check the data folder permissions and that another host is not using it. («Розміщення гостей недоступне. Перевірте дозволи папки даних і чи не використовує її інший хост.») | Папка власника hosted-chat/ недоступна для запису, є символьним посиланням або її блокування утримує інший процес. |
Admin password required for an owner-account invitation від parlons newcode | Команді не було де запитати пароль (наприклад, її запущено зі скрипта). Виконайте parlons newcode в інтерактивному терміналі й введіть пароль на Admin password:. Або створіть запрошення в застосунку чи панелі, або під'єднайтеся без коду й схваліть. |
| Хост цього облікового запису застарий для надсилання MxUSD — оновіть його (…) на телефоні | Хост облікового запису не може довести, що враховує ідентифікатор токена. Оновіть його до Parlons Cloud 0.11.121 або новішого (поточна версія — 0.11.124), Parlons Node 0.2.135 або новішого чи minimaCore Desktop 0.18.21 або новішого. |
Incorrect admin password від parlons-pair | Повторіть спробу через дві секунди. Щоб змінити забутий пароль на Parlons Node, локально скористайтеся sudo parlons-pair --set-admin-password. |
| Відновлення: wrong passphrase (or a damaged backup file) («неправильна парольна фраза або пошкоджений файл резервної копії») | Перевірте парольну фразу. |
| Відновлення: відмова, бо ідентичність уже існує | --restore і --import-seed ніколи нічого не перезаписують. Спершу перемістіть старі дані або використайте новий каталог. |
| Телефон підключається, але під'єднання нестабільне (хости з ретранслятором) | Брандмауер у хмарній консолі блокує порт ретранслятора. Дозвольте його й там. |
| Орендар отримує нову ідентичність після того, як ви перемістили відновлену папку | Папку підхоплено ще до того, як було записано seed.txt. Зупиніть її (.stop) і відновіть знову через проміжну папку (розділ 22). Тримайте папку з неочікуваною ідентичністю окремо, доки не переконаєтеся, що до неї ніхто не під'єднався. |
Покрокові рішення
Порт ретранслятора 9501 уже зайнятий
- З'ясуйте, що його займає:
sudo ss -ltnp | grep ':9501' - Якщо це Parlons Node або інший ретранслятор, залиште його. Натомість запускайте цей обліковий запис без власного ретранслятора: для однорядкового інсталятора виконайте
parlons uninstallі встановіть знову з--no-relay. Для написаного вручну модуля замініть--relay-port 9501на--no-relay. - Або дайте цьому обліковому запису вільний порт через
--relay-port <n>(зdeploy-parlons-cloud.sh—--port <n>) і відкрийте натомість цей порт (розділ 28). - Перезапустіть службу й перевірте журнал (розділ 30).
Вебпанель не змогла запуститися
- У журналі написано web panel could NOT start on 127.0.0.1:<port>. З'ясуйте, що займає порт:
sudo ss -ltnp | grep ':9587' - Виберіть вільний loopback-порт. На сервері з Parlons Node використовуйте 9597 або вище.
- На хості
deploy-parlons-cloud.shвідредагуйтеExecStartмодуля й додайте--panel-port 9597(або--no-panel, щоб працювати без панелі). На хості орендарів модуль уже має--panel-port 9597; якщо 9597 зайнятий, виберіть там інший перший порт.systemctl edit --full parlons-cloud systemctl daemon-reload && systemctl restart parlons-cloud - Тим часом обліковий запис працює й без панелі.
Зашифровані сід-фрази не відкриваються (seed.enc needs --unlock або PARLONS_UNLOCK is not set)
- Перевірте, що файл розблокування існує й не порожній, не виводячи його вмісту:
sudo test -s /etc/parlons-tenants.env && echo present - Якщо його немає, відновіть його з офлайн-копії в
/etc/parlons-tenants.env, власник root, режим 600:sudo install -o root -g root -m 600 ./parlons-tenants.env.backup /etc/parlons-tenants.env - Перевірте, що модуль має
EnvironmentFile=/etc/parlons-tenants.envі--unlock env:systemctl cat parlons-tenants | grep -E 'EnvironmentFile|--unlock' - Перезапустіть:
systemctl restart parlons-tenants
Без початкової парольної фрази зашифровану сід-фразу неможливо відкрити. Натомість відновіть орендаря з його резервної копії (розділ 22).
Немає запрошення через 60 секунд після tenant-new
- Перевірте, чи працює хост:
systemctl status parlons-tenants - Якщо його зупинено, запустіть його командою
systemctl start parlons-tenants. - Перевірте журнал для орендаря (
journalctl -u parlons-tenants | grep 'parlons-cloud/alice'). - Знову виконайте
ops/tenant-new.sh root@your.box alice. Для наявної папки ідентичність не замінюється.
Служба розміщених облікових записів офлайн
- На сервері запустіть хост орендарів:
systemctl start parlons-tenants - Зачекайте кілька секунд, доки він запише сигнал активності (
.host-status.jsonу каталозі орендарів). - У Порталі відкрийте Вузол → Керувати розміщеними обліковими записами і торкніться Оновити.
Орендар отримав нову ідентичність після відновлення
- Призупиніть неочікуваного орендаря:
touch /var/lib/parlons-tenants/alice/.stop - Перемістіть його папку з каталогу орендарів і тримайте її окремо, доки не переконаєтеся, що до неї ніхто не під'єднався.
- Знову відновіть пакет через проміжну папку, а потім перемістіть її (розділ 22, «Відновлення орендаря з резервної копії»).
Для будь-яких інших проблем створіть issue на GitHub проєкту, вказавши версію, що ви очікували, що сталося, і відповідні рядки журналу (попередньо перевірені на наявність секретів).
33Глосарій
| Термін | Значення |
|---|---|
| Обліковий запис | Одна ідентичність Parlons з контактами, чатами, під'єднаними пристроями, налаштуваннями і (зазвичай) гаманцем, яку хост тримає онлайн. |
| Пароль адміністратора для під'єднання | Локальний пароль, що захищає запрошення власника на хостах, які мають цю службу. Від 10 до 1024 символів; зберігається лише як перевірювач. |
Адреса (форма MAX#) | Постійна адреса облікового запису. Публічна, кілька сотень символів, ніколи не змінюється. Завжди копіюється повністю. |
Адреса (ключ Mx з @host:port) | Старіша форма: ключ ідентичності плюс ретранслятор, що зараз її обслуговує. Частина host:port змінюється. |
| Вбудоване розміщення | Розміщення гостей лише для чату всередині облікового запису власника (Parlons Node, настільні застосунки-вузли, окремий parlons-cloud). |
Пакет (.pbk) | Зашифрована резервна копія всього облікового запису (ідентичність, пристрої, налаштування, контакти, чати), яку може прочитати кожен хост Parlons, а застосунок для телефона — в частині ідентичності й контактів. |
| Обліковий запис лише для чату | Гостьовий обліковий запис лише з чатом, дзвінками й файлами. |
| Пристрій | Усе, що під'єднано до облікового запису: телефон, термінал, панель хоста. Доступ можна відкликати, не змінюючи ідентичності. |
| Ключ пристрою | Власний ключ під'єднаного пристрою. Це не ідентичність облікового запису. |
| Якір каталогу / MLS | Служба розташування, що визначає, де зараз перебуває обліковий запис із постійною адресою. Її можна закріпити за одним ретранслятором. |
| Гість | Людина з розміщеним обліковим записом на чужому хості. |
| Хост | Машина й програма, що тримає онлайн один або кілька облікових записів. Також так називають ретранслятор, до якого під'єднується обліковий запис. |
| Гаряче додавання (hot-add) | Запуск хостом орендарів нової папки орендаря протягом п'яти секунд без перезапуску. |
| Запрошення | Адреса й одноразовий код під'єднання в одному рядку, з'єднані через ?code=. Один QR-код під'єднує телефон. |
| Локальний пристрій / цей комп'ютер | Власна вебпанель хоста, що діє як під'єднаний пристрій облікового запису. |
| Поштова скринька | Зашифровані повідомлення, що зберігаються для того, хто був не в мережі. |
| Вузли мережі | Інші ретранслятори, з якими ретранслятор цього облікового запису обмінюється даними каталогу. |
| MxUSD | Токен Minima, прив'язаний до долара, ідентифікатор токена 0x7D39745FBD29049BE29850B55A18BF550E4D442F930F86266E34193D89042A90. |
| Вихідні | Ваші власні повідомлення, які ще не прийняв жоден хост; повторні спроби відбуваються з дедалі більшими інтервалами. |
| Власник | Людина, чий обліковий запис працює на машині й керує її розміщенням. |
| Запрошення власника | Запрошення, що під'єднує пристрій до облікового запису власника з повним керуванням. |
| Код під'єднання | Одноразовий код із трьох груп по чотири символи, що дає змогу під'єднати один пристрій. |
| Квиток панелі | Одноразове посилання, що виконує вхід браузера в локальну вебпанель. |
| Parlons Cloud | Програма-хост (parlons-cloud.jar), а також назва Android-застосунку «Портал» і функції під'єднання на iPhone. |
| Parlons Node | Повний вузол Minima з вбудованими ретранслятором, шлюзом гаманця й обліковим записом Parlons. До нього можна під'єднатися з Порталу. |
| parlons-tenants | Служба systemd, що запускає parlons-cloud --tenants. |
| Очікують підтвердження | Пристрій, що попросив під'єднання без коду й чекає, доки його схвалить наявний пристрій. |
| Ретранслятор пулу | Ретранслятор, який обліковий запис запускає, щоб передавати трафік для мережі. |
| Портал | Назва Android-застосунку Parlons Cloud у цьому посібнику. |
| Сід-фраза / 24 слова | Секретна фраза, яка є ідентичністю й гаманцем Minima. |
| Використання ключа підпису | Скільки одноразових підписів використав ключ гаманця. Лише збільшується. |
| Правило одного власника | Одна ідентичність працює одночасно лише в одному місці. |
| Орендар | Одна папка облікового запису всередині хоста з багатьма обліковими записами. |
| Парольна фраза розблокування | Парольна фраза (PARLONS_UNLOCK), що розшифровує файли seed.enc орендарів. |
| Гаманець лише для перегляду | Перегляд гаманця для адреси, ключі якої зберігаються деінде; він може показати баланс, але ніколи не витрачає. |