gemlog/public/uk/enhancing-privacy-in-linux-apps.gmi
2025-11-09 16:07:03 +02:00

148 lines
No EOL
9.9 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Підвищення рівня приватності в застосунках Linux
Цей список щойно створив для себе, на випадок організації чистої системи, свого роду нагадування / чек-лист по якому пройтись і не забути вимкнути дірки в плані мережних витоків. Це не анти-деанон, але частково може бути корисним у даному векторі, поряд з адблоками та іншими костилями. Для більш суворої фільтрації трафіку, дивіться нотатки:
=> filter-outgoing-connections-with-ufw.gmi Обмеження вихідних з'єднань на Інтернет з ufw
=> linux-isolation-from-direct-internet-connections-based-on-qemu-virtual-machine-manager-with-vsock.gmi Ізоляція Linux від прямих Інтернет з'єднань на базі QEMU / Virtual Machine Manager з VSOCK
## Rhythmbox
Через плагін "Cover art search" хтось знає що ви слухаєте локально - вимикаємо:
=> enhancing-privacy-in-linux-apps/rhythmbox-сover-art-search-plugin.png Скріншот
## Firefox
HTTP/HTML - вони такі. Для різних завдань - у мене різні браузери, в цілому я користуюсь PAC:
=> safe-yggdrasil-websites-browsing-with-yggstack.gmi Безпечний перегляд сайтів Yggdrasil з Yggstack
* чи варто нагадувати про реферальні заголовки, розмір вікна, користувацький агент і "відбитки"? =)
## DNS
Для резольву доменів, я користуюсь власним проксі-сервером.
### Alfis
Alfis DNS - це альтернативна система реєстрації доменів в блокчейн, що також включає в себе вбудований проксі-сервер для резольву локальних та глобальних доменів Інтернет. Таким чином, через нього відбувається визначення IP для усіх потрібних мені мереж. По цій темі, я написав декілька матеріалів:
=> alfis-dns-domain-registration-in-blockchain.gmi Alfis DNS - реєстрація домену в блокчейн
=> alternative-alfis-dns-branch-with-mycelium-network-support.gmi Альтернативна гілка Alfis DNS з підтримкою Mycelium
=> my-alfis-dns-preset-on-yggdrasil-mycelium-router.gmi Мій пресет Alfis DNS на роутері Yggdrasil / Mycelium
В контексті теми цього допису, звертаю увагу на стандартний файл конфігурації, в якому я вимикаю всі не явні DNS і додаю статичні внутрішньо-мережні IP Yggdrasil в парі з опцією yggdrasil_only (або yggdrasil_mode для гілки Yggdrasil/Mycelium):
```
[net]
peers = [
# вимикаю не явні, міксовані DNS (постачаються в стандартній конфігурації)
# "peer-v4.alfis.name:4244",
# "peer-v6.alfis.name:4244",
# "peer-ygg.alfis.name:4244",
# додаю визначені мною вручну адреси пірів
# * до списку треба додати актуальні вузли на момент конфігурації резольвера
"[202:68d0:f0d5:b88d:1d1a:555e:2f6b:3148]:4244",
"[200:f8e5:2383:c1f8:7c73:8e74:2a5e:197e]:4244",
"[200:f8e5:2383:c1f8:7c73:8e74:2a5e:197e]:4244",
"[200:31b6:1c3a:3a1c:d322:3ed7:e109:4b3]:4244",
"[200:1106::a702:9841:e607:9b3]:4244",
"[208:84:68:55:2f91:8484:8d60:2fca]:4244",
"[208:25:40:bd:6ea9:89fc:ac75:87be]:4244",
"[208:62:45:62:59b8:f1a2:62ca:f87c]:4244",
"[225:ca89:40a8:611e:78b8:ab81:999a:d4d7]:4244",
"[301:84f7:4bc0:2f3a::53]:4244"
]
# стандартна гілка (https://github.com/Revertron/Alfis)
yggdrasil_only = true
# якщо гілка mycelium-network-mode
# https://github.com/YGGverse/Alfis/tree/mycelium-network-mode
#
# yggdrasil_mode = true
# mycelium_mode = true
```
* якщо хоча б один пір зі списку буде онлайн, цього достатньо для ініціації
* також звертаємо увагу на net.forwarders, net.bootstraps і net.public, net.listen
## BitTorrent
### qBittorrent
Зненацька помітив, що на бінді IPv6 цілком можливі конекти через Веб-сокет IPv4:
=> unexpected-connection-leaks-in-qbittorrent.gmi Потенційні витоки з'єднань на Інтернет в qBittorrent
### rqbit
Мій сабж описаний в рамках тікету #469:
=> https://github.com/ikatson/rqbit/issues/469 [librqbit] unexpected peers connection #469
* проблема в тому, що клієнт інтерактує з пірами через PEX, навіть якщо DHT вимкнено
Оскільки ледачий, цю проблему поки що "вирішив" засобами "blocklist".
## Xash3D / FWGS
### Half-Life
Аудит рушія та самої гри на предмет відбитків та витоків я не проводив, але в контексті приватної гри по локалці Yggdrasil, щонайменше варто звернути увагу на опцію лаунчера "Configuration" > "Multiplayer" > "Customize" > "Adv options" > "Allow download":
=> enhancing-privacy-in-linux-apps/xash3d-fwgs-fast-download-option.png Скріншот (потрібно зняти хрестик)
* це (ймовірно) дозволить запобігти прямим з'єднанням при завантаженні кастомних карт і скінів
Окремо, я вимикаю мікрофон, не знаю чи він дійсно вимикається, але так:
``` valve/game.cfg
voice_enable 0
```
Нагадаю, що для цього рушія було створено окремі гілки для оверлейного і гібридного режимів. Вони включають адаптації для локальної гри (зокрема локальні майстер-сервери) а звідти - підвищену приватність:
=> https://github.com/YGGverse/xash3d-fwgs/branches
* утім наразі, вони майже не розвиваються а їх апстрім - відстає від офіційних релізів (зараз не до ігор)
Детальніше про рушій Xash3D / FWGS в контексті Half-Life, також можна почитати тут:
=> half-life-on-linux-using-xash3d-fwgs-engine.gmi Half-Life в Linux на базі рушія Xash3D / FWGS
## VSCode
Тут, мабуть, немає сенсу зупинятись, адже "електронний" VSCode - нашпигований телеметрією та різними API синхронізації додатків. Утім, на згадку, додам одне виключення: для комерційних проєктів, я користуюсь додатком обліку часу Wakatime:
=> https://wakatime.com
=> https://open-vsx.org/extension/WakaTime/vscode-wakatime
По суті, цей (доволі зручний) додаток надсилає докладну статистику по файлам, операційній системі та всьому іншому в рамках проєкту - щоб окрім загального звіту по часу, можна було проаналізувати свою активність по мовам програмування та всьому іншому. Якщо працюємо з різними "приватними" програмами і не хочемо, щоб про це знав увесь світ (навіть якщо вимкнули галку поширення з усіма) - вимикаємо додаток і для роботи пускаємо окремий контейнер VSCode / VSCodium.
## IRC
### Halloy
Стандартно, цей клієнт дозволяє прев'ю віддаленого вмісту (ака мікро-розмітка) - у приватних мережах, це потенційний де-анон, вимикаємо:
``` config.toml
[preview]
enabled = false
```
* в принципі, я тут весь трафік ганяю через проксі
### ZNC
Нещодавно поставив собі баунсер:
=> znc-irc-bouncer-setup.gmi Встановлення та налаштування IRC-баунсера ZNC в Linux
У цьому гайді, згадується релевантний пункт з вимикання модуля "simple_away", що може використовуватись для типу атак, що базуються на таймінг-трекінгу:
=> znc-irc-bouncer-setup/simple-away-module.png Модуль "simple_away" в ZNC (скріншот)
## Загальні рекомендації
Хоч це більше стосується сервер-сайду, на десктопі також варто звернути увагу і завчасно розставити права 0600 на "чутливі" файли профілю окремих застосунків типу крипто-гаманців, роутерів та інших програм, робота яких базується на приватних ключах.
## Посилання
=> gemini://bbs.geminispace.org/s/privacy/34128 Залишити коментар на BBS