full refatoring is started

master
acetone 2022-02-07 09:32:25 -05:00
parent 29e5be8e63
commit ec8fa64778
7 changed files with 125 additions and 193 deletions

View File

@ -1,11 +1,6 @@
# Summary
- [Введение](intro.md)
# О нас
- [Мотивация](motivation.md)
- [Команда](team.md)
- [Политика](policy.md)
- [О нас и наших планах](introduction.md)
# О проекте
- [Особенности](features.md)
@ -19,10 +14,9 @@
- [Маркетинг](marketing.md)
- [DevOps](deploy.md)
# Пользователю
- [Предустановка](pre-install.md)
# Старт
- [Установка](install.md)
- [Сервисы](services.md)
- [Пакет сервисов](services.md)
- [Электронная почта](email.md)
- [Мессенджер - Delta.Chat](messenger.md)
- [Социальная сеть - Pleroma](social.md)
@ -38,4 +32,4 @@
- [Разработчикам](dev.md)
- [DevOps Release Management](deploy.md)
- [Contrib](CONTRIBUTING.md)
- [План тестирования](test-plan.md)
- [План тестирования](test-plan.md)

View File

@ -1,11 +1,108 @@
# Установка и настройка
# Предустановка
1. [Скачайте](https://f-droid.org/en/packages/pro.kherel.selfprivacy/) SelfPrivacy на ваш Android-смартфон;
2. Установите приложение;
3. Укажите **Hetzner API Token** (*подробнее о Hetzner [здесь](pre-install.md#hetzner)*);
4. Укажите **CloudFlare API Token** (*подробнее о CloudFlare [здесь](pre-install.md#cloudflare)*):
5. Укажите **Backblaze KeyID** и **Master Application Key** (*подробнее о Backblaze [здесь](pre-install.md#backblaze)*);
6. Введите **Никнейм** и **Пароль** (*эти данные понадобятся для дальнейшего использования наших сервисов*);
7. Нажмите на кнопку **Подключить**, затем **Создать сервер**;
8. Ожидайте завершение всех проверок (*наша команда работает над ускорением данного процесса*);
9. Готово. Теперь приложение настроено и готово к использованию по назначению. Ваши приватные сервисы в Ваших руках!
Для использования SelfPrivacy необходимы учетные записи сервис-провайдеров, для которых наше приложение выступит в роли главного управляющего — Вашей правой рукой в деле приватности.
## Установка и настройка
SelfPrivacy — продукт с открытым исходным кодом, система развертки набора свободного программного обеспечения, которое устанавливается на Ваш сервер и в дальнейшем находится под Вашим полным контролем. На выполнение данной инструкции в среднем уходит около часа, но фактически в ней нет ничего сложного. В зависимости от опыта и уже имеющихся аккаунтов на хостинговых площадках, весь процесс может занять пару кружек кофе подряд.
План выполнения работ и основные требования:
1. Наличие паспорта;
2. Банковская карта с балансом $10-15 в настоящий момент и с возможностью оплаты $5 раз в месяц в дальнейшем;
3. Регистрация учетных записей на хостинговых платформах;
4. Покупка домена и его привязка;
5. Создание API-ключей для автоматизированного управления сервисами через приложение SelfPrivacy;
6. Подключение приложения к Вашим аккаунтам и автоматизированная установка конечных сервисов.
Проект SelfPrivacy нацелен на приватность пользователей, которая гарантирует отсутствие утечек чувствительной информации в пользу корыстных корпораций. Это достигается при полной подконтрольности сервера, который вы используете. Так как мы стараемся сделать решение максимально простым в использовании, мы не призываем всех ставить серверы дома. Вместо этого предлагается использовать услуги хостинг-провайдеров, которые, заключая с Вами договор и будучи юридическими лицами, могут требовать удостоверение личности. Если вы полны скепсиса по этому поводу, взгляните на вопрос под другим углом: хостинговые компании трудятся над защитой своей репутации и соблюдают законы стран, в которых располагаются. Если вы не планируете заниматься криминалом, законы на Вашей стороне. Более того, подход SelfPrivacy обеспечивает сквозное шифрование между Вами и Вашими сервисами. Коммерческие социальные сети торгуют данными не потому, что в их распоряжении жесткие диски сервера, а потому, что вся логика их бизнеса нацелена на это. В нашем случае такого случиться не может: используются только этичные программные решения, а хостер, обеспечивающий дисковое пространство и сетевой канал, найдет себе занятие интереснее, чем снимать дамп неизвестной виртуальной машины и пытаться найти в нем что-то, что можно было бы продать рекламодателям. Это глупо, а также нарушает законодательство цивилизованных стран, так как в Вашем договоре с хостером точно не будет пункта, который даст ему разрешение на шпионаж за файлами на вашем сервере. Законы большинства стран гласят, что хостинг-провайдер предоставляет Вам мощности без юридической ответственности за Ваши дальнейшие действия. Если на Ваш сервер не будут поступать жалобы извне (за спам и т.п.), казусы в отношениях с администрацией хостинга не предвидятся. **Если кому-нибудь поручите эту задачу — лишитесь приватности. Для 100% независимости и контроля необходимо все делать самостоятельно.**
## Учетные записи
Для устойчивости и повышения приватности, SelfPrivacy требует много учетных записей. Если все держать в одном месте, получим то, от чего бежали — все возможные данные будут у одной компании. Именно поэтому разные компоненты Вашей небольшой экосистемы будут в разных местах.
### Защита учетных записей
Прежде, чем вы приступите к регистрации, подумайте о том, каким образом взламывают большинство аккаунтов на самых различных площадках. Чаще всего для этого не требуется даже обходить систему защиты сервиса! Дело в слабых паролях. Наш мозг подталкивает нас к простым паролям, а также к использованию похожих или даже одинаковых паролей на разных сайтах. Аксиома такова, что пароли должны быть разными и сложными. `MamaDajKushat`, как ни странно, плохой пароль. `MamaDajKushat@100` — чуть лучше, но все равно слабоват. Хорошими паролями являются парольные фразы, состоящие из нескольких несвязанных по смыслу слов, например, `expert repose postwar freestyle effects anytime liability`, либо случайный набор символов вроде `}!@$DSjda12jl34<!`. Важную роль играет длина и непредсказуемость. Если вы последуете совету о парольной фразе и создадите его вручную, наверняка в нем будет какая-то логика, которую смогут угадать знакомые с вами люди. Лучшим решением для создания и хранения паролей является менеджер паролей. [KeePassXC](https://keepassxc.org/download/) — легковесное кроссплатформенное приложение с открытым исходным кодом для генерации случайных паролей и их удобного хранения в зашифрованном виде. При таком подходе, вам придется помнить только один пароль - от менеджера паролей. Забудьте про бумажки под клавиатурой и текстовые файлы для хранения секретной информации. Зашифрованную базу KeePassXC можно назвать любым неприглядным именем вроде "runtime64.dll" и хранить ее резервную копию среди других файлов в любом облачном хранилище. Естественно, для душевного спокойствия для базы KeePassXC следует придумать самый сложный пароль из всех, что вы придумывали, и крепко его запомнить. Всего лишь один! Небольшой файл, представляющий собой базу данных KeePassXC, является AES-контейнером, криптостойкости которого хватит еще нашим внукам. Поэтому пароль забывать нельзя. Наравне с KeePassXC спросом пользуется [Bitwarden](https://bitwarden.com/) — также свободное программное обеспечение, распространяемое в виде приложения с графической оболочкой для компьютеров и смартфонов, приложения с веб-интерфейсом (который открывается через браузер), а также в виде полноценного расширения для браузера и в конце концов в виде CLI-дистрибутива (command line interface, программа без графической оболочки). Главным отличием Bitwarden от KeePassXC является "облачный" подход, в котором база данных с паролями хранится в зашифрованном виде на удаленном сервере, а не на локальном устройстве. На вкус и цвет товарищи находятся не всегда, поэтому начните с чего-то одного и, если выбранный вариант не удовлетворит, попробуйте альтернативу.
Также настоятельно рекомендуем включить двухфакторную авторизацию (MFA, 2FA), которая для входа в аккаунт будет требовать помимо пароля что-то еще: код из приложения, электронной почты и тому подобное. Максимально возможная безопасность при создании максимально приватных сервисов!
### Регистрация учетных записей
Сервисы, на которых необходимо завести аккаунт:
1. [Hetzner](https://accounts.hetzner.com/login) — хостинг виртуального сервера. Здесь будут жить наши сервисы и данные SelfPrivacy;
2. [NameCheap](https://www.namecheap.com/myaccount/login/) — для покупки домена — личного адреса в интернете, — который будет указывать на сервер. При желании, можете воспользоваться любым другим регистратором доменных имен.
3. [CloudFlare](https://dash.cloudflare.com/login) — DNS сервер, который будет обслуживать Ваш домен. CloudFlare славится сервисом защиты от DDoS-атаки, который вызывает много упреков в сообществе специалистов по приватности, так как раскрывает внутри себя весь зашифрованный трафик для анализа. Можете быть спокойны, в рамках этой инструкции мы будем использовать от CloudFlare только их DNS с удобным API для автоматизации управления через приложение SelfPrivacy.
4. [Backblaze](https://secure.backblaze.com/user_signin.htm)— IaaS (Infrastructure as a service) провайдер хранения резервных копий Ваших данных в зашифрованном виде. Backblaze предусматривает [тарифный план](https://www.backblaze.com/ru_RU/cloud-storage.html) с оплатой $0.005/ГБ в месяц, однако, первые 10ГБ даются бесплатно. Этого вполне достаточно для наших нужд, поэтому будем считать, что бэкапы за счет заведения.
Регистрация тривиальна, но иногда активация учетной записи может затянуться или потребовать дополнительных документов. Таким образом провайдеры защищаются от спамеров, ничего личного. Если случится трудность, наберитесь терпения и глубоко выдохните — нерешаемых задач не бывает! В крайнем случае обращайтесь в нашу службу поддержки.
Приведенные сервисы являются мировыми лидерами в своей нише. Выбор объясняется их надежностью, незамеченностью в торговле пользовательскими данными и удобством. В плане приватности существуют более привлекательные сервисы, но в основном мы не можем с ними работать. Далеко не каждый хостинг предоставляет гибкий API — интерфейс для интеграции сторонних приложений, каким пользуется SelfPrivacy для автоматизации дальнейшего управления. Если у вас есть конструктивные предложения альтернативных сервисов, сообщите нам. Мы рассмотрим возможность их поддержки и добавим в этот список.
## Покупка домена
<video src="/screencast/1.mp4" alt="NameCheap" controls></video>
Домен — это кусочек интернета, которому Вы даете имя. Простор для творчества огромен, у Вас есть 63 символа плюс `.com`, `.org`, `.icu` и еще несколько сотен доменных зон (окончание адреса после последней точки). Домен можно выбрать просто по фамилии, например, `ivanov.live` или `ivanov.health`, а можно что-то творческое вроде `shit-happens.shop`.
Несколько рекомендаций, которые нужно иметь ввиду при покупке:
1. Обязательно смотрите на цену ежегодного продления, она может в разы превышать стоимость покупки;
2. Нормальная цена домена $8-10 в год. Самые дешевые — китайские: `.icu` и `.cyou` (по $4-6);
3. Хорошее доменное имя удобно и по телефону диктовать и на деловой визитке указать не стыдно;
4. Фамилия в домене хороша тем, что можно раздать почту всем однофамильцам (главным образом, родственникам), например, `name.secondname@surname.com`, `ns@surname.com` или `name@surname.com`;
5. При регистрации домена обязательно указывайте реальные почту и телефон, иначе регистрацию могут аннулировать. Если Вы не сможете продлить домен, система SelfPrivacy не будет работать так, как задумано, и почти все нужно будет начинать заново.
### Подключение домена к DNS-серверу
После покупки, добавляем домен в CloudFlare:
<video src="/screencast/2.mp4" alt="Adding domain to Cloudflare" controls></video>
На примере домена `bazari.sh` мы выбрали бесплатный тариф и получили имена серверов: `anton.ns.cloudflare.com` и `rose.ns.cloudflare.com`, которые надо прописать у своего регистратора. У вас имена DNS-серверов наверняка будут другие. В примере домен был куплен на NameCheap:
<video src="/screencast/3.mp4" alt="Namecheap to Cloudflare" controls></video>
Заодно проверьте, что у Вас включено автопродление и защита персональных данных — WhoisGuard (незамысловатые пункты в меню управления доменом). Через несколько минут или, в худшем случае, в период до двух суток настройки применятся. Как правило, приходится ожидать меньше десяти минут. Можете не останавливаться: пока выполните следующие действия, привязка домена наверняка закончится.
## API-токены
API-токены — это почти то же самое, что и логин с паролем, только для программы, а не человека. Мобильное приложение SelfPrivacy с их помощью управляет сервисами во всех учётных записях вместо Вас. Фактически, токен — это просто длинная строка. Все используемые сервисы позволяют создавать новые токены и удалять старые, поэтому хранить их каким-то особенным образом не нужно: скопируйте полученные токены в текстовый документ, чтобы потом зарегистрировать в SelfPrivacy, либо сразу вставляйте их в приложение.
Для NameCheap специальный ключ не нужен. Управление доменом будет осуществляться через сервис CloudFlare.
### CloudFlare
1. Перейдите по [ссылке](https://dash.cloudflare.com/) и авторизуйтесь в ранее созданном аккаунте;
2. В правом верхнем углу кликните на иконку профиля (человечек в кружочке). В мобильной версии сайта расположение кнопок отличается: в
верхнем левом углу находится кнопка Меню (три горизонтальных полоски), нажмите на нее. В выпавшем списке найдите пункт "My Profile";
3. Будет предложено выбрать одну из четырех категорий настроек: "Preferences", "Authentication", "API Tokens" и "Sessions". Выберите "API Tokens";
4. Самым первым пунктом является кнопка "Create Token". Нажмите на неё;
5. Спуститесь в самый низ к полю "Create Custom Token" и нажмите кнопку "Get Started" с правой стороны;
6. В поле "Token Name" дайте имя новому токену. Можете покреативить и отнестись к этому как к наименованию домашнего зверька :)
7. Далее окно "Permissions". В первом поле выберите "Zone". Во втором поле (по центру) выберите DNS. В последнем поле — "Edit";
8. Далее, прямо под этой строчкой, нажмите на "Add More". Появится строка, аналогичная той, которую вы только что заполняли;
9. В первом поле новой строки выберите "Zone" по аналогии с предыдущим шагом. Во втором поле снова "Zone". В третьем — "Read";
10. Найдите глазами "Zone Resources". Под этой надписью есть строка с двумя полями. В первом должно быть "Include", а во втором — "Specific Zone". Как только вы выберите "Specific Zone", справа появится ещё одно поле. В нём выбираем наш домен;
11. Пролистайте в самый низ и нажмите на синюю кнопку "Continue to Summary";
12. Убедитесь, что все поля были заполнены верно: должна присутствовать подобная строка, содержащая ваш домен и "DNS:Edit, Zone:Read";
13. Если всё на своих местах, завершите операцию нажатием кнопки "Create Token";
14. Скопируйте созданный токен во временный текстовый файл, либо сразу в приложение SelfPrivacy.
<video src="/screencast/4.mp4" alt="Cloudflare token setup" controls></video>
### Hetzner
1. Перейдите по [ссылке](https://console.hetzner.cloud/) и авторизуйтесь в ранее созданном аккаунте;
2. Создайте новый проект. Наведите мышкой на боковую панель. Она должна раскрыться, показав пункты меню. Сейчас нас интересует последний — "Security" (с иконкой ключика);
3. В верхней части интерфейса увидите примерно такой список: "SSH KEYS", "API TOKENS", "CERTIFICATES", "MEMBERS". Выберите "API TOKENS";
4. Посередине интерфейса нажмите кнопку "GENERATE API TOKEN";
5. В поле "Description" дайте новому токену название (это может быть любое слово, которое Вам нравится);
6. Под полем "Description" есть возможность выбрать разрешения ("PERMISSIONS"). Выберите "Read & Write";
8. Завершаем операцию нажатием "GENERATE API TOKEN";
9. После этого появится окно с API-токеном. Скопируйте созданный токен во временный текстовый файл, либо сразу в приложение SelfPrivacy.
![Hetzner token setup](https://selfprivacy.org/img/screencasts/Hetzner.gif)
### Backblaze
1. Перейдите по [ссылке](https://secure.backblaze.com/user_overview.htm) и авторизуйтесь в ранее созданном аккаунте;
2. В левой части интерфейса в подкатегории "Account" выберите "App Keys";
3. Нажмите на синюю кнопку "Generate New Master Application Key";
4. Подтвердите действие во всплывающем окне;
5. Сохраните "keyID" и "applicationKey" во временном текстовом файле, либо сразу введите их в приложение SelfPrivacy.
<video src="/screencast/6.mp4" alt="Backblaze token setup" controls></video>
# Все сделано!
Когда все необходимые API-токены в ваших руках, добавьте их в приложение SelfPrivacy, если еще этого не сделали. Ваши приватные сервисы ждут! Если возникнут вопросы по конфигурации, обратитесь к нашим ответам на часто задаваемые вопросы (FAQ). Если вашего вопроса там нет, либо ответ не помог с решением, обратитесь в поддержку.

View File

@ -1,13 +0,0 @@
# 👋 Введение
[SelfPrivacy](https://selfprivacy.org) — мобильное [приложение](https://f-droid.org/en/packages/pro.kherel.selfprivacy/) разворачивает сервер с готовыми к использованию сервисами:
- Электронная почта;
- Менеджер паролей;
- Мессенджер;
- VPN;
- Файловое хранилище;
- Конференции...
- ... и многие другие [сервисы](services.md)
## ⚠️ Beta
Текущий релиз не готов к повседневному использованию неквалифицированным пользователем. Работа продолжается, никто не намерен отступать!

View File

@ -0,0 +1,13 @@
# О нас и наших планах
Если вы читаете этот текст, у Вас наверняка есть электронная почта. Если Ваша почта до сих пор находится *не на Вашем* сервере, Вы пришли по адресу!
Цель [SelfPrivacy](https://selfprivacy.org) — предоставить блага глобальной сети без обязательств перед лукавыми гигантами индустрии. Проект является свободным во всех смыслах: полностью бесплатен, его исходный код находится в общем доступе, а все инструменты и приложения, которые предоставляет SelfPrivacy, также являются свободным программным обеспечением. Никакой слежки, никакого пиратства, никаких долговых обязательств.
В первых рядах SelfPrivacy стоит группа разработчиков из нескольких человек и идейный двигатель и основатель проекта [Кирилл Жольнай](https://s.zholnay.name/@kirill) — инженер, программист, системный администратор и семьянин.
Идея об удобном предоставлении привычных сервисов, где хозяином своих данных был бы сам пользователь, родилась после множества часов кропотливого и монотонного администрирования: почтовый сервер, файловое хранилище, мессенджер... Все это увлекательно, но требует специальных навыков, времени и неохотно воспринимается даже друзьями. Как убедить кого-либо перейти на использование альтернативных сервисов, когда вокруг пестрит реклама однокнопочных приложений, которые не требуют никаких усилий для начала использования и которыми уже пользуются все знакомые? Обычному пользователю с трудом дается понимание преимуществ почтового сервера друга перед google-почтой, а вдохновить такого персонажа на хостинг собственного сервера вовсе кажется невыполнимой задачей.
SelfPrivacy — не очередной стартап с красивой обложкой, а продукт, который имеет под собой идеалы приватности, стремится к ее доступности для всех желающих, а также несет ликбез всем, кто еще не осознал в чем заключается опасность глобальной сети, централизованной в руках нескольких алчных юридических лиц.
Чтобы Вы смогли понять нас лучше, предлагаем ознакомиться с нашим видением проблем и с тем, как мы их решаем.

View File

@ -1,20 +0,0 @@
# Политика
Наша миссия гуманитарная — реализация права на неприкосновенность и конфиденциальность частной жизни.
Мы не занимаемся политикой, не поддерживаем и не состоим в политических партиях, никого не осуждаем и не участвуем в конфликтах.
## Политика конфиденциальности
Мобильное приложение полностью автономно, не подгружает никаких данных с сайтов, не содержит трекеров, взаимодействует только с Вашим сервером.
Сервер взаимодействует с инфраструктурой NixOS.
Рекомендуемые клиентские приложения взаимодействуют только с вашим сервером. Исключения:
- [Delta.Chat](messenger.md) при использовании публикации геолокации [вынужден](https://support.delta.chat/t/tracker-on-android-app/1814) использовать mapbox;
- Есть вопросы к мобильному приложению [bitwarden](pass.md). Оно использует библиотеки отслеживающего програмного обеспечения, но трафик пока не анализировали, вероятно, подозрительной активности нет.
## Наши web-ресурсы
Вы оставляете массу своих данных при посещении любого сайта. Как минимум — IP-адрес, как максимум — версию ОС и браузера, разрешение экрана, данные о производительности Вашего устройства и некоторое другое.
Мы **не используем трекинг** ни в каком виде ни на одном из наших публичных сервисов.
Но **мы агрегируем access-логи**, чтобы понимать сколько у нас пользователей и из какой страны. Все IP-адреса посетителей хранятся в виде подсетей (x.x.x.0) и не могут Вас однозначно идентифицировать. Рекомендуем использовать средства анонимизации трафика при повышенном уровне паранойи, так как мы не гарантируем, что провайдер нашего сервера не собирает метаинформацию, также как и Ваш — не мониторит посещение свободолюбивого ресурса.

View File

@ -1,108 +1 @@
# Предустановка
Для использования SelfPrivacy необходимы учетные записи сервис-провайдеров, для которых наше приложение выступит в роли главного управляющего — Вашей правой рукой в деле приватности.
## Установка и настройка
SelfPrivacy — продукт с открытым исходным кодом, система развертки набора свободного программного обеспечения, которое устанавливается на Ваш сервер и в дальнейшем находится под Вашим полным контролем. На выполнение данной инструкции в среднем уходит около часа, но фактически в ней нет ничего сложного. В зависимости от опыта и уже имеющихся аккаунтов на хостинговых площадках, весь процесс может занять пару кружек кофе подряд.
План выполнения работ и основные требования:
1. Наличие паспорта;
2. Банковская карта с балансом $10-15 в настоящий момент и с возможностью оплаты $5 раз в месяц в дальнейшем;
3. Регистрация учетных записей на хостинговых платформах;
4. Покупка домена и его привязка;
5. Создание API-ключей для автоматизированного управления сервисами через приложение SelfPrivacy;
6. Подключение приложения к Вашим аккаунтам и автоматизированная установка конечных сервисов.
Проект SelfPrivacy нацелен на приватность пользователей, которая гарантирует отсутствие утечек чувствительной информации в пользу корыстных корпораций. Это достигается при полной подконтрольности сервера, который вы используете. Так как мы стараемся сделать решение максимально простым в использовании, мы не призываем всех ставить серверы дома. Вместо этого предлагается использовать услуги хостинг-провайдеров, которые, заключая с Вами договор и будучи юридическими лицами, могут требовать удостоверение личности. Если вы полны скепсиса по этому поводу, взгляните на вопрос под другим углом: хостинговые компании трудятся над защитой своей репутации и соблюдают законы стран, в которых располагаются. Если вы не планируете заниматься криминалом, законы на Вашей стороне. Более того, подход SelfPrivacy обеспечивает сквозное шифрование между Вами и Вашими сервисами. Коммерческие социальные сети торгуют данными не потому, что в их распоряжении жесткие диски сервера, а потому, что вся логика их бизнеса нацелена на это. В нашем случае такого случиться не может: используются только этичные программные решения, а хостер, обеспечивающий дисковое пространство и сетевой канал, найдет себе занятие интереснее, чем снимать дамп неизвестной виртуальной машины и пытаться найти в нем что-то, что можно было бы продать рекламодателям. Это глупо, а также нарушает законодательство цивилизованных стран, так как в Вашем договоре с хостером точно не будет пункта, который даст ему разрешение на шпионаж за файлами на вашем сервере. Законы большинства стран гласят, что хостинг-провайдер предоставляет Вам мощности без юридической ответственности за Ваши дальнейшие действия. Если на Ваш сервер не будут поступать жалобы извне (за спам и т.п.), казусы в отношениях с администрацией хостинга не предвидятся. **Если кому-нибудь поручите эту задачу — лишитесь приватности. Для 100% независимости и контроля необходимо все делать самостоятельно.**
## Учетные записи
Для устойчивости и повышения приватности, SelfPrivacy требует много учетных записей. Если все держать в одном месте, получим то, от чего бежали — все возможные данные будут у одной компании. Именно поэтому разные компоненты Вашей небольшой экосистемы будут в разных местах.
### Защита учетных записей
Прежде, чем вы приступите к регистрации, подумайте о том, каким образом взламывают большинство аккаунтов на самых различных площадках. Чаще всего для этого не требуется даже обходить систему защиты сервиса! Дело в слабых паролях. Наш мозг подталкивает нас к простым паролям, а также к использованию похожих или даже одинаковых паролей на разных сайтах. Аксиома такова, что пароли должны быть разными и сложными. `MamaDajKushat`, как ни странно, плохой пароль. `MamaDajKushat@100` — чуть лучше, но все равно слабоват. Хорошими паролями являются парольные фразы, состоящие из нескольких несвязанных по смыслу слов, например, `expert repose postwar freestyle effects anytime liability`, либо случайный набор символов вроде `}!@$DSjda12jl34<!`. Важную роль играет длина и непредсказуемость. Если вы последуете совету о парольной фразе и создадите его вручную, наверняка в нем будет какая-то логика, которую смогут угадать знакомые с вами люди. Лучшим решением для создания и хранения паролей является менеджер паролей. [KeePassXC](https://keepassxc.org/download/) — легковесное кроссплатформенное приложение с открытым исходным кодом для генерации случайных паролей и их удобного хранения в зашифрованном виде. При таком подходе, вам придется помнить только один пароль - от менеджера паролей. Забудьте про бумажки под клавиатурой и текстовые файлы для хранения секретной информации. Зашифрованную базу KeePassXC можно назвать любым неприглядным именем вроде "runtime64.dll" и хранить ее резервную копию среди других файлов в любом облачном хранилище. Естественно, для душевного спокойствия для базы KeePassXC следует придумать самый сложный пароль из всех, что вы придумывали, и крепко его запомнить. Всего лишь один! Небольшой файл, представляющий собой базу данных KeePassXC, является AES-контейнером, криптостойкости которого хватит еще нашим внукам. Поэтому пароль забывать нельзя. Наравне с KeePassXC спросом пользуется [Bitwarden](https://bitwarden.com/) — также свободное программное обеспечение, распространяемое в виде приложения с графической оболочкой для компьютеров и смартфонов, приложения с веб-интерфейсом (который открывается через браузер), а также в виде полноценного расширения для браузера и в конце концов в виде CLI-дистрибутива (command line interface, программа без графической оболочки). Главным отличием Bitwarden от KeePassXC является "облачный" подход, в котором база данных с паролями хранится в зашифрованном виде на удаленном сервере, а не на локальном устройстве. На вкус и цвет товарищи находятся не всегда, поэтому начните с чего-то одного и, если выбранный вариант не удовлетворит, попробуйте альтернативу.
Также настоятельно рекомендуем включить двухфакторную авторизацию (MFA, 2FA), которая для входа в аккаунт будет требовать помимо пароля что-то еще: код из приложения, электронной почты и тому подобное. Максимально возможная безопасность при создании максимально приватных сервисов!
### Регистрация учетных записей
Сервисы, на которых необходимо завести аккаунт:
1. [Hetzner](https://accounts.hetzner.com/login) — хостинг виртуального сервера. Здесь будут жить наши сервисы и данные SelfPrivacy;
2. [NameCheap](https://www.namecheap.com/myaccount/login/) — для покупки домена — личного адреса в интернете, — который будет указывать на сервер. При желании, можете воспользоваться любым другим регистратором доменных имен.
3. [CloudFlare](https://dash.cloudflare.com/login) — DNS сервер, который будет обслуживать Ваш домен. CloudFlare славится сервисом защиты от DDoS-атаки, который вызывает много упреков в сообществе специалистов по приватности, так как раскрывает внутри себя весь зашифрованный трафик для анализа. Можете быть спокойны, в рамках этой инструкции мы будем использовать от CloudFlare только их DNS с удобным API для автоматизации управления через приложение SelfPrivacy.
4. [Backblaze](https://secure.backblaze.com/user_signin.htm)— IaaS (Infrastructure as a service) провайдер хранения резервных копий Ваших данных в зашифрованном виде. Backblaze предусматривает [тарифный план](https://www.backblaze.com/ru_RU/cloud-storage.html) с оплатой $0.005/ГБ в месяц, однако, первые 10ГБ даются бесплатно. Этого вполне достаточно для наших нужд, поэтому будем считать, что бэкапы за счет заведения.
Регистрация тривиальна, но иногда активация учетной записи может затянуться или потребовать дополнительных документов. Таким образом провайдеры защищаются от спамеров, ничего личного. Если случится трудность, наберитесь терпения и глубоко выдохните — нерешаемых задач не бывает! В крайнем случае обращайтесь в нашу службу поддержки.
Приведенные сервисы являются мировыми лидерами в своей нише. Выбор объясняется их надежностью, незамеченностью в торговле пользовательскими данными и удобством. В плане приватности существуют более привлекательные сервисы, но в основном мы не можем с ними работать. Далеко не каждый хостинг предоставляет гибкий API — интерфейс для интеграции сторонних приложений, каким пользуется SelfPrivacy для автоматизации дальнейшего управления. Если у вас есть конструктивные предложения альтернативных сервисов, сообщите нам. Мы рассмотрим возможность их поддержки и добавим в этот список.
## Покупка домена
<video src="/screencast/1.mp4" alt="NameCheap" controls></video>
Домен — это кусочек интернета, которому Вы даете имя. Простор для творчества огромен, у Вас есть 63 символа плюс `.com`, `.org`, `.icu` и еще несколько сотен доменных зон (окончание адреса после последней точки). Домен можно выбрать просто по фамилии, например, `ivanov.live` или `ivanov.health`, а можно что-то творческое вроде `shit-happens.shop`.
Несколько рекомендаций, которые нужно иметь ввиду при покупке:
1. Обязательно смотрите на цену ежегодного продления, она может в разы превышать стоимость покупки;
2. Нормальная цена домена $8-10 в год. Самые дешевые — китайские: `.icu` и `.cyou` (по $4-6);
3. Хорошее доменное имя удобно и по телефону диктовать и на деловой визитке указать не стыдно;
4. Фамилия в домене хороша тем, что можно раздать почту всем однофамильцам (главным образом, родственникам), например, `name.secondname@surname.com`, `ns@surname.com` или `name@surname.com`;
5. При регистрации домена обязательно указывайте реальные почту и телефон, иначе регистрацию могут аннулировать. Если Вы не сможете продлить домен, система SelfPrivacy не будет работать так, как задумано, и почти все нужно будет начинать заново.
### Подключение домена к DNS-серверу
После покупки, добавляем домен в CloudFlare:
<video src="/screencast/2.mp4" alt="Adding domain to Cloudflare" controls></video>
На примере домена `bazari.sh` мы выбрали бесплатный тариф и получили имена серверов: `anton.ns.cloudflare.com` и `rose.ns.cloudflare.com`, которые надо прописать у своего регистратора. У вас имена DNS-серверов наверняка будут другие. В примере домен был куплен на NameCheap:
<video src="/screencast/3.mp4" alt="Namecheap to Cloudflare" controls></video>
Заодно проверьте, что у Вас включено автопродление и защита персональных данных — WhoisGuard (незамысловатые пункты в меню управления доменом). Через несколько минут или, в худшем случае, в период до двух суток настройки применятся. Как правило, приходится ожидать меньше десяти минут. Можете не останавливаться: пока выполните следующие действия, привязка домена наверняка закончится.
## API-токены
API-токены — это почти то же самое, что и логин с паролем, только для программы, а не человека. Мобильное приложение SelfPrivacy с их помощью управляет сервисами во всех учётных записях вместо Вас. Фактически, токен — это просто длинная строка. Все используемые сервисы позволяют создавать новые токены и удалять старые, поэтому хранить их каким-то особенным образом не нужно: скопируйте полученные токены в текстовый документ, чтобы потом зарегистрировать в SelfPrivacy, либо сразу вставляйте их в приложение.
Для NameCheap специальный ключ не нужен. Управление доменом будет осуществляться через сервис CloudFlare.
### CloudFlare
1. Перейдите по [ссылке](https://dash.cloudflare.com/) и авторизуйтесь в ранее созданном аккаунте;
2. В правом верхнем углу кликните на иконку профиля (человечек в кружочке). В мобильной версии сайта расположение кнопок отличается: в
верхнем левом углу находится кнопка Меню (три горизонтальных полоски), нажмите на нее. В выпавшем списке найдите пункт "My Profile";
3. Будет предложено выбрать одну из четырех категорий настроек: "Preferences", "Authentication", "API Tokens" и "Sessions". Выберите "API Tokens";
4. Самым первым пунктом является кнопка "Create Token". Нажмите на неё;
5. Спуститесь в самый низ к полю "Create Custom Token" и нажмите кнопку "Get Started" с правой стороны;
6. В поле "Token Name" дайте имя новому токену. Можете покреативить и отнестись к этому как к наименованию домашнего зверька :)
7. Далее окно "Permissions". В первом поле выберите "Zone". Во втором поле (по центру) выберите DNS. В последнем поле — "Edit";
8. Далее, прямо под этой строчкой, нажмите на "Add More". Появится строка, аналогичная той, которую вы только что заполняли;
9. В первом поле новой строки выберите "Zone" по аналогии с предыдущим шагом. Во втором поле снова "Zone". В третьем — "Read";
10. Найдите глазами "Zone Resources". Под этой надписью есть строка с двумя полями. В первом должно быть "Include", а во втором — "Specific Zone". Как только вы выберите "Specific Zone", справа появится ещё одно поле. В нём выбираем наш домен;
11. Пролистайте в самый низ и нажмите на синюю кнопку "Continue to Summary";
12. Убедитесь, что все поля были заполнены верно: должна присутствовать подобная строка, содержащая ваш домен и "DNS:Edit, Zone:Read";
13. Если всё на своих местах, завершите операцию нажатием кнопки "Create Token";
14. Скопируйте созданный токен во временный текстовый файл, либо сразу в приложение SelfPrivacy.
<video src="/screencast/4.mp4" alt="Cloudflare token setup" controls></video>
### Hetzner
1. Перейдите по [ссылке](https://console.hetzner.cloud/) и авторизуйтесь в ранее созданном аккаунте;
2. Создайте новый проект. Наведите мышкой на боковую панель. Она должна раскрыться, показав пункты меню. Сейчас нас интересует последний — "Security" (с иконкой ключика);
3. В верхней части интерфейса увидите примерно такой список: "SSH KEYS", "API TOKENS", "CERTIFICATES", "MEMBERS". Выберите "API TOKENS";
4. Посередине интерфейса нажмите кнопку "GENERATE API TOKEN";
5. В поле "Description" дайте новому токену название (это может быть любое слово, которое Вам нравится);
6. Под полем "Description" есть возможность выбрать разрешения ("PERMISSIONS"). Выберите "Read & Write";
8. Завершаем операцию нажатием "GENERATE API TOKEN";
9. После этого появится окно с API-токеном. Скопируйте созданный токен во временный текстовый файл, либо сразу в приложение SelfPrivacy.
![Hetzner token setup](https://selfprivacy.org/img/screencasts/Hetzner.gif)
### Backblaze
1. Перейдите по [ссылке](https://secure.backblaze.com/user_overview.htm) и авторизуйтесь в ранее созданном аккаунте;
2. В левой части интерфейса в подкатегории "Account" выберите "App Keys";
3. Нажмите на синюю кнопку "Generate New Master Application Key";
4. Подтвердите действие во всплывающем окне;
5. Сохраните "keyID" и "applicationKey" во временном текстовом файле, либо сразу введите их в приложение SelfPrivacy.
<video src="/screencast/6.mp4" alt="Backblaze token setup" controls></video>
# Все сделано!
Когда все необходимые API-токены в ваших руках, добавьте их в приложение SelfPrivacy, если еще этого не сделали. Ваши приватные сервисы ждут! Если возникнут вопросы по конфигурации, обратитесь к нашим ответам на часто задаваемые вопросы (FAQ). Если вашего вопроса там нет, либо ответ не помог с решением, обратитесь в поддержку.
# Установка

View File

@ -1,32 +0,0 @@
# 🧑‍💻 О нас
Международная команда независимых профессионалов:
- [Жольнай Кирилл](https://s.zholnay.name/@kirill) — Founder/CEO/CISO. Более 15 лет строит и защищает корпоративную инфраструктуру в средних и крупных компаниях;
- **ilchub** — core-team DevOps, Backend-dev;
- **kherel** — core-team Flutter Dev;
- **nikolai** — QA Engeneer;
- и много классных котрибьюторов и [волонтеров](volonteers.md)!
## 🌠 Нам помогают
- [Роскомсвобода](https://roskomsvoboda.org/). Спич на русском [Youtube](https://www.youtube.com/watch?v=mdeUTUPeJjA);
- [Privacy Accelerator](https://privacyaccelerator.org/);
- Мировое Open Source сообщество;
- NixOS сообщество.
## 🫂 Близкие по духу
- [Cloudron](https://www.cloudron.io/);
- [IndieWeb](https://indieweb.org/);
- [Kubenav](https://kubenav.io/);
- [Yunohsot](https://yunohost.org/);
- [FreedomBox](https://freedombox.org);
- [Tunrkeylinux](https://turnkeylinux.org);
- [framasoft.org](https://framasoft.org);
- [sandstorm.io](https://sandstorm.io/);
- [citadel.org](https://citadel.org);
- [disroot.org](https://disroot.org).
### Полезное
- [ssd.eff.org](https://ssd.eff.org);
- [datadetoxkit.org](https://datadetoxkit.org);
- [securityplanner.consumerreports.org](https://securityplanner.consumerreports.org/tool);
- [fordfoundation.org](https://www.fordfoundation.org/work/our-grants/building-institutions-and-networks/cybersecurity-assessment-tool/).