Merge remote-tracking branch 'origin/main'
This commit is contained in:
@@ -1,18 +1,6 @@
|
|||||||
---
|
|
||||||
tags:
|
|
||||||
- syncthing
|
|
||||||
- truenas
|
|
||||||
- android
|
|
||||||
- obsidian
|
|
||||||
- sync
|
|
||||||
- how-to
|
|
||||||
created: '2026-05-29'
|
|
||||||
updated: '2026-05-29'
|
|
||||||
status: active
|
|
||||||
---
|
|
||||||
# Syncthing — TrueNAS ↔ Android
|
# Syncthing — TrueNAS ↔ Android
|
||||||
|
|
||||||
**Статус:** ✅ контейнер на TrueNAS работает, Caddy настроен
|
**Статус:** ✅ контейнер на TrueNAS работает, Caddy настроен, порт 22000 проброшен на OpenWrt, синхронизация работает
|
||||||
|
|
||||||
## Архитектура
|
## Архитектура
|
||||||
|
|
||||||
@@ -32,6 +20,9 @@ TrueNAS (syncthing контейнер)
|
|||||||
- **Web UI:** https://syncthing.mallexxx.duckdns.org
|
- **Web UI:** https://syncthing.mallexxx.duckdns.org
|
||||||
- **Авторизация:** встроенная GUI Authentication Syncthing (не Caddy basic_auth)
|
- **Авторизация:** встроенная GUI Authentication Syncthing (не Caddy basic_auth)
|
||||||
- **Локально на TrueNAS:** `http://localhost:8384`
|
- **Локально на TrueNAS:** `http://localhost:8384`
|
||||||
|
- **Порт синхронизации (WAN):** TCP+UDP 22000 — проброшен на OpenWrt через DNAT на 192.168.2.197:22000
|
||||||
|
|
||||||
|
> ⚠️ Для прямой синхронизации через мобильный интернет необходим проброс порта 22000 на роутере. Без него телефон может соединиться только через relay-сервера.
|
||||||
|
|
||||||
## Контейнер
|
## Контейнер
|
||||||
|
|
||||||
@@ -78,6 +69,18 @@ syncthing.mallexxx.duckdns.org {
|
|||||||
|
|
||||||
Без basic_auth — защита через встроенную GUI Authentication Syncthing.
|
Без basic_auth — защита через встроенную GUI Authentication Syncthing.
|
||||||
|
|
||||||
|
## Настройка на телефоне
|
||||||
|
|
||||||
|
1. Установить Syncthing (F-Droid или Play Market)
|
||||||
|
2. Добавить устройство сервера (сканировать QR код или ввести Device ID)
|
||||||
|
3. Нажать на устройство → цепочка/ссылка (Addresses) → вписать:
|
||||||
|
```
|
||||||
|
tcp://syncthing.mallexxx.duckdns.org:22000, quic://syncthing.mallexxx.duckdns.org:22000
|
||||||
|
```
|
||||||
|
4. Добавить папку `obsidian-vault`, указать локальный путь (например `~/Documents/Obsidian`)
|
||||||
|
5. Настроить File Versioning (рекомендуется `Trash can`, 30 дней)
|
||||||
|
6. Включить синк
|
||||||
|
|
||||||
## Настройка после развёрта
|
## Настройка после развёрта
|
||||||
|
|
||||||
1. Открыть https://syncthing.mallexxx.duckdns.org
|
1. Открыть https://syncthing.mallexxx.duckdns.org
|
||||||
@@ -87,11 +90,6 @@ syncthing.mallexxx.duckdns.org {
|
|||||||
- Folder ID: `obsidian-vault`
|
- Folder ID: `obsidian-vault`
|
||||||
- Folder Path: `/var/syncthing/obsidian-vault`
|
- Folder Path: `/var/syncthing/obsidian-vault`
|
||||||
- File Versioning: по желанию (Trash can / Simple)
|
- File Versioning: по желанию (Trash can / Simple)
|
||||||
4. На телефоне Android: установить Syncthing (из F-Droid или Play Market)
|
|
||||||
- Добавить устройство (сканировать QR код сервера или ввести Device ID)
|
|
||||||
- Добавить ту же папку `obsidian-vault`, указать локальный путь (например `~/Documents/Obsidian`)
|
|
||||||
- Настроить File Versioning (рекомендуется `Trash can`, 30 дней)
|
|
||||||
- Включить синк
|
|
||||||
|
|
||||||
## Поведение
|
## Поведение
|
||||||
|
|
||||||
@@ -118,3 +116,4 @@ docker compose -f /mnt/RED_2TB/docker/syncthing/docker-compose.yml down
|
|||||||
- [[obsidian-android-sync]] — git-based синк (альтернатива через Gitea)
|
- [[obsidian-android-sync]] — git-based синк (альтернатива через Gitea)
|
||||||
- [[obsidian-sync]] — общая архитектура sync Eagle ↔ Taiga ↔ Kraken
|
- [[obsidian-sync]] — общая архитектура sync Eagle ↔ Taiga ↔ Kraken
|
||||||
- [[truenas-infrastructure]] — TrueNAS инфраструктура
|
- [[truenas-infrastructure]] — TrueNAS инфраструктура
|
||||||
|
- [[truenas-access]] — доступ к TrueNAS и OpenWrt
|
||||||
|
|||||||
@@ -20,6 +20,26 @@
|
|||||||
ssh -i ~/.ssh/id_rsa truenas_admin@mallexxx.duckdns.org
|
ssh -i ~/.ssh/id_rsa truenas_admin@mallexxx.duckdns.org
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## OpenWrt — доступ с TrueNAS
|
||||||
|
|
||||||
|
**SSH на роутер:**
|
||||||
|
```bash
|
||||||
|
# через docker-контейнер с sshpass
|
||||||
|
docker run --rm alpine sh -c 'apk add -q openssh sshpass && sshpass -p 1316261 ssh -o StrictHostKeyChecking=no root@192.168.2.2 "команда"'
|
||||||
|
```
|
||||||
|
|
||||||
|
**Проверка правил форвардинга портов:**
|
||||||
|
```bash
|
||||||
|
docker run --rm alpine sh -c 'apk add -q openssh sshpass && sshpass -p 1316261 ssh -o StrictHostKeyChecking=no root@192.168.2.2 "uci show firewall | grep redirect"'
|
||||||
|
```
|
||||||
|
|
||||||
|
**Добавление правила порт-форвардинга:**
|
||||||
|
```bash
|
||||||
|
docker run --rm alpine sh -c 'apk add -q openssh sshpass && sshpass -p 1316261 ssh -o StrictHostKeyChecking=no root@192.168.2.2 "uci add firewall redirect && uci set firewall.@redirect[-1].name=ИМЯ && uci set firewall.@redirect[-1].proto=tcpudp && uci set firewall.@redirect[-1].src=wan && uci set firewall.@redirect[-1].src_dport=ПОРТ && uci set firewall.@redirect[-1].dest=lan && uci set firewall.@redirect[-1].dest_ip=192.168.2.197 && uci set firewall.@redirect[-1].dest_port=ПОРТ && uci set firewall.@redirect[-1].target=DNAT && uci commit firewall && /etc/init.d/firewall reload"'
|
||||||
|
```
|
||||||
|
|
||||||
|
**Пароль root:** `1316261`
|
||||||
|
|
||||||
## Пул и датасеты
|
## Пул и датасеты
|
||||||
|
|
||||||
Пул: RED_2TB (ZFS)
|
Пул: RED_2TB (ZFS)
|
||||||
|
|||||||
Reference in New Issue
Block a user