diff --git a/assets/scss/_styles_project.scss b/assets/scss/_styles_project.scss index cd0f521..4b324d7 100644 --- a/assets/scss/_styles_project.scss +++ b/assets/scss/_styles_project.scss @@ -79,4 +79,8 @@ .sp-services-row { margin-top: 6rem; +} + +.tab-content .tab-pane { + max-width: 100% !important; } \ No newline at end of file diff --git a/content/en/docs/Getting started/Cloudflare.mp4 b/content/en/docs/Getting started/Cloudflare.mp4 new file mode 100644 index 0000000..e31bbec Binary files /dev/null and b/content/en/docs/Getting started/Cloudflare.mp4 differ diff --git a/content/en/docs/Getting started/_index.md b/content/en/docs/Getting started/_index.md index d9a508c..7174aa3 100644 --- a/content/en/docs/Getting started/_index.md +++ b/content/en/docs/Getting started/_index.md @@ -1,183 +1,233 @@ --- -categories: ["Examples", "Placeholders"] -tags: ["test","docs"] +categories: ["Tutorials"] +tags: [] title: "Getting Started" linkTitle: "Getting Started" weight: 1 description: > - How do you set up SelfPrivacy server? + How do you deploy and set up SelfPrivacy server? --- -Установка и настройка ---------------------- -SelfPrivacy сервер создается поэтапно в течение часа. Звучит страшно, но уверяю, учёная степень не понадобится. Процесс не сложнее покупки в интернет-магазине. +The SelfPrivacy server is created step by step within an hour. Sounds scary, but believe me, +you don't need a PhD to do it. It's as easy as shopping in an e-shop. -* Поиск паспорта и карты с балансом $10-15 и $5 в месяц -* Регистрация учётных записей -* Покупка домена -* Подключение домена к DNS серверу -* 🔑 Создание ключей -* Установка -* Подключение к сервисам 🎉 +- Finding a passport and card with a balance of $10-15 and $5 per month +- Registration of accounts +- Domain purchasing +- Connecting Domain to DNS Server +- Generating tokens +- Installation +- Connecting to the services -**Если поручите кому-нибудь эту задачу — лишитесь приватности.** Для 100% независимости и контроля необходимо делать всё самостоятельно. +**If you delegate this process to someone else, you will lose your privacy.** +For 100% independence and control we recommend doing everything yourself. -Регистрация учётных записей ---------------------- +## Accounts registration -Для устойчивости и SelfPrivacy требует много учётных записей, не будем доверять все данные одной компании, лучше распределим части системы по разным местам. +For stability, SelfPrivacy needs many accounts. We don't want to trust all the data to one company, +so we'd rather distribute parts of the system to different places. -{{% alert title="Защита учётных записей" color="warning" %}} -**Системы взламывают через самое слабое звено.** Чтобы учётные записи не были таким звеном, пароли должны быть разными для каждой учетной записи и сложными. ```MamaMilaRamu```, как ни странно, плохой пароль. Пример хорошего пароля - это парольная фраза: +{{% alert title="Protecting accounts" color="warning" %}} +**Systems are hacked through the weakest link.** To prevent accounts from being such a link, passwords must be different +for each account and must be complex. ```MamaMilaRamu``` is, oddly enough, a bad password. +An example of a good password is a passphrase: ```expert repose postwar anytime glimpse freestyle liability effects``` -или +or ```}Rj;EtG:,M!bc4/|``` -Как такой пароль запомнить? Никак! Пароли не нужно запоминать, их надо создавать и хранить в [менеджере паролей](https://keepassxc.org/download/). Хотя один помнить придётся — пароль от менеджера паролей. +How can you remember such a complicated password? Absolutely not! +Passwords do not need to be remembered, they need to be created and +stored in a [password manager](https://keepassxc.org/download/). +However, you'll need to remember at least one — password from the password manager. {{% /alert %}} +### Accounts to create: +* [Hetzner](https://www.hetzner.com) or [DigitalOcean](https://www.digitalocean.com) — virtual hosting servers. +Whichever one you choose, your data and SelfPrivacy services will live on it. +* [NameCheap](https://www.namecheap.com/), [Porkbun](https://porkbun.com) or any other registrar, +to purchase your personal address on the Internet — the domain that will point to the server. +* [CloudFlare](https://cloudflare.com) is a DNS server, where your personal address (domain) works. +* [Backblaze](https://www.backblaze.com/) is an IaaS, that provides free storage for your encrypted backups. -##### Регистрируемся: -* [Hetzner](https://www.hetzner.com) или [DigitalOcean](https://www.digitalocean.com) — хостинги виртуальных серверов. Какой выберете, в том и будут жить ваши данные и сервисы SelfPrivacy. -* [NameCheap](https://www.namecheap.com/), [Porkbun](https://porkbun.com) или любой другой регистратор, для покупки личного адреса в интернете — домена, который будет указывать на сервер. -* [CloudFlare](https://cloudflare.com) — DNS сервер, где работает ваш домен. -* [Backblaze](https://www.backblaze.com/) — IaaS провайдер, для бесплатного хранения резервных копий ваших данных в зашифрованном виде. +Registration is trivial, but sometimes account activation can take up to several days or require additional documents. +Therefore, use real documents and fill everything out carefully. Providers protect themselves from spam this way. +Nothing personal :) -Регистрация заурядна, но иногда проверка учётной записи длится несколько дней или требует дополнительных документов. Поэтому используйте настоящие документы и заполняйте всё аккуратно. Провайдеры так защищаются от спамеров, ничего личного) +**Be sure to enable additional account protection — the second factor (MFA, 2FA).** +Without this simple step, your data will not be safe. -**Обязательно включите дополнительную защиту учётных записей — второй фактор (MFA, 2FA).** Без этого простого шага ваши данные не будут в безопасности. - -Я знаю, было сложно, но теперь ваши данные защищены лучше, чем у 95% пользователей. Можете собой гордиться! Я вот вами уже горжусь 🤗 +I know it was hard, but now your data is better protected than 95% of users. +You should be proud of yourself! I'm proud of you 🤗 -Покупка домена ---------------------- +## Purchasing a domain -Включили второй фактор? Я серьёзно! Тогда переходим к интересному! +Enabled 2FA? Then let's get to the most interesting part! -**_Домен_ — это кусочек интернета, которому вы даёте имя.** Простор для творчества огромен, у вас есть 63 символа + .com .org .icu и еще несколько сотен доменов после точки. Можно выбрать просто по фамилии, например *ivanov.live* или *ivanov.health*, а можно и что-то творческое — *shit-happens.shop* +**_Domain_ — it's a piece of the Internet, that you can name like your home pet.** +The potential for creativity is enormous. Your only limitations are 63 character length + .com .org .icu or +other domain zones. +Feel free to choose from hundreds of others. You can choose your last name as a domain, like this: +jackson.live or carson.health, or it can be something creative, like: unicorn-land.shop -А теперь давайте купим домен, на примере https://www.namecheap.com -*тут видос* -![gif](/images/screencasts/nc-buy-domain.gif) - -###### Рекомендации: -* **Обязательно смотреть на цену ежегодного продления,** она может в разы превышать стоимость покупки. -* **Нормальная цена домена $8-10 в год.** Самые дешёвые — китайские .icu и .cyou — $4-6. -* **При регистрации домена обязательно указывать реальные почту и телефон, иначе регистрацию могут аннулировать.** И если вы не сможете продлить домен, система не будет работать так, как задумано. -* Выбирайте хорошее имя, которое удобно и по телефону диктовать, и на деловой визитке указать. -* Я уже говорил про второй фактор? +### Advice: +- **Be sure to look at the annual renewal price,** it can be many times the purchase price. +- **Normal domain price is $8-10 per year.** The cheapest are Chinese .icu and .cyou - $4-6. +* **When registering a domain, make sure you enter your real email address, otherwise your registration may be +cancelled.** And if you can't renew the domain, the system won't work as intended. +- A good name comes in handy, both on the phone to dictate, and on your business card. +- **Did I mention the 2FA?** -Подключение домена к DNS серверу ---------------------- +--- +## Connecting Domain to DNS Server -После покупки, домен добавляем в CloudFlare: - -*тут видос* +Once purchased, add your domain to CloudFlare: ![gif](/images/screencasts/add-domain-to-cf.gif) -На примере домена ruleit.stream мы выбрали бесплатный тариф и получили имена серверов: **gail.ns.cloudflare.com** и **mattns.cloudflare.com**, которые надо прописать у своего регистратора. В нашем случае NameCheap: - -*тут видос* +Using ruleit.stream as an example, we chose the free service plan and got nameservers: **gail.ns.cloudflare.com** +and **mattns.cloudflare.com**, which need to be registered with our registrar. For example, with NameCheap: ![gif](/images/screencasts/nc-to-cf.gif) -Заодно проверяем, что у нас включено автопродление и защита персональных данных — WhoisGuard. Через несколько минут или, в худшем случае, до 2-ух суток настройки применятся. +At the same time, we check that we include auto-renewal and personal data protection — WhoisGuard. +After a few minutes or, in the worst case, up to 2 days, the settings will be applied. -🔑 Создание ключей ------------------- +--- +## Generating tokens -**_API ключи_ — это почти то же самое, что и логин с паролем, только для программы, а не человека.** Мобильное приложение SelfPrivacy с их помощью управляет сервисами во всех учётных записях вместо вас. Удобно! +**_API tokens_ are almost the same as login and password, only for a program, not a person.** +SelfPrivacy application uses them to manage services in all accounts instead of you. Convenient! -#### Как получить Cloudflare API Token - -![Cloudflare token setup](resource:assets/images/gifs/CloudFlare.gif) -*сюда новый видос* - -1. Переходим по [ссылке](https://dash.cloudflare.com/) и авторизуемся в ранее созданном аккаунте. - -2. В правом верхнем углу кликаем на иконку профиля (для мобильной версии сайта: в верхнем левом углу нажимаем кнопку **Меню** с тремя горизонтальными полосками). В выпавшем меню кликаем на пункт **My Profile**. - -![My profile](resource:assets/images/pics/myprofile.png) -*сюда картинку отсюда https://git.selfprivacy.org/kherel/selfprivacy.org.app/src/branch/master/assets/images/pics/myprofile.png* - -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** (сразу же под левым полем которое мы заполняли ранее). Вуаля, у нас появились новые поля. Заполняем по аналогии с предыдущим пунктом, в первом поле выбираем **Zone**, во-втором тоже **Zone**. А уже в третьем нажимаем на **Read**. Давайте сверим с тем, что у вас получилось: - -![Permissions](resource:assets/images/pics/permissions.png) -*сюда картинку отсюда https://git.selfprivacy.org/kherel/selfprivacy.org.app/src/branch/master/assets/images/pics/permissions.png* - -8. Далее смотрим на **Zone Resources**. Под этой надписью есть строка с двумя полями. В первом должно быть **Include**, а во втором — **Specific Zone**. Как только Вы выберите **Specific Zone**, справа появится ещё одно поле. В нём выбираем наш домен. - -9. Листаем в самый низ и нажимаем на синюю кнопку **Continue to Summary**. - -10. Проверяем, всё ли мы правильно выбрали. Должна присутствовать подобная строка: ваш.домен — **DNS:Edit, Zone:Read**. - -11. Нажимаем **Create Token**. - -12. Копируем созданный токен. +We do not need a token for your domain registrar. But we will need one for the CloudFlare to use it for domain management. -Hetzner -------------- +### How to get Cloudflare API Token +{{< video src="Cloudflare" muted="true" autoplay="true" autoplay="true" loop="true" >}} + +1. Visit the following [link](https://dash.cloudflare.com/) and log in to the account you created earlier. + +2. Click on the profile icon in the upper right corner (for the mobile version of the site: +click on the **menu** button with three horizontal bars in the upper left corner). +From the menu that appears, click **My Profile**. + +{{< imgproc cloudflare-my-profile Fill "626x287">}} +{{< /imgproc >}} + +3. We have four configuration categories to choose from: **Preferences**, **Authentication**, +**API Tokens** and **Sessions**. Select **API Tokens**. + +4. The first item we see is the **Create Token** button. Click it. + +5. Scroll down until you see the **Create Custom Token** field and the **Get Started** button on the right side. +Press it. + +6. In the **Token Name** field, give your token a name. You can create your own name and treat it like a pet name :) + +7. Next, we have **Permissions**. In the first field, choose **Zone**. +In the second field, in the middle, select **DNS**. In the last field, select **Edit**. + +8. Click on the blue label at the bottom **+ Add more** (just below the left field that we filled in earlier). +Voila, we have new fields. Let's fill them in the same way as in the previous section, in the first field +we choose **Zone**, in the second one also **Zone**. And in the third one we press **Read**. Let's check what we have: + +{{< imgproc cloudflare-permissions Fill "628x203">}} +Your selection must look like this. +{{< /imgproc >}} + +9. Next, look at **Zone Resources**. Below this heading there is a line with two fields. +The first should be **Include**, and the second should be **Specific Zone**. +Once you select **Specific Zone**, another field will appear on the right. Here you select our domain. + +10. Scroll to the bottom and click the blue button **Continue to Summary**. + +11. Check that you have selected everything correctly. You should see a line like this: +your.domain - **DNS:Edit, Zone:Read**. + +12. Press **Create Token**. + +13. Copy the created token. + + +### How to get server provider token +{{< alert title="Don't keep your eggs in one basket" color="warning" >}} +If you are planning to use DigitalOcean to handle both server and DNS (which is not recommended), +you **must use a separate project for DNS records**. + +DigitalOcean only gives tokens that provide full access to everything in the project. While server provider token stays +on your device, the token for DNS management will be stored on your new server. This way, if your server is compromised, +the attacker will be able to do more harm than just change your DNS records. + +*Note: using DigitalOcean as DNS provider is not yet released, but already available on nightly channel.* +{{< /alert >}} +{{< tabpane text=true >}} + + {{% tab "Hetzner" %}} ![gif](/images/screencasts/Hetzner.gif) -1. Переходим по [ссылке](https://console.hetzner.cloud/) и авторизуемся в ранее созданном аккаунте. +1. Visit the following [link](https://console.hetzner.cloud/). Authorize the account you created earlier. -3. Заходим в созданный нами проект. Если такового нет — значит создаём. +2. Open the project you created. If none exists, create one. -4. *Наводим мышкой на боковую панель.* Она должна раскрыться, показав нам пункты меню. Нас интересует последний — **Security** (с иконкой ключика). +3. Point the mouse at the side panel. +It should open and show you menu items. We are interested in the last one — **Security** (with a key icon). -5. Далее, в верхней части интерфейса видим примерно такой список: **SSH KEYS, API TOKENS, CERTIFICATES, MEMBERS.** Нам нужен **API TOKENS**. Переходим по нему. +4. Next, at the top of the interface we see something like the following list: +**SSH Keys, API Tokens, Certificates, Members.** We need the **API Tokens**. Click on it. -7. По середине в интерфейсе, нас будет ожидать кнопка **GENERATE API TOKEN**. Нажимаем на эту кнопку. +5. On the right side of the interface you will see the **Generate API token** button. +If you are using the mobile version of the site — in the lower right corner you will see a **red plus** button. +Press it. -8. В поле **Description** даём нашему токену название (это может быть любое название, которое Вам нравится, сути оно не меняет). +6. In the **Description** field, give your token a name +(this can be any name that you like, it does not change anything in essence). -9. Под полем **Description** видим возможность выбрать разрешения **PERMISSIONS**. Выбираем **Read & Write**. +7. Under **Description**, select **permissions**. Select **Read & Write**. -10. Нажимаем **GENERATE API TOKEN**. +8. Click **Generate API Token.** -11. После этого, появиться окно с вашим ключём. +9. Сopy the token +{{% /tab %}} + + {{% tab "DigitalOcean" %}} + +{{< video src="do" muted="true" autoplay="true" autoplay="true" loop="true" >}} + +1. Follow this [link](https://cloud.digitalocean.com/account/) and log in to the previously created account. + +2. In the left menu look for **API** — the last item at the bottom. + +3. Click **Generate New Token** in **Personal Access Tokens** menu. + +4. Copy the token. + +{{% /tab %}} + +{{< /tabpane >}} -Backblaze -------------- +## How to get Backblaze token -
- Video manual - {{< video src="Backblaze" muted="true" autoplay="true" autoplay="true" loop="true" >}} +{{< video src="Backblaze" muted="true" autoplay="true" autoplay="true" loop="true" >}} -
+1. Visit the following [link](https://secure.backblaze.com/user_overview.htm) and log in to the previously created account. +2. On the left side of the interface, select **App Keys** in the **B2 Cloud Storage** subcategory. -1. Переходим по [ссылке](https://secure.backblaze.com/user_overview.htm) и авторизуемся в ранее созданном аккаунте. +3. Click on the blue **Generate New Master Application Key** button. -2. В левой части интерфейса выбираем **App Keys** в подкатегории **Account** +4. In the appeared pop-up window confirm the generation. -3. Нажимаем на синюю кнопку **Generate New Master Application Key** +5. Copy **keyID** and **applicationKey**. -4. Во всплывающем окне подтверждаем генерацию +--- -5. Копируем _keyID_ и _applicationKey_ - - -### 🎉 Поздравляю! Теперь Вы готовы использовать приватные сервисы. \ No newline at end of file +🎉 Congratulations! Now you are ready to use private services. \ No newline at end of file diff --git a/content/en/docs/Getting started/cloudflare-my-profile.png b/content/en/docs/Getting started/cloudflare-my-profile.png new file mode 100644 index 0000000..d1f1f3d Binary files /dev/null and b/content/en/docs/Getting started/cloudflare-my-profile.png differ diff --git a/content/en/docs/Getting started/cloudflare-permissions.png b/content/en/docs/Getting started/cloudflare-permissions.png new file mode 100644 index 0000000..4b9dd3f Binary files /dev/null and b/content/en/docs/Getting started/cloudflare-permissions.png differ diff --git a/content/en/docs/Getting started/do.mp4 b/content/en/docs/Getting started/do.mp4 new file mode 100644 index 0000000..20807db Binary files /dev/null and b/content/en/docs/Getting started/do.mp4 differ diff --git a/content/en/download/book.svg b/content/en/download/book.svg new file mode 100755 index 0000000..7133c2c --- /dev/null +++ b/content/en/download/book.svg @@ -0,0 +1,2 @@ + +