Compare commits
156 Commits
Author | SHA1 | Date | |
---|---|---|---|
65db9d3fee
|
|||
f3f092d1a3
|
|||
35c95c029c
|
|||
7fb07925ec
|
|||
dc4199d7c4 | |||
fda35b5f70
|
|||
9e16a63caa | |||
47377df8da
|
|||
28c576110c
|
|||
d63dc04aff
|
|||
e336699480
|
|||
aaec10b83e
|
|||
9cbebf239b
|
|||
97350b6245
|
|||
f0621e257b | |||
1ac4dd75c7
|
|||
4c8cd3f295
|
|||
bfaba1cd11 | |||
66efe4a27f
|
|||
657e977074 | |||
f516235dd4
|
|||
cc696093ce
|
|||
4da25bc39a
|
|||
6245ed8581
|
|||
d9b9092ac3
|
|||
7a6fc90114
|
|||
ef7cf862d4
|
|||
f396afa15f
|
|||
227609f768
|
|||
425914a33d | |||
131f91ad56 | |||
9b008f2b76 | |||
2a4947bd72 | |||
829883c450 | |||
e52286a1b0 | |||
2a85daa3fa | |||
052671197b
|
|||
f6ca66bbb4
|
|||
d03f91b1c0
|
|||
74928bb4c7 | |||
7b6a158e4d | |||
2150385184
|
|||
561f6a7463
|
|||
23b7effac9 | |||
1cd29c6972 | |||
ebf28c2b35 | |||
3498602fdd | |||
7c6ebc5ebb | |||
d011fe716e | |||
428121c0c7 | |||
3361de1705
|
|||
242894c291
|
|||
d67dcaea11
|
|||
e901d0db22 | |||
815739b7bc | |||
1b9d8f9c14 | |||
70a6cda9d5
|
|||
e6f6498908
|
|||
687a36e7db
|
|||
94fa083700
|
|||
752db84b86
|
|||
d5a732e08c
|
|||
2746861567
|
|||
f4f28ce821
|
|||
b0ce8cea24 | |||
43cdf87ad3
|
|||
9782ddf60f | |||
8ffa8207ff | |||
ff30001aff
|
|||
145e0af811 | |||
e91f63045d | |||
790293b792 | |||
d4f1195bb3 | |||
e4d89b0894 | |||
a9a7864889 | |||
d6bab0c4f8 | |||
27fe6a4c41 | |||
bd1ff328a7 | |||
64d736a7ef | |||
a1e40a79ba | |||
baece71b49 | |||
f5910c4b2b | |||
d35437cafa | |||
41bb717191 | |||
fdb59b32b9 | |||
c1f8a1e00c | |||
070a9b157c | |||
a17363080e | |||
f714a82d84 | |||
3efe31dc29 | |||
670331bcd9 | |||
bd5506bab8 | |||
eb2fd3bccb | |||
478c2cee3b | |||
dd96ff1b56 | |||
2c61157cbc | |||
a110fb0489 | |||
b66845af14 | |||
39f67789c4 | |||
603bec291e | |||
80f1e8ca51 | |||
fa9faa5648 | |||
95126762a6 | |||
0d597160cf | |||
dc0cd7d35f | |||
10812ede81 | |||
53b2c2af89 | |||
78e0cf7a42 | |||
0c2b119089 | |||
22572e096f | |||
41215f7433 | |||
750b73c589 | |||
2edd012619 | |||
2172eab26a | |||
724b70ae51 | |||
b9937e8630 | |||
303bf1aff6 | |||
ba435096f3 | |||
3ae6f80797 | |||
67535a820c | |||
c7ff34b330 | |||
703c291ba3 | |||
e3ee1cf1bb | |||
ae171cee7b | |||
c477e7af46 | |||
c113f03264 | |||
b6167fda1a | |||
9525deaf51 | |||
9911fa781e | |||
dc75bcf42e | |||
43c7b5329d | |||
3f6cc30f06 | |||
05cb8ee35c | |||
6a469b1fa6 | |||
78a8f8c061 | |||
8979e0ce79 | |||
ed873cd800 | |||
4f8663321a | |||
b20785b3b6 | |||
31bc2cd5af | |||
1b5d83137c | |||
e7d22bb1f2 | |||
ab5c9f8222 | |||
b4c0aac903 | |||
5f4f23ea65
|
|||
887022c7c0
|
|||
b9612deb98
|
|||
c4f5871160
|
|||
f5dac93435
|
|||
0a98bcb36b | |||
4815008e23 | |||
acd802e15e | |||
ef657b4afd
|
|||
8afb128ce3 | |||
d4266679b3 | |||
1be248c1ca |
9
.github/ISSUE_TEMPLATE/config.yml
vendored
@ -1,12 +1,15 @@
|
||||
contact_links:
|
||||
- name: Suggest a New Provider or Software
|
||||
url: https://discuss.privacyguides.org/c/suggestions
|
||||
url: https://discuss.privacyguides.net/c/site-development/suggestions
|
||||
about: Suggest something new for us to look at, or something we should remove.
|
||||
- name: Suggest a Guide
|
||||
url: https://discuss.privacyguides.net/c/site-development/guide-suggestions
|
||||
about: Suggest an area where you think guidance might be required.
|
||||
- name: Ask a Question
|
||||
url: https://discuss.privacyguides.org/c/questions
|
||||
url: https://discuss.privacyguides.net/c/privacy/questions
|
||||
about: Let us know if something doesn't make sense!
|
||||
- name: Share an Idea
|
||||
url: https://discuss.privacyguides.org/c/site-development
|
||||
url: https://discuss.privacyguides.net/c/site-development
|
||||
about: Suggest a new feature/section/page or anything else for the website.
|
||||
- name: Report a Translation Issue
|
||||
url: https://crowdin.com/project/privacyguides/discussions
|
||||
|
3
.github/PULL_REQUEST_TEMPLATE.md
vendored
@ -24,7 +24,8 @@ an advertising agency), and any other relevant affiliations.
|
||||
|
||||
<!-- Place an x in the boxes below, like: [x] -->
|
||||
- [ ] Please check this box to confirm you have disclosed any relevant conflicts of interest in your post.
|
||||
- [ ] Please check this box to confirm your agreement to publish your work under the [Creative Commons Attribution-NoDerivatives 4.0 International](https://github.com/privacyguides/privacyguides.org/blob/main/LICENSE) license, and to grant Privacy Guides a perpetual, worldwide, non-exclusive, transferable, royalty-free, irrevocable license with the right to sublicense such rights through multiple tiers of sublicensees, to reproduce, modify, display, perform and distribute your contribution as part of our project.
|
||||
- [ ] Please check this box to confirm your agreement to grant Privacy Guides a perpetual, worldwide, non-exclusive, transferable, royalty-free, irrevocable license with the right to sublicense such rights through multiple tiers of sublicensees, to reproduce, modify, display, perform, relicense, and distribute your contribution as part of our project.
|
||||
- [ ] Please check this box to confirm you are the sole author of this work, or that any additional authors will also reply to this PR on GitHub confirming their agreement to these terms.
|
||||
|
||||
<!-- What's this? When you submit a PR, you keep the Copyright for the work you
|
||||
are contributing. We need you to agree to the above terms in order for us to
|
||||
|
14
.github/dependabot.yml
vendored
@ -13,17 +13,3 @@ updates:
|
||||
- "jonaharagon"
|
||||
labels:
|
||||
- "fix:github_actions"
|
||||
|
||||
# Maintain dependencies for pipenv
|
||||
- package-ecosystem: "pip"
|
||||
directory: "/"
|
||||
ignore:
|
||||
- dependency-name: "mkdocs-material"
|
||||
schedule:
|
||||
interval: "daily"
|
||||
assignees:
|
||||
- "jonaharagon"
|
||||
reviewers:
|
||||
- "jonaharagon"
|
||||
labels:
|
||||
- "fix:python"
|
||||
|
34
.github/workflows/crowdin-download.yml
vendored
Normal file
@ -0,0 +1,34 @@
|
||||
name: 💬 Crowdin Download
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
release:
|
||||
types: [ published ]
|
||||
|
||||
permissions: write-all
|
||||
|
||||
jobs:
|
||||
synchronize-with-crowdin:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: crowdin action
|
||||
uses: crowdin/github-action@v1.7.0
|
||||
with:
|
||||
upload_sources: false
|
||||
upload_translations: false
|
||||
download_translations: true
|
||||
localization_branch_name: crowdin/l10n_translations
|
||||
create_pull_request: true
|
||||
pull_request_title: 'New Crowdin Translations'
|
||||
pull_request_body: 'New Crowdin translations by [Crowdin GitHub Action](https://github.com/crowdin/github-action)'
|
||||
pull_request_base_branch_name: 'main'
|
||||
config: crowdin.yml
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.REPO_TOKEN }}
|
||||
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
|
||||
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
|
@ -1,9 +1,14 @@
|
||||
name: 💬 Crowdin Upload
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
branches: [ main ]
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
synchronize-with-crowdin:
|
||||
runs-on: ubuntu-latest
|
||||
@ -14,11 +19,10 @@ jobs:
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: crowdin action
|
||||
uses: crowdin/github-action@1.4.14
|
||||
uses: crowdin/github-action@v1.7.0
|
||||
with:
|
||||
upload_sources: true
|
||||
upload_sources_args: '--auto-update --delete-obsolete'
|
||||
upload_translations: false
|
||||
download_translations: false
|
||||
config: crowdin.yml
|
||||
env:
|
13
.github/workflows/pages.yml
vendored
@ -11,7 +11,7 @@ concurrency:
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
PYTHON_VERSION: 3.x
|
||||
PYTHON_VERSION: 3.8
|
||||
|
||||
jobs:
|
||||
build:
|
||||
@ -29,15 +29,15 @@ jobs:
|
||||
submodules: 'true'
|
||||
|
||||
- name: Pages setup
|
||||
uses: actions/configure-pages@v2
|
||||
uses: actions/configure-pages@v3
|
||||
|
||||
- name: Python setup
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.10'
|
||||
python-version: '3.8'
|
||||
|
||||
- name: Cache files
|
||||
uses: actions/cache@v3.0.11
|
||||
uses: actions/cache@v3.2.6
|
||||
with:
|
||||
key: ${{ github.ref }}
|
||||
path: .cache
|
||||
@ -52,7 +52,10 @@ jobs:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
CARDS: true
|
||||
run: |
|
||||
pipenv run mkdocs build --config-file mkdocs.production.yml
|
||||
pipenv run mkdocs build --config-file config/mkdocs.en.yml
|
||||
pipenv run mkdocs build --config-file config/mkdocs.fr.yml
|
||||
pipenv run mkdocs build --config-file config/mkdocs.he.yml
|
||||
pipenv run mkdocs build --config-file config/mkdocs.nl.yml
|
||||
mv .well-known site/
|
||||
pipenv run mkdocs --version
|
||||
|
||||
|
47
.github/workflows/preview.yml
vendored
@ -1,47 +0,0 @@
|
||||
name: 🔂 Surge PR Preview
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [opened, synchronize, reopened]
|
||||
|
||||
# Ensures that only one mirror task will run at a time.
|
||||
concurrency:
|
||||
group: surge-sh
|
||||
|
||||
jobs:
|
||||
preview:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
issues: write
|
||||
pull-requests: write
|
||||
contents: write
|
||||
environment: preview
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
ref: ${{github.event.pull_request.head.ref}}
|
||||
repository: ${{github.event.pull_request.head.repo.full_name}}
|
||||
ssh-key: ${{ secrets.ACTIONS_SSH_KEY }}
|
||||
submodules: 'true'
|
||||
|
||||
- name: Set up Python runtime
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.10'
|
||||
|
||||
- name: Deploy to surge.sh
|
||||
uses: afc163/surge-preview@v1
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
CARDS: true
|
||||
with:
|
||||
surge_token: ${{ secrets.SURGE_TOKEN }}
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
dist: site
|
||||
failOnError: 'true'
|
||||
build: |
|
||||
pip install pipenv
|
||||
pipenv install
|
||||
pipenv run mkdocs build --config-file mkdocs.production.yml
|
10
.gitmodules
vendored
@ -1,6 +1,6 @@
|
||||
[submodule "mkdocs-material-insiders"]
|
||||
path = mkdocs-material
|
||||
url = git@github.com:privacyguides/mkdocs-material-insiders.git
|
||||
[submodule "docs/assets/brand"]
|
||||
path = docs/assets/brand
|
||||
[submodule "theme/assets/brand"]
|
||||
path = theme/assets/brand
|
||||
url = https://github.com/privacyguides/brand.git
|
||||
[submodule "modules/mkdocs-material"]
|
||||
path = modules/mkdocs-material
|
||||
url = git@github.com:privacyguides/mkdocs-material-insiders.git
|
||||
|
1
Brewfile.netlify
Normal file
@ -0,0 +1 @@
|
||||
brew "pngquant"
|
8
Pipfile
@ -5,16 +5,16 @@ name = "pypi"
|
||||
|
||||
[packages]
|
||||
mkdocs = "*"
|
||||
mkdocs-material = {path = "./mkdocs-material"}
|
||||
mkdocs-static-i18n = "*"
|
||||
mkdocs-git-revision-date-localized-plugin = "*"
|
||||
typing-extensions = "*"
|
||||
mkdocs-rss-plugin = "*"
|
||||
mkdocs-git-committers-plugin-2 = "*"
|
||||
mkdocs-macros-plugin = "*"
|
||||
pillow = "*"
|
||||
cairosvg = "*"
|
||||
mkdocs-material = {path = "./modules/mkdocs-material"}
|
||||
|
||||
[dev-packages]
|
||||
scour = "*"
|
||||
|
||||
[requires]
|
||||
python_version = "3.10"
|
||||
python_version = "3.8"
|
||||
|
945
Pipfile.lock
generated
52
README.md
@ -9,36 +9,30 @@
|
||||
|
||||
<p><em>Your central privacy and security resource to protect yourself online.</em></p>
|
||||
|
||||
<p><a href="https://www.reddit.com/r/PrivacyGuides/">
|
||||
<img src="https://img.shields.io/reddit/subreddit-subscribers/PrivacyGuides?label=Subscribe%20to%20r%2FPrivacyGuides&style=social">
|
||||
</a>
|
||||
<a href="https://mastodon.social/@privacyguides">
|
||||
<img src="https://img.shields.io/mastodon/follow/107604420394178246?style=social">
|
||||
<p><a href="https://mastodon.neat.computer/@privacyguides">
|
||||
<img src="https://img.shields.io/mastodon/follow/109298532634697668?domain=https%3A%2F%2Fmastodon.neat.computer&label=Follow%20%40privacyguides%40neat.computer&style=social">
|
||||
</a>
|
||||
<a href="https://twitter.com/privacy_guides">
|
||||
<img src="https://img.shields.io/twitter/follow/privacy_guides?style=social">
|
||||
</a>
|
||||
<a href="https://discuss.privacyguides.net/">
|
||||
<img src="https://img.shields.io/discourse/users?label=Join%20our%20forum&logo=discourse&server=https%3A%2F%2Fdiscuss.privacyguides.net&style=social">
|
||||
</a>
|
||||
<a href="https://github.com/privacyguides/privacyguides.org/stargazers">
|
||||
<img src="https://img.shields.io/github/stars/privacyguides?style=social">
|
||||
</a></p>
|
||||
|
||||
<a href="https://github.com/privacyguides/privacyguides.org/issues">
|
||||
<img src="https://img.shields.io/github/issues-raw/privacyguides/privacyguides.org">
|
||||
</a>
|
||||
<a href="https://github.com/privacyguides/privacyguides.org/issues?q=is%3Aissue+is%3Aclosed">
|
||||
<img src="https://img.shields.io/github/issues-closed-raw/privacyguides/privacyguides.org">
|
||||
</a>
|
||||
<a href="https://github.com/privacyguides/privacyguides.org/pulls">
|
||||
<p><a href="https://github.com/privacyguides/privacyguides.org/pulls">
|
||||
<img src="https://img.shields.io/github/issues-pr-raw/privacyguides/privacyguides.org">
|
||||
</a>
|
||||
<a href="https://github.com/privacyguides/privacyguides.org/pulls?q=is%3Apr+is%3Aclosed">
|
||||
<img src="https://img.shields.io/github/issues-pr-closed-raw/privacyguides/privacyguides.org">
|
||||
</a>
|
||||
<a href="https://opencollective.com/privacyguides">
|
||||
<img src="https://img.shields.io/opencollective/all/privacyguides">
|
||||
</a>
|
||||
<a href="https://crowdin.com/project/privacyguides">
|
||||
<img src="https://badges.crowdin.net/privacyguides/localized.svg">
|
||||
</a>
|
||||
<a href="https://opencollective.com/privacyguides">
|
||||
<img src="https://img.shields.io/opencollective/all/privacyguides">
|
||||
</a></p>
|
||||
</div>
|
||||
|
||||
@ -46,11 +40,11 @@
|
||||
|
||||
**Privacy Guides** is a socially motivated website that provides information for protecting your data security and privacy. We are a non-profit collective operated entirely by volunteer team members and contributors.
|
||||
|
||||
Our current list of team members can be found [here](https://github.com/orgs/privacyguides/people). Additionally, [many people](https://github.com/privacyguides/privacyguides.org/graphs/contributors) have made contributions to the project, and you can too!
|
||||
Our current list of team members can be found [here](https://www.privacyguides.org/about/#our-team). Additionally, [many people](https://github.com/privacyguides/privacyguides.org/graphs/contributors) have made contributions to the project, and you can too!
|
||||
|
||||
## Contributing
|
||||
|
||||
- 💬 [Start a discussion or suggest an idea](https://discuss.privacyguides.org/)
|
||||
- 💬 [Start a discussion or suggest an idea](https://discuss.privacyguides.net/)
|
||||
- 💖 [Sponsor the project](https://github.com/sponsors/privacyguides)
|
||||
- 🈴 [Help translate the site](https://crwd.in/privacyguides) [[Matrix chat](https://matrix.to/#/#pg-i18n:aragon.sh)]
|
||||
- 📝 Edit the site, everything's accessible in this repo
|
||||
@ -69,39 +63,27 @@ Our current list of team members can be found [here](https://github.com/orgs/pri
|
||||
|
||||
Committing to this repository requires [signing your commits](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits) (`git config commit.gpgsign true`) unless you are making edits via the GitHub.com text editor interface. As of August 2022 the preferred signing method is [SSH commit signatures](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification#ssh-commit-signature-verification), but GPG signing is also acceptable. You should add your signing key to your GitHub profile.
|
||||
|
||||
This website uses [`mkdocs-material-insiders`](https://squidfunk.github.io/mkdocs-material/insiders/) which offers additional functionality over the open-source `mkdocs-material` project. For obvious reasons we cannot distribute access to the insiders repository. You can install the website locally with the open-source version of `mkdocs-material`:
|
||||
|
||||
1. Clone this repository:
|
||||
- `git clone https://github.com/privacyguides/privacyguides.org.git` (then `cd privacyguides.org`)
|
||||
- `git submodule init`
|
||||
- `git submodule update docs/assets/brand`
|
||||
- `git config gpg.ssh.allowedSignersFile .allowed_signers`
|
||||
2. Install [Python 3.6+](https://www.python.org/downloads/) (currently only tested with 3.10)
|
||||
3. Install [dependencies](/Pipfile): `pip install mkdocs mkdocs-material mkdocs-static-i18n mkdocs-macros-plugin typing-extensions`
|
||||
4. Serve the site locally: `mkdocs serve`
|
||||
- The site will be available at `http://localhost:8000`
|
||||
- You can build the site locally with `mkdocs build`
|
||||
- Your local version of the site may be missing functionality, which is expected. If you are submitting a PR, please ensure the automatic preview generated for your PR looks correct, as that site will be built with the production insiders build.
|
||||
This website uses [`mkdocs-material-insiders`](https://squidfunk.github.io/mkdocs-material/insiders/) which offers additional functionality over the open-source `mkdocs-material` project. For obvious reasons we cannot distribute access to the insiders repository. Running this website locally without access to insiders is unsupported. If you are submitting a PR, please ensure the automatic preview generated for your PR looks correct, as that site will be built with the production insiders build.
|
||||
|
||||
**Team members** should clone the repository with `mkdocs-material-insiders` directly. This method is identical to production:
|
||||
|
||||
1. Clone this repository and submodules: `git clone --recurse-submodules https://github.com/privacyguides/privacyguides.org.git`
|
||||
2. Enable SSH commit verification with our local [`.allowed_signers`](/.allowed_signers) file: `git config gpg.ssh.allowedSignersFile .allowed_signers`
|
||||
3. Install Python **3.10**
|
||||
3. Install Python **3.8**, this is the only version supported by Netlify.
|
||||
4. Install **pipenv**: `pip install pipenv`
|
||||
5. Install dependencies: `pipenv install --dev` (install [Pillow and CairoSVG](https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#dependencies) as well to generate social cards)
|
||||
6. Serve the site locally: `pipenv run mkdocs serve --config-file mkdocs.production.yml` (set `CARDS=true` to generate social cards)
|
||||
6. Serve the site locally: `pipenv run mkdocs serve --config-file config/mkdocs.en.yml` (set `CARDS=true` to generate social cards)
|
||||
- The site will be available at `http://localhost:8000`
|
||||
- You can build the site locally with `pipenv run mkdocs build`
|
||||
- You can build the site locally with `pipenv run mkdocs build --config-file config/mkdocs.en.yml`
|
||||
- This version of the site should be identical to the live, production version
|
||||
|
||||
If you commit to `main` with commits signed with your SSH key, you should add your SSH key to [`.allowed_signers`](/.allowed_signers) in this repo.
|
||||
|
||||
## Releasing
|
||||
|
||||
1. Create a new tag: `git tag -s v2.X.X -m 'Some message'`
|
||||
1. Create a new tag: `git tag -s v3.X.X -m 'Some message'`
|
||||
- [View existing tags](https://github.com/privacyguides/privacyguides.org/tags)
|
||||
- Tag [numbering](https://semver.org/): Increment the MINOR (2nd) number when making significant changes (adding/deleting pages, etc.), increment the PATCH (3rd) number when making minor changes (typos, bug fixes). Probably leave the MAJOR number at 2 until a massive revamp (v1 -> v2 was the Jekyll to MkDocs transition).
|
||||
- Tag [numbering](https://semver.org/): Increment the MINOR (2nd) number when making significant changes (adding/deleting pages, etc.), increment the PATCH (3rd) number when making minor changes (typos, bug fixes). Probably leave the MAJOR number at 3 until a massive revamp (v1 -> v2 was the Jekyll to MkDocs transition, v2 -> v3 was the introduction of translations).
|
||||
- Consider enabling GPG tag signing by default (`git config tag.gpgSign true`) to avoid missing signatures
|
||||
2. Push the tag to GitHub: `git push --tags`
|
||||
3. A GitHub Release will be automatically created and deployed to the live site.
|
||||
|
63
_redirects
Normal file
@ -0,0 +1,63 @@
|
||||
/ /en/ 302 Language=en
|
||||
/ /fr/ 302 Language=fr
|
||||
/ /he/ 302 Language=he
|
||||
/ /nl/ 302 Language=nl
|
||||
/ /en/ 302
|
||||
|
||||
/.well-known/matrix/* https://matrix.privacyguides.org/.well-known/matrix/:splat 200
|
||||
|
||||
/kb /en/basics/threat-modeling/
|
||||
/:lang/kb /:lang/basics/threat-modeling/
|
||||
|
||||
/coc/ /en/CODE_OF_CONDUCT/
|
||||
|
||||
/team /en/about/
|
||||
/browsers /en/desktop-browsers/
|
||||
/blog https://blog.privacyguides.org
|
||||
/basics/dns-overview /en/advanced/dns-overview/
|
||||
/basics/tor-overview /en/advanced/tor-overview/
|
||||
/real-time-communication/communication-network-types /en/advanced/communication-network-types
|
||||
/advanced/real-time-communication /en/advanced/communication-network-types
|
||||
/android/overview /en/os/android-overview/
|
||||
/linux-desktop/overview /en/os/linux-overview/
|
||||
/android/grapheneos-vs-calyxos https://blog.privacyguides.org/2022/04/21/grapheneos-or-calyxos/
|
||||
/ios/configuration https://blog.privacyguides.org/2022/10/22/ios-configuration-guide/
|
||||
/linux-desktop/hardening https://blog.privacyguides.org/2022/04/22/linux-system-hardening/
|
||||
/linux-desktop/sandboxing https://blog.privacyguides.org/2022/04/22/linux-application-sandboxing/
|
||||
/advanced/signal-configuration-hardening https://blog.privacyguides.org/2022/07/07/signal-configuration-and-hardening/
|
||||
/real-time-communication/signal-configuration-hardening https://blog.privacyguides.org/2022/07/07/signal-configuration-and-hardening/
|
||||
/advanced/integrating-metadata-removal https://blog.privacyguides.org/2022/04/09/integrating-metadata-removal/
|
||||
/advanced/erasing-data https://blog.privacyguides.org/2022/05/25/secure-data-erasure/
|
||||
/operating-systems /en/desktop/
|
||||
/threat-modeling /en/basics/threat-modeling/
|
||||
/self-contained-networks /en/tor/
|
||||
/privacy-policy /en/about/privacy-policy/
|
||||
/metadata-removal-tools /en/data-redaction/
|
||||
/basics /en/kb
|
||||
/software/file-encryption /en/encryption/
|
||||
/providers /en/tools/#service-providers
|
||||
/software/calendar-contacts /en/calendar/
|
||||
/calendar-contacts /en/calendar/
|
||||
/software/metadata-removal-tools /en/data-redaction/
|
||||
/contact /en/about/
|
||||
/welcome-to-privacy-guides https://blog.privacyguides.org/2021/09/14/welcome-to-privacy-guides/
|
||||
/software/email /en/email-clients/
|
||||
/providers/paste /en/tools/
|
||||
/blog/2019/10/05/understanding-vpns https://www.jonaharagon.com/posts/understanding-vpns/
|
||||
/terms-and-notices /en/about/notices/
|
||||
/software/networks /en/tor/
|
||||
/social-news-aggregator /en/news-aggregators/
|
||||
/basics/erasing-data https://blog.privacyguides.org/2022/05/25/secure-data-erasure/
|
||||
/linux-desktop /en/desktop/
|
||||
|
||||
/providers/:slug /en/:slug/
|
||||
/software/:slug /en/:slug/
|
||||
/blog/* https://blog.privacyguides.org/:splat
|
||||
/assets/* /en/assets/:splat
|
||||
|
||||
/:slug/ /en/:slug/
|
||||
/about/:slug/ /en/about/:slug/
|
||||
/advanced/:slug/ /en/advanced/:slug/
|
||||
/basics/:slug/ /en/basics/:slug/
|
||||
/meta/:slug/ /en/meta/:slug/
|
||||
/os/:slug/ /en/os/:slug/
|
116
config/mkdocs.common.yml
Normal file
@ -0,0 +1,116 @@
|
||||
extra:
|
||||
social:
|
||||
- icon: simple/mastodon
|
||||
link: https://mastodon.neat.computer/@privacyguides
|
||||
name: Mastodon
|
||||
- icon: simple/matrix
|
||||
link: https://matrix.to/#/#privacyguides:matrix.org
|
||||
name: Matrix
|
||||
- icon: simple/discourse
|
||||
link: https://discuss.privacyguides.net/
|
||||
name: Forum
|
||||
- icon: simple/github
|
||||
link: https://github.com/privacyguides
|
||||
name: GitHub
|
||||
alternate:
|
||||
- name: English
|
||||
link: /en/
|
||||
lang: en
|
||||
icon: https://raw.githubusercontent.com/twitter/twemoji/master/assets/svg/1f1fa-1f1f8.svg
|
||||
- name: Français
|
||||
link: /fr/
|
||||
lang: fr
|
||||
icon: https://raw.githubusercontent.com/twitter/twemoji/master/assets/svg/1f1eb-1f1f7.svg
|
||||
- name: עִברִית
|
||||
link: /he/
|
||||
lang: he
|
||||
icon: https://raw.githubusercontent.com/twitter/twemoji/master/assets/svg/1f1ee-1f1f1.svg
|
||||
- name: Nederlands
|
||||
link: /nl/
|
||||
lang: nl
|
||||
icon: https://raw.githubusercontent.com/twitter/twemoji/master/assets/svg/1f1f3-1f1f1.svg
|
||||
|
||||
repo_url: https://github.com/privacyguides/privacyguides.org
|
||||
repo_name: ""
|
||||
|
||||
theme:
|
||||
name: material
|
||||
custom_dir: ../theme
|
||||
favicon: assets/brand/png/favicon/favicon-32x32.png
|
||||
icon:
|
||||
repo: simple/github
|
||||
features:
|
||||
- navigation.tracking
|
||||
- navigation.tabs
|
||||
- navigation.sections
|
||||
- navigation.expand
|
||||
- navigation.path
|
||||
- navigation.indexes
|
||||
- content.tooltips
|
||||
- search.highlight
|
||||
|
||||
extra_css:
|
||||
- assets/stylesheets/extra.css?v=3.2.0
|
||||
extra_javascript:
|
||||
- assets/javascripts/mathjax.js
|
||||
- assets/javascripts/feedback.js
|
||||
|
||||
watch:
|
||||
- ../theme
|
||||
- ../includes
|
||||
- mkdocs.common.yml
|
||||
|
||||
plugins:
|
||||
tags: {}
|
||||
search: {}
|
||||
macros: {}
|
||||
meta: {}
|
||||
git-committers:
|
||||
enabled: !ENV [NETLIFY, false]
|
||||
repository: privacyguides/privacyguides.org
|
||||
branch: main
|
||||
git-revision-date-localized:
|
||||
enabled: !ENV [NETLIFY, false]
|
||||
exclude:
|
||||
- index.md
|
||||
fallback_to_build_date: true
|
||||
privacy:
|
||||
external_assets_exclude:
|
||||
- cdn.jsdelivr.net/npm/mathjax@3/*
|
||||
- api.privacyguides.net/*
|
||||
optimize:
|
||||
enabled: !ENV [NETLIFY, false]
|
||||
|
||||
markdown_extensions:
|
||||
admonition: {}
|
||||
pymdownx.details: {}
|
||||
pymdownx.superfences:
|
||||
custom_fences:
|
||||
- name: mermaid
|
||||
class: mermaid
|
||||
format: !!python/name:pymdownx.superfences.fence_code_format
|
||||
pymdownx.tabbed:
|
||||
alternate_style: true
|
||||
pymdownx.arithmatex:
|
||||
generic: true
|
||||
pymdownx.critic: {}
|
||||
pymdownx.caret: {}
|
||||
pymdownx.keys: {}
|
||||
pymdownx.mark: {}
|
||||
pymdownx.tilde: {}
|
||||
pymdownx.snippets: {}
|
||||
pymdownx.tasklist:
|
||||
custom_checkbox: true
|
||||
attr_list: {}
|
||||
def_list: {}
|
||||
md_in_html: {}
|
||||
meta: {}
|
||||
abbr: {}
|
||||
pymdownx.emoji:
|
||||
emoji_index: !!python/name:materialx.emoji.twemoji
|
||||
emoji_generator: !!python/name:materialx.emoji.to_svg
|
||||
tables: {}
|
||||
footnotes: {}
|
||||
toc:
|
||||
permalink: true
|
||||
toc_depth: 4
|
147
config/mkdocs.en.yml
Normal file
@ -0,0 +1,147 @@
|
||||
INHERIT: mkdocs.common.yml
|
||||
docs_dir: '../docs'
|
||||
site_url: "https://www.privacyguides.org/en/"
|
||||
site_dir: '../site/en'
|
||||
|
||||
site_name: Privacy Guides
|
||||
site_description: |
|
||||
Privacy Guides is your central privacy and security resource to protect yourself online.
|
||||
copyright: |
|
||||
<b>Privacy Guides</b> is a non-profit, socially motivated website that provides information for protecting your data security and privacy.<br>
|
||||
We do not make money from recommending certain products, and we do not use affiliate links.<br>
|
||||
© 2022 Privacy Guides and contributors.
|
||||
<span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="m245.83 214.87-33.22 17.28c-9.43-19.58-25.24-19.93-27.46-19.93-22.13 0-33.22 14.61-33.22 43.84 0 23.57 9.21 43.84 33.22 43.84 14.47 0 24.65-7.09 30.57-21.26l30.55 15.5c-6.17 11.51-25.69 38.98-65.1 38.98-22.6 0-73.96-10.32-73.96-77.05 0-58.69 43-77.06 72.63-77.06 30.72-.01 52.7 11.95 65.99 35.86zm143.05 0-32.78 17.28c-9.5-19.77-25.72-19.93-27.9-19.93-22.14 0-33.22 14.61-33.22 43.84 0 23.55 9.23 43.84 33.22 43.84 14.45 0 24.65-7.09 30.54-21.26l31 15.5c-2.1 3.75-21.39 38.98-65.09 38.98-22.69 0-73.96-9.87-73.96-77.05 0-58.67 42.97-77.06 72.63-77.06 30.71-.01 52.58 11.95 65.56 35.86zM247.56 8.05C104.74 8.05 0 123.11 0 256.05c0 138.49 113.6 248 247.56 248 129.93 0 248.44-100.87 248.44-248 0-137.87-106.62-248-248.44-248zm.87 450.81c-112.54 0-203.7-93.04-203.7-202.81 0-105.42 85.43-203.27 203.72-203.27 112.53 0 202.82 89.46 202.82 203.26-.01 121.69-99.68 202.82-202.84 202.82z"></path></svg></span><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M314.9 194.4v101.4h-28.3v120.5h-77.1V295.9h-28.3V194.4c0-4.4 1.6-8.2 4.6-11.3 3.1-3.1 6.9-4.7 11.3-4.7H299c4.1 0 7.8 1.6 11.1 4.7 3.1 3.2 4.8 6.9 4.8 11.3zm-101.5-63.7c0-23.3 11.5-35 34.5-35s34.5 11.7 34.5 35c0 23-11.5 34.5-34.5 34.5s-34.5-11.5-34.5-34.5zM247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3z"></path></svg></span><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm94 144.3v42.5H162.1V197h180.3zm0 79.8v42.5H162.1v-42.5h180.3z"></path></svg></span>
|
||||
Content licensed under <a href="/about/"><strong>CC BY-ND 4.0</strong></a>.
|
||||
edit_uri: edit/main/docs/
|
||||
|
||||
extra:
|
||||
generator: false
|
||||
analytics:
|
||||
provider: plausible
|
||||
property: privacyguides.org
|
||||
feedback:
|
||||
title: "Was this page helpful?"
|
||||
ratings:
|
||||
- icon: material/robot-happy-outline
|
||||
name: "This page was helpful"
|
||||
data: Helpful
|
||||
note: "Thanks for your feedback!"
|
||||
- icon: material/robot-confused
|
||||
name: "This page could be improved"
|
||||
data: Needs Improvement
|
||||
note: "Thanks for your feedback! Help us improve this page by opening a <a href='https://discuss.privacyguides.net/'>discussion on our forum</a>."
|
||||
|
||||
theme:
|
||||
language: en
|
||||
logo: ../theme/assets/brand/SVG/Logo/privacy-guides-logo-notext-colorbg.svg
|
||||
font:
|
||||
text: Public Sans
|
||||
code: DM Mono
|
||||
palette:
|
||||
- media: "(prefers-color-scheme)"
|
||||
scheme: default
|
||||
accent: deep purple
|
||||
toggle:
|
||||
icon: material/brightness-auto
|
||||
name: "Switch to light mode"
|
||||
- media: "(prefers-color-scheme: dark)"
|
||||
scheme: slate
|
||||
accent: amber
|
||||
toggle:
|
||||
icon: material/brightness-2
|
||||
name: "Switch to system theme"
|
||||
- media: "(prefers-color-scheme: light)"
|
||||
scheme: default
|
||||
accent: deep purple
|
||||
toggle:
|
||||
icon: material/brightness-5
|
||||
name: "Switch to dark mode"
|
||||
|
||||
plugins:
|
||||
social:
|
||||
cards: !ENV [NETLIFY, false]
|
||||
cards_color:
|
||||
fill: "#FFD06F"
|
||||
text: "#2d2d2d"
|
||||
cards_dir: assets/img/social
|
||||
cards_font: Public Sans
|
||||
cache_dir: .cache/plugin/social-en
|
||||
|
||||
markdown_extensions:
|
||||
pymdownx.snippets:
|
||||
auto_append:
|
||||
- includes/abbreviations.en.txt
|
||||
|
||||
nav:
|
||||
- Home: 'index.md'
|
||||
- Knowledge Base:
|
||||
- 'basics/threat-modeling.md'
|
||||
- 'basics/common-threats.md'
|
||||
- 'basics/common-misconceptions.md'
|
||||
- 'basics/account-creation.md'
|
||||
- 'basics/account-deletion.md'
|
||||
- Technology Essentials:
|
||||
- 'basics/passwords-overview.md'
|
||||
- 'basics/multi-factor-authentication.md'
|
||||
- 'basics/email-security.md'
|
||||
- 'basics/vpn-overview.md'
|
||||
- Operating Systems:
|
||||
- 'os/android-overview.md'
|
||||
- 'os/linux-overview.md'
|
||||
- 'os/qubes-overview.md'
|
||||
- Advanced Topics:
|
||||
- 'advanced/dns-overview.md'
|
||||
- 'advanced/tor-overview.md'
|
||||
- 'advanced/communication-network-types.md'
|
||||
- kb-archive.md
|
||||
- Recommendations:
|
||||
- 'tools.md'
|
||||
- Internet Browsing:
|
||||
- 'tor.md'
|
||||
- 'desktop-browsers.md'
|
||||
- 'mobile-browsers.md'
|
||||
- Operating Systems:
|
||||
- 'android.md'
|
||||
- 'desktop.md'
|
||||
- 'router.md'
|
||||
- Providers:
|
||||
- 'cloud.md'
|
||||
- 'dns.md'
|
||||
- 'email.md'
|
||||
- 'search-engines.md'
|
||||
- 'vpn.md'
|
||||
- Software:
|
||||
- 'calendar.md'
|
||||
- 'data-redaction.md'
|
||||
- 'email-clients.md'
|
||||
- 'encryption.md'
|
||||
- 'file-sharing.md'
|
||||
- 'frontends.md'
|
||||
- 'multi-factor-authentication.md'
|
||||
- 'news-aggregators.md'
|
||||
- 'notebooks.md'
|
||||
- 'passwords.md'
|
||||
- 'productivity.md'
|
||||
- 'real-time-communication.md'
|
||||
- 'video-streaming.md'
|
||||
- About:
|
||||
- 'about/index.md'
|
||||
- 'about/criteria.md'
|
||||
- 'about/statistics.md'
|
||||
- 'about/notices.md'
|
||||
- 'about/privacy-policy.md'
|
||||
- Community:
|
||||
- 'about/donate.md'
|
||||
- Online Services: 'about/services.md'
|
||||
- Code of Conduct: 'CODE_OF_CONDUCT.md'
|
||||
- 'about/privacytools.md'
|
||||
- Contributing:
|
||||
- Writing Guide:
|
||||
- 'meta/writing-style.md'
|
||||
- 'meta/brand.md'
|
||||
- Technical Guides:
|
||||
- 'meta/uploading-images.md'
|
||||
- 'meta/git-recommendations.md'
|
||||
- Changelog: 'https://github.com/privacyguides/privacyguides.org/releases'
|
||||
- Forum: 'https://discuss.privacyguides.net/'
|
||||
- Blog: 'https://blog.privacyguides.org/'
|
147
config/mkdocs.fr.yml
Normal file
@ -0,0 +1,147 @@
|
||||
INHERIT: mkdocs.common.yml
|
||||
docs_dir: '../i18n/fr'
|
||||
site_url: "https://www.privacyguides.org/fr/"
|
||||
site_dir: '../site/fr'
|
||||
|
||||
site_name: Privacy Guides
|
||||
site_description: |
|
||||
Privacy Guides est votre ressource centrale en matière de vie privée et de sécurité pour vous protéger en ligne.
|
||||
copyright: |
|
||||
<b>Privacy Guides</b> is a non-profit, socially motivated website that provides information for protecting your data security and privacy.<br>
|
||||
We do not make money from recommending certain products, and we do not use affiliate links.<br>
|
||||
© 2022 Privacy Guides and contributors.
|
||||
<span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="m245.83 214.87-33.22 17.28c-9.43-19.58-25.24-19.93-27.46-19.93-22.13 0-33.22 14.61-33.22 43.84 0 23.57 9.21 43.84 33.22 43.84 14.47 0 24.65-7.09 30.57-21.26l30.55 15.5c-6.17 11.51-25.69 38.98-65.1 38.98-22.6 0-73.96-10.32-73.96-77.05 0-58.69 43-77.06 72.63-77.06 30.72-.01 52.7 11.95 65.99 35.86zm143.05 0-32.78 17.28c-9.5-19.77-25.72-19.93-27.9-19.93-22.14 0-33.22 14.61-33.22 43.84 0 23.55 9.23 43.84 33.22 43.84 14.45 0 24.65-7.09 30.54-21.26l31 15.5c-2.1 3.75-21.39 38.98-65.09 38.98-22.69 0-73.96-9.87-73.96-77.05 0-58.67 42.97-77.06 72.63-77.06 30.71-.01 52.58 11.95 65.56 35.86zM247.56 8.05C104.74 8.05 0 123.11 0 256.05c0 138.49 113.6 248 247.56 248 129.93 0 248.44-100.87 248.44-248 0-137.87-106.62-248-248.44-248zm.87 450.81c-112.54 0-203.7-93.04-203.7-202.81 0-105.42 85.43-203.27 203.72-203.27 112.53 0 202.82 89.46 202.82 203.26-.01 121.69-99.68 202.82-202.84 202.82z"></path></svg></span><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M314.9 194.4v101.4h-28.3v120.5h-77.1V295.9h-28.3V194.4c0-4.4 1.6-8.2 4.6-11.3 3.1-3.1 6.9-4.7 11.3-4.7H299c4.1 0 7.8 1.6 11.1 4.7 3.1 3.2 4.8 6.9 4.8 11.3zm-101.5-63.7c0-23.3 11.5-35 34.5-35s34.5 11.7 34.5 35c0 23-11.5 34.5-34.5 34.5s-34.5-11.5-34.5-34.5zM247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3z"></path></svg></span><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm94 144.3v42.5H162.1V197h180.3zm0 79.8v42.5H162.1v-42.5h180.3z"></path></svg></span>
|
||||
Content licensed under <a href="/about/"><strong>CC BY-ND 4.0</strong></a>.
|
||||
edit_uri: edit/main/i18n/fr/
|
||||
|
||||
extra:
|
||||
generator: false
|
||||
analytics:
|
||||
provider: plausible
|
||||
property: privacyguides.org
|
||||
feedback:
|
||||
title: "Cette page vous a été utile ?"
|
||||
ratings:
|
||||
- icon: material/robot-happy-outline
|
||||
name: "Cette page a été utile"
|
||||
data: Helpful
|
||||
note: "Merci pour votre retour !"
|
||||
- icon: material/robot-confused
|
||||
name: "Cette page pourrait être améliorée"
|
||||
data: Needs Improvement
|
||||
note: "Thanks for your feedback! Help us improve this page by opening a <a href='https://discuss.privacyguides.net/'>discussion on our forum</a>."
|
||||
|
||||
theme:
|
||||
language: fr
|
||||
logo: ../../theme/assets/brand/SVG/Logo/privacy-guides-logo-notext-colorbg.svg
|
||||
font:
|
||||
text: Public Sans
|
||||
code: DM Mono
|
||||
palette:
|
||||
- media: "(prefers-color-scheme)"
|
||||
scheme: default
|
||||
accent: deep purple
|
||||
toggle:
|
||||
icon: material/brightness-auto
|
||||
name: "Basculer en mode clair"
|
||||
- media: "(prefers-color-scheme: dark)"
|
||||
scheme: slate
|
||||
accent: amber
|
||||
toggle:
|
||||
icon: material/brightness-2
|
||||
name: "Basculer vers le thème du système"
|
||||
- media: "(prefers-color-scheme: light)"
|
||||
scheme: default
|
||||
accent: deep purple
|
||||
toggle:
|
||||
icon: material/brightness-5
|
||||
name: "Basculer en mode sombre"
|
||||
|
||||
plugins:
|
||||
social:
|
||||
cards: !ENV [NETLIFY, false]
|
||||
cards_color:
|
||||
fill: "#FFD06F"
|
||||
text: "#2d2d2d"
|
||||
cards_dir: assets/img/social
|
||||
cards_font: Public Sans
|
||||
cache_dir: .cache/plugin/social-fr
|
||||
|
||||
markdown_extensions:
|
||||
pymdownx.snippets:
|
||||
auto_append:
|
||||
- includes/abbreviations.fr.txt
|
||||
|
||||
nav:
|
||||
- Accueil: 'index.md'
|
||||
- Base de connaissances:
|
||||
- 'basics/threat-modeling.md'
|
||||
- 'basics/common-threats.md'
|
||||
- 'basics/common-misconceptions.md'
|
||||
- 'basics/account-creation.md'
|
||||
- 'basics/account-deletion.md'
|
||||
- Les essentiels de la technologie:
|
||||
- 'basics/passwords-overview.md'
|
||||
- 'basics/multi-factor-authentication.md'
|
||||
- 'basics/email-security.md'
|
||||
- 'basics/vpn-overview.md'
|
||||
- "Systèmes d'exploitation":
|
||||
- 'os/android-overview.md'
|
||||
- 'os/linux-overview.md'
|
||||
- 'os/qubes-overview.md'
|
||||
- "Sujets avancés":
|
||||
- 'advanced/dns-overview.md'
|
||||
- 'advanced/tor-overview.md'
|
||||
- 'advanced/communication-network-types.md'
|
||||
- kb-archive.md
|
||||
- Recommandations:
|
||||
- 'tools.md'
|
||||
- Navigation internet:
|
||||
- 'tor.md'
|
||||
- 'desktop-browsers.md'
|
||||
- 'mobile-browsers.md'
|
||||
- "Systèmes d'exploitation":
|
||||
- 'android.md'
|
||||
- 'desktop.md'
|
||||
- 'router.md'
|
||||
- "Fournisseurs":
|
||||
- 'cloud.md'
|
||||
- 'dns.md'
|
||||
- 'email.md'
|
||||
- 'search-engines.md'
|
||||
- 'vpn.md'
|
||||
- "Logiciels":
|
||||
- 'calendar.md'
|
||||
- 'data-redaction.md'
|
||||
- 'email-clients.md'
|
||||
- 'encryption.md'
|
||||
- 'file-sharing.md'
|
||||
- 'frontends.md'
|
||||
- 'multi-factor-authentication.md'
|
||||
- 'news-aggregators.md'
|
||||
- 'notebooks.md'
|
||||
- 'passwords.md'
|
||||
- 'productivity.md'
|
||||
- 'real-time-communication.md'
|
||||
- 'video-streaming.md'
|
||||
- "À propos":
|
||||
- 'about/index.md'
|
||||
- 'about/criteria.md'
|
||||
- 'about/statistics.md'
|
||||
- 'about/notices.md'
|
||||
- 'about/privacy-policy.md'
|
||||
- Community:
|
||||
- 'about/donate.md'
|
||||
- Online Services: 'about/services.md'
|
||||
- Code of Conduct: 'CODE_OF_CONDUCT.md'
|
||||
- 'about/privacytools.md'
|
||||
- Contributing:
|
||||
- Writing Guide:
|
||||
- 'meta/writing-style.md'
|
||||
- 'meta/brand.md'
|
||||
- Technical Guides:
|
||||
- 'meta/uploading-images.md'
|
||||
- 'meta/git-recommendations.md'
|
||||
- Journal des modifications: 'https://github.com/privacyguides/privacyguides.org/releases'
|
||||
- Forum: 'https://discuss.privacyguides.net/'
|
||||
- Blog: 'https://blog.privacyguides.org/'
|
151
config/mkdocs.he.yml
Normal file
@ -0,0 +1,151 @@
|
||||
INHERIT: mkdocs.common.yml
|
||||
docs_dir: '../i18n/he'
|
||||
site_url: "https://www.privacyguides.org/he/"
|
||||
site_dir: '../site/he'
|
||||
|
||||
site_name: Privacy Guides
|
||||
site_description: |
|
||||
Privacy Guides (מדריכי פרטיות) הם משאב הפרטיות והאבטחה המרכזי שלכם כדי להגן על עצמכם באופן מקוון.
|
||||
copyright: |
|
||||
<b>Privacy Guides</b> is a non-profit, socially motivated website that provides information for protecting your data security and privacy.<br>
|
||||
We do not make money from recommending certain products, and we do not use affiliate links.<br>
|
||||
© 2022 Privacy Guides and contributors.
|
||||
<span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="m245.83 214.87-33.22 17.28c-9.43-19.58-25.24-19.93-27.46-19.93-22.13 0-33.22 14.61-33.22 43.84 0 23.57 9.21 43.84 33.22 43.84 14.47 0 24.65-7.09 30.57-21.26l30.55 15.5c-6.17 11.51-25.69 38.98-65.1 38.98-22.6 0-73.96-10.32-73.96-77.05 0-58.69 43-77.06 72.63-77.06 30.72-.01 52.7 11.95 65.99 35.86zm143.05 0-32.78 17.28c-9.5-19.77-25.72-19.93-27.9-19.93-22.14 0-33.22 14.61-33.22 43.84 0 23.55 9.23 43.84 33.22 43.84 14.45 0 24.65-7.09 30.54-21.26l31 15.5c-2.1 3.75-21.39 38.98-65.09 38.98-22.69 0-73.96-9.87-73.96-77.05 0-58.67 42.97-77.06 72.63-77.06 30.71-.01 52.58 11.95 65.56 35.86zM247.56 8.05C104.74 8.05 0 123.11 0 256.05c0 138.49 113.6 248 247.56 248 129.93 0 248.44-100.87 248.44-248 0-137.87-106.62-248-248.44-248zm.87 450.81c-112.54 0-203.7-93.04-203.7-202.81 0-105.42 85.43-203.27 203.72-203.27 112.53 0 202.82 89.46 202.82 203.26-.01 121.69-99.68 202.82-202.84 202.82z"></path></svg></span><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M314.9 194.4v101.4h-28.3v120.5h-77.1V295.9h-28.3V194.4c0-4.4 1.6-8.2 4.6-11.3 3.1-3.1 6.9-4.7 11.3-4.7H299c4.1 0 7.8 1.6 11.1 4.7 3.1 3.2 4.8 6.9 4.8 11.3zm-101.5-63.7c0-23.3 11.5-35 34.5-35s34.5 11.7 34.5 35c0 23-11.5 34.5-34.5 34.5s-34.5-11.5-34.5-34.5zM247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3z"></path></svg></span><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm94 144.3v42.5H162.1V197h180.3zm0 79.8v42.5H162.1v-42.5h180.3z"></path></svg></span>
|
||||
Content licensed under <a href="/about/"><strong>CC BY-ND 4.0</strong></a>.
|
||||
edit_uri: edit/main/i18n/he/
|
||||
|
||||
extra:
|
||||
generator: false
|
||||
analytics:
|
||||
provider: plausible
|
||||
property: privacyguides.org
|
||||
feedback:
|
||||
title: "האם הדף הזה עזר לך?"
|
||||
ratings:
|
||||
- icon: material/robot-happy-outline
|
||||
name: "הדף הזה היה מועיל"
|
||||
data: Helpful
|
||||
note: "תודה על המשוב שלך!"
|
||||
- icon: material/robot-confused
|
||||
name: "דף זה יכול להשתפר"
|
||||
data: Needs Improvement
|
||||
note: "תודה על המשוב שלך! Help us improve this page by opening a <a href='https://discuss.privacyguides.net/'>discussion on our forum</a>."
|
||||
|
||||
extra_css:
|
||||
- assets/stylesheets/extra.css?v=3.2.0
|
||||
- assets/stylesheets/lang-he.css?v=3.4.0
|
||||
|
||||
theme:
|
||||
language: he
|
||||
logo: ../../theme/assets/brand/SVG/Logo/privacy-guides-logo-notext-colorbg.svg
|
||||
font:
|
||||
text: Open Sans
|
||||
code: Cousine
|
||||
palette:
|
||||
- media: "(prefers-color-scheme)"
|
||||
scheme: default
|
||||
accent: deep purple
|
||||
toggle:
|
||||
icon: material/brightness-auto
|
||||
name: "עבור למצב בהיר"
|
||||
- media: "(prefers-color-scheme: dark)"
|
||||
scheme: slate
|
||||
accent: amber
|
||||
toggle:
|
||||
icon: material/brightness-2
|
||||
name: "עבור לערכת הנושא של המערכת"
|
||||
- media: "(prefers-color-scheme: light)"
|
||||
scheme: default
|
||||
accent: deep purple
|
||||
toggle:
|
||||
icon: material/brightness-5
|
||||
name: "עבור למצב כהה"
|
||||
|
||||
plugins:
|
||||
social:
|
||||
cards: !ENV [NETLIFY, false]
|
||||
cards_color:
|
||||
fill: "#FFD06F"
|
||||
text: "#2d2d2d"
|
||||
cards_dir: assets/img/social
|
||||
cards_font: Suez One
|
||||
cache_dir: .cache/plugin/social-he
|
||||
|
||||
markdown_extensions:
|
||||
pymdownx.snippets:
|
||||
auto_append:
|
||||
- includes/abbreviations.he.txt
|
||||
|
||||
nav:
|
||||
- "דף הבית": 'index.md'
|
||||
- "ידע בסיסי":
|
||||
- 'basics/threat-modeling.md'
|
||||
- 'basics/common-threats.md'
|
||||
- 'basics/common-misconceptions.md'
|
||||
- 'basics/account-creation.md'
|
||||
- 'basics/account-deletion.md'
|
||||
- "יסודות הטכנולוגיה":
|
||||
- 'basics/passwords-overview.md'
|
||||
- 'basics/multi-factor-authentication.md'
|
||||
- 'basics/email-security.md'
|
||||
- 'basics/vpn-overview.md'
|
||||
- "מערכות הפעלה":
|
||||
- 'os/android-overview.md'
|
||||
- 'os/linux-overview.md'
|
||||
- 'os/qubes-overview.md'
|
||||
- "נושאים מתקדמים":
|
||||
- 'advanced/dns-overview.md'
|
||||
- 'advanced/tor-overview.md'
|
||||
- 'advanced/communication-network-types.md'
|
||||
- kb-archive.md
|
||||
- "המלצות":
|
||||
- 'tools.md'
|
||||
- "גלישה באינטרנט":
|
||||
- 'tor.md'
|
||||
- 'desktop-browsers.md'
|
||||
- 'mobile-browsers.md'
|
||||
- "מערכות הפעלה":
|
||||
- 'android.md'
|
||||
- 'desktop.md'
|
||||
- 'router.md'
|
||||
- "ספקים":
|
||||
- 'cloud.md'
|
||||
- 'dns.md'
|
||||
- 'email.md'
|
||||
- 'search-engines.md'
|
||||
- 'vpn.md'
|
||||
- "תוכנה":
|
||||
- 'calendar.md'
|
||||
- 'data-redaction.md'
|
||||
- 'email-clients.md'
|
||||
- 'encryption.md'
|
||||
- 'file-sharing.md'
|
||||
- 'frontends.md'
|
||||
- 'multi-factor-authentication.md'
|
||||
- 'news-aggregators.md'
|
||||
- 'notebooks.md'
|
||||
- 'passwords.md'
|
||||
- 'productivity.md'
|
||||
- 'real-time-communication.md'
|
||||
- 'video-streaming.md'
|
||||
- "על אודות":
|
||||
- 'about/index.md'
|
||||
- 'about/criteria.md'
|
||||
- 'about/statistics.md'
|
||||
- 'about/notices.md'
|
||||
- 'about/privacy-policy.md'
|
||||
- Community:
|
||||
- 'about/donate.md'
|
||||
- Online Services: 'about/services.md'
|
||||
- Code of Conduct: 'CODE_OF_CONDUCT.md'
|
||||
- 'about/privacytools.md'
|
||||
- Contributing:
|
||||
- Writing Guide:
|
||||
- 'meta/writing-style.md'
|
||||
- 'meta/brand.md'
|
||||
- Technical Guides:
|
||||
- 'meta/uploading-images.md'
|
||||
- 'meta/git-recommendations.md'
|
||||
- "יומן שינויים": 'https://github.com/privacyguides/privacyguides.org/releases'
|
||||
- "פורום": 'https://discuss.privacyguides.net/'
|
||||
- "בלוג": 'https://blog.privacyguides.org/'
|
147
config/mkdocs.nl.yml
Normal file
@ -0,0 +1,147 @@
|
||||
INHERIT: mkdocs.common.yml
|
||||
docs_dir: '../i18n/nl'
|
||||
site_url: "https://www.privacyguides.org/nl/"
|
||||
site_dir: '../site/nl'
|
||||
|
||||
site_name: Privacy Guides
|
||||
site_description: |
|
||||
Privacy Guides is jouw centrale bron voor privacy en beveiliging om jezelf online te beschermen.
|
||||
copyright: |
|
||||
<b>Privacy Guides</b> is een non-profit, sociaal gemotiveerde website die informatie biedt voor de bescherming van jouw gegevensbeveiliging en privacy.<br>
|
||||
Wij verdienen geen geld met het aanbevelen van bepaalde producten, en wij maken geen gebruik van affiliate links.<br>
|
||||
© 2022 Privacy Guides en medewerkers.
|
||||
<span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="m245.83 214.87-33.22 17.28c-9.43-19.58-25.24-19.93-27.46-19.93-22.13 0-33.22 14.61-33.22 43.84 0 23.57 9.21 43.84 33.22 43.84 14.47 0 24.65-7.09 30.57-21.26l30.55 15.5c-6.17 11.51-25.69 38.98-65.1 38.98-22.6 0-73.96-10.32-73.96-77.05 0-58.69 43-77.06 72.63-77.06 30.72-.01 52.7 11.95 65.99 35.86zm143.05 0-32.78 17.28c-9.5-19.77-25.72-19.93-27.9-19.93-22.14 0-33.22 14.61-33.22 43.84 0 23.55 9.23 43.84 33.22 43.84 14.45 0 24.65-7.09 30.54-21.26l31 15.5c-2.1 3.75-21.39 38.98-65.09 38.98-22.69 0-73.96-9.87-73.96-77.05 0-58.67 42.97-77.06 72.63-77.06 30.71-.01 52.58 11.95 65.56 35.86zM247.56 8.05C104.74 8.05 0 123.11 0 256.05c0 138.49 113.6 248 247.56 248 129.93 0 248.44-100.87 248.44-248 0-137.87-106.62-248-248.44-248zm.87 450.81c-112.54 0-203.7-93.04-203.7-202.81 0-105.42 85.43-203.27 203.72-203.27 112.53 0 202.82 89.46 202.82 203.26-.01 121.69-99.68 202.82-202.84 202.82z"></path></svg></span><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M314.9 194.4v101.4h-28.3v120.5h-77.1V295.9h-28.3V194.4c0-4.4 1.6-8.2 4.6-11.3 3.1-3.1 6.9-4.7 11.3-4.7H299c4.1 0 7.8 1.6 11.1 4.7 3.1 3.2 4.8 6.9 4.8 11.3zm-101.5-63.7c0-23.3 11.5-35 34.5-35s34.5 11.7 34.5 35c0 23-11.5 34.5-34.5 34.5s-34.5-11.5-34.5-34.5zM247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3z"></path></svg></span><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc.--><path d="M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm94 144.3v42.5H162.1V197h180.3zm0 79.8v42.5H162.1v-42.5h180.3z"></path></svg></span>
|
||||
Inhoud gelicentieerd onder <a href="/about/"><strong>CC BY-ND 4.0</strong></a>.
|
||||
edit_uri: edit/main/docs/
|
||||
|
||||
extra:
|
||||
generator: false
|
||||
analytics:
|
||||
provider: plausible
|
||||
property: privacyguides.org
|
||||
feedback:
|
||||
title: "Was deze pagina nuttig?"
|
||||
ratings:
|
||||
- icon: material/robot-happy-outline
|
||||
name: "Deze pagina was nuttig"
|
||||
data: Helpful
|
||||
note: "Bedankt voor je feedback!"
|
||||
- icon: material/robot-confused
|
||||
name: "Deze pagina kan worden verbeterd"
|
||||
data: Needs Improvement
|
||||
note: "Bedankt voor jouw feedback! Help ons deze pagina te verbeteren door een <a href='https://discuss.privacyguides.net/'>discussie te openen op ons forum</a>."
|
||||
|
||||
theme:
|
||||
language: nl
|
||||
logo: ../../theme/assets/brand/SVG/Logo/privacy-guides-logo-notext-colorbg.svg
|
||||
font:
|
||||
text: Public Sans
|
||||
code: DM Mono
|
||||
palette:
|
||||
- media: "(prefers-color-scheme)"
|
||||
scheme: default
|
||||
accent: deep purple
|
||||
toggle:
|
||||
icon: material/brightness-auto
|
||||
name: "Verander naar licht thema"
|
||||
- media: "(prefers-color-scheme: dark)"
|
||||
scheme: slate
|
||||
accent: amber
|
||||
toggle:
|
||||
icon: material/brightness-2
|
||||
name: "Verander naar systeem thema"
|
||||
- media: "(prefers-color-scheme: light)"
|
||||
scheme: default
|
||||
accent: deep purple
|
||||
toggle:
|
||||
icon: material/brightness-5
|
||||
name: "Verander naar donker thema"
|
||||
|
||||
plugins:
|
||||
social:
|
||||
cards: !ENV [NETLIFY, false]
|
||||
cards_color:
|
||||
fill: "#FFD06F"
|
||||
text: "#2d2d2d"
|
||||
cards_dir: assets/img/social
|
||||
cards_font: Public Sans
|
||||
cache_dir: .cache/plugin/social-nl
|
||||
|
||||
markdown_extensions:
|
||||
pymdownx.snippets:
|
||||
auto_append:
|
||||
- includes/abbreviations.nl.txt
|
||||
|
||||
nav:
|
||||
- Home: 'index.md'
|
||||
- Kennisbank:
|
||||
- 'basics/threat-modeling.md'
|
||||
- 'basics/common-threats.md'
|
||||
- 'basics/common-misconceptions.md'
|
||||
- 'basics/account-creation.md'
|
||||
- 'basics/account-deletion.md'
|
||||
- Technologie essenties:
|
||||
- 'basics/passwords-overview.md'
|
||||
- 'basics/multi-factor-authentication.md'
|
||||
- 'basics/email-security.md'
|
||||
- 'basics/vpn-overview.md'
|
||||
- Besturings systemen:
|
||||
- 'os/android-overview.md'
|
||||
- 'os/linux-overview.md'
|
||||
- 'os/qubes-overview.md'
|
||||
- Gevorderde onderwerpen:
|
||||
- 'advanced/dns-overview.md'
|
||||
- 'advanced/tor-overview.md'
|
||||
- 'advanced/communication-network-types.md'
|
||||
- kb-archive.md
|
||||
- Recommendaties:
|
||||
- 'tools.md'
|
||||
- Surfen op het internet:
|
||||
- 'tor.md'
|
||||
- 'desktop-browsers.md'
|
||||
- 'mobile-browsers.md'
|
||||
- Besturings systemen:
|
||||
- 'android.md'
|
||||
- 'desktop.md'
|
||||
- 'router.md'
|
||||
- Providers:
|
||||
- 'cloud.md'
|
||||
- 'dns.md'
|
||||
- 'email.md'
|
||||
- 'search-engines.md'
|
||||
- 'vpn.md'
|
||||
- Software:
|
||||
- 'calendar.md'
|
||||
- 'data-redaction.md'
|
||||
- 'email-clients.md'
|
||||
- 'encryption.md'
|
||||
- 'file-sharing.md'
|
||||
- 'frontends.md'
|
||||
- 'multi-factor-authentication.md'
|
||||
- 'news-aggregators.md'
|
||||
- 'notebooks.md'
|
||||
- 'passwords.md'
|
||||
- 'productivity.md'
|
||||
- 'real-time-communication.md'
|
||||
- 'video-streaming.md'
|
||||
- Over ons:
|
||||
- 'about/index.md'
|
||||
- 'about/criteria.md'
|
||||
- 'about/statistics.md'
|
||||
- 'about/notices.md'
|
||||
- 'about/privacy-policy.md'
|
||||
- Community:
|
||||
- 'about/donate.md'
|
||||
- Online Services: 'about/services.md'
|
||||
- Code of Conduct: 'CODE_OF_CONDUCT.md'
|
||||
- 'about/privacytools.md'
|
||||
- Contributing:
|
||||
- Writing Guide:
|
||||
- 'meta/writing-style.md'
|
||||
- 'meta/brand.md'
|
||||
- Technical Guides:
|
||||
- 'meta/uploading-images.md'
|
||||
- 'meta/git-recommendations.md'
|
||||
- Changelog: 'https://github.com/privacyguides/privacyguides.org/releases'
|
||||
- Forum: 'https://discuss.privacyguides.net/'
|
||||
- Blog: 'https://blog.privacyguides.org/'
|
19
crowdin.yml
@ -1,18 +1,17 @@
|
||||
project_id_env: CROWDIN_PROJECT_ID
|
||||
api_token_env: CROWDIN_PERSONAL_TOKEN
|
||||
project_id: "509862"
|
||||
"preserve_hierarchy": true
|
||||
files:
|
||||
- source: "/docs/**/*.en.*"
|
||||
translation: "/docs/**/%file_name%.%locale_with_underscore%.%file_extension%"
|
||||
translation_replace:
|
||||
"en.": ""
|
||||
update_option: update_as_unapproved
|
||||
- source: "/docs/**/*.*"
|
||||
translation: "/i18n/%two_letters_code%/**/%file_name%.%file_extension%"
|
||||
skip_untranslated_files: false
|
||||
- source: "/theme/overrides/*.en.html"
|
||||
translation: "/theme/overrides/%file_name%.%locale_with_underscore%.html"
|
||||
translation: "/theme/overrides/%file_name%.%two_letters_code%.html"
|
||||
translation_replace:
|
||||
"en.": ""
|
||||
- source: "/includes/*.en.md"
|
||||
translation: "/includes/%file_name%.%locale_with_underscore%.md"
|
||||
skip_untranslated_files: false
|
||||
- source: "/includes/*.en.*"
|
||||
translation: "/includes/%file_name%.%two_letters_code%.%file_extension%"
|
||||
translation_replace:
|
||||
"en.": ""
|
||||
update_option: update_as_unapproved
|
||||
skip_untranslated_files: false
|
||||
|
@ -1,22 +0,0 @@
|
||||
extra:
|
||||
articles:
|
||||
- name: '"Hide Nothing"'
|
||||
publisher: Privacy Guides
|
||||
url: 'blog/2022/06/09/hide-nothing.md'
|
||||
date: 2022-06-09
|
||||
- name: '"Move Fast and Break Things"'
|
||||
publisher: Privacy Guides
|
||||
url: 'blog/2022/04/04/move-fast-and-break-things.md'
|
||||
date: 2022-04-04
|
||||
- name: 'Firefox Privacy: 2021 Update'
|
||||
publisher: Privacy Guides
|
||||
url: 'blog/2021/12/01/firefox-privacy-2021-update.md'
|
||||
date: 2021-12-01
|
||||
- name: 'Virtual Insanity'
|
||||
publisher: Privacy Guides
|
||||
url: 'blog/2021/11/01/virtual-insanity.md'
|
||||
date: 2021-11-01
|
||||
- name: 'Welcome to Privacy Guides'
|
||||
publisher: Privacy Guides
|
||||
url: 'blog/2021/09/14/welcome-to-privacy-guides.md'
|
||||
date: 2021-09-14
|
18
docs/404.md
Normal file
@ -0,0 +1,18 @@
|
||||
---
|
||||
hide:
|
||||
- feedback
|
||||
meta:
|
||||
- property: "robots"
|
||||
content: "noindex, nofollow"
|
||||
---
|
||||
|
||||
# 404 - Not Found
|
||||
|
||||
We couldn't find the page you were looking for! Maybe you were looking for one of these?
|
||||
|
||||
- [Introduction to Threat Modeling](basics/threat-modeling.md)
|
||||
- [Recommended DNS Providers](dns.md)
|
||||
- [Best Desktop Web Browsers](desktop-browsers.md)
|
||||
- [Best VPN Providers](vpn.md)
|
||||
- [Privacy Guides Forum](https://discuss.privacyguides.net)
|
||||
- [Our Blog](https://blog.privacyguides.org)
|
@ -1,15 +0,0 @@
|
||||
---
|
||||
title: "About Privacy Guides"
|
||||
---
|
||||
|
||||
**Privacy Guides** is a socially motivated website that provides information for protecting your data security and privacy. We are a non-profit collective operated entirely by volunteer team members and contributors.
|
||||
|
||||
Our current list of team members can be found [here on GitHub](https://github.com/orgs/privacyguides/people). Additionally, [many people](https://github.com/privacyguides/privacyguides.org/graphs/contributors) have made contributions to the project. You can too, we're open sourced on GitHub!
|
||||
|
||||
Our team members review all changes made to the website and handle administrative duties such as web hosting and financials, however they do not personally profit from any contributions made to this site. Our financials are transparently hosted by the Open Collective Foundation 501(c)(3) at [opencollective.com/privacyguides](https://opencollective.com/privacyguides). Donations to Privacy Guides are generally tax deductible in the United States.
|
||||
|
||||
*The following is a human-readable summary of (and not a substitute for) the [license](https://github.com/privacyguides/privacyguides.org/blob/main/LICENSE):*
|
||||
|
||||
:fontawesome-brands-creative-commons: :fontawesome-brands-creative-commons-by: :fontawesome-brands-creative-commons-nd: Unless otherwise noted, the original content on this website is made available under the [Creative Commons Attribution-NoDerivatives 4.0 International Public License](https://github.com/privacyguides/privacyguides.org/blob/main/LICENSE). This means that you are free to copy and redistribute the material in any medium or format for any purpose, even commercially; as long as you give appropriate credit to `Privacy Guides (www.privacyguides.org)` and provide a link to the license. You may do so in any reasonable manner, but not in any way that suggests Privacy Guides endorses you or your use. If you remix, transform, or build upon the content of this website, you may not distribute the modified material.
|
||||
|
||||
This license is in place to prevent people from sharing our work without giving proper credit, and to prevent people from modifying our work in a way that could be used to mislead people. If you find the terms of this license too restrictive for the project you're working on, please reach out to us at `jonah@privacyguides.org`. We are happy to provide alternative licensing options for well-intentioned projects in the privacy space!
|
40
docs/about/criteria.md
Normal file
@ -0,0 +1,40 @@
|
||||
---
|
||||
title: General Criteria
|
||||
---
|
||||
|
||||
!!! example "Work in Progress"
|
||||
|
||||
The following page is a work in progress, and does not reflect the full criteria for our recommendations at this time. Past discussion on this topic: [#24](https://github.com/privacyguides/privacyguides.org/discussions/24)
|
||||
|
||||
Below are some things that must apply to all submissions to Privacy Guides. Each category will have additional requirements for inclusion.
|
||||
|
||||
## Financial Disclosure
|
||||
|
||||
We do not make money from recommending certain products, we do not use affiliate links, and we do not provide special consideration to project donors.
|
||||
|
||||
## General Guidelines
|
||||
|
||||
We apply these priorities when considering new recommendations:
|
||||
|
||||
- **Secure**: Tools should follow security best-practices wherever applicable.
|
||||
- **Source Availability**: Open source projects are generally preferred over equivalent proprietary alternatives.
|
||||
- **Cross-Platform**: We typically prefer recommendations to be cross-platform, to avoid vendor lock-in.
|
||||
- **Active Development**: The tools that we recommend should be actively developed, unmaintained projects will be removed in most cases.
|
||||
- **Usability**: Tools should be accessible to most computer users, an overly technical background should not be required.
|
||||
- **Documented**: Tools should have clear and extensive documentation for use.
|
||||
|
||||
## Developer Self-Submissions
|
||||
|
||||
We have these requirements in regard to developers which wish to submit their project or software for consideration.
|
||||
|
||||
- Must disclose affiliation, i.e. your position within the project being submitted.
|
||||
|
||||
- Must have a security whitepaper if it is a project that involves handling of sensitive information like a messenger, password manager, encrypted cloud storage etc.
|
||||
- Third party audit status. We want to know if you have one, or have one planned. If possible please mention who will be conducting the audit.
|
||||
|
||||
- Must explain what the project brings to the table in regard to privacy.
|
||||
- Does it solve any new problem?
|
||||
- Why should anyone use it over the alternatives?
|
||||
|
||||
- Must state what the exact threat model is with their project.
|
||||
- It should be clear to potential users what the project can provide, and what it cannot.
|
@ -2,13 +2,13 @@
|
||||
title: Supporting Us
|
||||
---
|
||||
<!-- markdownlint-disable MD036 -->
|
||||
It takes a lot of [people](https://github.com/privacyguides/privacyguides.org/graphs/contributors) and [work](https://github.com/privacyguides/privacyguides.org/pulse/monthly) to keep Privacy Guides up to date and spreading the word about privacy and mass surveillance. If you like what we do, the best way to help out is by getting involved by [editing the site](https://github.com/privacyguides/privacyguides.org) or [contributing translations](https://crowdin.com/project/privacyguides).
|
||||
It takes a lot of [people](https://github.com/privacyguides/privacyguides.org/graphs/contributors) and [work](https://github.com/privacyguides/privacyguides.org/pulse/monthly) to keep Privacy Guides up to date and spreading the word about privacy and mass surveillance. If you like what we do, consider getting involved by [editing the site](https://github.com/privacyguides/privacyguides.org) or [contributing translations](https://crowdin.com/project/privacyguides).
|
||||
|
||||
If you want to support us financially, the most convenient method for us is contributing via Open Collective, a website operated by our fiscal host. Open Collective accepts payments via credit/debit card, PayPal, and bank transfers.
|
||||
|
||||
[Donate on OpenCollective.com](https://opencollective.com/privacyguides/donate){ .md-button .md-button--primary }
|
||||
|
||||
Donations made directly to us Open Collective are generally tax-deductible in the US, because our fiscal host (the Open Collective Foundation) is a registered 501(c)3 organization. You will receive a receipt from the Open Collective Foundation after donating. Privacy Guides does not provide financial advice, and you should contact your tax advisor to find out whether this is applicable to you.
|
||||
Donations made directly to us on Open Collective are generally tax-deductible in the US, because our fiscal host (the Open Collective Foundation) is a registered 501(c)3 organization. You will receive a receipt from the Open Collective Foundation after donating. Privacy Guides does not provide financial advice, and you should contact your tax advisor to find out whether this is applicable to you.
|
||||
|
||||
If you already make use of GitHub sponsorships, you can also sponsor our organization there.
|
||||
|
88
docs/about/index.md
Normal file
@ -0,0 +1,88 @@
|
||||
---
|
||||
template: schema.html
|
||||
title: "About Privacy Guides"
|
||||
description: Privacy Guides is a socially motivated website that provides information for protecting your data security and privacy.
|
||||
---
|
||||
{ align=right }
|
||||
|
||||
**Privacy Guides** is a socially motivated website that provides [information](/kb) for protecting your data security and privacy. We are a non-profit collective operated entirely by volunteer [team members](https://discuss.privacyguides.net/g/team) and contributors. Our website is free of advertisements and not affiliated with any listed providers.
|
||||
|
||||
[:octicons-home-16:](https://www.privacyguides.org/){ .card-link title=Homepage }
|
||||
[:octicons-code-16:](https://github.com/privacyguides/privacyguides.org){ .card-link title="Source Code" }
|
||||
[:octicons-heart-16:](donate.md){ .card-link title=Contribute }
|
||||
|
||||
The purpose of Privacy Guides is to educate our community on the importance of privacy online and government programs internationally that are designed to monitor all of your online activities.
|
||||
|
||||
> To find [privacy-focused alternative] apps, check out sites like Good Reports and **Privacy Guides**, which list privacy-focused apps in a variety of categories, notably including email providers (usually on paid plans) that aren’t run by the big tech companies.
|
||||
|
||||
— [New York Times](https://www.nytimes.com/wirecutter/guides/online-security-social-media-privacy/)
|
||||
|
||||
> If you're looking for a new VPN, you can go to the discount code of just about any podcast. If you are looking for a **good** VPN, you need professional help. The same goes for email clients, browsers, operating systems and password managers. How do you know which of these is the best, most privacy-friendly option? For that there is **Privacy Guides**, a platform on which a number of volunteers search day in, day out for the best privacy-friendly tools to use on the internet.
|
||||
|
||||
— [Tweakers.net](https://tweakers.net/reviews/10568/op-zoek-naar-privacyvriendelijke-tools-niek-de-wilde-van-privacy-guides.html) [Translated from Dutch]
|
||||
|
||||
Also featured on: [Ars Technica](https://arstechnica.com/gadgets/2022/02/is-firefox-ok/), [Wirecutter](https://www.nytimes.com/wirecutter/guides/practical-guide-to-securing-windows-pc/) [[2](https://www.nytimes.com/wirecutter/guides/practical-guide-to-securing-your-mac/)], and [Wired](https://www.wired.com/story/firefox-mozilla-2022/).
|
||||
|
||||
## History
|
||||
|
||||
Privacy Guides was launched in September 2021 as a continuation of the [defunct](privacytools.md) "PrivacyTools" open-source educational project. We recognized the importance of independent, criteria-focused product recommendations and general knowledge in the privacy space, which is why we needed to preserve the work that had been created by so many contributors since 2015 and make sure that information had a stable home on the web indefinitely.
|
||||
|
||||
In 2022, we completed the transition of our main website framework from Jekyll to MkDocs, using the `mkdocs-material` documentation software. This change made open-source contributions to our site significantly easier for outsiders, because instead of needing to know complicated syntax to write posts effectively, contributing is now as easy as writing a standard Markdown document.
|
||||
|
||||
We additionally launched our new discussion forum at [discuss.privacyguides.net](https://discuss.privacyguides.net/) as a community platform to share ideas and ask questions about our mission. This augments our existing community on Matrix, and replaced our previous GitHub Discussions platform, decreasing our reliance on proprietary discussion platforms.
|
||||
|
||||
So far in 2023 we've launched international translations of our website in [French](/fr/), [Hebrew](/he/), and [Dutch](/nl/), with more languages on the way, made possible by our excellent translation team on [Crowdin](https://crowdin.com/project/privacyguides). We plan to continue carrying forward our mission of outreach and education, and finding ways to more clearly highlight the dangers of a lack of privacy awareness in the modern digital age, and the prevalence and harms of security breaches across the technology industry.
|
||||
|
||||
## Our Team
|
||||
|
||||
??? person "@jonah"
|
||||
|
||||
- [:simple-discourse: Discourse](https://discuss.privacyguides.net/u/jonah)
|
||||
- [:simple-github: GitHub](https://github.com/jonaharagon "@jonaharagon")
|
||||
- [:simple-mastodon: Mastodon](https://mastodon.neat.computer/@jonah "@jonah@neat.computer"){rel=me}
|
||||
- [:fontawesome-solid-house: Homepage](https://www.jonaharagon.com)
|
||||
|
||||
??? person "@niek-de-wilde"
|
||||
|
||||
- [:simple-discourse: Discourse](https://discuss.privacyguides.net/u/Niek-de-Wilde)
|
||||
- [:simple-github: GitHub](https://github.com/blacklight447 "@blacklight447")
|
||||
- [:simple-mastodon: Mastodon](https://mastodon.social/@blacklight447 "@blacklight447@mastodon.social"){rel=me}
|
||||
|
||||
??? person "@dngray"
|
||||
|
||||
- [:simple-discourse: Discourse](https://discuss.privacyguides.net/u/dngray)
|
||||
- [:simple-github: GitHub](https://github.com/dngray "@dngray")
|
||||
- [:simple-mastodon: Mastodon](https://mastodon.social/@dngray "@dngray@mastodon.social"){rel=me}
|
||||
- [:fontawesome-solid-envelope: Email](mailto:dngray@privacyguides.org)
|
||||
|
||||
??? person "@freddy"
|
||||
|
||||
- [:simple-discourse: Discourse](https://discuss.privacyguides.net/u/freddy)
|
||||
- [:simple-github: GitHub](https://github.com/freddy-m "@freddy-m")
|
||||
- [:simple-mastodon: Mastodon](https://social.lol/@freddy "@freddy@social.lol"){rel=me}
|
||||
- [:fontawesome-solid-envelope: Email](mailto:freddy@privacyguides.org)
|
||||
- [:fontawesome-solid-house: Homepage](https://freddy.omg.lol)
|
||||
|
||||
??? person "@mfwmyfacewhen"
|
||||
|
||||
- [:simple-discourse: Discourse](https://discuss.privacyguides.net/u/mfwmyfacewhen)
|
||||
- [:simple-github: GitHub](https://github.com/mfwmyfacewhen "@mfwmyfacewhen")
|
||||
- [:fontawesome-solid-house: Homepage](https://mfw.omg.lol)
|
||||
|
||||
??? person "@olivia"
|
||||
|
||||
- [:simple-discourse: Discourse](https://discuss.privacyguides.net/u/olivia)
|
||||
- [:simple-github: GitHub](https://github.com/hook9 "@hook9")
|
||||
- [:simple-mastodon: Mastodon](https://mastodon.neat.computer/@oliviablob "@oliviablob@neat.computer"){rel=me}
|
||||
|
||||
Additionally, [many people](https://github.com/privacyguides/privacyguides.org/graphs/contributors) have made contributions to the project. You can too, we're open sourced on GitHub, and accepting translation suggestions on [Crowdin](https://crowdin.com/project/privacyguides).
|
||||
|
||||
Our team members review all changes made to the website and handle administrative duties such as web hosting and financials, however they do not personally profit from any contributions made to this site. Our financials are transparently hosted by the Open Collective Foundation 501(c)(3) at [opencollective.com/privacyguides](https://opencollective.com/privacyguides). Donations to Privacy Guides are generally tax-deductible in the United States.
|
||||
|
||||
## Site License
|
||||
|
||||
*The following is a human-readable summary of (and not a substitute for) the [license](https://github.com/privacyguides/privacyguides.org/blob/main/LICENSE):*
|
||||
|
||||
:fontawesome-brands-creative-commons: :fontawesome-brands-creative-commons-by: :fontawesome-brands-creative-commons-nd: Unless otherwise noted, the original content on this website is made available under the [Creative Commons Attribution-NoDerivatives 4.0 International Public License](https://github.com/privacyguides/privacyguides.org/blob/main/LICENSE). This means that you are free to copy and redistribute the material in any medium or format for any purpose, even commercially; as long as you give appropriate credit to `Privacy Guides (www.privacyguides.org)` and provide a link to the license. You may do so in any reasonable manner, but not in any way that suggests Privacy Guides endorses you or your use. If you remix, transform, or build upon the content of this website, you may not distribute the modified material.
|
||||
|
||||
This license is in place to prevent people from sharing our work without giving proper credit, and to prevent people from modifying our work in a way that could be used to mislead people. If you find the terms of this license too restrictive for the project you're working on, please reach out to us at `jonah@privacyguides.org`. We are happy to provide alternative licensing options for well-intentioned projects in the privacy space!
|
@ -8,13 +8,13 @@ Privacy Guides is a community project operated by a number of active volunteer c
|
||||
The privacy of our website visitors is important to us, so we do not track any individual people. As a visitor to our website:
|
||||
|
||||
- No personal information is collected
|
||||
- No information such as cookies is stored in the browser
|
||||
- No information such as cookies are stored in the browser
|
||||
- No information is shared with, sent to or sold to third-parties
|
||||
- No information is shared with advertising companies
|
||||
- No information is mined and harvested for personal and behavioral trends
|
||||
- No information is monetized
|
||||
|
||||
You can view the data we collect at [stats.privacyguides.net/privacyguides.org](https://stats.privacyguides.net/privacyguides.org).
|
||||
You can view the data we collect on our [statistics](statistics.md) page.
|
||||
|
||||
We run a self-hosted installation of [Plausible Analytics](https://plausible.io) to collect some anonymous usage data for statistical purposes. The goal is to track overall trends in our website traffic, it is not to track individual visitors. All the data is in aggregate only. No personal data is collected.
|
||||
|
||||
@ -43,7 +43,7 @@ We will store your account data as long as your account remains open. After clos
|
||||
|
||||
The Privacy Guides team generally does not have access to personal data outside of limited access granted via some moderation panels. Inquiries regarding your personal information should be sent directly to:
|
||||
|
||||
```
|
||||
```text
|
||||
Jonah Aragon
|
||||
Services Administrator
|
||||
jonah@privacyguides.org
|
||||
@ -52,9 +52,10 @@ jonah@privacyguides.org
|
||||
For all other inquiries, you can contact any member of our team.
|
||||
|
||||
For complaints under GDPR more generally, you may lodge complaints with your local data protection supervisory authorities.
|
||||
In France it's the Commission Nationale de l'Informatique et des Libertés which take care and handle the complaints. They provide a [template of complaint letter](https://www.cnil.fr/en/plaintes) to use.
|
||||
|
||||
## About This Policy
|
||||
|
||||
We will post any new versions of this statement [here](privacy-policy.en.md). We may change how we announce changes in future versions of this document. In the meantime we may update our contact information at any time without announcing a change. Please refer to the [Privacy Policy](privacy-policy.en.md) for the latest contact information at any time.
|
||||
We will post any new versions of this statement [here](privacy-policy.md). We may change how we announce changes in future versions of this document. In the meantime we may update our contact information at any time without announcing a change. Please refer to the [Privacy Policy](privacy-policy.md) for the latest contact information at any time.
|
||||
|
||||
A full revision [history](https://github.com/privacyguides/privacyguides.org/commits/main/docs/about/privacy-policy.en.md) of this page can be found on GitHub.
|
||||
A full revision [history](https://github.com/privacyguides/privacyguides.org/commits/main/docs/about/privacy-policy.md) of this page can be found on GitHub.
|
38
docs/about/services.md
Normal file
@ -0,0 +1,38 @@
|
||||
# Privacy Guides Services
|
||||
|
||||
We run a number of web services to test out features and promote cool decentralized, federated, and/or open-source projects. Many of these services are available to the public and are detailed below.
|
||||
|
||||
[:material-comment-alert: Report an issue](https://discuss.privacyguides.net/c/services/2){ .md-button .md-button--primary }
|
||||
|
||||
## Discourse
|
||||
|
||||
- Domain: [discuss.privacyguides.net](https://discuss.privacyguides.net)
|
||||
- Availability: Public
|
||||
- Source: [github.com/discourse/discourse](https://github.com/discourse/discourse)
|
||||
|
||||
## Gitea
|
||||
|
||||
- Domain: [code.privacyguides.dev](https://code.privacyguides.dev)
|
||||
- Availability: Invite-Only
|
||||
Access may be granted upon request to any team working on *Privacy Guides*-related development or content.
|
||||
- Source: [snapcraft.io/gitea](https://snapcraft.io/gitea)
|
||||
|
||||
## Matrix
|
||||
|
||||
- Domain: [matrix.privacyguides.org](https://matrix.privacyguides.org)
|
||||
- Availability: Invite-Only
|
||||
Access may be granted upon request to Privacy Guides team members, Matrix moderators, third-party Matrix community administrators, Matrix bot operators, and other individuals in need of a reliable Matrix presence.
|
||||
- Source: [github.com/spantaleev/matrix-docker-ansible-deploy](https://github.com/spantaleev/matrix-docker-ansible-deploy)
|
||||
|
||||
## SearXNG
|
||||
|
||||
- Domain: [search.privacyguides.net](https://search.privacyguides.net)
|
||||
- Availability: Public
|
||||
- Source: [github.com/searxng/searxng-docker](https://github.com/searxng/searxng-docker)
|
||||
|
||||
## Invidious
|
||||
|
||||
- Domain: [invidious.privacyguides.net](https://invidious.privacyguides.net)
|
||||
- Availability: Semi-Public
|
||||
We host Invidious primarily to serve embedded YouTube videos on our website, this instance is not intended for general-purpose use and may be limited at any time.
|
||||
- Source: [github.com/iv-org/invidious](https://github.com/iv-org/invidious)
|
60
docs/about/statistics.md
Normal file
@ -0,0 +1,60 @@
|
||||
---
|
||||
title: Traffic Statistics
|
||||
---
|
||||
## Website Statistics
|
||||
|
||||
<iframe plausible-embed src="https://stats.privacyguides.net/share/privacyguides.org?auth=IxTl2wRhi3uxF09rd1NSn&embed=true&theme=system&background=transparent" scrolling="no" frameborder="0" loading="lazy" style="width: 1px; min-width: 100%; height: 1600px;" id="plausibleFrame"></iframe>
|
||||
<div style="font-size: 14px; padding-bottom: 14px;">Stats powered by <a target="_blank" style="color: #4F46E5; text-decoration: underline;" href="https://plausible.io">Plausible Analytics</a></div>
|
||||
<script async src="https://stats.privacyguides.net/js/embed.host.js"></script>
|
||||
|
||||
<script>
|
||||
|
||||
/* Set palette on initial load */
|
||||
var palette = __md_get("__palette")
|
||||
if (palette && typeof palette.color === "object") {
|
||||
var theme = palette.color.scheme === "slate" ? "dark" : "light"
|
||||
document.getElementById('plausibleFrame').src = 'https://stats.privacyguides.net/share/privacyguides.org?auth=IxTl2wRhi3uxF09rd1NSn&embed=true&theme=' + theme + '&background=transparent';
|
||||
}
|
||||
|
||||
/* Register event handlers after documented loaded */
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
var ref = document.querySelector("[data-md-component=palette]")
|
||||
ref.addEventListener("change", function() {
|
||||
var palette = __md_get("__palette")
|
||||
if (palette && typeof palette.color === "object") {
|
||||
var theme = palette.color.scheme === "slate" ? "dark" : "light"
|
||||
|
||||
document.getElementById('plausibleFrame').src = 'https://stats.privacyguides.net/share/privacyguides.org?auth=IxTl2wRhi3uxF09rd1NSn&embed=true&theme=' + theme + '&background=transparent';
|
||||
}
|
||||
})
|
||||
})
|
||||
</script>
|
||||
|
||||
## Blog Statistics
|
||||
|
||||
<iframe plausible-embed src="https://stats.privacyguides.net/share/blog.privacyguides.org?auth=onWV76WWcsDifUqlaHEAg&embed=true&theme=system&background=transparent" scrolling="no" frameborder="0" loading="lazy" style="width: 1px; min-width: 100%; height: 1600px;" id="blogFrame"></iframe>
|
||||
<div style="font-size: 14px; padding-bottom: 14px;">Stats powered by <a target="_blank" style="color: #4F46E5; text-decoration: underline;" href="https://plausible.io">Plausible Analytics</a></div>
|
||||
<script async src="https://stats.privacyguides.net/js/embed.host.js"></script>
|
||||
|
||||
<script>
|
||||
|
||||
/* Set palette on initial load */
|
||||
var palette = __md_get("__palette")
|
||||
if (palette && typeof palette.color === "object") {
|
||||
var theme = palette.color.scheme === "slate" ? "dark" : "light"
|
||||
document.getElementById('blogFrame').src = 'https://stats.privacyguides.net/share/blog.privacyguides.org?auth=onWV76WWcsDifUqlaHEAg&embed=true&theme=' + theme + '&background=transparent';
|
||||
}
|
||||
|
||||
/* Register event handlers after documented loaded */
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
var ref = document.querySelector("[data-md-component=palette]")
|
||||
ref.addEventListener("change", function() {
|
||||
var palette = __md_get("__palette")
|
||||
if (palette && typeof palette.color === "object") {
|
||||
var theme = palette.color.scheme === "slate" ? "dark" : "light"
|
||||
|
||||
document.getElementById('blogFrame').src = 'https://stats.privacyguides.net/share/blog.privacyguides.org?auth=onWV76WWcsDifUqlaHEAg&embed=true&theme=' + theme + '&background=transparent';
|
||||
}
|
||||
})
|
||||
})
|
||||
</script>
|
@ -84,7 +84,7 @@ P2P networks do not use servers, as peers communicate directly between each othe
|
||||
|
||||
A messenger using [anonymous routing](https://doi.org/10.1007/978-1-4419-5906-5_628) hides either the identity of the sender, the receiver, or evidence that they have been communicating. Ideally, a messenger should hide all three.
|
||||
|
||||
There are [many](https://doi.org/10.1145/3182658) different ways to implement anonymous routing. One of the most famous is [onion routing](https://en.wikipedia.org/wiki/Onion_routing) (i.e. [Tor](../basics/tor-overview.md)), which communicates encrypted messages through a virtual [overlay network](https://en.wikipedia.org/wiki/Overlay_network) that hides the location of each node as well as the recipient and sender of each message. The sender and recipient never interact directly and only meet through a secret rendezvous node so that there is no leak of IP addresses nor physical location. Nodes cannot decrypt messages, nor the final destination; only the recipient can. Each intermediary node can only decrypt a part that indicates where to send the still encrypted message next, until it arrives at the recipient who can fully decrypt it, hence the "onion layers."
|
||||
There are [many](https://doi.org/10.1145/3182658) different ways to implement anonymous routing. One of the most famous is [onion routing](https://en.wikipedia.org/wiki/Onion_routing) (i.e. [Tor](tor-overview.md)), which communicates encrypted messages through a virtual [overlay network](https://en.wikipedia.org/wiki/Overlay_network) that hides the location of each node as well as the recipient and sender of each message. The sender and recipient never interact directly and only meet through a secret rendezvous node so that there is no leak of IP addresses nor physical location. Nodes cannot decrypt messages, nor the final destination; only the recipient can. Each intermediary node can only decrypt a part that indicates where to send the still encrypted message next, until it arrives at the recipient who can fully decrypt it, hence the "onion layers."
|
||||
|
||||
Self-hosting a node in an anonymous routing network does not provide the hoster with additional privacy benefits, but rather contributes to the whole network's resilience against identification attacks for everyone's benefit.
|
||||
|
@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "Introduction to DNS"
|
||||
title: "DNS Overview"
|
||||
icon: material/dns
|
||||
---
|
||||
|
||||
@ -79,7 +79,7 @@ Encrypted DNS can refer to one of a number of protocols, the most common ones be
|
||||
|
||||
[**DNS over HTTPS**](https://en.wikipedia.org/wiki/DNS_over_HTTPS) as defined in [RFC 8484](https://datatracker.ietf.org/doc/html/rfc8484) packages queries in the [HTTP/2](https://en.wikipedia.org/wiki/HTTP/2) protocol and provides security with HTTPS. Support was first added in web browsers such as Firefox 60 and Chrome 83.
|
||||
|
||||
Native implementation of DoH showed up in iOS 14, macOS 11, Microsoft Windows, and Android 13 (however, it won't be enabled [by default](https://android-review.googlesource.com/c/platform/packages/modules/DnsResolver/+/1833144)). General Linux desktop support is waiting on the systemd [implementation](https://github.com/systemd/systemd/issues/8639) so [installing third-party software is still required](../dns.md#linux).
|
||||
Native implementation of DoH showed up in iOS 14, macOS 11, Microsoft Windows, and Android 13 (however, it won't be enabled [by default](https://android-review.googlesource.com/c/platform/packages/modules/DnsResolver/+/1833144)). General Linux desktop support is waiting on the systemd [implementation](https://github.com/systemd/systemd/issues/8639) so [installing third-party software is still required](../dns.md#encrypted-dns-proxies).
|
||||
|
||||
## What can an outside party see?
|
||||
|
||||
@ -109,7 +109,7 @@ We can see the [connection establishment](https://en.wikipedia.org/wiki/Transmis
|
||||
|
||||
## Why **shouldn't** I use encrypted DNS?
|
||||
|
||||
In locations where there is internet filtering (or censorship), visiting forbidden resources may have its own consequences which you should consider in your [threat model](threat-modeling.md). We do **not** suggest the use of encrypted DNS for this purpose. Use [Tor](https://torproject.org) or a [VPN](../vpn.md) instead. If you're using a VPN, you should use your VPN's DNS servers. When using a VPN, you are already trusting them with all your network activity.
|
||||
In locations where there is internet filtering (or censorship), visiting forbidden resources may have its own consequences which you should consider in your [threat model](../basics/threat-modeling.md). We do **not** suggest the use of encrypted DNS for this purpose. Use [Tor](https://torproject.org) or a [VPN](../vpn.md) instead. If you're using a VPN, you should use your VPN's DNS servers. When using a VPN, you are already trusting them with all your network activity.
|
||||
|
||||
When we do a DNS lookup, it's generally because we want to access a resource. Below, we will discuss some of the methods that may disclose your browsing activities even when using encrypted DNS:
|
||||
|
@ -1,36 +0,0 @@
|
||||
---
|
||||
title: "Secure Data Erasure"
|
||||
icon: 'material/harddisk-remove'
|
||||
---
|
||||
**Erasing data** from your computer may seem like a simple task, but if you want to make sure the data is truly unrecoverable, there are some things you should consider.
|
||||
|
||||
!!! tip
|
||||
You should use [full disk encryption](../encryption.md#os-full-disk-encryption) on your storage devices. If your device is stolen or needs to be returned under warranty your privacy may be at risk.
|
||||
|
||||
To erase a storage device **thoroughly**, you should securely erase the whole device and not individual files.
|
||||
|
||||
## Erasing Your Entire Drive
|
||||
|
||||
When you delete a file, the operating system marks the space where the deleted file was as "empty." That "empty" space can be fairly easily undeleted, yielding the original file.
|
||||
|
||||
### Magnetic storage
|
||||
|
||||
If the disk is a magnetic storage device, such as a spinning hard disk, we suggest using [`nwipe`](https://en.wikipedia.org/wiki/Nwipe). `nwipe` can be installed in most Linux distributions. If you wish to use a complete boot environment on a system, consider using [ShredOS Disk Eraser](https://github.com/PartialVolume/shredos.x86_64). ShredOS boots straight into `nwipe` and allows you to erase available disks. To install it to a flash USB stick see the [installation methods](https://github.com/PartialVolume/shredos.x86_64/blob/master/README.md#obtaining-and-writing-shredos-to-a-usb-flash-drive-the-easy-way-).
|
||||
|
||||
Once you have your boot media, enter your system's UEFI settings and boot from the USB stick. Commonly used keys to access UEFI are ++f2++, ++f12++, or ++del++. Follow the on-screen prompts to wipe your data.
|
||||
|
||||

|
||||
|
||||
### Flash Storage
|
||||
|
||||
For [flash memory](https://en.wikipedia.org/wiki/Flash_memory) (SSD, NVMe, etc) devices we suggest the ATA Secure Erase command. Methods such as `nwipe` should not be used on flash storage devices as it may damage their performance. The "Secure Erase" feature is often accessible through the UEFI setup menu.
|
||||
|
||||
It is also possible to complete a Secure Erase using the [`hdparm`](https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase) command, or [Microsoft Secure Group Commands](https://docs.microsoft.com/en-us/windows-hardware/drivers/storage/security-group-commands).
|
||||
|
||||
Physical destruction may be necessary to securely erase devices such as memory cards, USB sticks and unusable hard disks.
|
||||
|
||||
## Erasing Specific Files
|
||||
|
||||
Securely shredding **individual files** is difficult if not impossible. Copies can exist in a variety of ways such as through manual, or automatic backups, [wear leveling](https://en.wikipedia.org/wiki/Wear_leveling) (on modern [flash storage](https://en.wikipedia.org/wiki/Solid-state_drive)), caching and filesystem [journaling](https://en.wikipedia.org/wiki/Journaling_file_system).
|
||||
|
||||
Wear leveled devices do not guarantee a fixed relationship between [logical blocks addressed](https://en.wikipedia.org/wiki/Logical_block_addressing) through the interface. This means that the physical locations in which the data is stored may be different to where it is actually located, so shredding may not provide adequate security.
|
@ -1,162 +0,0 @@
|
||||
---
|
||||
title: "Integrating Metadata Removal"
|
||||
icon: 'material/data-matrix-remove'
|
||||
---
|
||||
|
||||
When sharing files, it's important to remove associated metadata. Image files commonly include [Exif](https://en.wikipedia.org/wiki/Exif) data, and sometimes photos even include GPS coordinates within its metadata.
|
||||
|
||||
While there are plenty of metadata removal tools, they typically aren't convenient to use. The guides featured here aim to detail how to integrate metadata removal tools in a simple fashion by utilizing easy-to-access system features.
|
||||
|
||||
- [Recommended metadata removal tools :material-arrow-right-drop-circle:](../data-redaction.md)
|
||||
|
||||
## macOS
|
||||
|
||||
This guide uses the [Shortcuts](https://support.apple.com/guide/shortcuts-mac/intro-to-shortcuts-apdf22b0444c/mac) app to add an [ExifTool](../data-redaction.md#exiftool) script to the *Quick Actions* context menu within Finder. Shortcuts is developed by Apple and bundled in with macOS by default.
|
||||
|
||||
Shortcuts is quite intuitive to work with, so if you don't like the behavior demoed here then experiment with your own solution. For example, you could set the shortcut to take a clipboard input instead. The sky's the limit.
|
||||
|
||||

|
||||
|
||||
### Prerequisites
|
||||
|
||||
1. [Homebrew](https://brew.sh): a package manager.
|
||||
|
||||
```bash
|
||||
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
||||
```
|
||||
|
||||
2. ExifTool is a tool for viewing and manipulating image, audio, video, and PDF metadata.
|
||||
|
||||
```bash
|
||||
brew install exiftool
|
||||
```
|
||||
|
||||
!!! note
|
||||
You can check if ExifTool is installed by running `exiftool -ver`. You should see a version number.
|
||||
|
||||
### Creating the Shortcut
|
||||
|
||||
1. Open **Shortcuts.app** and create a new shortcut
|
||||
|
||||
2. In the shortcut's options, check **Use as Quick Action** and **Finder**
|
||||
|
||||
3. Set up the retrieval options:
|
||||
|
||||
- Receive **Images, Media, and PDFs** input from **Quick Actions**
|
||||
- If there is no input select **Continue**
|
||||
|
||||
4. Add the **Run Shell Script** action to the shortcut. You may need to enable **Allow Running Scripts** in Shortcut.app's settings
|
||||
|
||||
5. Set up the shell script action:
|
||||
- Select **zsh** from the shell list
|
||||
- Set the input to **Shortcut Input**
|
||||
- Select **as arguments** for the pass input
|
||||
- Leave **Run as administrator** unchecked
|
||||
|
||||
6. Use the following as the body of the script:
|
||||
|
||||
```bash
|
||||
for f in "$@"
|
||||
do
|
||||
exiftool -all= "$f";
|
||||
done
|
||||
```
|
||||
|
||||

|
||||
|
||||
!!! tip "Worth Mentioning"
|
||||
The open-source [ImageOptim](https://imageoptim.com/mac) app integrates into Finder's *Services* context menu by default. While it is primarily an image optimization app, it also removes metadata.
|
||||
|
||||
### Enabling & using the Shortcut
|
||||
|
||||
1. The shortcut will be accessible through **Quick Actions** context menu within Finder.
|
||||
|
||||
2. If you want to reposition the shortcut within the context menu, go to:<br>
|
||||
**System Preferences** → **Extensions** → **Finder and drag the shortcut's position**.
|
||||
|
||||
## iOS and iPadOS
|
||||
|
||||
[Shortcuts](https://support.apple.com/guide/shortcuts/welcome/ios) can be made accessible through the system Share Sheet, making accessing those shortcuts very convenient. This guide will show you how to build a metadata removal shortcut and integrate it into the system *Share Sheet*.
|
||||
|
||||
!!! warning
|
||||
This method of metadata removal is not as comprehensive at removing metadata as utilities like [ExifTool](../data-redaction.md#exiftool) and [mat2](../data-redaction.md#mat2) are.
|
||||
|
||||
The lack of *good* metadata removal apps on the App Store is what makes this solution worthwhile.
|
||||
|
||||

|
||||
|
||||
### Prerequisites
|
||||
|
||||
1. [Shortcuts](https://apps.apple.com/us/app/shortcuts/id915249334) via the App Store.
|
||||
|
||||
### Creating the Shortcut
|
||||
|
||||
1. Create a new Shortcut
|
||||
|
||||
2. Enter the Shortcut's settings and check **Show in Share Sheet**
|
||||
|
||||
3. Add a **Receive** action and set it to receive **Images** from **Share Sheet**
|
||||
|
||||
4. Add an **If** action
|
||||
|
||||
5. Set the **If** action to **Shortcut Input** and **has any value**
|
||||
|
||||
6. Add an **Otherwise** action
|
||||
|
||||
7. Add an **End If** action
|
||||
|
||||
8. Add a **Convert** action and set it to **If Result** and **Match Input**
|
||||
|
||||
9. Finally, add a **Share** action and set that to **Converted Image**
|
||||
|
||||
10. Make sure that you uncheck **preserve metadata**
|
||||
|
||||

|
||||
|
||||
### Enabling & using the Shortcut
|
||||
|
||||
1. The shortcut should be available through the system Share Sheet. If it is not, then a device restart may be required.
|
||||
2. Optionally, you can add the shortcut to your home screen.
|
||||
|
||||
## Windows
|
||||
|
||||
Windows allows you to place files in a **SendTo** folder which then appear in the *Send to* context menu. This guide will show you how to add an [ExifTool](../data-redaction.md#exiftool) batch script to this menu.
|
||||
|
||||

|
||||
|
||||
### Prerequisites
|
||||
|
||||
1. ExifTool is a tool for viewing and manipulating image, audio, video, and PDF metadata. We suggest you read the [Installation instructions](https://exiftool.org/install.html#Windows) on the official website.
|
||||
|
||||
!!! note
|
||||
You can check if ExifTool is present in your [PATH](https://www.computerhope.com/issues/ch000549.htm) by running `exiftool -ver` in Command Prompt. You should see a version number.
|
||||
|
||||
### Creating the shortcut
|
||||
|
||||
1. Navigate to `%appdata%\Microsoft\Windows\SendTo`
|
||||
|
||||
2. Right click in the **SendTo** folder and create a new **Text Document**
|
||||
|
||||
3. Name the file `ExifTool.bat` (any name works, however it must end in `.bat`)
|
||||
|
||||
!!! note
|
||||
You may need to check if [file name extensions](https://support.microsoft.com/en-us/windows/common-file-name-extensions-in-windows-da4a4430-8e76-89c5-59f7-1cdbbc75cb01) are enabled.
|
||||
|
||||
4. Open **ExifTool.bat** in Notepad
|
||||
|
||||
5. Copy the following into the document:
|
||||
|
||||
```bat
|
||||
exiftool -fast4 -if "$filepermissions =~ /^.w/" %*
|
||||
if not errorlevel 0 (
|
||||
echo Some files are write protected
|
||||
exit /b %errorlevel%
|
||||
)
|
||||
exiftool -all= %*
|
||||
```
|
||||
|
||||
6. Save
|
||||
|
||||
### Using the shortcut
|
||||
|
||||
1. Right click a supported file and choose **ExifTool.bat** within the *Send to* context menu.
|
@ -75,5 +75,5 @@ If you wish to use Tor for browsing the web, we only recommend the **official**
|
||||
## Additional Resources
|
||||
|
||||
- [Tor Browser User Manual](https://tb-manual.torproject.org)
|
||||
- [How Tor Works - Computerphile](https://www.youtube-nocookie.com/embed/QRYzre4bf7I) <small>(YouTube)</small>
|
||||
- [Tor Onion Services - Computerphile](https://www.youtube-nocookie.com/embed/lVcbq_a5N9I) <small>(YouTube)</small>
|
||||
- [How Tor Works - Computerphile](https://invidious.privacyguides.net/embed/QRYzre4bf7I?local=true) <small>(YouTube)</small>
|
||||
- [Tor Onion Services - Computerphile](https://invidious.privacyguides.net/embed/lVcbq_a5N9I?local=true) <small>(YouTube)</small>
|
@ -13,8 +13,8 @@ The **Android Open Source Project** is an open-source mobile operating system le
|
||||
|
||||
These are the Android operating systems, devices, and apps we recommend to maximize your mobile device's security and privacy. To learn more about Android:
|
||||
|
||||
- [General Android Overview :material-arrow-right-drop-circle:](android/overview.md)
|
||||
- [Why we recommend GrapheneOS over CalyxOS :material-arrow-right-drop-circle:](android/grapheneos-vs-calyxos.md)
|
||||
- [General Android Overview :material-arrow-right-drop-circle:](os/android-overview.md)
|
||||
- [Why we recommend GrapheneOS over CalyxOS :material-arrow-right-drop-circle:](https://blog.privacyguides.org/2022/04/21/grapheneos-or-calyxos/)
|
||||
|
||||
## AOSP Derivatives
|
||||
|
||||
@ -41,7 +41,7 @@ We recommend installing one of these custom Android operating systems on your de
|
||||
[:octicons-code-16:](https://grapheneos.org/source){ .card-link title="Source Code" }
|
||||
[:octicons-heart-16:](https://grapheneos.org/donate){ .card-link title=Contribute }
|
||||
|
||||
GrapheneOS supports [Sandboxed Google Play](https://grapheneos.org/usage#sandboxed-google-play), which runs [Google Play Services](https://en.wikipedia.org/wiki/Google_Play_Services) fully sandboxed like any other regular app. This means you can take advantage of most Google Play Services, such as [push notifications](https://firebase.google.com/docs/cloud-messaging/), while giving you full control over their permissions and access, and while containing them to a specific [work profile](android/overview.md#work-profile) or [user profile](android/overview.md#user-profiles) of your choice.
|
||||
GrapheneOS supports [Sandboxed Google Play](https://grapheneos.org/usage#sandboxed-google-play), which runs [Google Play Services](https://en.wikipedia.org/wiki/Google_Play_Services) fully sandboxed like any other regular app. This means you can take advantage of most Google Play Services, such as [push notifications](https://firebase.google.com/docs/cloud-messaging/), while giving you full control over their permissions and access, and while containing them to a specific [work profile](os/android-overview.md#work-profile) or [user profile](os/android-overview.md#user-profiles) of your choice.
|
||||
|
||||
Google Pixel phones are the only devices that currently meet GrapheneOS's [hardware security requirements](https://grapheneos.org/faq#device-support).
|
||||
|
||||
@ -64,7 +64,7 @@ Google Pixel phones are the only devices that currently meet GrapheneOS's [hardw
|
||||
DivestOS has automated kernel vulnerability ([CVE](https://en.wikipedia.org/wiki/Common_Vulnerabilities_and_Exposures)) [patching](https://gitlab.com/divested-mobile/cve_checker), fewer proprietary blobs, and a custom [hosts](https://divested.dev/index.php?page=dnsbl) file. Its hardened WebView, [Mulch](https://gitlab.com/divested-mobile/mulch), enables [CFI](https://en.wikipedia.org/wiki/Control-flow_integrity) for all architectures and [network state partitioning](https://developer.mozilla.org/en-US/docs/Web/Privacy/State_Partitioning), and receives out-of-band updates.
|
||||
DivestOS also includes kernel patches from GrapheneOS and enables all available kernel security features via [defconfig hardening](https://github.com/Divested-Mobile/DivestOS-Build/blob/master/Scripts/Common/Functions.sh#L758). All kernels newer than version 3.4 include full page [sanitization](https://lwn.net/Articles/334747/) and all ~22 Clang-compiled kernels have [`-ftrivial-auto-var-init=zero`](https://reviews.llvm.org/D54604?id=174471) enabled.
|
||||
|
||||
DivestOS implements some system hardening patches originally developed for GrapheneOS. DivestOS 16.0 and higher implements GrapheneOS's [`INTERNET`](https://developer.android.com/training/basics/network-ops/connecting) and SENSORS permission toggle, [hardened memory allocator](https://github.com/GrapheneOS/hardened_malloc), [exec-spawning](android/grapheneos-vs-calyxos.md#additional-hardening), [JNI](https://en.wikipedia.org/wiki/Java_Native_Interface) [constification](https://en.wikipedia.org/wiki/Const_(computer_programming)), and partial [bionic](https://en.wikipedia.org/wiki/Bionic_(software)) hardening patchsets. 17.1 and higher features GrapheneOS's per-network full [MAC randomization](https://en.wikipedia.org/wiki/MAC_address#Randomization) option, [`ptrace_scope`](https://www.kernel.org/doc/html/latest/admin-guide/LSM/Yama.html) control, and automatic reboot/Wi-Fi/Bluetooth [timeout options](https://grapheneos.org/features).
|
||||
DivestOS implements some system hardening patches originally developed for GrapheneOS. DivestOS 16.0 and higher implements GrapheneOS's [`INTERNET`](https://developer.android.com/training/basics/network-ops/connecting) and SENSORS permission toggle, [hardened memory allocator](https://github.com/GrapheneOS/hardened_malloc), [exec-spawning](https://blog.privacyguides.org/2022/04/21/grapheneos-or-calyxos/#additional-hardening), [JNI](https://en.wikipedia.org/wiki/Java_Native_Interface) [constification](https://en.wikipedia.org/wiki/Const_(computer_programming)), and partial [bionic](https://en.wikipedia.org/wiki/Bionic_(software)) hardening patchsets. 17.1 and higher features GrapheneOS's per-network full [MAC randomization](https://en.wikipedia.org/wiki/MAC_address#Randomization) option, [`ptrace_scope`](https://www.kernel.org/doc/html/latest/admin-guide/LSM/Yama.html) control, and automatic reboot/Wi-Fi/Bluetooth [timeout options](https://grapheneos.org/features).
|
||||
|
||||
DivestOS uses F-Droid as its default app store. Normally, we would recommend avoiding F-Droid due to its numerous [security issues](#f-droid). However, doing so on DivestOS isn't viable; the developers update their apps via their own F-Droid repositories ([DivestOS Official](https://divestos.org/fdroid/official/?fingerprint=E4BE8D6ABFA4D9D4FEEF03CDDA7FF62A73FD64B75566F6DD4E5E577550BE8467) and [DivestOS WebView](https://divestos.org/fdroid/webview/?fingerprint=FB426DA1750A53D7724C8A582B4D34174E64A84B38940E5D5A802E1DFF9A40D2)). We recommend disabling the official F-Droid app and using [Neo Store](https://github.com/NeoApplications/Neo-Store/) with the DivestOS repositories enabled to keep those components up to date. For other apps, our recommended methods of obtaining them still apply.
|
||||
|
||||
@ -86,7 +86,7 @@ A few more tips regarding Android devices and operating system compatibility:
|
||||
|
||||
- Do not buy devices that have reached or are near their end-of-life, additional firmware updates must be provided by the manufacturer.
|
||||
- Do not buy preloaded LineageOS or /e/ OS phones or any Android phones without proper [Verified Boot](https://source.android.com/security/verifiedboot) support and firmware updates. These devices also have no way for you to check whether they've been tampered with.
|
||||
- In short, if a device or Android distribution is not listed here, there is probably a good reason. Check out our [forum](https://discuss.privacyguides.org/) to find details!
|
||||
- In short, if a device or Android distribution is not listed here, there is probably a good reason. Check out our [forum](https://discuss.privacyguides.net/) to find details!
|
||||
|
||||
### Google Pixel
|
||||
|
||||
@ -111,9 +111,9 @@ The installation of GrapheneOS on a Pixel phone is easy with their [web installe
|
||||
A few more tips for purchasing a Google Pixel:
|
||||
|
||||
- If you're after a bargain on a Pixel device, we suggest buying an "**a**" model, just after the next flagship is released. Discounts are usually available because Google will be trying to clear their stock.
|
||||
- Consider price beating options and specials offered at brick and mortar stores.
|
||||
- Consider price beating options and specials offered at physical stores.
|
||||
- Look at online community bargain sites in your country. These can alert you to good sales.
|
||||
- Google provides a list showing the [support cycle](https://support.google.com/nexus/answer/4457705) for each one of their devices. The price per day for a device can be calculated as: $\text{Cost} \over \text {EOL Date }-\text{ Current Date}$, meaning that the longer use of the device the lower cost per day.
|
||||
- Google provides a list showing the [support cycle](https://support.google.com/nexus/answer/4457705) for each one of their devices. The price per day for a device can be calculated as: $\text{Cost} \over \text {EOL Date}-\text{Current Date}$, meaning that the longer use of the device the lower cost per day.
|
||||
|
||||
## General Apps
|
||||
|
||||
@ -160,7 +160,7 @@ We recommend a wide variety of Android apps throughout this site. The apps liste
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=app.attestation.auditor)
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=app.attestation.auditor.play)
|
||||
- [:simple-github: GitHub](https://github.com/GrapheneOS/Auditor/releases)
|
||||
- [:material-cube-outline: GrapheneOS App Store](https://github.com/GrapheneOS/Apps/releases)
|
||||
|
||||
@ -169,7 +169,7 @@ Auditor performs attestation and intrusion detection by:
|
||||
- Using a [Trust On First Use (TOFU)](https://en.wikipedia.org/wiki/Trust_on_first_use) model between an *auditor* and *auditee*, the pair establish a private key in the [hardware-backed keystore](https://source.android.com/security/keystore/) of the *Auditor*.
|
||||
- The *auditor* can either be another instance of the Auditor app or the [Remote Attestation Service](https://attestation.app).
|
||||
- The *auditor* records the current state and configuration of the *auditee*.
|
||||
- Should tampering with the operating system of the *auditee* after the pairing is complete, the auditor will be aware of the change in the device state and configurations.
|
||||
- Should tampering with the operating system of the *auditee* happen after the pairing is complete, the auditor will be aware of the change in the device state and configurations.
|
||||
- You will be alerted to the change.
|
||||
|
||||
No personally identifiable information is submitted to the attestation service. We recommend that you sign up with an anonymous account and enable remote attestation for continuous monitoring.
|
||||
@ -184,7 +184,7 @@ To make sure that your hardware and operating system is genuine, [perform local
|
||||
{ align=right }
|
||||
{ align=right }
|
||||
|
||||
**Secure Camera** is a camera app focused on privacy and security which can capture images, videos and QR codes. CameraX vendor extensions (Portrait, HDR, Night Sight, Face Retouch, and Auto) are also supported on available devices.
|
||||
**Secure Camera** is a camera app focused on privacy and security which can capture images, videos and QR codes. CameraX vendor extensions (Portrait, HDR, Night Sight, Face Retouch, and Auto) are also supported on available devices.
|
||||
|
||||
[:octicons-repo-16: Repository](https://github.com/GrapheneOS/Camera){ .md-button .md-button--primary }
|
||||
[:octicons-info-16:](https://grapheneos.org/usage#camera){ .card-link title=Documentation}
|
||||
@ -308,14 +308,46 @@ If you download APK files to install manually, you can verify their signature wi
|
||||
|
||||
{ align=right width=120px }
|
||||
|
||||
==We do **not** currently recommend F-Droid as a way to obtain apps.== F-Droid is often recommended as an alternative to Google Play, particularly in the privacy community. The option to add third-party repositories and not be confined to Google's walled garden has led to its popularity. F-Droid additionally has [reproducible builds](https://f-droid.org/en/docs/Reproducible_Builds/) for some applications and is dedicated to free and open-source software. However, there are [notable problems](https://wonderfall.dev/fdroid-issues/) with the official F-Droid client, their quality control, and how they build, sign, and deliver packages.
|
||||
==We do **not** currently recommend F-Droid as a way to obtain apps.== F-Droid is often recommended as an alternative to Google Play, particularly in the privacy community. The option to add third-party repositories and not be confined to Google's walled garden has led to its popularity. F-Droid additionally has [reproducible builds](https://f-droid.org/en/docs/Reproducible_Builds/) for some applications and is dedicated to free and open-source software. However, there are [notable problems](https://privsec.dev/posts/android/f-droid-security-issues/) with the official F-Droid client, their quality control, and how they build, sign, and deliver packages.
|
||||
|
||||
Due to their process of building apps, apps in the official F-Droid repository often fall behind on updates. F-Droid maintainers also reuse package IDs while signing apps with their own keys, which is not ideal as it gives the F-Droid team ultimate trust.
|
||||
|
||||
Other popular third-party repositories such as [IzzyOnDroid](https://apt.izzysoft.de/fdroid/) alleviate some of these concerns. The IzzyOnDroid repository pulls builds directly from GitHub and is the next best thing to the developers' own repositories. However, it is not something that we can recommend, as apps are typically [removed](https://github.com/vfsfitvnm/ViMusic/issues/240#issuecomment-1225564446) from that respository when they make it to the main F-droid repository. While that makes sense (since the goal of that particular repository is to host apps before they're accepted into the main F-Droid repository), it can leave you with installed apps which no longer receive updates.
|
||||
Other popular third-party repositories such as [IzzyOnDroid](https://apt.izzysoft.de/fdroid/) alleviate some of these concerns. The IzzyOnDroid repository pulls builds directly from GitHub and is the next best thing to the developers' own repositories. However, it is not something that we can recommend, as apps are typically [removed](https://github.com/vfsfitvnm/ViMusic/issues/240#issuecomment-1225564446) from that respository when they make it to the main F-Droid repository. While that makes sense (since the goal of that particular repository is to host apps before they're accepted into the main F-Droid repository), it can leave you with installed apps which no longer receive updates.
|
||||
|
||||
That said, the [F-droid](https://f-droid.org/en/packages/) and [IzzyOnDroid](https://apt.izzysoft.de/fdroid/) repositories are home to countless apps, so they can be a useful tool to search for and discover open-source apps that you can then download through Play Store, Aurora Store, or by getting the APK directly from the developer. It is important to keep in mind that some apps in these repositories have not been updated in years and may rely on unsupported libraries, among other things, posing a potential security risk. You should use your best judgement when looking for new apps via this method.
|
||||
That said, the [F-Droid](https://f-droid.org/en/packages/) and [IzzyOnDroid](https://apt.izzysoft.de/fdroid/) repositories are home to countless apps, so they can be a useful tool to search for and discover open-source apps that you can then download through Play Store, Aurora Store, or by getting the APK directly from the developer. It is important to keep in mind that some apps in these repositories have not been updated in years and may rely on unsupported libraries, among other things, posing a potential security risk. You should use your best judgement when looking for new apps via this method.
|
||||
|
||||
!!! note
|
||||
|
||||
In some rare cases, the developer of an app will only distribute it through F-droid ([Gadgetbridge](https://gadgetbridge.org/) is one example of this). If you really need an app like that, we recommend using [Neo Store](https://github.com/NeoApplications/Neo-Store/) instead of the official F-droid app to obtain it.
|
||||
In some rare cases, the developer of an app will only distribute it through F-Droid ([Gadgetbridge](https://gadgetbridge.org/) is one example of this). If you really need an app like that, we recommend using [Neo Store](https://github.com/NeoApplications/Neo-Store/) instead of the official F-Droid app to obtain it.
|
||||
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
### Operating Systems
|
||||
|
||||
- Must be open-source software.
|
||||
- Must support bootloader locking with custom AVB key support.
|
||||
- Must receive major Android updates within 0-1 months of release.
|
||||
- Must receive Android feature updates (minor version) within 0-14 days of release.
|
||||
- Must receive regular security patches within 0-5 days of release.
|
||||
- Must **not** be "rooted" out of the box.
|
||||
- Must **not** enable Google Play Services by default.
|
||||
- Must **not** require system modification to support Google Play Services.
|
||||
|
||||
### Devices
|
||||
|
||||
- Must support at least one of our recommended custom operating systems.
|
||||
- Must be currently sold new in stores.
|
||||
- Must receive a minimum of 5 years of security updates.
|
||||
- Must have dedicated secure element hardware.
|
||||
|
||||
### Applications
|
||||
|
||||
- Applications on this page must not be applicable to any other software category on the site.
|
||||
- General applications should extend or replace core system functionality.
|
||||
- Applications should receive regular updates and maintenance.
|
@ -1,70 +0,0 @@
|
||||
---
|
||||
title: "GrapheneOS or CalyxOS?"
|
||||
icon: 'material/cellphone-cog'
|
||||
---
|
||||
|
||||
GrapheneOS and CalyxOS are often compared as similar options for people looking for an alternative Android OS for their Pixel devices. Below are some of the reasons why we recommend GrapheneOS over CalyxOS.
|
||||
|
||||
- [General Android Overview :material-arrow-right-drop-circle:](overview.md)
|
||||
- [Android Recommendations :material-arrow-right-drop-circle:](../android.md)
|
||||
|
||||
## Update Frequency
|
||||
|
||||
CalyxOS has a track record of being slower to apply security and feature updates to its OS and core applications than other custom Android operating systems. Timely security updates are one of the most important factors to consider when determining whether an OS is secure enough for regular use, which is a requirement for privacy.
|
||||
|
||||
In contrast to that, GrapheneOS manages to stay close to upstream and in some cases even [deliver updates before the stock OS does](https://grapheneos.org/features#more-complete-patching).
|
||||
|
||||
As an example, [GrapheneOS's first Android 12 release](https://grapheneos.org/releases#2021102020) was in October 2021, whereas [CalyxOS moved to Android 12](https://calyxos.org/news/2022/01/19/android-12-changelog/) in January 2022.
|
||||
|
||||
## Sandboxed Google Play vs Privileged microG
|
||||
|
||||
When Google Play Services are used on GrapheneOS, they are confined using the highly restrictive, default [`untrusted_app`](https://source.android.com/security/selinux/concepts) [SELinux](https://en.wikipedia.org/wiki/Security-Enhanced_Linux) domain. As a result, you have full control as to what these apps can access via permissions, just like any other app you install. Additionally, you can selectively choose which profile(s) to install the Sandboxed Google Play in.
|
||||
|
||||
microG is a partially open-source re-implementation of Google Play Services.[^1] On CalyxOS, it runs in the highly privileged [`system_app`](https://source.android.com/security/selinux/concepts) SELinux domain like regular Google Play Services, and it uses [signature spoofing](https://github.com/microg/GmsCore/wiki/Signature-Spoofing) to masquerade as Google Play Services. This is less secure than Sandboxed Google Play's approach, which does not need access to sensitive system APIs.
|
||||
|
||||
When using Sandboxed Google Play, you have the option to reroute location requests to the Play Services API back to the OS location API, which uses satellite based location services. With microG, you have the option to choose between different backend location providers, including *shifting trust* to another location backend, like Mozilla; using [DejaVu](https://github.com/n76/DejaVu), a location backend that locally collects and saves RF-based location data to an offline database which can be used when GPS is not available; or to simply not use a network location backend at all.
|
||||
|
||||
Network location providers like Play Services or Mozilla rely the on the MAC addresses of surrounding WiFi access points and Bluetooth devices being submitted for location approximation. Choosing a network location like Mozilla to use with microG provides little to no privacy benefit over Google because you are still submitting the same data and trusting them to not profile you.
|
||||
|
||||
Local RF location backends like DejaVu require that the phone has a working GPS first for the local RF data collected to be useful. This makes them less effective as location providers, as the job of a location provider is to assist location approximation when satellite based services are not working.
|
||||
|
||||
If your [threat model](../basics/threat-modeling.md) requires protecting your location or the MAC addresses of nearby devices, rerouting location requests to the OS location API is probably the best option. The benefit brought by microG's custom location backend is minimal at best when compared to Sandboxed Google Play.
|
||||
|
||||
In terms of application compatibility, ==Sandboxed Google Play on GrapheneOS is always going to be more compatible== as it is the same code as what is released by Google. microG is a reimplementation of these services. As a result, it only supports the various parts that have been reimplemented, meaning some things such as [Google Play Games](https://play.google.com/googleplaygames) and [In-app Billing API](https://android-doc.github.io/google/play/billing/api.html) are not yet supported.
|
||||
|
||||
Larger apps, especially games, require [Play Asset Delivery](https://android-developers.googleblog.com/2020/06/introducing-google-play-asset-delivery.html) to be installed, which is currently not implemented in microG. Authentication using [FIDO](../basics/multi-factor-authentication.md#fido-fast-identity-online) with online services on Android also relies on Play Services, and does not currently work with microG.
|
||||
|
||||
[^1]: It should be noted that microG still uses proprietary Google binaries for some of its components such as DroidGuard. Push notifications, if enabled, still go through Google's servers just like with Play Services. Outside of default microG setups like on CalyxOS, it is possible to run microG in the unprivileged [`untrusted app`](https://source.android.com/security/selinux/concepts) SELinux domain and without the signature spoofing patch. However, microG's functionality and compatibility, which is already not nearly as broad as Sandboxed Google Play, will greatly diminish.
|
||||
|
||||
## Privileged eSIM Activation Application
|
||||
|
||||
Currently, eSIM activation is tied to a privileged proprietary application by Google. The app has the `READ_PRIVILEGED_PHONE_STATE` permission, giving Google access to your hardware identifiers such as the IMEI.
|
||||
|
||||
On GrapheneOS, the app comes disabled and you can *optionally* enable it after installing Sandboxed Google Play.
|
||||
|
||||
On CalyxOS, the app comes installed by default (regardless of whether you choose to have microG or not) and you cannot opt-out. This means that Google still has access to your hardware identifiers regardless of whether or not you need eSIM activation and they can be accessed persistently.
|
||||
|
||||
## Privileged App Extensions
|
||||
|
||||
Android 12 comes with special support for seamless app updates with [third-party app stores](https://android-developers.googleblog.com/2020/09/listening-to-developer-feedback-to.html). The popular Free and Open-Source Software (FOSS) repository [F-Droid](https://f-droid.org) doesn't implement this feature and requires a [privileged extension](https://f-droid.org/en/packages/org.fdroid.fdroid.privileged) to be included with the Android distribution in order to have unattended app updates.
|
||||
|
||||
CalyxOS includes the [privileged extension](https://f-droid.org/en/packages/org.fdroid.fdroid.privileged), which may lower device security.
|
||||
|
||||
On the other hand, GrapheneOS officially recommends [Sandboxed Google Play](https://grapheneos.org/usage#sandboxed-google-play) instead. Many FOSS Android apps are also in Google's Play Store but sometimes they are not (like [NewPipe](../frontends.md#newpipe-android)). In those cases, you can [keep up with updates using RSS](../android.md#manually-with-rss-notifications).
|
||||
|
||||
## Profiles
|
||||
|
||||
GrapheneOS significantly improves [user profiles](overview.md#user-profiles) in [multiple ways](https://grapheneos.org/features#improved-user-profiles), such as increasing the limit of how many profiles you can create (32 instead of the standard 4), allowing you to log out of user profiles, disabling app installation, and notification forwarding. All of these improvements make it so user profiles can be daily driven without sacrificing too much usability.
|
||||
|
||||
CalyxOS doesn't feature any improvements to user profiles over AOSP, and instead includes a device controller app so that the [work profile](overview.md#work-profile) can be used without needing to download a third party app such as [Shelter](../android.md#shelter). However, work profiles are not nearly as flexible (as you're limited to only one) and don't provide the same amount of isolation and security.
|
||||
|
||||
## Additional Hardening
|
||||
|
||||
GrapheneOS improves upon [AOSP](https://source.android.com/) security with:
|
||||
|
||||
- **Hardened WebView:** Vanadium WebView requires [64-bit](https://en.wikipedia.org/wiki/64-bit_computing) processes on the [WebView](https://developer.android.com/reference/android/webkit/WebView) process and disables legacy [32-bit](https://en.wikipedia.org/wiki/32-bit_computing) processes. It uses hardened compiler options such as [`-fwrapv`](https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html) and [`-fstack-protector-strong`](https://gcc.gnu.org/onlinedocs/gcc-4.9.3/gcc/Optimize-Options.html), which can help protect against [stack buffer overflows](https://en.wikipedia.org/wiki/Stack_buffer_overflow). [API](https://en.wikipedia.org/wiki/API)s such as the [battery status API](https://chromestatus.com/feature/4537134732017664) are disabled for privacy reasons. All system apps on GrapheneOS use the Vanadium WebView which means that apps which use WebView will also benefit from Vanadium's hardening. The [Vanadium patch set](https://github.com/GrapheneOS/Vanadium) is a lot more comprehensive than CalyxOS's [Chromium patch set](https://gitlab.com/CalyxOS/chromium-patches) which is derived from it.
|
||||
- **Hardened Kernel:** GrapheneOS kernel includes some hardening from the [linux-hardened](https://github.com/GrapheneOS/linux-hardened) project and the [Kernel Self Protection Project (KSPP)](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project). CalyxOS uses the [same kernel](https://calyxos.org/docs/development/build/kernel/) as regular Android with some minor modifications.
|
||||
- **Hardened Memory Allocator:** GrapheneOS uses the [hardened malloc](https://github.com/GrapheneOS/hardened_malloc) subproject as its memory allocator. This focuses on hardening against [memory heap corruption](https://en.wikipedia.org/wiki/Memory_corruption). CalyxOS uses the default AOSP [Scudo Malloc](https://source.android.com/devices/tech/debug/scudo), which is generally [less effective](https://twitter.com/danielmicay/status/1033671709197398016). Hardened Malloc has uncovered vulnerabilities in AOSP which have been [fixed](https://github.com/GrapheneOS/platform_system_core/commit/be11b59725aa6118b0e1f0712572e835c3d50746) by GrapheneOS such as [CVE-2021-0703](https://nvd.nist.gov/vuln/detail/CVE-2021-0703).
|
||||
- **Secure Exec Spawning:** GrapheneOS [spawns](https://en.wikipedia.org/wiki/Spawn_(computing)) fresh processes as opposed to using the [Zygote model](https://ayusch.com/android-internals-the-android-os-boot-process) used by AOSP and CalyxOS. The Zygote model weakens [Address Space Layout Randomization](https://en.wikipedia.org/wiki/Address_space_layout_randomization) (ASLR) and is considered [less secure](https://wenke.gtisc.gatech.edu/papers/morula.pdf). Creating [fresh processes](https://grapheneos.org/usage#exec-spawning) is safer but will have some performance penalty when launching a new application. These penalties are not really noticeable unless you have an [old device](https://support.google.com/nexus/answer/4457705) with slow storage such as the Pixel 3a/3a XL as it has [eMMC](https://en.wikipedia.org/wiki/MultiMediaCard#eMMC).
|
||||
|
||||
**Please note that these are just a few examples and are not an extensive list of GrapheneOS's hardening**. For a more complete list, please read GrapheneOS' [official documentation](https://grapheneos.org/features).
|
@ -1,12 +0,0 @@
|
||||
---
|
||||
title: Curated Articles from Around the Web
|
||||
hide:
|
||||
- navigation
|
||||
- feedback
|
||||
---
|
||||
<script>
|
||||
window.location.href = "https://discuss.privacyguides.org/c/blog/10";
|
||||
</script>
|
||||
{% for article in articles %}
|
||||
- **{{ article.date }}**: [{{ article.name }}]({{ article.url }}) from *{{ article.publisher }}*
|
||||
{% endfor %}
|
@ -1,75 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="48" height="48" viewBox="0 0 48.000001 48.000001" id="svg4230" version="1.1" inkscape:version="0.91 r13725" sodipodi:docname="fdroid-logo.svg">
|
||||
<defs id="defs4232">
|
||||
<linearGradient inkscape:collect="always" id="linearGradient5212">
|
||||
<stop style="stop-color:#ffffff;stop-opacity:0.09803922" offset="0" id="stop5214"/>
|
||||
<stop style="stop-color:#ffffff;stop-opacity:0" offset="1" id="stop5216"/>
|
||||
</linearGradient>
|
||||
<radialGradient inkscape:collect="always" xlink:href="#linearGradient5212" id="radialGradient5220" cx="-98.23381" cy="3.4695871" fx="-98.23381" fy="3.4695871" r="22.671185" gradientTransform="matrix(0,1.9747624,-2.117225,3.9784049e-8,8.677247,1199.588)" gradientUnits="userSpaceOnUse"/>
|
||||
<filter inkscape:collect="always" style="color-interpolation-filters:sRGB" id="filter4175" x="-0.023846937" width="1.0476939" y="-0.02415504" height="1.0483101">
|
||||
<feGaussianBlur inkscape:collect="always" stdDeviation="0.45053152" id="feGaussianBlur4177"/>
|
||||
</filter>
|
||||
</defs>
|
||||
<sodipodi:namedview id="base" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="11.313708" inkscape:cx="6.4184057" inkscape:cy="25.737489" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="true" units="px" inkscape:window-width="1920" inkscape:window-height="1009" inkscape:window-x="0" inkscape:window-y="34" inkscape:window-maximized="1" gridtolerance="10000"/>
|
||||
<metadata id="metadata4235">
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
|
||||
<dc:title/>
|
||||
<cc:license rdf:resource="http://creativecommons.org/licenses/by-sa/3.0/"/>
|
||||
</cc:Work>
|
||||
<cc:License rdf:about="http://creativecommons.org/licenses/by-sa/3.0/">
|
||||
<cc:permits rdf:resource="http://creativecommons.org/ns#Reproduction"/>
|
||||
<cc:permits rdf:resource="http://creativecommons.org/ns#Distribution"/>
|
||||
<cc:requires rdf:resource="http://creativecommons.org/ns#Notice"/>
|
||||
<cc:requires rdf:resource="http://creativecommons.org/ns#Attribution"/>
|
||||
<cc:permits rdf:resource="http://creativecommons.org/ns#DerivativeWorks"/>
|
||||
<cc:requires rdf:resource="http://creativecommons.org/ns#ShareAlike"/>
|
||||
</cc:License>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" transform="translate(0,-1004.3622)">
|
||||
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#263238;fill-opacity:0.4;fill-rule:evenodd;stroke:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter4175);color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 2.613462,1006.3488 a 1.250125,1.250125 0 0 0 -1.01172,2.0293 l 3.60351,4.6641 c -0.12699,0.3331 -0.20312,0.6915 -0.20312,1.0703 l 0,4 0,2.8652 0,0.1348 c 0,1.662 1.338,3 3,3 l 32,0 c 1.662,0 3,-1.338 3,-3 l 0,-4 0,-2.8652 0,-0.1348 c 0,-0.3803 -0.0771,-0.74 -0.20508,-1.0742 l 3.60156,-4.6602 a 1.250125,1.250125 0 0 0 -1.04882,-2.0273 1.250125,1.250125 0 0 0 -0.92969,0.498 l -3.43164,4.4414 c -0.31022,-0.1079 -0.63841,-0.1777 -0.98633,-0.1777 l -32,0 c -0.34857,0 -0.67757,0.069 -0.98828,0.1777 l -3.4336,-4.4414 a 1.250125,1.250125 0 0 0 -0.96679,-0.5 z m 5.38867,18.7637 c -0.20775,0 -0.40983,0.021 -0.60547,0.061 -1.36951,0.2761 -2.39453,1.4698 -2.39453,2.9101 l 0,0.029 0,19.7793 0,0.029 0,0.1914 c 0,1.662 1.338,3 3,3 l 32,0 c 1.662,0 3,-1.338 3,-3 l 0,-20 0,-0.029 c 0,-1.4403 -1.02502,-2.634 -2.39453,-2.9101 -0.19565,-0.039 -0.39772,-0.061 -0.60547,-0.061 l -32,0 z" id="path4192" inkscape:connector-curvature="0"/>
|
||||
<g id="g5012">
|
||||
<g id="g4179" transform="matrix(-1,0,0,1,47.999779,0)">
|
||||
<path style="fill:#8ab000;fill-opacity:1;fill-rule:evenodd;stroke:#769616;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 2.5889342,1006.8622 4.25,5.5" id="path4181" inkscape:connector-curvature="0" sodipodi:nodetypes="cc"/>
|
||||
<path sodipodi:nodetypes="cccccc" inkscape:connector-curvature="0" id="path4183" d="m 2.6113281,1005.6094 c -0.4534623,0.012 -0.7616975,0.189 -0.9807462,0.4486 2.0269314,2.4089 2.368401,2.7916 5.1354735,6.2214 1.0195329,1.319 2.0816026,0.6373 1.0620696,-0.6817 l -4.25,-5.5 c -0.2289894,-0.3056 -0.5850813,-0.478 -0.9667969,-0.4883 z" style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:0.29803923;fill-rule:evenodd;stroke:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"/>
|
||||
<path sodipodi:nodetypes="ccccc" inkscape:connector-curvature="0" id="path4185" d="m 1.6220992,1006.0705 c -0.1238933,0.1479 -0.561176,0.8046 -0.02249,1.5562 l 4.25,5.5 c 1.0195329,1.319 1.1498748,-0.6123 1.1498748,-0.6123 0,0 -3.7344514,-4.51 -5.3773848,-6.4439 z" style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#263238;fill-opacity:0.2;fill-rule:evenodd;stroke:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"/>
|
||||
<path sodipodi:nodetypes="cscccc" inkscape:connector-curvature="0" id="path4187" d="m 2.3378905,1005.8443 c -0.438175,0 -0.959862,0.1416 -0.8242183,0.7986 0.103561,0.5016 4.6608262,6.0744 4.6608262,6.0744 1.0195329,1.319 2.4934721,0.6763 1.4739391,-0.6425 l -4.234375,-5.4727 c -0.2602394,-0.29 -0.6085188,-0.7436 -1.076172,-0.7578 z" style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#8ab000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"/>
|
||||
</g>
|
||||
<g id="g4955">
|
||||
<path sodipodi:nodetypes="cc" inkscape:connector-curvature="0" id="path4945" d="m 2.5889342,1006.8622 4.25,5.5" style="fill:#8ab000;fill-opacity:1;fill-rule:evenodd;stroke:#769616;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"/>
|
||||
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#ffffff;fill-opacity:0.29803923;fill-rule:evenodd;stroke:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 2.6113281,1005.6094 c -0.4534623,0.012 -0.7616975,0.189 -0.9807462,0.4486 2.0269314,2.4089 2.368401,2.7916 5.1354735,6.2214 1.0195329,1.319 2.0816026,0.6373 1.0620696,-0.6817 l -4.25,-5.5 c -0.2289894,-0.3056 -0.5850813,-0.478 -0.9667969,-0.4883 z" id="path4947" inkscape:connector-curvature="0" sodipodi:nodetypes="cccccc"/>
|
||||
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#263238;fill-opacity:0.2;fill-rule:evenodd;stroke:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 1.6220992,1006.0705 c -0.1238933,0.1479 -0.561176,0.8046 -0.02249,1.5562 l 4.25,5.5 c 1.0195329,1.319 1.1498748,-0.6123 1.1498748,-0.6123 0,0 -3.7344514,-4.51 -5.3773848,-6.4439 z" id="path4951" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccc"/>
|
||||
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#8ab000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 2.3378905,1005.8443 c -0.438175,0 -0.959862,0.1416 -0.8242183,0.7986 0.103561,0.5016 4.6608262,6.0744 4.6608262,6.0744 1.0195329,1.319 2.4934721,0.6763 1.4739391,-0.6425 l -4.234375,-5.4727 c -0.2602394,-0.29 -0.6085188,-0.7436 -1.076172,-0.7578 z" id="path4925" inkscape:connector-curvature="0" sodipodi:nodetypes="cscccc"/>
|
||||
</g>
|
||||
<g transform="translate(42,0)" id="g4967">
|
||||
<rect style="opacity:1;fill:#aeea00;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="rect4144" width="38" height="13" x="-37" y="1010.3622" rx="3" ry="3"/>
|
||||
<rect ry="3" rx="3" y="1013.3622" x="-37" height="10" width="38" id="rect4961" style="opacity:1;fill:#263238;fill-opacity:0.2;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"/>
|
||||
<rect ry="3" rx="3" y="1010.3622" x="-37" height="10" width="38" id="rect4963" style="opacity:1;fill:#ffffff;fill-opacity:0.29803923;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"/>
|
||||
<rect ry="2.5384617" rx="3" y="1011.3622" x="-37" height="11" width="38" id="rect4965" style="opacity:1;fill:#aeea00;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"/>
|
||||
</g>
|
||||
<g id="g4979">
|
||||
<rect style="opacity:1;fill:#1976d2;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="rect4146" width="38" height="26" x="5" y="1024.3622" rx="3" ry="3"/>
|
||||
<rect ry="3" rx="3" y="1037.3622" x="5" height="13" width="38" id="rect4973" style="opacity:1;fill:#263238;fill-opacity:0.2;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"/>
|
||||
<rect ry="3" rx="3" y="1024.3622" x="5" height="13" width="38" id="rect4975" style="opacity:1;fill:#ffffff;fill-opacity:0.2;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"/>
|
||||
<rect ry="2.7692308" rx="3" y="1025.3622" x="5" height="24" width="38" id="rect4977" style="opacity:1;fill:#1976d2;fill-opacity:1;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:3;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"/>
|
||||
</g>
|
||||
<g transform="translate(0,1013.3622)" id="g4211">
|
||||
<path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#0d47a1;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 24,17.75 c -2.880662,0 -5.319789,1.984685 -6.033203,4.650391 l 3.212891,0 C 21.734004,21.415044 22.774798,20.75 24,20.75 c 1.812692,0 3.25,1.437308 3.25,3.25 0,1.812693 -1.437308,3.25 -3.25,3.25 -1.307381,0 -2.411251,-0.75269 -2.929688,-1.849609 l -3.154296,0 C 18.558263,28.166146 21.04791,30.25 24,30.25 c 3.434013,0 6.25,-2.815987 6.25,-6.25 0,-3.434012 -2.815987,-6.25 -6.25,-6.25 z" id="path4161" inkscape:connector-curvature="0"/>
|
||||
<circle style="opacity:1;fill:none;fill-opacity:0.40392157;stroke:#0d47a1;stroke-width:1.89999998;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="path4209" cx="24" cy="24" r="9.5500002"/>
|
||||
</g>
|
||||
<g id="g4989" transform="translate(0,0.50001738)">
|
||||
<ellipse cy="1016.4872" cx="14.375" id="circle4985" style="opacity:1;fill:#263238;fill-opacity:0.2;stroke:none;stroke-width:1.89999998;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.69721117" rx="3.375" ry="3.875"/>
|
||||
<circle style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.89999998;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.69721117" id="path4859" cx="14.375" cy="1016.9872" r="3.375"/>
|
||||
</g>
|
||||
<g transform="translate(19.5,0.50001738)" id="g4171">
|
||||
<ellipse ry="3.875" rx="3.375" style="opacity:1;fill:#263238;fill-opacity:0.2;stroke:none;stroke-width:1.89999998;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.69721117" id="ellipse4175" cx="14.375" cy="1016.4872"/>
|
||||
<circle r="3.375" cy="1016.9872" cx="14.375" id="circle4177" style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.89999998;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.69721117"/>
|
||||
</g>
|
||||
</g>
|
||||
<path inkscape:connector-curvature="0" id="path5128" d="m 2.613462,1005.5987 a 1.250125,1.250125 0 0 0 -1.01172,2.0293 l 3.60351,4.6641 c -0.12699,0.3331 -0.20312,0.6915 -0.20312,1.0703 l 0,4 0,2.8652 0,0.1348 c 0,1.662 1.338,3 3,3 l 32,0 c 1.662,0 3,-1.338 3,-3 l 0,-4 0,-2.8652 0,-0.1348 c 0,-0.3803 -0.0771,-0.74 -0.20508,-1.0742 l 3.60156,-4.6602 a 1.250125,1.250125 0 0 0 -1.04882,-2.0273 1.250125,1.250125 0 0 0 -0.92969,0.498 l -3.43164,4.4414 c -0.31022,-0.1079 -0.63841,-0.1777 -0.98633,-0.1777 l -32,0 c -0.34857,0 -0.67757,0.069 -0.98828,0.1777 l -3.4336,-4.4414 a 1.250125,1.250125 0 0 0 -0.96679,-0.5 z m 5.38867,18.7637 c -0.20775,0 -0.40983,0.021 -0.60547,0.061 -1.36951,0.2761 -2.39453,1.4698 -2.39453,2.9101 l 0,0.029 0,19.7793 0,0.029 0,0.1914 c 0,1.662 1.338,3 3,3 l 32,0 c 1.662,0 3,-1.338 3,-3 l 0,-20 0,-0.029 c 0,-1.4403 -1.02502,-2.634 -2.39453,-2.9101 -0.19565,-0.039 -0.39772,-0.061 -0.60547,-0.061 l -32,0 z" style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:url(#radialGradient5220);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 21 KiB |
@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="128" height="128" version="1.1" viewBox="0 0 33.867 33.867" xmlns="http://www.w3.org/2000/svg"><defs><filter id="filter4510-5" color-interpolation-filters="sRGB"><feFlood flood-color="rgb(0,0,0)" flood-opacity=".49804" result="flood"/><feComposite in="flood" in2="SourceGraphic" operator="in" result="composite1"/><feGaussianBlur in="composite1" result="blur" stdDeviation="4"/><feOffset dx="0" dy="4" result="offset"/><feComposite in="SourceGraphic" in2="offset" result="composite2"/></filter><filter id="filter4498-9" color-interpolation-filters="sRGB"><feFlood flood-color="rgb(0,0,0)" flood-opacity=".49804" result="flood"/><feComposite in="flood" in2="SourceGraphic" operator="in" result="composite1"/><feGaussianBlur in="composite1" result="blur" stdDeviation="4"/><feOffset dx="0" dy="4" result="offset"/><feComposite in="SourceGraphic" in2="offset" result="composite2"/></filter></defs><g transform="translate(0 -263.13)"><g transform="matrix(.072143 0 0 .072143 -44.234 303.31)"><path d="m616.42-553.5h460.75v460.75h-460.75z" fill="none" stroke-width="19.198"/><path d="m616.42-553.5h460.75v460.75h-460.75z" fill="none" stroke-width="19.198"/><path transform="matrix(2.4096 0 0 2.3916 493.87 -784.51)" d="m210.91 166.8v-37.52h-37.52l-26.48-26.48-26.48 26.48h-37.52v37.52l-26.48 26.48 26.48 26.48v37.52h37.52l26.48 26.48 26.48-26.48h37.52v-37.52l26.48-26.48z" fill="#ffc107" filter="url(#filter4498-9)" stroke-width="8"/><g transform="matrix(3.4337 0 0 3.196 364.57 -621.88)"><path d="m73.384 21.914h134.74v143.68h-134.74z" fill="none" stroke-width="5.7972"/><ellipse cx="140.78" cy="93.719" rx="11.3" ry="12.05" fill="#ffd740" stroke="#ffd740" stroke-linecap="round" stroke-linejoin="round" stroke-width="44.182"/><path transform="matrix(.71931 0 0 .73752 35.063 302.34)" d="m146.91-329.25v-17.45l-23.295 23.266 23.295 23.266v-17.45c19.276 0 34.942 15.647 34.942 34.9 0 5.8748-1.4559 11.459-4.0766 16.287l8.5026 8.4923c4.5425-7.1544 7.2214-15.647 7.2214-24.779 0-25.709-20.849-46.533-46.59-46.533zm0 81.433c-19.277 0-34.942-15.647-34.942-34.9 0-5.8748 1.4559-11.459 4.0766-16.287l-8.5026-8.4923c-4.5425 7.1544-7.2214 15.647-7.2214 24.779 0 25.709 20.849 46.533 46.59 46.533v17.45l23.295-23.266-23.295-23.266z" fill="#448aff" filter="url(#filter4510-5)" stroke-width="5.8202"/><path d="m73.384 21.914h134.74v143.68h-134.74z" fill="none" stroke-width="5.7972"/></g></g></g></svg>
|
Before Width: | Height: | Size: 2.4 KiB |
@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="128" height="128" version="1.1" viewBox="0 0 33.867 33.867" xmlns="http://www.w3.org/2000/svg"><g transform="translate(0 -263.13)"><g transform="matrix(.25 0 0 .25 -75.421 228.27)"><circle cx="369.42" cy="207.2" r="67.733" fill="#521737" stroke-width=".71866"/><path transform="matrix(.26458 0 0 .26458 301.69 139.47)" d="m265.99 65.18v0.0078c1.8901 2.438 3.0273 5.5806 3.0273 9.0215v195.24c19.426 3.3884 50.314 16.138 55.404 62.422l0.26367 2.377 1.9512 17.611h-2e-3l10.252 92.566h-161.81l64.785 67.07c5.4118 0.44356 10.702 0.40924 16.131 0.50781 6.0422 3e-4 12.082-0.21339 18.109-0.64062 8.5134-0.60344 16.992-1.6336 25.402-3.084 8.4107-1.4512 16.743-3.3219 24.967-5.6055 8.2243-2.2825 16.33-4.9742 24.285-8.0664 7.9553-3.0931 15.751-6.5833 23.357-10.455 7.6063-3.8716 15.013-8.1208 22.195-12.732 7.1823-4.6114 14.13-9.5793 20.816-14.885 6.6858-5.3055 13.102-10.942 19.225-16.889 6.1225-5.9464 11.945-12.195 17.443-18.723 5.4986-6.528 10.667-13.327 15.486-20.371 4.8192-7.0443 9.2831-14.324 13.375-21.814 4.0921-7.4904 7.8071-15.181 11.131-23.043 3.3233-7.8616 6.2497-15.885 8.7715-24.039 2.5223-8.154 4.6364-16.428 6.332-24.793 0.0435-0.28271 0.12174-0.53757 0.16407-0.82032zm-119.28 111.21c-3e-3 20.217 16.387 36.607 36.604 36.605zm36.604 36.605c-20.216-1e-3 -36.605 16.387-36.604 36.604 9.4e-4 -4.2e-4 50.205 51.017 50.205 51.017 12.099-18.158 28.866-28.067 41.949-30.349zm-36.604 36.604c1e-3 -20.216-16.387-36.605-36.604-36.604z" fill="#351228" stroke-width=".98462"/><g transform="matrix(.98462 0 0 .98462 4.6413 4.2297)" fill="#fff"><path d="m370.47 153.51c-1.9408 0-3.5026 1.6846-3.5026 3.777v54.445c0 2.0925 1.5618 3.777 3.5026 3.777s3.5026-1.6846 3.5026-3.777v-54.445c0-2.0924-1.5618-3.777-3.5026-3.777z" stroke-width=".62166"/><path d="m341.11 184.75a9.8353 9.8353 0 0 1-9.836 9.836 9.8353 9.8353 0 0 1 9.836 9.836 9.8353 9.8353 0 0 1 9.836-9.836 9.8353 9.8353 0 0 1-9.836-9.836z" fill="#fff" stroke-width=".63312"/><path d="m401.71 203.66a8.3455 8.3455 0 0 1-8.3461 8.3461 8.3455 8.3455 0 0 1 8.3461 8.3461 8.3455 8.3455 0 0 1 8.3461-8.3461 8.3455 8.3455 0 0 1-8.3461-8.3461z" fill="#fff" stroke-width=".53722"/><path d="m370.47 153.51v62c-1.9408 0-3.5026-1.6846-3.5026-3.777v-54.445c0-2.0924 1.5618-3.777 3.5026-3.777z" stroke-width=".62166"/></g><path d="m369.42 155.38v61.046c1.911 0 3.4488-1.6587 3.4488-3.7189v-53.608c0-2.0602-1.5378-3.7189-3.4488-3.7189z" fill="#dfdfe0" stroke-width=".61209"/><path d="m369.42 210.44c-3.3202 0-16.374 1.0601-18.108 16.828l-3.2974 29.78h42.811l-3.2974-29.78c-1.7341-15.768-14.788-16.828-18.108-16.828z" fill="#f8d057" stroke-width=".56531"/><path d="m351.31 227.27c1.7341-15.768 14.788-16.828 18.108-16.828v46.608h-21.406z" fill="#f8d057" stroke-width=".56531"/><path d="m351.24 227.9 18.178-3e-5 1e-5 4.6596h-18.694z" fill="#e97043" stroke-width=".25734"/><path d="m387.52 227.27c-1.7341-15.768-14.788-16.828-18.108-16.828v46.608h21.406z" fill="#f2b55a" stroke-width=".56531"/><path d="m387.59 227.9h-18.178v4.6596h18.694z" fill="#a15439" stroke-width=".25734"/></g></g></svg>
|
Before Width: | Height: | Size: 3.0 KiB |
Before Width: | Height: | Size: 3.9 KiB |
@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="64mm" height="64mm" version="1.1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg"><path id="cloud-upload" d="m64 34.286a17.033 17.033 0 0 1-4.4062 11.429 14.857 14.857 0 0 1-10.558 4.5714h-2.1786v-6.8571h2.1786a8.0044 8.0044 0 0 0 5.4688-2.3103 10.184 10.184 0 0 0 2.6384-6.8326 11.442 11.442 0 0 0-11.429-11.429c-0.37683 0-2.3126 0.2418-3.4903 0.3935a1.136 1.136 0 0 1-1.2211-0.76359l-0.46538-1.3576a14.103 14.103 0 0 0-11.716-9.6317 13.666 13.666 0 0 0-14.73 16.779l0.4881 2.0877a1.1429 1.1429 0 0 1-0.78226 1.3542l-2.054 0.62062a6.7941 6.7941 0 0 0-4.8861 6.5178 4.6044 4.6044 0 0 0 0.94642 2.808 5.5388 5.5388 0 0 0 4.0893 1.7634h5.25v6.8571h-5.25a12.236 12.236 0 0 1-9.6808-4.6518 11.506 11.506 0 0 1-2.212-6.7768 13.573 13.573 0 0 1 6.9442-11.884c-0.057884-0.6138-0.087074-1.2254-0.087074-1.8304a20.563 20.563 0 0 1 38.987-9.1428 18.307 18.307 0 0 1 18.156 18.286zm-31.077-2.1632a1.1429 1.1429 0 0 0-1.8465 0l-8.5917 11.775a1.1429 1.1429 0 0 0 0.92327 1.8165h5.1631v12.571a1.1429 1.1429 0 0 0 1.1428 1.1429h4.5714a1.1429 1.1429 0 0 0 1.1429-1.1429v-12.571h5.1631a1.1429 1.1429 0 0 0 0.92326-1.8165z" fill="#45a1ff" stroke-width="2.2857"/></svg>
|
Before Width: | Height: | Size: 1.2 KiB |
@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="666.67" height="666.67" version="1" viewBox="0 0 500 500" xmlns="http://www.w3.org/2000/svg"><path d="M73.6 33.6L71 36.3v427.4l2.6 2.7 2.7 2.6h87.4l2.7-2.6 2.6-2.7V339.9c0-102.6.2-123.9 1.3-123.9.8 0 41.1 56.1 89.7 124.7 48.5 68.7 89.2 125.6 90.4 126.5 1.9 1.6 5.5 1.8 37.7 1.8h35.6l2.7-2.6 2.6-2.7V36.3l-2.6-2.7-2.7-2.6h-87.4l-2.7 2.6-2.6 2.7v123.8c0 102.6-.2 123.9-1.3 123.9-.8 0-41.1-56.1-89.7-124.8-48.5-68.6-89.2-125.5-90.4-126.4-1.9-1.6-5.5-1.8-37.7-1.8H76.3l-2.7 2.6zm158.9 147.1c51.2 72.3 94.4 133.1 96.1 134.9 2.9 3.1 3.6 3.4 9.1 3.4 5.2 0 6.4-.4 8.7-2.6l2.6-2.7V49h62v402l-25.2-.1h-25.3l-93-131.6c-51.1-72.3-94.4-133.1-96.1-134.9-2.9-3.1-3.6-3.4-9.1-3.4-5.2 0-6.4.4-8.7 2.6l-2.6 2.7V451H89V49l25.3.1h25.2l93 131.6z" fill="#ff6c60" stroke="#ff6c60" stroke-width=".99975"/></svg>
|
Before Width: | Height: | Size: 839 B |
Before Width: | Height: | Size: 135 KiB |
Before Width: | Height: | Size: 590 KiB |
Before Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 114 KiB |
Before Width: | Height: | Size: 93 KiB |
@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="127.99" height="128" version="1.1" viewBox="0 0 33.864 33.867" xmlns="http://www.w3.org/2000/svg"><g transform="translate(-48.383 -89.279)"><g transform="matrix(.083544 0 0 .083551 36.799 77.694)"><path d="m220.51 504.06 120.82 39.937 1.2e-4 4e-5 -143.92-5e-5zm323.49-162.73c0 111.93-90.737 202.67-202.67 202.67-111.93-1e-5 -202.67-90.737-202.67-202.67s90.737-202.67 202.67-202.67c111.93 0 202.67 90.737 202.67 202.67z" fill="#7663f0"/><g transform="translate(-5.1601e-6,-4.0973)"><circle cx="341" cy="433.47" r="23.536" fill="#f9f8fe" stroke-width=".64448"/><circle cx="439.19" cy="375.64" r="23.536" fill="#aaa4ce" stroke-width=".64448"/><circle cx="242.81" cy="375.64" r="23.536" fill="#cba1fe" stroke-width=".64447"/><g stroke-width=".64448"><circle cx="439.19" cy="433.47" r="23.536" fill="#f9f8fe"/><circle cx="439.19" cy="317.82" r="23.536" fill="#aacdf4"/><circle cx="242.81" cy="260" r="23.536" fill="#4b0f9f"/></g><circle cx="242.81" cy="317.82" r="23.536" fill="#aaa4ce" stroke-width=".64447"/><g stroke-width=".64448"><circle cx="242.81" cy="433.47" r="23.536" fill="#f9f8fe"/><circle cx="341" cy="317.82" r="23.536" fill="#4b0f9f"/><circle cx="341" cy="375.64" r="23.536" fill="#aacdf4"/></g><circle cx="439.19" cy="260" r="23.536" fill="#4b0f9f" stroke-width=".64447"/></g></g></g></svg>
|
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 130 KiB After Width: | Height: | Size: 130 KiB |
Before Width: | Height: | Size: 115 KiB After Width: | Height: | Size: 115 KiB |
Before Width: | Height: | Size: 78 KiB |
@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg id="svg" version="1.1" viewBox="0 0 400 400" xmlns="http://www.w3.org/2000/svg"><g id="svgg" fill-rule="evenodd"><path d="m192.97 62.129c-26.656 3.317-47.983 19.882-57.565 44.71-3.853 9.982-4.545 15.747-4.545 37.851v17.306l-6.738 0.232c-14.347 0.494-22.587 5.938-26.729 17.659l-1.103 3.121v29.492c0 32.127 0.031 32.689 2.391 43.3 7.874 35.404 34.139 64.851 68.117 76.367 64.962 22.019 132.51-23.702 137.13-92.819 0.687-10.284 0.297-55.379-0.502-58.008-3.668-12.066-12.845-18.84-25.525-18.84-2.61 0-5.562-0.112-6.558-0.248l-1.813-0.249v-16.507c0-21.046-0.486-25.958-3.516-35.535-9.734-30.76-41.753-51.726-73.046-47.832m15.537 24.046c16.237 2.877 30.363 15.383 35.396 31.336 2.023 6.411 2.192 8.514 2.192 27.267v17.331h-45.899-45.898v-17.331c0-13.608 0.125-18.05 0.582-20.673 4.48-25.69 28.165-42.442 53.627-37.93m-2.898 121.87c16.242 4.187 21.698 24.248 9.976 36.683-4.224 4.481-4.355 4.975-3.637 13.767 0.717 8.774 0.689 10.256-0.241 12.743-3.982 10.643-19.039 10.643-23.021 0-0.93-2.485-0.959-3.97-0.244-12.722 0.716-8.755 0.61-9.191-3.224-13.329-15.541-16.775-1.291-42.732 20.391-37.142" fill="#f4f5f5"/><path d="m66.797 0.623c-34.231 4.974-61.413 32.288-66.186 66.507-0.93 6.668-0.93 259.07 0 265.74 4.796 34.385 32.134 61.723 66.519 66.519 6.668 0.93 259.07 0.93 265.74 0 34.385-4.796 61.723-32.134 66.519-66.519 0.93-6.668 0.93-259.07 0-265.74-4.795-34.376-32.143-61.724-66.519-66.519-6.215-0.867-260.1-0.855-266.07 0.012m147.07 62.252c28.834 6.201 50.351 28.799 55.107 57.871 0.535 3.274 0.698 7.656 0.843 22.669l0.18 18.61 7.091 0.164c13.738 0.317 22.526 6.264 26.147 17.694 1.083 3.416 1.371 60.296 0.341 67.187-9.283 62.11-67.941 102.56-127.69 88.048-42.787-10.389-75.15-47.632-79.396-91.368-0.9-9.268-0.357-61.056 0.672-64.062 3.924-11.473 12.498-17.212 26.144-17.502l7.092-0.15 0.179-18.616c0.281-29.073 2.88-38.928 14.315-54.268 15.529-20.833 43.951-31.661 68.979-26.277m-20.508 23.266c-18.263 2.85-33.014 16.445-37.53 34.59-1.16 4.66-1.519 10.98-1.526 26.828l-6e-3 14.55h45.898 45.899l-6e-3 -14.55c-7e-3 -15.848-0.367-22.168-1.527-26.828-5.762-23.154-28.041-38.204-51.202-34.59m3.259 121.69c-17.389 3.099-23.811 23.765-11.46 36.877 4.079 4.331 4.177 4.691 3.58 13.041-0.882 12.331-0.586 14.057 3.034 17.681 4.868 4.873 11.978 4.873 16.847 0 3.62-3.624 3.916-5.35 3.034-17.681-0.598-8.35-0.499-8.71 3.58-13.041 14.6-15.5 1.959-40.543-18.615-36.877" fill="#1444b4"/><path d="m273.03 307.72-1.346 1.465 1.465-1.346c0.805-0.741 1.464-1.4 1.464-1.465 0-0.299-0.33-0.018-1.583 1.346" fill="#6884c7"/><path d="m150.95 82.129-1.147 1.269 1.269-1.147c1.184-1.069 1.449-1.392 1.148-1.392-0.068 0-0.639 0.572-1.27 1.27m-20.305 64.16c0 8.809 0.051 12.468 0.114 8.132 0.063-4.337 0.063-11.544 0-16.016-0.062-4.472-0.114-0.925-0.114 7.884m139.06 3.32c0 6.983 0.053 9.839 0.118 6.348 0.064-3.491 0.064-9.204 0-12.695-0.065-3.491-0.118-0.635-0.118 6.347" fill="#4c6cc4"/><path d="m274.12 162.4c1.343 0.076 3.54 0.076 4.883 0 1.343-0.077 0.244-0.139-2.441-0.139-2.686 0-3.785 0.062-2.442 0.139m29.892 75.882c0 0.967 0.076 1.363 0.169 0.879 0.093-0.483 0.093-1.274 0-1.758-0.093-0.483-0.169-0.088-0.169 0.879m-109.97 99.495c0.483 0.093 1.274 0.093 1.758 0 0.483-0.093 0.088-0.17-0.879-0.17s-1.362 0.077-0.879 0.17m10.547 0c0.483 0.093 1.274 0.093 1.758 0 0.483-0.093 0.088-0.17-0.879-0.17s-1.363 0.077-0.879 0.17" fill="#8c9ccc"/><path d="m269.67 133.79c-1e-3 1.934 0.065 2.774 0.147 1.867 0.082-0.906 0.083-2.488 2e-3 -3.515s-0.148-0.286-0.149 1.648" fill="#3c62ba"/></g></svg>
|
Before Width: | Height: | Size: 3.4 KiB |
BIN
docs/assets/img/qubes/qubes-trust-level-architecture.png
Normal file
After Width: | Height: | Size: 111 KiB |
@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="128" height="128" version="1.1" viewBox="0 0 33.866 33.866" xmlns="http://www.w3.org/2000/svg"><g transform="matrix(.52916 0 0 .52916 .0017986 -523)"><g transform="matrix(.40296 0 0 .40296 360.66 978.2)"><path d="m-816.29 25.214a15.882 15.918 0 0 0-8.3171 2.135l-53.648 31.034a15.882 15.918 0 0 0-7.9452 13.784v62.1a15.882 15.918 0 0 0 7.9452 13.768l53.648 31.058a15.882 15.918 0 0 0 15.882 0l53.656-31.058a15.882 15.918 0 0 0 7.9371-13.768v-62.1a15.882 15.918 0 0 0-7.9371-13.784l-53.656-31.034a15.882 15.918 0 0 0-7.5652-2.135zm-0.17228 35.101a8.7349 8.755 0 0 1 4.1636 1.169l29.512 17.071a8.7349 8.755 0 0 1 4.3663 7.582v34.159a8.7349 8.755 0 0 1-4.3663 7.5656l-29.512 17.088a8.7349 8.755 0 0 1-8.7305 0l-29.513-17.088a8.7349 8.755 0 0 1-4.3653-7.5656v-34.159a8.7349 8.755 0 0 1 4.3653-7.582l29.513-17.071a8.7349 8.755 0 0 1 4.5669-1.169z" fill="#63a0ff"/><path d="m-749.26 64.233-30.34 17.551a8.7349 8.755 0 0 1 1.1738 4.375v34.15a8.7349 8.755 0 0 1-4.3652 7.5742l-29.504 17.08a8.7349 8.755 0 0 1-4.3496 1.1602v35.102a15.882 15.918 0 0 0 7.9219-2.1191l11.936-6.9082 15.23 8.8633c6.8122 3.9643 17.78 3.9643 24.592 0l6.8106-3.9629c6.8122-3.9643 6.8122-10.348 0-14.312l-15.146-8.8144 10.234-5.9238a15.882 15.918 0 0 0 7.9375-13.768v-62.092a15.882 15.918 0 0 0-2.1309-7.9551z" fill="#3874d8"/><path d="m-884.06 64.207 30.334 17.56a8.7349 8.755 0 0 1 3.1929-3.2071l29.508-17.075a8.7349 8.755 0 0 1 8.7265 3e-3l29.51 17.071a8.7349 8.755 0 0 1 3.1777 3.1948l30.328-17.55a15.882 15.918 0 0 0-5.791-5.8162l-53.664-31.045a15.882 15.918 0 0 0-15.864-5e-3l-53.649 31.046a15.882 15.918 0 0 0-5.8092 5.8265z" fill="#99bfff"/></g></g></svg>
|
Before Width: | Height: | Size: 1.6 KiB |
BIN
docs/assets/img/qubes/r4.0-xfce-three-domains-at-work.png
Normal file
After Width: | Height: | Size: 1.4 MiB |
@ -1,125 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'>
|
||||
<svg clip-rule="evenodd" fill-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2" version="1.1" viewBox="0 0 128 128" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g transform="matrix(1.0638 0 0 1.0684 -29.885 -16.775)">
|
||||
<clipPath id="_clip1">
|
||||
<path d="m38.8 34.1v-4.8c0-0.4 0.1-1.1 0.1-1.1l0.2-0.5v-0.2l0.2-0.4 0.1-0.1 0.1-0.2 0.1-0.1v-0.1l0.2-0.2v-0.1l0.7-0.7 0.2-0.1h0.1l0.3-0.2h0.3l0.6-0.3c0.4-0.1 0.7-0.1 1.1-0.1h94.6v9.2h9v-18.4h-103.6c-7.3 0-13.3 6.1-13.3 13.6v4.8h9z"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip1)">
|
||||
<rect x="30.2" y="14.7" width="117.1" height="12" fill="#898b8d"/>
|
||||
</g>
|
||||
<clipPath id="_clip2">
|
||||
<path d="m38.8 34.1v-4.8c0-0.4 0.1-1.1 0.1-1.1l0.2-0.5v-0.2l0.2-0.4 0.1-0.1 0.1-0.2 0.1-0.1v-0.1l0.2-0.2v-0.1l0.7-0.7 0.2-0.1h0.1l0.3-0.2h0.3l0.6-0.3c0.4-0.1 0.7-0.1 1.1-0.1h94.6v9.2h9v-18.4h-103.6c-7.3 0-13.3 6.1-13.3 13.6v4.8h9z"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip2)">
|
||||
<clipPath id="_clip3">
|
||||
<path d="m133.8 27 13.2-7.1 3.7 7.2-13.2 7.1-3.7-7.2z" clip-rule="nonzero"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip3)">
|
||||
<g transform="matrix(.93998 -0 -0 .93594 28.091 15.7)">
|
||||
<use transform="scale(.98026 .94825)" x="114.723" y="4.732" width="13.724px" height="15.172px" xlink:href="#_Image4"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<clipPath id="_clip5">
|
||||
<path d="m38.8 34.1v-4.8c0-0.4 0.1-1.1 0.1-1.1l0.2-0.5v-0.2l0.2-0.4 0.1-0.1 0.1-0.2 0.1-0.1v-0.1l0.2-0.2v-0.1l0.7-0.7 0.2-0.1h0.1l0.3-0.2h0.3l0.6-0.3c0.4-0.1 0.7-0.1 1.1-0.1h94.6v9.2h9v-18.4h-103.6c-7.3 0-13.3 6.1-13.3 13.6v4.8h9z"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip5)">
|
||||
<clipPath id="_clip6">
|
||||
<path d="m31.9 21.1 10.7 5.8-3.7 7.2-10.7-5.7 3.7-7.3z" clip-rule="nonzero"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip6)">
|
||||
<g transform="matrix(.93998 -0 -0 .93594 28.091 15.7)">
|
||||
<use transform="scale(.97267 .99213)" x="1.869" y="5.815" width="13.617px" height="13.89px" xlink:href="#_Image7"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<rect x="47.8" y="34.1" width="80.9" height="9.2" fill="#403f41"/>
|
||||
<rect x="47.8" y="108" width="80.9" height="9.2" fill="#403f41"/>
|
||||
<clipPath id="_clip8">
|
||||
<path d="m137.7 117.1v4.9c0 0.4-0.1 1.1-0.1 1.1l-0.2 0.5v0.2l-0.2 0.4-0.1 0.1-0.1 0.2-0.1 0.1v0.1l-0.2 0.2v0.1l-0.5 0.5h-0.1l-0.1 0.1-0.2 0.1-0.1 0.1-0.3 0.2h-0.3l-0.5 0.2c-0.4 0.1-0.7 0.1-1.1 0.1h-94.7v-9.2h-9v18.4h103.6c7.3 0 13.3-6.1 13.3-13.6v-4.8h-9z"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip8)">
|
||||
<rect x="29.2" y="124.6" width="117.1" height="12" fill="#898b8d"/>
|
||||
</g>
|
||||
<clipPath id="_clip9">
|
||||
<path d="m137.7 117.1v4.9c0 0.4-0.1 1.1-0.1 1.1l-0.2 0.5v0.2l-0.2 0.4-0.1 0.1-0.1 0.2-0.1 0.1v0.1l-0.2 0.2v0.1l-0.5 0.5h-0.1l-0.1 0.1-0.2 0.1-0.1 0.1-0.3 0.2h-0.3l-0.5 0.2c-0.4 0.1-0.7 0.1-1.1 0.1h-94.7v-9.2h-9v18.4h103.6c7.3 0 13.3-6.1 13.3-13.6v-4.8h-9z"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip9)">
|
||||
<clipPath id="_clip10">
|
||||
<path d="m42.7 124.4-13.2 7.1-3.7-7.3 13.2-7.1 3.7 7.3z" clip-rule="nonzero"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip10)">
|
||||
<g transform="matrix(.93998 -0 -0 .93594 28.091 15.7)">
|
||||
<use transform="scale(.98026 .9616)" x="1.854" y="112.667" width="13.724px" height="15.386px" xlink:href="#_Image11"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<clipPath id="_clip12">
|
||||
<path d="m137.7 117.1v4.9c0 0.4-0.1 1.1-0.1 1.1l-0.2 0.5v0.2l-0.2 0.4-0.1 0.1-0.1 0.2-0.1 0.1v0.1l-0.2 0.2v0.1l-0.5 0.5h-0.1l-0.1 0.1-0.2 0.1-0.1 0.1-0.3 0.2h-0.3l-0.5 0.2c-0.4 0.1-0.7 0.1-1.1 0.1h-94.7v-9.2h-9v18.4h103.6c7.3 0 13.3-6.1 13.3-13.6v-4.8h-9z"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip12)">
|
||||
<clipPath id="_clip13">
|
||||
<path d="m144.7 130.2-10.8-5.8 3.7-7.2 10.8 5.7-3.7 7.3z" clip-rule="nonzero"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip13)">
|
||||
<g transform="matrix(.93998 -0 -0 .93594 28.091 15.7)">
|
||||
<use transform="scale(.97267 .99213)" x="115.728" y="109.308" width="13.617px" height="13.89px" xlink:href="#_Image14"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<rect x="38.8" y="52.6" width="34.6" height="9.2" fill="#58595b"/>
|
||||
<clipPath id="_clip15">
|
||||
<path d="m69.7 69.2-31.3-16.8 3.7-7.4 31.4 16.8-3.8 7.4z" clip-rule="nonzero"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip15)">
|
||||
<g transform="matrix(.93998 -0 -0 .93594 28.091 15.7)">
|
||||
<use transform="scale(.98266 .99448)" x="11.16" y="31.479" width="37.341px" height="25.856px" xlink:href="#_Image16"/>
|
||||
</g>
|
||||
</g>
|
||||
<rect x="103.1" y="52.6" width="34.6" height="9.2" fill="#58595b"/>
|
||||
<clipPath id="_clip17">
|
||||
<path d="m106.8 69.2 31.4-16.8-3.8-7.4-31.3 16.8 3.7 7.4z" clip-rule="nonzero"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip17)">
|
||||
<g transform="matrix(.93998 -0 -0 .93594 28.091 15.7)">
|
||||
<use transform="scale(.98266 .99448)" x="81.206" y="31.479" width="37.341px" height="25.856px" xlink:href="#_Image16"/>
|
||||
</g>
|
||||
</g>
|
||||
<rect x="103.1" y="89.5" width="34.6" height="9.2" fill="#58595b"/>
|
||||
<clipPath id="_clip18">
|
||||
<path d="m106.8 82.1 31.4 16.8-3.8 7.4-31.3-16.8 3.7-7.4z" clip-rule="nonzero"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip18)">
|
||||
<g transform="matrix(.93998 -0 -0 .93594 28.091 15.7)">
|
||||
<use transform="scale(.98266 .99448)" x="81.206" y="71.339" width="37.341px" height="25.856px" xlink:href="#_Image16"/>
|
||||
</g>
|
||||
</g>
|
||||
<rect x="38.8" y="89.5" width="34.6" height="9.2" fill="#58595b"/>
|
||||
<clipPath id="_clip19">
|
||||
<path d="m69.7 82.1-31.3 16.8 3.7 7.4 31.4-16.8-3.8-7.4z" clip-rule="nonzero"/>
|
||||
</clipPath>
|
||||
<g clip-path="url(#_clip19)">
|
||||
<g transform="matrix(.93998 -0 -0 .93594 28.091 15.7)">
|
||||
<use transform="scale(.98266 .99448)" x="11.16" y="71.339" width="37.341px" height="25.856px" xlink:href="#_Image16"/>
|
||||
</g>
|
||||
</g><g fill-rule="nonzero">
|
||||
<path d="m73.4 52.6v9.2l-43.6-23.3v-9.2l43.6 23.3z" fill="url(#_Linear20)"/>
|
||||
<path d="m103.1 52.6v9.2l43.6-23.3v-9.2l-43.6 23.3z" fill="url(#_Linear21)"/>
|
||||
<path d="m103.1 98.8v-9.3l43.6 23.3v9.3l-43.6-23.3z" fill="url(#_Linear22)"/>
|
||||
<path d="m73.4 98.8v-9.3l-43.6 23.3v9.3l43.6-23.3z" fill="url(#_Linear23)"/>
|
||||
<path d="m103.1 80.3 25.6 13.7v-9.3l-8.3-4.4h26.3v-9.3h-26.3l8.3-4.4v-9.2l-25.6 13.6v9.3z" fill="#e24525"/>
|
||||
<path d="m47.8 94 25.6-13.7v-9.3l-25.6-13.6v9.2l8.4 4.4h-26.4v9.3h26.3l-8.3 4.4v9.3z" fill="#e24525"/>
|
||||
</g></g>
|
||||
<defs>
|
||||
<image id="_Image4" width="14px" height="16px" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAQCAYAAAAmlE46AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAI0lEQVQokWMsLi7+z0AGYCJH00jRyIguQGwoDyE/jmqkhUYAma0EzxtWDhkAAAAASUVORK5CYII="/>
|
||||
<image id="_Image7" width="14px" height="14px" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAPklEQVQokWNkgILi4uL/DCQARnI0MTAwMDCRqgFuIzm2UWQjC6kaent7GUm2EaaJZI3IgGiNyLbRx8YhrBEAaikMHGN+VycAAAAASUVORK5CYII="/>
|
||||
<image id="_Image11" width="14px" height="16px" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAQCAYAAAAmlE46AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAKUlEQVQokWM0Njb+z0AEOHv2LCMyn4kYTdjAqMbhoZGR2JRDNRtHgkYALcwFtyg+QT8AAAAASUVORK5CYII="/>
|
||||
<image id="_Image14" width="14px" height="14px" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAP0lEQVQokWNkQAPGxsb/0cWwASZiFI1UjYzIHGJDlDo2kmIbAwMDAyOpGmCAvqF69uxZRvrZePbsWUYGBgYGAL1XC0kWB9UkAAAAAElFTkSuQmCC"/>
|
||||
<image id="_Image16" width="38px" height="26px" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAaCAYAAADbhS54AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAPElEQVRIie3OsRGAIAAAMWRKPPefQyagSKXFZ4Jc637e8UPz68BJMVVMFVPFVDFVTBVTxVQxVUwVU8XUBl5UAj8RVzT1AAAAAElFTkSuQmCC"/>
|
||||
<linearGradient id="_Linear20" x2="1" gradientTransform="matrix(43.56,0,0,43.56,29.84,45.5)" gradientUnits="userSpaceOnUse"><stop stop-color="#a6a8ab" offset="0"/><stop stop-color="#a6a8ab" offset=".24"/><stop stop-color="#404040" offset="1"/></linearGradient>
|
||||
<linearGradient id="_Linear21" x2="1" gradientTransform="matrix(-43.6 5.3395e-15 -5.3395e-15 -43.6 146.7 45.5)" gradientUnits="userSpaceOnUse"><stop stop-color="#a6a8ab" offset="0"/><stop stop-color="#a6a8ab" offset=".24"/><stop stop-color="#404040" offset="1"/></linearGradient>
|
||||
<linearGradient id="_Linear22" x2="1" gradientTransform="matrix(-43.56 5.3346e-15 -5.3346e-15 -43.56 146.68 606)" gradientUnits="userSpaceOnUse"><stop stop-color="#a6a8ab" offset="0"/><stop stop-color="#a6a8ab" offset=".24"/><stop stop-color="#404040" offset="1"/></linearGradient>
|
||||
<linearGradient id="_Linear23" x2="1" gradientTransform="matrix(43.53,0,0,43.53,29.9,606)" gradientUnits="userSpaceOnUse"><stop stop-color="#a6a8ab" offset="0"/><stop stop-color="#a6a8ab" offset=".24"/><stop stop-color="#404040" offset="1"/></linearGradient>
|
||||
</defs>
|
||||
</svg>
|
Before Width: | Height: | Size: 9.5 KiB |
@ -1,34 +0,0 @@
|
||||
/* Homepage hero section */
|
||||
|
||||
.mdx-hero {
|
||||
color: var(--pg-hero-color);
|
||||
margin: 0 0.8rem;
|
||||
text-align: center;
|
||||
}
|
||||
.mdx-hero h1 {
|
||||
color: currentcolor;
|
||||
margin-bottom: 1rem;
|
||||
font-size: 2.6rem;
|
||||
}
|
||||
@media screen and (max-width: 29.9375em) {
|
||||
.mdx-hero h1 {
|
||||
font-size: 1.4rem;
|
||||
}
|
||||
}
|
||||
.mdx-hero__content {
|
||||
margin-top: 2rem;
|
||||
padding-bottom: 0rem;
|
||||
}
|
||||
[data-md-color-scheme="slate"] .mdx-hero .md-button--primary {
|
||||
color: var(--md-primary-fg-color);
|
||||
}
|
||||
.mdx-hero .md-button--primary {
|
||||
color: var(--md-primary-fg-color);
|
||||
background-color: var(--pg-hero-color);
|
||||
border-color: transparent;
|
||||
margin-right: 0.5rem;
|
||||
margin-top: 0.5rem;
|
||||
}
|
||||
nav[class="md-tabs"] {
|
||||
border-bottom: none;
|
||||
}
|
80
docs/basics/account-creation.md
Normal file
@ -0,0 +1,80 @@
|
||||
---
|
||||
title: "Account Creation"
|
||||
icon: 'material/account-plus'
|
||||
---
|
||||
|
||||
Often people sign up for services without thinking. Maybe it's a streaming service so you can watch that new show everyone's talking about, or an account that gives you a discount for your favorite fast food place. Whatever the case may be, you should consider the implications for your data now and later on down the line.
|
||||
|
||||
There are risks associated with every new service that you use. Data breaches; disclosure of customer information to third parties; rogue employees accessing data; all are possibilities that must be considered when giving your information out. You need to be confident that you can trust the service, which is why we don't recommend storing valuable data on anything but the most mature and battle-tested products. That usually means services which provide E2EE and have undergone a cryptographic audit. An audit increases assurance that the product was designed without glaring security issues caused by an inexperienced developer.
|
||||
|
||||
It can also be difficult to delete the accounts on some services. Sometimes [overwriting data](account-deletion.md#overwriting-account-information) associated with an account can be possible, but in other cases the service will keep an entire history of changes to the account.
|
||||
|
||||
## Terms of Service & Privacy Policy
|
||||
|
||||
The ToS are the rules that you agree to follow when using the service. With larger services these rules are often enforced by automated systems. Sometimes these automated systems can make mistakes. For example, you may be banned or locked out of your account on some services for using a VPN or VOIP number. Appealing such bans is often difficult, and involves an automated process too, which isn't always successful. This would be one of the reasons why we wouldn't suggest using Gmail for email as an example. Email is crucial for access to other services you might have signed up for.
|
||||
|
||||
The Privacy Policy is how the service says they will use your data and it is worth reading so that you understand how your data will be used. A company or organization might not be legally obligated to follow everything contained in the policy (it depends on the jurisdiction). We would recommend having some idea what your local laws are and what they permit a provider to collect.
|
||||
|
||||
We recommend looking for particular terms such as "data collection", "data analysis", "cookies", "ads" or "3rd-party" services. Sometimes you will be able to opt-out from data collection or from sharing your data, but it is best to choose a service that respects your privacy from the start.
|
||||
|
||||
Keep in mind you're also placing your trust in the company or organization and that they will comply with their own privacy policy.
|
||||
|
||||
## Authentication methods
|
||||
|
||||
There are usually multiple ways to sign up for an account, each with their own benefits and drawbacks.
|
||||
|
||||
### Email and password
|
||||
|
||||
The most common way to create a new account is by an email address and password. When using this method, you should use a password manager and follow [best practices](passwords-overview.md) regarding passwords.
|
||||
|
||||
!!! tip
|
||||
|
||||
You can use your password manager to organize other authentication methods too! Just add the new entry and fill the appropriate fields, you can add notes for things like security questions or a backup key.
|
||||
|
||||
You will be responsible for managing your login credentials. For added security, you can set up [MFA](multi-factor-authentication.md) on your accounts.
|
||||
|
||||
[Recommended password managers](../passwords.md){ .md-button }
|
||||
|
||||
#### Email aliases
|
||||
|
||||
If you don't want to give your real email address to a service, you have the option to use an alias. We described them in more detail on our email services recommendation page. Essentially, alias services allow you to generate new email addresses that forward all emails to your main address. This can help prevent tracking across services and help you manage the marketing emails that sometimes come with the sign up process. Those can be filtered automatically based on the alias they are sent to.
|
||||
|
||||
Should a service get hacked, you might start receiving phishing or spam emails to the address you used to sign up. Using unique aliases for each service can assist in identifying exactly what service was hacked.
|
||||
|
||||
[Recommended email aliasing services](../email.md#email-aliasing-services){ .md-button }
|
||||
|
||||
### Single sign-on
|
||||
|
||||
!!! note
|
||||
|
||||
We are discussing Single sign-on for personal use, not enterprise users.
|
||||
|
||||
Single sign-on (SSO) is an authentication method that allows you to register for a service without sharing much information, if any. Whenever you see something along the lines of "Sign-in with *provider name*" on a registration form it's SSO.
|
||||
|
||||
When you choose single sign-on in a website, it will prompt your SSO provider login page and after that your account will be connected. Your password won't be shared but some basic information will (you can review it during the login request). This process is needed every time you want to log in to the same account.
|
||||
|
||||
The main advantages are:
|
||||
|
||||
- **Security**: no risk of being involved in a [data breach](https://en.wikipedia.org/wiki/Data_breach) because the website does not store your credentials.
|
||||
- **Ease of use**: multiple accounts are managed by a single login.
|
||||
|
||||
But there are disadvantages:
|
||||
|
||||
- **Privacy**: a SSO provider will know the services you use.
|
||||
- **Centralization**: if your SSO account gets compromised or you aren't able to login to it, all other accounts connected to it are affected.
|
||||
|
||||
SSO can be especially useful in those situations where you could benefit from deeper integration between services. For example, one of those services may offer SSO for the others. Our recommendation is to limit SSO to only where you need it and protect the main account with [MFA](multi-factor-authentication.md).
|
||||
|
||||
All services that use SSO will be as secure as your SSO account. For example, if you want to secure an account with a hardware key but that service doesn't support hardware keys, you can secure your SSO account with a hardware key and now you essentially have hardware MFA on all your accounts. It is worth noting though that weak authentication on your SSO account means that any account tied to that login will also be weak.
|
||||
|
||||
### Phone number
|
||||
|
||||
We recommend avoiding services that require a phone number for sign up. A phone number can identity you across multiple services and depending on data sharing agreements this will make your usage easier to track, particularly if one of those services is breached as the phone number is often **not** encrypted.
|
||||
|
||||
You should avoid giving out your real phone number if you can. Some services will allow the use of VOIP numbers, however these often trigger fraud detection systems, causing an account to be locked down, so we don't recommend that for important accounts.
|
||||
|
||||
In many cases you will need to provide a number that you can receive SMS or calls from, particularly when shopping internationally, in case there is a problem with your order at border screening. It's common for services to use your number as a verification method; don't let yourself get locked out of an important account because you wanted to be clever and give a fake number!
|
||||
|
||||
### Username and password
|
||||
|
||||
Some services allow you to register without using an email address and only require you to set a username and password. These services may provide increased anonymity when combined with a VPN or Tor. Keep in mind that for these accounts there will most likely be **no way to recover your account** in the event you forget your username or password.
|
59
docs/basics/common-misconceptions.md
Normal file
@ -0,0 +1,59 @@
|
||||
---
|
||||
title: "Common Misconceptions"
|
||||
icon: 'material/robot-confused'
|
||||
---
|
||||
|
||||
## "Open-source software is always secure" or "Proprietary software is more secure"
|
||||
|
||||
These myths stem from a number of prejudices, but whether the source code is available and how software is licensed does not inherently affect its security in any way. ==Open-source software has the *potential* to be more secure than proprietary software, but there is absolutely no guarantee this is the case.== When you evaluate software, you should look at the reputation and security of each tool on an individual basis.
|
||||
|
||||
Open-source software *can* be audited by third-parties, and is often more transparent about potential vulnerabilities than proprietary counterparts. It also allows you to review the code and disable any suspicious functionality you find yourself. However, *unless you do so*, there is no guarantee that code has ever been evaluated, especially with smaller software projects. The open development process has also sometimes been exploited to introduce new vulnerabilities into even large projects.[^1]
|
||||
|
||||
On the flip side, proprietary software is less transparent, but that doesn't imply that it's not secure. Major proprietary software projects can be audited internally and by third-party agencies, and independent security researchers can still find vulnerabilities with techniques like reverse engineering.
|
||||
|
||||
To avoid biased decisions, it's *vital* that you evaluate the privacy and security standards of the software you use.
|
||||
|
||||
## "Shifting trust can increase privacy"
|
||||
|
||||
We talk about "shifting trust" a lot when discussing solutions like VPNs (which shift the trust you place in your ISP to the VPN provider). While this protects your browsing data from your ISP *specifically*, the VPN provider you choose still has access to your browsing data: Your data isn't completely secured from all parties. This means that:
|
||||
|
||||
1. You must exercise caution when choosing a provider to shift trust to.
|
||||
2. You should still use other techniques, like E2EE, to protect your data completely. Merely distrusting one provider to trust another is not securing your data.
|
||||
|
||||
## "Privacy-focused solutions are inherently trustworthy"
|
||||
|
||||
Focusing solely on the privacy policies and marketing of a tool or provider can blind you to its weaknesses. When you're looking for a more private solution, you should determine what the underlying problem is and find technical solutions to that problem. For example, you may want to avoid Google Drive, which gives Google access to all of your data. The underlying problem in this case is lack of E2EE, so you should make sure that the provider you switch to actually implements E2EE, or use a tool (like [Cryptomator](../encryption.md#cryptomator-cloud)) which provides E2EE on any cloud provider. Switching to a "privacy-focused" provider (that doesn't implement E2EE) doesn't solve your problem: it just shifts trust from Google to that provider.
|
||||
|
||||
The privacy policies and business practices of providers you choose are very important, but should be considered secondary to technical guarantees of your privacy: You shouldn't shift trust to another provider when trusting a provider isn't a requirement at all.
|
||||
|
||||
## "Complicated is better"
|
||||
|
||||
We often see people describing privacy threat models that are overly complex. Often, these solutions include problems like many different email accounts or complicated setups with lots of moving parts and conditions. The replies are usually answers to "What is the best way to do *X*?"
|
||||
|
||||
Finding the "best" solution for yourself doesn't necessarily mean you are after an infallible solution with dozens of conditions—these solutions are often difficult to work with realistically. As we discussed previously, security often comes at the cost of convenience. Below, we provide some tips:
|
||||
|
||||
1. ==Actions need to serve a particular purpose:== think about how to do what you want with the fewest actions.
|
||||
2. ==Remove human failure points:== We fail, get tired, and forget things. To maintain security, avoid relying on manual conditions and processes that you have to remember.
|
||||
3. ==Use the right level of protection for what you intend.== We often see recommendations of so-called law-enforcement or subpoena-proof solutions. These often require specialist knowledge and generally aren't what people want. There's no point in building an intricate threat model for anonymity if you can be easily de-anonymized by a simple oversight.
|
||||
|
||||
So, how might this look?
|
||||
|
||||
One of the clearest threat models is one where people *know who you are* and one where they do not. There will always be situations where you must declare your legal name and there are others where you don't need to.
|
||||
|
||||
1. **Known identity** - A known identity is used for things where you must declare your name. There are many legal documents and contracts where a legal identity is required. This could range from opening a bank account, signing a property lease, obtaining a passport, customs declarations when importing items, or otherwise dealing with your government. These things will usually lead to credentials such as credit cards, credit rating checks, account numbers, and possibly physical addresses.
|
||||
|
||||
We don't suggest using a VPN or Tor for any of these things, as your identity is already known through other means.
|
||||
|
||||
!!! tip
|
||||
|
||||
When shopping online, the use of a [parcel locker](https://en.wikipedia.org/wiki/Parcel_locker) can help keep your physical address private.
|
||||
|
||||
2. **Unknown identity** - An unknown identity could be a stable pseudonym that you regularly use. It is not anonymous because it doesn't change. If you're part of an online community, you may wish to retain a persona that others know. This pseudonym isn't anonymous because—if monitored for long enough—details about the owner can reveal further information, such as the way they write, their general knowledge about topics of interest, etc.
|
||||
|
||||
You may wish to use a VPN for this, to mask your IP address. Financial transactions are more difficult to mask: You could consider using anonymous cryptocurrencies, such as [Monero](https://www.getmonero.org/). Employing altcoin shifting may also help to disguise where your currency originated. Typically, exchanges require KYC (know your customer) to be completed before they'll allow you to exchange fiat currency into any kind of cryptocurrency. Local meet-up options may also be a solution; however, those are often more expensive and sometimes also require KYC.
|
||||
|
||||
3. **Anonymous identity** - Even with experience, anonymous identities are difficult to maintain over long periods of time. They should be short-term and short-lived identities which are rotated regularly.
|
||||
|
||||
Using Tor can help with this. It is also worth noting that greater anonymity is possible through asynchronous communication: Real-time communication is vulnerable to analysis of typing patterns (i.e. more than a paragraph of text, distributed on a forum, via email, etc.)
|
||||
|
||||
[^1]: One notable example of this is the [2021 incident in which University of Minnesota researchers introduced three vulnerabilities into the Linux kernel development project](https://cse.umn.edu/cs/linux-incident).
|
@ -38,7 +38,7 @@ To minimize the damage that a malicious piece of software *could* do, you should
|
||||
|
||||
Mobile operating systems generally have better application sandboxing than desktop operating systems: Apps can't obtain root access, and require permission for access to system resources.
|
||||
|
||||
Desktop operating systems generally lag behind on proper sandboxing. ChromeOS has similar sandboxing capabilities to Android, and macOS has full system permission control (and developers can opt-in to sandboxing for applications). However, these operating systems do transmit identifying information to their respective OEMs. Linux tends to not submit information to system vendors, but it has poor protection against exploits and malicious apps. This can be mitigated somewhat with specialized distributions which make significant use of virtual machines or containers, such as Qubes OS.
|
||||
Desktop operating systems generally lag behind on proper sandboxing. ChromeOS has similar sandboxing capabilities to Android, and macOS has full system permission control (and developers can opt-in to sandboxing for applications). However, these operating systems do transmit identifying information to their respective OEMs. Linux tends to not submit information to system vendors, but it has poor protection against exploits and malicious apps. This can be mitigated somewhat with specialized distributions which make significant use of virtual machines or containers, such as [Qubes OS](../../desktop/#qubes-os).
|
||||
|
||||
<span class="pg-red">:material-target-account: Targeted Attacks</span>
|
||||
|
||||
@ -68,7 +68,7 @@ Thankfully, E2EE can alleviate this issue by encrypting communications between y
|
||||
|
||||
Therefore, you should use native applications over web clients whenever possible.
|
||||
|
||||
Even with E2EE, service providers can still profile you based on **metadata**, which typically isn't protected. While the service provider can't read your messages, they can still observe important things, such as who you're talking to, how often you message them, and when you're typically active. Protection of metadata is fairly uncommon, and—if it's within your [threat model](basics/threat-modeling.md)—you should pay close attention to the technical documentation of the software you're using to see if there's any metadata minimization or protection at all.
|
||||
Even with E2EE, service providers can still profile you based on **metadata**, which typically isn't protected. While the service provider can't read your messages, they can still observe important things, such as who you're talking to, how often you message them, and when you're typically active. Protection of metadata is fairly uncommon, and—if it's within your [threat model](threat-modeling.md)—you should pay close attention to the technical documentation of the software you're using to see if there's any metadata minimization or protection at all.
|
||||
|
||||
## Mass Surveillance Programs
|
||||
|
||||
@ -76,6 +76,12 @@ Even with E2EE, service providers can still profile you based on **metadata**, w
|
||||
|
||||
Mass surveillance is the intricate effort to monitor the "behavior, many activities, or information" of an entire (or substantial fraction of a) population.[^1] It often refers to government programs, such as the ones [disclosed by Edward Snowden in 2013](https://en.wikipedia.org/wiki/Global_surveillance_disclosures_(2013%E2%80%93present)). However, it can also be carried out by corporations, either on behalf of government agencies or by their own initiative.
|
||||
|
||||
!!! abstract "Atlas of Surveillance"
|
||||
|
||||
If you want to learn more about surveillance methods and how they're implemented in your city you can also take a look at the [Atlas of Surveillance](https://atlasofsurveillance.org/) by the [Electronic Frontier Foundation](https://www.eff.org/).
|
||||
|
||||
In France you can take a look at the [Technolopolice website](https://technopolice.fr/villes/) maintained by the non-profit association La Quadrature du Net.
|
||||
|
||||
Governments often justify mass surveillance programs as necessary means to combat terrorism and prevent crime. However, breaching human rights, it's most often used to disproportionately target minority groups and political dissidents, among others.
|
||||
|
||||
!!! quote "ACLU: [*The Privacy Lesson of 9/11: Mass Surveillance is Not the Way Forward*](https://www.aclu.org/news/national-security/the-privacy-lesson-of-9-11-mass-surveillance-is-not-the-way-forward)"
|
||||
@ -124,74 +130,18 @@ Censorship online can be carried out (to varying degrees) by actors including to
|
||||
|
||||
Censorship on corporate platforms is increasingly common, as platforms like Twitter and Facebook give in to public demand, market pressures, and pressures from government agencies. Government pressures can be covert requests to businesses, such as the White House [requesting the takedown](https://www.nytimes.com/2012/09/17/technology/on-the-web-a-fine-line-on-free-speech-across-globe.html) of a provocative YouTube video, or overt, such as the Chinese government requiring companies to adhere to a strict regime of censorship.
|
||||
|
||||
People concerned with the threat of censorship can use technologies like [Tor](tor-overview.md) to circumvent it, and support censorship-resistant communication platforms like [Matrix](../real-time-communication.md#element), which doesn't have a centralized account authority that can close accounts arbitrarily.
|
||||
People concerned with the threat of censorship can use technologies like [Tor](../advanced/tor-overview.md) to circumvent it, and support censorship-resistant communication platforms like [Matrix](../real-time-communication.md#element), which doesn't have a centralized account authority that can close accounts arbitrarily.
|
||||
|
||||
!!! important
|
||||
!!! tip
|
||||
|
||||
While evading censorship itself can be easy, hiding the fact that you are doing it can be very problematic.
|
||||
|
||||
You should consider which aspects of the network your adversary can observe, and whether you have plausible deniability for your actions. For example, using [encrypted DNS](basics/dns-overview.md#what-is-encrypted-dns) can help you bypass rudimentary, DNS-based censorship systems, but it can't truly hide what you are visiting from your ISP. A VPN or Tor can help hide what you are visiting from network administrators, but can't hide that you're using those networks in the first place. Pluggable transports (such as Obfs4proxy, Meek, or Shadowsocks) can help you evade firewalls that block common VPN protocols or Tor, but your circumvention attempts can still be detected by methods like probing or [deep packet inspection](https://en.wikipedia.org/wiki/Deep_packet_inspection).
|
||||
You should consider which aspects of the network your adversary can observe, and whether you have plausible deniability for your actions. For example, using [encrypted DNS](../advanced/dns-overview.md#what-is-encrypted-dns) can help you bypass rudimentary, DNS-based censorship systems, but it can't truly hide what you are visiting from your ISP. A VPN or Tor can help hide what you are visiting from network administrators, but can't hide that you're using those networks in the first place. Pluggable transports (such as Obfs4proxy, Meek, or Shadowsocks) can help you evade firewalls that block common VPN protocols or Tor, but your circumvention attempts can still be detected by methods like probing or [deep packet inspection](https://en.wikipedia.org/wiki/Deep_packet_inspection).
|
||||
|
||||
You must always consider the risks of trying to bypass censorship, the potential consequences, and how sophisticated your adversary may be. You should be cautious with your software selection, and have a backup plan in case you are caught.
|
||||
|
||||
## Common Misconceptions
|
||||
|
||||
:material-numeric-1-circle: **"Open-source software is always secure"** or **"Proprietary software is more secure"**
|
||||
|
||||
These myths stem from a number of prejudices, but whether the source code is available and how software is licensed does not inherently affect its security in any way. ==Open-source software has the *potential* to be more secure than proprietary software, but there is absolutely no guarantee this is the case.== When you evaluate software, you should look at the reputation and security of each tool on an individual basis.
|
||||
|
||||
Open-source software *can* be audited by third-parties, and is often more transparent about potential vulnerabilities than proprietary counterparts. It also allows you to review the code and disable any suspicious functionality you find yourself. However, *unless you do so*, there is no guarantee that code has ever been evaluated, especially with smaller software projects. The open development process has also sometimes been exploited to introduce new vulnerabilities into even large projects.[^6]
|
||||
|
||||
On the flip side, proprietary software is less transparent, but that doesn't imply that it's not secure. Major proprietary software projects can be audited internally and by third-party agencies, and independent security researchers can still find vulnerabilities with techniques like reverse engineering.
|
||||
|
||||
To avoid biased decisions, it's *vital* that you evaluate the privacy and security standards of the software you use.
|
||||
|
||||
:material-numeric-2-circle: **"Shifting trust can increase privacy"**
|
||||
|
||||
We talk about "shifting trust" a lot when discussing solutions like VPNs (which shift the trust you place in your ISP to the VPN provider). While this protects your browsing data from your ISP *specifically*, the VPN provider you choose still has access to your browsing data: Your data isn't completely secured from all parties. This means that:
|
||||
|
||||
1. You must exercise caution when choosing a provider to shift trust to.
|
||||
2. You should still use other techniques, like E2EE, to protect your data completely. Merely distrusting one provider to trust another is not securing your data.
|
||||
|
||||
:material-numeric-3-circle: **"Privacy-focused solutions are inherently trustworthy"**
|
||||
|
||||
Focusing solely on the privacy policies and marketing of a tool or provider can blind you to its weaknesses. When you're looking for a more private solution, you should determine what the underlying problem is and find technical solutions to that problem. For example, you may want to avoid Google Drive, which gives Google access to all of your data. The underlying problem in this case is lack of E2EE, so you should make sure that the provider you switch to actually implements E2EE, or use a tool (like [Cryptomator](encryption.md#cryptomator-cloud)) which provides E2EE on any cloud provider. Switching to a "privacy-focused" provider (that doesn't implement E2EE) doesn't solve your problem: it just shifts trust from Google to that provider.
|
||||
|
||||
The privacy policies and business practices of providers you choose are very important, but should be considered secondary to technical guarantees of your privacy: You shouldn't shift trust to another provider when trusting a provider isn't a requirement at all.
|
||||
|
||||
:material-numeric-4-circle: **"Complicated is better"**
|
||||
|
||||
We often see people describing privacy threat models that are overly complex. Often, these solutions include problems like many different email accounts or complicated setups with lots of moving parts and conditions. The replies are usually answers to "What is the best way to do *X*?"
|
||||
|
||||
Finding the "best" solution for yourself doesn't necessarily mean you are after an infallible solution with dozens of conditions—these solutions are often difficult to work with realistically. As we discussed previously, security often comes at the cost of convenience. Below, we provide some tips:
|
||||
|
||||
1. ==Actions need to serve a particular purpose:== think about how to do what you want with the fewest actions.
|
||||
2. ==Remove human failure points:== We fail, get tired, and forget things. To maintain security, avoid relying on manual conditions and processes that you have to remember.
|
||||
3. ==Use the right level of protection for what you intend.== We often see recommendations of so-called law-enforcement or subpoena-proof solutions. These often require specialist knowledge and generally aren't what people want. There's no point in building an intricate threat model for anonymity if you can be easily de-anonymized by a simple oversight.
|
||||
|
||||
So, how might this look?
|
||||
|
||||
One of the clearest threat models is one where people *know who you are* and one where they do not. There will always be situations where you must declare your legal name and there are others where you don't need to.
|
||||
|
||||
1. **Known identity** - A known identity is used for things where you must declare your name. There are many legal documents and contracts where a legal identity is required. This could range from opening a bank account, signing a property lease, obtaining a passport, customs declarations when importing items, or otherwise dealing with your Government. These things will usually lead to credentials such as credit cards, credit rating checks, account numbers, and possibly physical addresses.
|
||||
|
||||
We don't suggest using a VPN or Tor for any of these things, as your identity is already known through other means.
|
||||
|
||||
!!! tip
|
||||
|
||||
When shopping online, the use of a [parcel locker](https://en.wikipedia.org/wiki/Parcel_locker) can help keep your physical address private.
|
||||
|
||||
2. **Unknown identity** - An unknown identity could be a stable pseudonym that you regularly use. It is not anonymous because it doesn't change. If you're part of an online community, you may wish to retain a persona that others know. This pseudonym isn't anonymous because—if monitored for long enough—details about the owner can reveal further information, such as the way they write, their general knowledge about topics of interest, etc.
|
||||
|
||||
You may wish to use a VPN for this, to mask your IP address. Financial transactions are more difficult to mask: You could consider using anonymous cryptocurrencies, such as [Monero](https://www.getmonero.org/). Employing altcoin shifting may also help to disguise where your currency originated. Typically, exchanges require KYC (know your customer) to be completed before they'll allow you to exchange fiat currency into any kind of cryptocurrency. Local meet-up options may also be a solution; however, those are often more expensive and sometimes also require KYC.
|
||||
|
||||
3. **Anonymous identity** - Even with experience, anonymous identities are difficult to maintain over long periods of time. They should be short-term and short-lived identities which are rotated regularly.
|
||||
|
||||
Using Tor can help with this. It is also worth noting that greater anonymity is possible through asynchronous communication: Real-time communication is vulnerable to analysis of typing patterns (i.e. more than a paragraph of text, distributed on a forum, via email, etc.)
|
||||
|
||||
[^1]: Wikipedia: [*Mass Surveillance*](https://en.wikipedia.org/wiki/Mass_surveillance) and [*Surveillance*](https://en.wikipedia.org/wiki/Surveillance).
|
||||
[^2]: United States Privacy and Civil Liberties Oversight Board: [*Report on the Telephone Records Program Conducted under Section 215*](https://documents.pclob.gov/prod/Documents/OversightReport/ec542143-1079-424a-84b3-acc354698560/215-Report_on_the_Telephone_Records_Program.pdf)
|
||||
[^3]: Wikipedia: [*Surveillance capitalism*](https://en.wikipedia.org/wiki/Surveillance_capitalism)
|
||||
[^4]: "[Enumerating badness](https://www.ranum.com/security/computer_security/editorials/dumb/)" (or, "listing all the bad things that we know about"), as many adblockers and antivirus programs do, fails to adequately protect you from new and unknown threats because they have not yet been added to the filter list. You should also employ other mitigation techniques.
|
||||
[^5]: United Nations: [*Universal Declaration of Human Rights*](https://www.un.org/en/about-us/universal-declaration-of-human-rights).
|
||||
[^6]: One notable example of this is the [2021 incident in which University of Minnesota researchers introduced three vulnerabilities into the Linux kernel development project](https://cse.umn.edu/cs/linux-incident).
|
@ -1,8 +1,8 @@
|
||||
---
|
||||
title: "Multi-factor Authentication"
|
||||
title: "Multi-Factor Authentication"
|
||||
icon: 'material/two-factor-authentication'
|
||||
---
|
||||
**Multi-factor authentication** is a security mechanism that requires additional steps beyond entering your username (or email) and password. The most common method is time limited codes you might receive from SMS or an app.
|
||||
**Multi-Factor Authentication** (**MFA**) is a security mechanism that requires additional steps beyond entering your username (or email) and password. The most common method is time limited codes you might receive from SMS or an app.
|
||||
|
||||
Normally, if a hacker (or adversary) is able to figure out your password then they’d gain access to the account that password belongs to. An account with MFA forces the hacker to have both the password (something you *know*) and a device that you own (something you *have*), like your phone.
|
||||
|
||||
@ -77,7 +77,7 @@ When you create an account, the public key is sent to the service, then when you
|
||||
This presentation discusses the history of password authentication, the pitfalls (such as password reuse), and discussion of FIDO2 and [WebAuthn](https://webauthn.guide) standards.
|
||||
|
||||
<div class="yt-embed">
|
||||
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/aMo4ZlWznao" title="How FIDO2 and WebAuthn Stop Account Takeovers" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||
<iframe width="560" height="315" src="https://invidious.privacyguides.net/embed/aMo4ZlWznao?local=true" title="How FIDO2 and WebAuthn Stop Account Takeovers" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||
</div>
|
||||
|
||||
FIDO2 and WebAuthn have superior security and privacy properties when compared to any MFA methods.
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
title: "Introduction to Passwords"
|
||||
icon: 'material/shield-key-outline'
|
||||
icon: 'material/form-textbox-password'
|
||||
---
|
||||
|
||||
Passwords are an essential part of our everyday digital lives. We use them to protect our accounts, our devices and our secrets. Despite often being the only thing between us and an adversary who's after our private information, not a lot of thought is put into them, which often leads to people using passwords that can be easily guessed or brute-forced.
|
||||
@ -25,11 +25,10 @@ You should avoid changing passwords that you have to remember (such as your pass
|
||||
|
||||
When it comes to passwords that you don't have to remember (such as passwords stored inside your password manager), if your [threat model](threat-modeling.md) calls for it, we recommend going through important accounts (especially accounts that don't use multi-factor authentication) and changing their password every couple of months, in case they have been compromised in a data breach that hasn't become public yet. Most password managers allow you to set an expiry date for your password to make this easier to manage.
|
||||
|
||||
!!! Tip "Checking for data breaches"
|
||||
!!! tip "Checking for data breaches"
|
||||
|
||||
If your password manager lets you check for compromised passwords, make sure to do so and promptly change any password that may have been exposed in a data breach. Alternatively, you could follow [Have I Been Pwned's Latest Breaches feed](https://feeds.feedburner.com/HaveIBeenPwnedLatestBreaches) with the help of a [news aggregator](../news-aggregators.md).
|
||||
|
||||
|
||||
## Creating strong passwords
|
||||
|
||||
### Passwords
|
||||
@ -48,7 +47,7 @@ An example of a diceware passphrase is `viewable fastness reluctant squishy seve
|
||||
|
||||
To generate a diceware passphrase using real dice, follow these steps:
|
||||
|
||||
!!! Note
|
||||
!!! note
|
||||
|
||||
These instructions assume that you are using [EFF's large wordlist](https://www.eff.org/files/2016/07/18/eff_large_wordlist.txt) to generate the passphrase, which requires five dice rolls per word. Other wordlists may require more or less rolls per word, and may require a different amount of words to achieve the same entropy.
|
||||
|
||||
@ -60,15 +59,15 @@ To generate a diceware passphrase using real dice, follow these steps:
|
||||
|
||||
4. Repeat this process until your passphrase has as many words as you need, which you should separate with a space.
|
||||
|
||||
!!! Warning "Important"
|
||||
!!! warning "Important"
|
||||
|
||||
You should **not** re-roll words until you get a combination of words that appeal to you. The process should be completely random.
|
||||
|
||||
If you don't have access to or would prefer to not use real dice, you can use your password manager's built-in password generator, as most of them have the option to generate diceware passphrases in addition to regular passwords.
|
||||
|
||||
We recommend using [EFF's large wordlist](https://www.eff.org/files/2016/07/18/eff_large_wordlist.txt) to generate your diceware passphrases, as it offers the exact same security as the original list, while containing words that are easier to memorize. There are also other wordlists in different languages, if you do not want your passphrase to be in English.
|
||||
We recommend using [EFF's large wordlist](https://www.eff.org/files/2016/07/18/eff_large_wordlist.txt) to generate your diceware passphrases, as it offers the exact same security as the original list, while containing words that are easier to memorize. There are also [other wordlists in different languages](https://theworld.com/~reinhold/diceware.html#Diceware%20in%20Other%20Languages|outline), if you do not want your passphrase to be in English.
|
||||
|
||||
??? Note "Explanation of entropy and strength of diceware passphrases"
|
||||
??? note "Explanation of entropy and strength of diceware passphrases"
|
||||
|
||||
To demonstrate how strong diceware passphrases are, we'll use the aforementioned seven word passphrase (`viewable fastness reluctant squishy seventeen shown pencil`) and [EFF's large wordlist](https://www.eff.org/files/2016/07/18/eff_large_wordlist.txt) as an example.
|
||||
|
||||
@ -98,7 +97,7 @@ There are many good options to choose from, both cloud-based and local. Choose o
|
||||
|
||||
[List of recommended password managers](../passwords.md){ .md-button }
|
||||
|
||||
!!! Warning "Don't place your passwords and TOTP tokens inside the same password manager"
|
||||
!!! warning "Don't place your passwords and TOTP tokens inside the same password manager"
|
||||
|
||||
When using TOTP codes as [multi-factor authentication](../multi-factor-authentication.md), the best security practice is to keep your TOTP codes in a [separate app](../multi-factor-authentication.md#authenticator-apps).
|
||||
|
||||
@ -108,4 +107,4 @@ There are many good options to choose from, both cloud-based and local. Choose o
|
||||
|
||||
### Backups
|
||||
|
||||
You should store an [encrypted](../encryption.md) backup of your passwords on multiple storage devices or a cloud storage provider. This can help you access your passwords if something happens to your primary device or the service you are using.
|
||||
You should store an [encrypted](../encryption.md) backup of your passwords on multiple storage devices or a cloud storage provider. This can help you access your passwords if something happens to your primary device or the service you are using.
|
@ -5,7 +5,7 @@ icon: material/vpn
|
||||
|
||||
Virtual Private Networks are a way of extending the end of your network to exit somewhere else in the world. An ISP can see the flow of internet traffic entering and exiting your network termination device (i.e. modem).
|
||||
|
||||
Encryption protocols such as HTTPS are commonly used on the internet, so they may not be able to see exactly what you're posting or reading but they can get an idea of the [domains you request](dns-overview.md#why-shouldnt-i-use-encrypted-dns).
|
||||
Encryption protocols such as HTTPS are commonly used on the internet, so they may not be able to see exactly what you're posting or reading but they can get an idea of the [domains you request](../advanced/dns-overview.md#why-shouldnt-i-use-encrypted-dns).
|
||||
|
||||
A VPN can help as it can shift trust to a server somewhere else in the world. As a result, the ISP then only sees that you are connected to a VPN and nothing about the activity that you're passing into it.
|
||||
|
||||
@ -19,7 +19,7 @@ However, they do hide your actual IP from a third-party service, provided that t
|
||||
|
||||
## When shouldn't I use a VPN?
|
||||
|
||||
Using a VPN in cases where you're using your [known identity](../basics/common-threats.en.md#common-misconceptions) is unlikely be useful.
|
||||
Using a VPN in cases where you're using your [known identity](common-threats.md#common-misconceptions) is unlikely be useful.
|
||||
|
||||
Doing so may trigger spam and fraud detection systems, such as if you were to log into your bank's website.
|
||||
|
||||
@ -39,7 +39,7 @@ Needless to say, **you shouldn't use encrypted DNS with Tor**. This would direct
|
||||
|
||||
## Should I use Tor *and* a VPN?
|
||||
|
||||
By using a VPN with Tor, you're creating essentially a permanent entry node, often with a money trail attached. This provides zero additional benefits to you, while increasing the attack surface of your connection dramatically. If you wish to hide your Tor usage from your ISP or your government, Tor has a built-in solution for that: Tor bridges. [Read more about Tor bridges and why using a VPN is not necessary](tor-overview.md).
|
||||
By using a VPN with Tor, you're creating essentially a permanent entry node, often with a money trail attached. This provides zero additional benefits to you, while increasing the attack surface of your connection dramatically. If you wish to hide your Tor usage from your ISP or your government, Tor has a built-in solution for that: Tor bridges. [Read more about Tor bridges and why using a VPN is not necessary](../advanced/tor-overview.md).
|
||||
|
||||
## What if I need anonymity?
|
||||
|
||||
@ -59,18 +59,18 @@ A VPN may still be useful to you in a variety of scenarios, such as:
|
||||
1. Hiding your downloads (such as torrents) from your ISP and anti-piracy organizations.
|
||||
1. Hiding your IP from third-party websites and services, preventing IP based tracking.
|
||||
|
||||
For use cases like these, or if you have another compelling reason, the VPN providers we listed above are who we think are the most trustworthy. However, using a VPN provider still means you're *trusting* the provider. In pretty much any other scenario you should be using a secure**-by-design** tool such as Tor.
|
||||
For situations like these, or if you have another compelling reason, the VPN providers we listed above are who we think are the most trustworthy. However, using a VPN provider still means you're *trusting* the provider. In pretty much any other scenario you should be using a secure**-by-design** tool such as Tor.
|
||||
|
||||
## Sources and Further Reading
|
||||
|
||||
1. [VPN - a Very Precarious Narrative](https://schub.io/blog/2019/04/08/very-precarious-narrative.html) by Dennis Schubert
|
||||
1. [Tor Network Overview](tor-overview.md) by blacklight447
|
||||
1. [Tor Network Overview](../advanced/tor-overview.md)
|
||||
1. [IVPN Privacy Guides](https://www.ivpn.net/privacy-guides)
|
||||
1. ["Do I need a VPN?"](https://www.doineedavpn.com), a tool developed by IVPN to challenge aggressive VPN marketing by helping individuals decide if a VPN is right for them.
|
||||
|
||||
## Related VPN Information
|
||||
|
||||
- [The Trouble with VPN and Privacy Review Sites](https://jonaharagon.com/2019/11/the-trouble-with-vpn-and-privacy-review-sites/)
|
||||
- [The Trouble with VPN and Privacy Review Sites](https://blog.privacyguides.org/2019/11/20/the-trouble-with-vpn-and-privacy-review-sites/)
|
||||
- [Free VPN App Investigation](https://www.top10vpn.com/free-vpn-app-investigation/)
|
||||
- [Hidden VPN owners unveiled: 101 VPN products run by just 23 companies](https://vpnpro.com/blog/hidden-vpn-owners-unveiled-97-vpns-23-companies/)
|
||||
- [This Chinese company is secretly behind 24 popular apps seeking dangerous permissions](https://vpnpro.com/blog/chinese-company-secretly-behind-popular-apps-seeking-dangerous-permissions/)
|
@ -1,59 +0,0 @@
|
||||
---
|
||||
title: Welcome to Privacy Guides
|
||||
created: "2021-09-14"
|
||||
author: 'Jonah'
|
||||
template: overrides/blog.en.html
|
||||
---
|
||||
<script>
|
||||
window.location.href = "https://discuss.privacyguides.org/t/welcome-to-privacy-guides/39";
|
||||
</script>
|
||||
We are excited to announce the launch of [Privacy Guides](https://www.privacyguides.org/) and [r/PrivacyGuides](https://www.reddit.com/r/PrivacyGuides/), and welcome the privacy community to participate in our crowdsourced software recommendations and share tips and tricks for keeping your data safe online. Our goal is to be a central resource for privacy and security-related tips that are usable by anybody, and to carry on the trusted legacy of PrivacyTools.
|
||||
|
||||
As we [announced](https://web.archive.org/web/20210729184422/https://blog.privacytools.io/the-future-of-privacytools/) on the PrivacyTools blog in July, we made the decision to migrate off our former privacytools.io domain for various reasons, including an inability to contact the current domain holder for over a year and [growing](http://www.thedarksideof.io/) [issues](https://fortune.com/2020/08/31/crypto-fraud-io-domain-chagos-islands-uk-colonialism-cryptocurrency/) [with the .IO top-level domain](https://github.com/privacytools/privacytools.io/issues/1324). As attempts to regain ownership of the domain have proven fruitless, we found it necessary to make this switch sooner rather than later to ensure people would find out about this transition as soon as possible. This gives us adequate time to transition the domain name, which is currently redirecting to [www.privacyguides.org](https://www.privacyguides.org/), and it hopefully gives everyone enough time to notice the change, update bookmarks and websites, etc.
|
||||
|
||||
We chose the name Privacy Guides because it represents two things for us as an organization: An expansion beyond simple recommendation lists, and a goal of acting as the trusted guides to anyone newly learning about protecting their personal data.
|
||||
|
||||
As a name, it moves us past recommendations of various tools and focuses us more on the bigger picture. We want to provide more _education_ — rather than _direction_ — surrounding privacy-related topics. You can see the very beginnings of this work in our new page on [threat modeling](https://www.privacyguides.org/basics/threat-modeling/), or our [VPN](https://www.privacyguides.org/vpn) and [Email Provider](https://www.privacyguides.org/email) recommendations, but this is just the start of what we eventually hope to accomplish.
|
||||
|
||||
## Website Development
|
||||
|
||||
Our project has always been community-oriented and open-sourced. The source code for PrivacyTools is currently archived at [https://github.com/privacytools/privacytools.io](https://github.com/privacytools/privacytools.io). This repository will remain online as an archive of everything on PrivacyTools up to this transition.
|
||||
|
||||
The source code for our new website is available at [https://github.com/privacyguides/privacyguides.org](https://github.com/privacyguides/privacyguides.org). All updates from PrivacyTools have been merged into this new repository, and this is where all future work will take place.
|
||||
|
||||
## Services
|
||||
|
||||
PrivacyTools also runs a number of online services in use by many users. Some of these services are federated, namely Mastodon, Matrix, and PeerTube. Due to the technical nature of federation, it is impossible for us to change the domain name on these services, and because we cannot guarantee the future of the privacytools.io domain name we will be shutting down these services in the coming months.
|
||||
|
||||
We strongly urge users of these services to migrate to alternative providers in the near future. We hope that we will be able to provide enough time to make this as seamless of a transition as possible for our users.
|
||||
|
||||
At this time we do not plan on launching public Matrix, Mastodon, or PeerTube instances under the Privacy Guides domain. Any users affected by this transition can get in touch with [@jonah:aragon.sh](https://matrix.to/#/@jonah:aragon.sh) on Matrix if any assistance is needed.
|
||||
|
||||
Other services being operated by PrivacyTools currently will be discontinued. This includes Searx, WriteFreely, and GhostBin.
|
||||
|
||||
Our future direction for online services is uncertain, but will be a longer-term discussion within our community after our work is complete on this initial transition. We are very aware that whatever direction we move from here will have to be done in a way that is sustainable in the very long term.
|
||||
|
||||
## r/PrivacyGuides
|
||||
|
||||
PrivacyTools has a sizable community on Reddit, but to ensure a unified image we have created a new Subreddit at [r/PrivacyGuides](https://www.reddit.com/r/PrivacyGuides/) that we encourage all Reddit users to join.
|
||||
|
||||
In the coming weeks our current plan is to wind down discussions on r/privacytoolsIO. We will be opening r/PrivacyGuides to lots of the discussions most people are used to shortly, but encouraging general “privacy news” or headline-type posts to be posted on [r/Privacy](https://www.reddit.com/r/privacy/) instead. In our eyes, r/Privacy is the “who/what/when/where” of the privacy community on Reddit, the best place to find the latest news and information; while r/PrivacyGuides is the “how”: a place to share and discuss tools, tips, tricks, and other advice. We think focusing on these strong points will serve to strengthen both communities, and we hope the good moderators of r/Privacy agree 🙂
|
||||
|
||||
## Final Thoughts
|
||||
|
||||
The former active team at PrivacyTools universally agrees on this direction towards Privacy Guides, and will be working exclusively on Privacy Guides rather than any “PrivacyTools” related projects. We intend to redirect PriavcyTools to new Privacy Guides properties for as long as possible, and archive existing PrivacyTools work as a pre-transition snapshot.
|
||||
|
||||
Privacy Guides additionally welcomes back PrivacyTools’ former sysadmin [Jonah](https://twitter.com/JonahAragon), who will be joining the project’s leadership team.
|
||||
|
||||
We are not accepting sponsorships or donations at this time, while we work out our financial plan. We will be in touch with existing sponsors on PrivacyTools’ OpenCollective to determine what the best way forward is soon.
|
||||
|
||||
We are all very excited about this new brand and direction, and hope to have your continued support through all of this. If you have any questions, concerns, or suggestions, please reach out to us. We are always happy to receive guidance and input from our community! ❤
|
||||
|
||||
---
|
||||
|
||||
**_Privacy Guides_** _is a socially motivated website that provides information for protecting your data security and privacy._
|
||||
|
||||
- [Join r/PrivacyGuides on Reddit](https://www.reddit.com/r/privacyguides)
|
||||
- [Follow @privacy_guides on Twitter](https://twitter.com/privacy_guides)
|
||||
- [Collaborate with us on GitHub](https://github.com/privacyguides/privacyguides.org)
|
||||
- [Join our chat on Matrix](https://matrix.to/#/#privacyguides:aragon.sh)
|
Before Width: | Height: | Size: 440 KiB |
@ -1,33 +0,0 @@
|
||||
---
|
||||
title: Virtual Insanity
|
||||
image: 'blog/2021/11/01/virtual-insanity.jpg'
|
||||
created: "2021-11-01"
|
||||
author: 'Freddy'
|
||||
template: overrides/blog.en.html
|
||||
---
|
||||
<script>
|
||||
window.location.href = "https://discuss.privacyguides.org/t/virtual-insanity/38";
|
||||
</script>
|
||||
Not so long ago, the world was predicting the end for Facebook. Now it is no more. Gone from the face of the planet – never to be seen again. Except it isn’t.
|
||||
|
||||
Facebook has not disappeared. No, not even the damning ‘Facebook Papers’ can shut it down. Mark Zuckerberg stood up on stage, and announced that it had changed its name to: Meta.
|
||||
|
||||
A key part of this new vision for the company is the idea of the metaverse. If it sounds like something out of a sci-fi movie or novel, that’s because it is. The term was first coined by author Neal Stephenson in his 1992 book _Snow Crash_. Zuckerberg’s only problem is that novel was dystopian. Here’s a brief snippet of Stephenson’s description of the metaverse:
|
||||
|
||||
> “Your avatar can look any way you want it to, up to the limitations of your equipment. If you’re ugly, you can make your avatar beautiful. If you’ve just gotten out of bed, your avatar can still be wearing beautiful clothes and professionally applied makeup. You can look like a gorilla or a dragon or a giant talking penis in the Metaverse. Spend five minutes walking down the Street and you will see all of these.”
|
||||
|
||||
In fairness, that doesn’t seem unlike the sort of content you see on Facebook today. Compare this to what Zuckerberg [wrote](https://about.fb.com/news/2021/10/founders-letter/) in his 2021 Founders Letter:
|
||||
|
||||
> “In this future, you will be able to teleport instantly as a hologram to be at the office without a commute, at a concert with friends, or in your parents’ living room to catch up. This will open up more opportunity no matter where you live. You’ll be able to spend more time on what matters to you, cut down time in traffic, and reduce your carbon footprint.”
|
||||
|
||||
The similarities are uncanny.
|
||||
|
||||
This wouldn’t be the first time that Facebook has been described as dystopian. One _Mashable_ article [called](https://mashable.com/article/facebook-dystopia) the social media giant ‘Orwellian and Huxleyan at the same time.’ Quite a feat.
|
||||
|
||||
The ‘Facebook Papers’ have some pretty shocking - though not entirely surprising - revelations as well. The leaked documents demonstrate the extent to which Facebook values engagement above all else (including a good experience). For instance, we learnt that the algorithm is [optimised](https://www.wired.com/story/facebook-transparency-biggest-sites-pages-links/) for low quality content, [prioritises](https://www.washingtonpost.com/technology/2021/10/26/facebook-angry-emoji-algorithm/) rage over happiness for profit, and [promotes](https://www.theatlantic.com/ideas/archive/2021/10/facebook-papers-democracy-election-zuckerberg/620478/) extremist content. Most alarming was that the firm [failed](https://apnews.com/article/the-facebook-papers-covid-vaccine-misinformation-c8bbc569be7cc2ca583dadb4236a0613) to reduce disinformation during the pandemic even when given the opportunity. Zuckerberg said no to this, presumably because it would reduce engagement and, in turn, Facebook’s advertising revenue.
|
||||
|
||||
Let’s not forget all Facebook’s previous scandals. From the Cambridge Analytica kerfuffle to [conducting](https://www.theregister.com/2014/06/29/researchers_mess_with_facebook_users_emotions/) manipulative social experiments in secret.
|
||||
|
||||
In light of this, the name change makes sense. It deceives you into thinking the company has evolved into a benevolent corporation, when it simply hasn’t. Zuckerberg would much prefer you to think about Meta as a playful universe where you can meet with friends across the globe in virtual reality. Where humans train themselves to sound like heavily discounted robots. Where Facebook is not a Horrid Company.
|
||||
|
||||
Despite all this: Meta _is_ Facebook, just worse. It doesn’t matter about the new name, the company has not changed. It will still be violating our privacy, daily, on an unprecedented scale. It will still be as reliably scandalous as a Carry On film. It will still be terrible. Plus it will have all the added claptrap of a sub-par holographic universe attached.
|
@ -1,63 +0,0 @@
|
||||
---
|
||||
title: 'Firefox Privacy: 2021 Update'
|
||||
image: 'blog/2021/12/01/firefox-privacy-2021-update.png'
|
||||
created: "2021-12-01"
|
||||
author: 'Daniel'
|
||||
template: overrides/blog.en.html
|
||||
---
|
||||
<script>
|
||||
window.location.href = "https://discuss.privacyguides.org/t/firefox-privacy-2021-update/37";
|
||||
</script>
|
||||
A lot changed between 2019 and now, not least in regards to Firefox. Since our last post, Mozilla has [improved](https://blog.mozilla.org/en/products/firefox/latest-firefox-rolls-out-enhanced-tracking-protection-2-0-blocking-redirect-trackers-by-default/) privacy with [Enhanced Tracking Protection (ETP)](https://blog.mozilla.org/en/products/firefox/firefox-now-available-with-enhanced-tracking-protection-by-default/). Earlier this year Mozilla introduced [Total Cookie Protection](https://blog.mozilla.org/security/2021/02/23/total-cookie-protection/) (Dynamic First Party Isolation dFPI). This was then further tightened with [Enhanced Cookie Clearing](https://blog.mozilla.org/security/2021/08/10/firefox-91-introduces-enhanced-cookie-clearing/). We’re also looking very forward to [Site Isolation](https://blog.mozilla.org/security/2021/05/18/introducing-site-isolation-in-firefox/) (code named Fission) being enabled by default in the coming releases.
|
||||
|
||||
Now that so many privacy features are built into the browser, there is little need for extensions made by third-party developers. Accordingly, we have updated our very outdated [browser](../../../../desktop-browsers.md) section. If you’ve got an old browser profile we suggest **creating a new one**. Some of the old advice may make your browser _more_ unique.
|
||||
|
||||
#### Privacy Tweaks “about:config”
|
||||
|
||||
We’re no longer recommending that users set `about:config` switches manually. Those switches need to be up to date and continuously maintained. They should be studied before blindly making modifications. Sometimes their behaviour changes in between Firefox releases, is superseded by other keys or they are removed entirely. We do not see any point in duplicating the efforts of the community [Arkenfox](https://github.com/arkenfox/user.js) project. Arkenfox has very good documentation in their [wiki](https://github.com/arkenfox/user.js/wiki) and we use it ourselves.
|
||||
|
||||
#### LocalCDN and Decentraleyes
|
||||
|
||||
These extensions aren’t required with Total Cookie Protection (TCP), which is enabled if you’ve set Enhanced Tracking Protection (ETP) to **Strict**.
|
||||
|
||||
Replacing scripts on CDNs with local versions is not a comprehensive solution and is a form of [enumeration of badness](https://www.ranum.com/security/computer_security/editorials/dumb/). While it may work with some scripts that are included it doesn’t help with most other third-party connections.
|
||||
|
||||
CDN extensions never really improved privacy as far as sharing your IP address was concerned and their usage is fingerprintable as this Tor Project developer [points out](https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/22089#note_2639603). They are the wrong tool for the job and are not a substitute for a good VPN or Tor. Its worth noting the [resources](https://git.synz.io/Synzvato/decentraleyes/-/tree/master/resources) for Decentraleyes are hugely out of date and would not be likely used anyway.
|
||||
|
||||
#### NeatURLs and ClearURLS
|
||||
|
||||
Previously we recommended ClearURLs to remove tracking parameters from URLs you might visit. These extensions are no longer needed with uBlock Origin’s [`removeparam`](https://github.com/gorhill/uBlock/wiki/Static-filter-syntax#removeparam) feature.
|
||||
|
||||
#### HTTPS Everywhere
|
||||
|
||||
The EFF announced back in September they were [deprecating HTTPS-Everywhere](https://www.eff.org/deeplinks/2021/09/https-actually-everywhere) as most browsers now have an HTTPS-Only feature. We are pleased to see privacy features built into the browser and Firefox 91 introduced [HTTPS by Default in Private Browsing](https://blog.mozilla.org/security/2021/08/10/firefox-91-introduces-https-by-default-in-private-browsing/).
|
||||
|
||||
#### Multi Account Containers and Temporary Containers
|
||||
|
||||
Container extensions aren’t as important as they used to be for privacy now that we have [Total Cookie Protection](https://blog.mozilla.org/security/2021/02/23/total-cookie-protection/).
|
||||
|
||||
Multi Account Container will still have some use if you use [Mozilla VPN](https://en.wikipedia.org/wiki/Mozilla_VPN) as it is going to be [integrated](https://github.com/mozilla/multi-account-containers/issues/2210) allowing you to configure specified containers to use a particular VPN server. Another use might be if you want to login to multiple accounts on the same domain.
|
||||
|
||||
#### Just-In-Time Compilation (JIT)
|
||||
|
||||
What is “Disable JIT” in Bromite? This option disables the JavaScript performance feature [JIT](https://en.wikipedia.org/wiki/Just-in-time_compilation). It can increase security but at the cost of performance. Those trade-offs vary wildly and are explored in [this](https://microsoftedge.github.io/edgevr/posts/Super-Duper-Secure-Mode/) publication by Johnathan Norman from the Microsoft Edge team. This option is very much a security vs performance option.
|
||||
|
||||
#### Mozilla browsers on Android
|
||||
|
||||
We don’t recommend any Mozilla based browsers on Android. This is because we don’t feel that [GeckoView](https://mozilla.github.io/geckoview) is quite as secure as it could be as it doesn’t support [site isolation](https://hacks.mozilla.org/2021/05/introducing-firefox-new-site-isolation-security-architecture), soon to be coming in desktop browsers or [isolated processes](https://bugzilla.mozilla.org/show_bug.cgi?id=1565196).
|
||||
|
||||
We also noticed that there isn’t an option for [HTTPS-Only mode](https://github.com/mozilla-mobile/fenix/issues/16952#issuecomment-907960218). The only way to get something similar is to install the [deprecated](https://www.eff.org/deeplinks/2021/09/https-actually-everywhere) extension [HTTPS Everywhere](https://www.eff.org/https-everywhere).
|
||||
|
||||
There are places which Firefox on Android shines for example browsing news websites where you may want to _partially_ load some JavaScript (but not all) using medium or hard [blocking mode](https://github.com/gorhill/uBlock/wiki/Blocking-mode). The [reader view](https://support.mozilla.org/en-US/kb/view-articles-reader-view-firefox-android) is also pretty cool. We expect things will change in the future, so we’re keeping a close eye on this.
|
||||
|
||||
#### Fingerprinting
|
||||
|
||||
Firefox has the ability to block known third party [fingerprinting resources](https://blog.mozilla.org/security/2020/01/07/firefox-72-fingerprinting/). Mozilla has [advanced protection](https://support.mozilla.org/kb/firefox-protection-against-fingerprinting) against fingerprinting (RFP is enabled with Arkenfox).
|
||||
|
||||
We do not recommend extensions that promise to change your [browser fingerprint](https://blog.torproject.org/browser-fingerprinting-introduction-and-challenges-ahead/). Some of those extensions [are detectable](https://www.cse.chalmers.se/~andrei/codaspy17.pdf) by websites through JavaScript and [CSS](https://hal.archives-ouvertes.fr/hal-03152176/file/style-fingerprinting-usenix.pdf) methods, particularly those which inject anything into the web content.
|
||||
|
||||
This includes **all** extensions that try to change the user agent or other browser behaviour to prevent fingerprinting. We see these often recommended on Reddit and would like to say that they will likely make you more unique and can be circumvented. Arkenfox has [a good list](https://github.com/arkenfox/user.js/wiki/4.1-Extensions#small_orange_diamond-%EF%B8%8F-anti-fingerprinting-extensions-fk-no) of extensions you shouldn’t be using. They also have [another list](https://github.com/arkenfox/user.js/wiki/4.1-Extensions#small_orange_diamond-dont-bother) of extensions you needn’t bother with either. We also like to say testing sites which show you how unique you are in a set of users are often using hugely tainted results that are not indicative of real-world usage.
|
||||
|
||||
----------
|
||||
|
||||
_Special thanks to [Thorin-Oakenpants](https://github.com/Thorin-Oakenpants) and [Tommy](https://tommytran.io) for their help with providing advice and further documentation during the research phase.
|
Before Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 358 KiB |
@ -1,31 +0,0 @@
|
||||
---
|
||||
title: '"Move Fast and Break Things"'
|
||||
image: 'blog/2022/04/04/move-fast-and-break-things.jpg'
|
||||
created: "2022-04-04"
|
||||
author: 'Freddy'
|
||||
template: overrides/blog.en.html
|
||||
---
|
||||
<script>
|
||||
window.location.href = "https://discuss.privacyguides.org/t/move-fast-and-break-things/36";
|
||||
</script>
|
||||
Mark Zuckerberg does not look comfortable on stage. Yet, there he was proclaiming that “the future is private”. If someone has to tell you that they care about your privacy, they probably don’t.
|
||||
|
||||
For someone trying not to appear like a cartoon villain, Zuckerberg doesn’t do a great job. He gives the impression of some strange cyborg algorithmically attempting to impersonate human life. His movements are not quite robotic, but he lacks the charisma you might expect from one of the most powerful people on the planet. A _New Yorker_ [profile](https://www.newyorker.com/magazine/2018/09/17/can-mark-zuckerberg-fix-facebook-before-it-breaks-democracy) of him revealed that he had an affinity for Emperor Augustus, an ancient Roman tyrant. ‘Through a really harsh approach, [Augustus] established two hundred years of world peace,’ he said.
|
||||
|
||||
It’s the first part of that sentence that is worrying.
|
||||
|
||||
Is this what Zuckerberg sees himself as: a modern-day emperor hellbent on using any means he can to gain world peace? Probably not, but it would have been reassuring if he just told us he liked doing Sudoku and dad-dancing with his daughter (interestingly named August).
|
||||
|
||||
The Zuck once [joked](https://www.esquire.com/uk/latest-news/a19490586/mark-zuckerberg-called-people-who-handed-over-their-data-dumb-f/) to a friend that he could get them ‘info’ about anyone in Harvard. He had email addresses, pictures, real addresses: the lot. When the friend asked how, this was his riposte: ‘People just submitted it. I don’t know why. They trust me. Dumb f*cks.’ We now live in a reality where Zuckerberg can get ‘info’ about almost anyone in the world.
|
||||
|
||||
Like a depraved tabloid journalist fishing through a minor celebrity’s trash, Facebook collects everything it can about its users. Even if it means sifting through garbage, they want that data. But Facebook is not technically in the data business. It is in what author and professor Carissa Véliz [terms](https://aeon.co/essays/privacy-matters-because-it-empowers-us-all) ‘the business of power’ – which sounds rather more sinister than flogging off mildly irritating adverts.
|
||||
|
||||
Véliz argues that privacy is a form of power. It is the power to influence you, show you adverts and predict your behaviour. In this sense, personal data is being used to make us do things we otherwise would not do: to buy a certain product or to vote a certain way. Filmmaker Laura Poitras [described](https://www.washingtonpost.com/news/the-switch/wp/2014/10/23/snowden-filmmaker-laura-poitras-facebook-is-a-gift-to-intelligence-agencies/) Facebook as ‘a gift to intelligence agencies’. It allows governments to arrest people planning to participate in protests before they have even begun.
|
||||
|
||||
The social media giant is tip-toeing ever closer into our personal lives. When Facebook encountered competition it just bought it, adding Instagram and WhatsApp to its roster. The company even tried to make its own cryptocurrency so that one day the Facebook would control all our purchases too. Earlier this year, the project was [killed](https://www.ft.com/content/a88fb591-72d5-4b6b-bb5d-223adfb893f3) by regulators. It is worth noting that when Zuckerberg purchased WhatsApp and Instagram, they had no revenue. Author Tim Wu notes in his book _The Attention Merchants_ that Facebook is ‘a business with an exceedingly low ratio of invention to success’. Perhaps that is a part of Zuck’s genius.
|
||||
|
||||
‘Move fast and break things’ was the old company motto. When there were a few too many scandals, they moved fast and [rebranded](https://www.privacyguides.org/blog/2021/11/01/virtual-insanity) to Meta. No one expected online privacy to be the ‘thing’ they broke.
|
||||
|
||||
Before it became a global behemoth, Facebook started out as a dorm-room project. Zuckerberg sat at his keyboard after a few drinks and built it mainly because he could. It now has nearly three billion users. In the same way, Facebook [conducted](https://www.theguardian.com/technology/2014/jul/02/facebook-apologises-psychological-experiments-on-users) social experiments seemingly just for fun. Why he did it doesn’t really matter. As John Lanchester [put it](https://www.lrb.co.uk/the-paper/v39/n16/john-lanchester/you-are-the-product): he simply did it _because_.
|
||||
|
||||
It is unfair to say that Zuckerberg does not care about privacy – he does. That’s why he [spared](https://www.theguardian.com/technology/2013/oct/11/mark-zuckerberg-facebook-neighbouring-houses) no expense buying the houses that surrounded his home. Zuckerberg knows the power of privacy, which is painfully ironic given he has built his career on exploiting it. For Zuckerberg, at least, the future is private. It’s the rest of us that should be worried.
|
Before Width: | Height: | Size: 774 KiB |
@ -1,45 +0,0 @@
|
||||
---
|
||||
title: '"Hide Nothing"'
|
||||
image: 'blog/2022/06/09/hide-nothing.jpg'
|
||||
created: "2022-06-09"
|
||||
author: 'Dan Arel'
|
||||
template: overrides/blog.en.html
|
||||
---
|
||||
<script>
|
||||
window.location.href = "https://discuss.privacyguides.org/t/hide-nothing/35";
|
||||
</script>
|
||||
In the wake of the September 11, 2001, attack on the United States, the US government enacted laws that weakened citizen privacy in the name of national emergency. This sent up many red flags for human rights and privacy advocates.
|
||||
|
||||
These concerns were met with “if you have nothing to hide, you have nothing to fear.” The argument goes that if you're not doing anything illegal, then these violations of your privacy shouldn't bother you. If you care about privacy, you clearly can't be up to anything good.
|
||||
|
||||
On the surface, this seems true to many people – but the reality is very different. We may not have had anything to hide in the immediate aftermath of 9/11, but that was not the only information being sought after by governments. Indeed, following the passage of the Patriot Act in the US, the FBI issued 192,499 [National Security Letters](https://www.aclu.org/other/national-security-letters), meaning they collected the records and online activity of nearly 200,000 people.
|
||||
|
||||
In the end it only convicted one person.
|
||||
|
||||
Now, many have argued that stopping one terrorist might be worth giving up some security for, but [according](https://www.aclu.org/issues/national-security/privacy-and-surveillance/surveillance-under-patriot-act) to the ACLU, the conviction would have occurred without the Patriot Act.
|
||||
|
||||
Many legal actions you take today could be deemed illegal by future laws or future government. In the US today there is discussion around the possibility of Roe v. Wade being overturned, allowing states to outlaw abortions. You may not currently feel the need to hide internet searches, menstrual cycle apps, or donations to women's health clinics today because it's not illegal, but tomorrow that information could be used against you.
|
||||
|
||||
In countries were organizing around political dissent is legal, that doesn't mean the government is tracking those taking part and using that information to create informants or infiltrate such groups. Or worse, when or if laws change, using that surveillance to punish those involved.
|
||||
|
||||
And even if you break away from the legal aspects, we all have something to hide. You may not be ready to reveal your sexual or gender identity, but your internet usage could potentially do that for you. You don't want to make your bank account public; you have that information to hide. And you can continue to list things about your life you'd just rather not make public, regardless of potential legality.
|
||||
|
||||
In July of 2021, a Catholic priest by the name of Jeffrey Burrill lost his job and was forced to resign after data collected through his cell phone showed that he was active on the gay dating app Grindr, and that he had visited multiple gay bars in the area. [According](https://www.washingtonpost.com/religion/2021/07/20/bishop-misconduct-resign-burrill/) to the *Washington Post*:
|
||||
|
||||
> “A mobile device correlated to Burrill emitted app data signals from the location-based hookup app Grindr on a near-daily basis during parts of 2018, 2019, and 2020 —– at both his USCCB office and his USCCB-owned residence, as well as during USCCB meetings and events in other cities,” the Pillar reported.
|
||||
|
||||
> “The data obtained and analyzed by The Pillar conveys mobile app date signals during two 26-week periods, the first in 2018 and the second in 2019 and 2020. The data was obtained from a data vendor and authenticated by an independent data consulting firm contracted by The Pillar,” the site reported. It did not identify who the vendor was or if the site bought the information or got it from a third party.
|
||||
|
||||
> The Pillar story says app data “correlated” to Burrill's phone shows the priest visited gay bars, including while traveling for the USCCB.
|
||||
|
||||
While it was not clear who was tracking Burrill's device, the Post went on to say that:
|
||||
|
||||
> Privacy experts have long raised concerns about “anonymized” data collected by apps and sold to or shared with aggregators and marketing companies. While the information is typically stripped of obviously identifying fields, like a user's name or phone number, it can contain everything from age and gender to a device ID. It's possible for experts to de-anonymize some of this data and connect it to real people.
|
||||
|
||||
While Burrill was without a doubt in violation of his work's own code of conduct, he did decide on his own to be a priest. However, his personal life was not harming others and was just that, his personal life. While the question looms about who was tracking him to begin with and why, the fact it was so easy to do is alarming.
|
||||
|
||||
What if Burrill wasn't a priest, but just happened to work for someone who held anti-homosexual views who used this data to out him, humiliate him, and fire him under false pretenses? This data, which should be private could (and likely did in the real-life circumstance) ruin his life.
|
||||
|
||||
That is what makes internet privacy so important. It's not hiding nefarious activity, it's that we all have an innate right to our privacy.
|
||||
|
||||
You might not feel today that you have anything to hide, but you might not feel that way tomorrow and once something is public, it cannot be made private again.
|
@ -1,15 +1,15 @@
|
||||
---
|
||||
title: "Calendar and Contact Sync"
|
||||
icon: material/calendar-account
|
||||
title: "Calendar Sync"
|
||||
icon: material/calendar
|
||||
---
|
||||
Calendars and contacts contain some of your most sensitive data; use products that implement E2EE at rest to prevent a provider from reading them.
|
||||
Calendars contain some of your most sensitive data; use products that implement E2EE at rest to prevent a provider from reading them.
|
||||
|
||||
## Tutanota
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
{ align=right }
|
||||
{ align=right }
|
||||
{ align=right }
|
||||
|
||||
**Tutanota** offers a free and encrypted calendar across their supported platforms. Features include: automatic E2EE of all data, sharing features, import/export functionality, multi-factor authentication, and [more](https://tutanota.com/calendar-app-comparison/).
|
||||
|
||||
@ -31,39 +31,14 @@ Calendars and contacts contain some of your most sensitive data; use products th
|
||||
- [:simple-flathub: Flathub](https://flathub.org/apps/details/com.tutanota.Tutanota)
|
||||
- [:octicons-browser-16: Web](https://mail.tutanota.com/)
|
||||
|
||||
## EteSync
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
|
||||
**EteSync** is a secure, E2EE, and privacy-respecting cloud backup and synchronization software for your personal information, including contacts and calendars. There are native clients for Android, iOS, with a web client and an adapter layer for most desktop clients available too. Etesync does [not](https://www.etesync.com/faq/#2fa) currently support multi-factor authentication.
|
||||
|
||||
EteSync offers a [SaaS](https://dashboard.etebase.com/user/partner/pricing/), or you can host the server yourself for free.
|
||||
|
||||
[:octicons-home-16: Homepage](https://www.etesync.com){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://www.etesync.com/tos/#privacy){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://www.etesync.com/user-guide/){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/etesync){ .card-link title="Source Code" }
|
||||
[:octicons-heart-16:](https://www.etesync.com/contribute/){ .card-link title=Contribute }
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=com.etesync.syncadapter)
|
||||
- [:simple-appstore: App Store](https://apps.apple.com/us/app/apple-store/id1489574285)
|
||||
- [:octicons-device-desktop-16: Client Setup](https://github.com/etesync/etesync-dav/blob/master/README.md#specific-client-notes-and-instructions)
|
||||
- [:simple-docker: Docker Hub](https://hub.docker.com/r/victorrds/etesync)
|
||||
|
||||
## Proton Calendar
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
{ align=right }
|
||||
|
||||
**Proton Calendar** is an encrypted calendar service available to Proton members via web or mobile clients. Features include: automatic E2EE of all data, sharing features, import/export functionality, and [more](https://proton.me/support/proton-calendar-guide). Those on the free tier get access to a single calendar, whereas paid subscribers can create up to 20 calendars. Extended sharing functionality is also limited to paid subscribers.
|
||||
|
||||
**Proton Mail** can be used to synchronize contacts. Likewise, the service is currently only available via the web and mobile clients.
|
||||
|
||||
[:octicons-home-16: Homepage](https://proton.me/calendar){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://proton.me/legal/privacy){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://proton.me/support/proton-calendar-guide){ .card-link title=Documentation}
|
||||
@ -74,5 +49,20 @@ Calendars and contacts contain some of your most sensitive data; use products th
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=me.proton.android.calendar)
|
||||
- [:octicons-browser-16: Web](https://calendar.proton.me)
|
||||
|
||||
!!! warning
|
||||
Proton [does not](https://proton.me/support/proton-contacts#verify) use E2EE for your contact names and email addresses.
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
### Minimum Qualifications
|
||||
|
||||
- Must sync and store information with E2EE to ensure data is not visible to the service provider.
|
||||
|
||||
### Best-Case
|
||||
|
||||
Our best-case criteria represents what we would like to see from the perfect project in this category. Our recommendations may not include any or all of this functionality, but those which do may rank higher than others on this page.
|
||||
|
||||
- Should integrate with native OS calendar and contact management apps if applicable.
|
@ -1,76 +0,0 @@
|
||||
---
|
||||
title: "Cloud Storage"
|
||||
icon: material/file-cloud
|
||||
---
|
||||
Many cloud storage providers require your full trust that they will not look at your files. The alternatives listed below eliminate the need for trust by either putting you in control of your data or by implementing E2EE.
|
||||
|
||||
If these alternatives do not fit your needs, we suggest you look into [Encryption Software](encryption.md).
|
||||
|
||||
## Cryptee
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
{ align=right }
|
||||
|
||||
**Cryptee** is a web-based E2EE data storage service. It primarily focuses on photo and video storage as well document editing. Cryptee is a PWA, which means that it works seamlessly across all modern devices without requiring native apps for each respective platform.
|
||||
|
||||
Cryptee offers 100MB of storage for free, with paid options if you need more. Sign-up doesn't require an e-mail or other personally identifiable information.
|
||||
|
||||
[:octicons-home-16: Homepage](https://crypt.ee){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://crypt.ee/privacy){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://crypt.ee/help){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/cryptee){ .card-link title="Source Code" }
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:octicons-globe-16: PWA](https://crypt.ee/download)
|
||||
|
||||
## Nextcloud
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
|
||||
**Nextcloud** is a suite of free and open-source client-server software for creating your own file hosting services on a private server you control. It also comes with experimental E2EE.
|
||||
|
||||
[:octicons-home-16: Homepage](https://nextcloud.com){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://nextcloud.com/privacy){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://nextcloud.com/support/){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/nextcloud){ .card-link title="Source Code" }
|
||||
[:octicons-heart-16:](https://nextcloud.com/contribute/){ .card-link title=Contribute }
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=com.nextcloud.client)
|
||||
- [:simple-appstore: App Store](https://apps.apple.com/app/id1125420102)
|
||||
- [:simple-github: GitHub](https://github.com/nextcloud/android/releases)
|
||||
- [:simple-windows11: Windows](https://nextcloud.com/install/#install-clients)
|
||||
- [:simple-apple: macOS](https://nextcloud.com/install/#install-clients)
|
||||
- [:simple-linux: Linux](https://nextcloud.com/install/#install-clients)
|
||||
- [:simple-freebsd: FreeBSD](https://www.freshports.org/www/nextcloud)
|
||||
- [:simple-openbsd: OpenBSD](https://openports.se/www/nextcloud)
|
||||
- [:simple-netbsd: NetBSD](https://pkgsrc.se/www/php-nextcloud)
|
||||
|
||||
We recommend checking if your Nextcloud provider supports E2EE, otherwise you have to trust the provider to not look at your files.
|
||||
|
||||
When self-hosting, you should also enable E2EE to protect against your hosting provider snooping on your data.
|
||||
|
||||
## Proton Drive
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
|
||||
**Proton Drive** is an E2EE general file storage service by the popular encrypted email provider [Proton Mail](https://proton.me/mail).
|
||||
|
||||
[:octicons-home-16: Homepage](https://proton.me/drive){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://proton.me/legal/privacy){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://proton.me/support/drive){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/ProtonMail/WebClients){ .card-link title="Source Code" }
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=me.proton.android.drive)
|
||||
|
||||
Proton Drive is currently only available through a web client and an Android app.
|
59
docs/cloud.md
Normal file
@ -0,0 +1,59 @@
|
||||
---
|
||||
title: "Cloud Storage"
|
||||
icon: material/file-cloud
|
||||
---
|
||||
Many cloud storage providers require your full trust that they will not look at your files. The alternatives listed below eliminate the need for trust by either putting you in control of your data or by implementing E2EE.
|
||||
|
||||
If these alternatives do not fit your needs, we suggest you look into [Encryption Software](encryption.md).
|
||||
|
||||
??? question "Looking for Nextcloud?"
|
||||
|
||||
Nextcloud is [still a recommended tool](productivity.md) for self-hosting a file management suite, however we do not recommend third-party Nextcloud storage providers at the moment, because we do not recommend Nextcloud's built-in E2EE functionality for home users.
|
||||
|
||||
## Proton Drive
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
|
||||
**Proton Drive** is an E2EE general file storage service by the popular encrypted email provider [Proton Mail](https://proton.me/mail).
|
||||
|
||||
[:octicons-home-16: Homepage](https://proton.me/drive){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://proton.me/legal/privacy){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://proton.me/support/drive){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/ProtonMail/WebClients){ .card-link title="Source Code" }
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=me.proton.android.drive)
|
||||
- [:simple-appstore: App Store](https://apps.apple.com/app/id1509667851)
|
||||
|
||||
Proton Drive's mobile clients were released in December 2022 and are not yet open-source. Proton has historically delayed their source code releases until after initial product releases, and [plans to](https://www.reddit.com/r/ProtonDrive/comments/zf14i8/comment/izdwmme/?utm_source=share&utm_medium=web2x&context=3) release the source code by the end of 2023. Proton Drive desktop clients are still in development.
|
||||
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
### Minimum Requirements
|
||||
|
||||
- Must enforce end-to-end encryption.
|
||||
- Must offer a free plan or trial period for testing.
|
||||
- Must support TOTP or FIDO2 multi-factor authentication, or Passkey logins.
|
||||
- Must offer a web interface which supports basic file management functionality.
|
||||
- Must allow for easy exports of all files/documents.
|
||||
- Must use standard, audited encryption.
|
||||
|
||||
### Best-Case
|
||||
|
||||
Our best-case criteria represents what we would like to see from the perfect project in this category. Our recommendations may not include any or all of this functionality, but those which do may rank higher than others on this page.
|
||||
|
||||
- Clients should be open-source.
|
||||
- Clients should be audited in their entirety by an independent third-party.
|
||||
- Should offer native clients for Linux, Android, Windows, macOS, and iOS.
|
||||
- These clients should integrate with native OS tools for cloud storage providers, such as Files app integration on iOS, or DocumentsProvider functionality on Android.
|
||||
- Should support easy file-sharing with other users.
|
||||
- Should offer at least basic file preview and editing functionality on the web interface.
|
@ -1,8 +0,0 @@
|
||||
---
|
||||
title: Code of Conduct
|
||||
hide:
|
||||
- toc
|
||||
- feedback
|
||||
---
|
||||
|
||||
{% include 'CODE_OF_CONDUCT.md' %}
|
@ -6,24 +6,6 @@ When sharing files, be sure to remove associated metadata. Image files commonly
|
||||
|
||||
## Desktop
|
||||
|
||||
### ExifCleaner
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
|
||||
**ExifCleaner** is a freeware, open-source graphical app that uses [ExifTool](https://exiftool.org) to remove Exif metadata from images, videos, and PDF documents using a simple drag and drop interface. It supports multi-core batch processing and dark mode.
|
||||
|
||||
[:octicons-home-16: Homepage](https://exifcleaner.com){ .md-button .md-button--primary }
|
||||
[:octicons-info-16:](https://github.com/szTheory/exifcleaner#readme){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/szTheory/exifcleaner){ .card-link title="Source Code" }
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:simple-windows11: Windows](https://github.com/szTheory/exifcleaner/releases)
|
||||
- [:simple-apple: macOS](https://github.com/szTheory/exifcleaner/releases)
|
||||
- [:simple-linux: Linux](https://github.com/szTheory/exifcleaner/releases)
|
||||
|
||||
### MAT2
|
||||
|
||||
!!! recommendation
|
||||
@ -64,6 +46,7 @@ When sharing files, be sure to remove associated metadata. Image files commonly
|
||||
??? downloads
|
||||
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=com.none.tom.exiferaser)
|
||||
- [:octicons-moon-16: Accrescent](https://accrescent.app/app/com.none.tom.exiferaser)
|
||||
- [:simple-github: GitHub](https://github.com/Tommy-Geenexus/exif-eraser/releases)
|
||||
|
||||
The metadata that is erased depends on the image's file type:
|
||||
@ -147,3 +130,14 @@ The app offers multiple ways to erase metadata from images. Namely:
|
||||
```bash
|
||||
exiftool -all= *.file_extension
|
||||
```
|
||||
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
- Apps developed for open-source operating systems must be open-source.
|
||||
- Apps must be free and should not include ads or other limitations.
|
@ -4,7 +4,7 @@ icon: material/laptop
|
||||
---
|
||||
These are our currently recommended desktop web browsers and configurations for standard/non-anonymous browsing. If you need to browse the internet anonymously, you should use [Tor](tor.md) instead. In general, we recommend keeping your browser extensions to a minimum; they have privileged access within your browser, require you to trust the developer, can make you [stand out](https://en.wikipedia.org/wiki/Device_fingerprint#Browser_fingerprint), and [weaken](https://groups.google.com/a/chromium.org/g/chromium-extensions/c/0ei-UCHNm34/m/lDaXwQhzBAAJ) site isolation.
|
||||
|
||||
### Firefox
|
||||
## Firefox
|
||||
|
||||
!!! recommendation
|
||||
|
||||
@ -28,7 +28,7 @@ These are our currently recommended desktop web browsers and configurations for
|
||||
!!! warning
|
||||
Firefox includes a unique [download token](https://bugzilla.mozilla.org/show_bug.cgi?id=1677497#c0) in downloads from Mozilla's website and uses telemetry in Firefox to send the token. The token is **not** included in releases from the [Mozilla FTP](https://ftp.mozilla.org/pub/firefox/releases/).
|
||||
|
||||
#### Recommended Configuration
|
||||
### Recommended Configuration
|
||||
|
||||
Tor Browser is the only way to truly browse the internet anonymously. When you use Firefox, we recommend changing the following settings to protect your privacy from certain parties, but all browsers other than [Tor Browser](tor.md#tor-browser) will be traceable by *somebody* in some regard or another.
|
||||
|
||||
@ -50,9 +50,7 @@ This protects you from persistent cookies, but does not protect you against cook
|
||||
|
||||
##### Search Suggestions
|
||||
|
||||
- [ ] Disable **Suggestions from the web**
|
||||
- [ ] Disable **Suggestions from sponsors**
|
||||
- [ ] Disable **Improve the Firefox Suggest experience**
|
||||
- [ ] Uncheck **Provide search suggestions**
|
||||
|
||||
Search suggestion features may not be available in your region.
|
||||
|
||||
@ -66,21 +64,26 @@ Search suggestions send everything you type in the address bar to the default se
|
||||
|
||||
> Firefox sends data about your Firefox version and language; device operating system and hardware configuration; memory, basic information about crashes and errors; outcome of automated processes like updates, safebrowsing, and activation to us. When Firefox sends data to us, your IP address is temporarily collected as part of our server logs.
|
||||
|
||||
Additionally, the Firefox Accounts service collects [some technical data](https://www.mozilla.org/en-US/privacy/firefox/#firefox-accounts). If you use a Firefox Account you can opt-out:
|
||||
|
||||
1. Open your [profile settings on accounts.firefox.com](https://accounts.firefox.com/settings#data-collection)
|
||||
2. Uncheck **Data Collection and Use** > **Help improve Firefox Accounts**
|
||||
|
||||
##### HTTPS-Only Mode
|
||||
|
||||
- [x] Select **Enable HTTPS-Only Mode in all windows**
|
||||
|
||||
This prevents you from unintentionally connecting to a website in plain-text HTTP. Sites without HTTPS are uncommon nowadays, so this should have little to no impact on your day to day browsing.
|
||||
|
||||
#### Sync
|
||||
### Firefox Sync
|
||||
|
||||
[Firefox Sync](https://hacks.mozilla.org/2018/11/firefox-sync-privacy/) allows your browsing data (history, bookmarks, etc.) to be accessible on all your devices and protects it with E2EE.
|
||||
|
||||
#### Arkenfox (advanced)
|
||||
### Arkenfox (advanced)
|
||||
|
||||
The [Arkenfox project](https://github.com/arkenfox/user.js) provides a set of carefully considered options for Firefox. If you [decide](https://github.com/arkenfox/user.js/wiki/1.1-To-Arkenfox-or-Not) to use Arkenfox, a [few options](https://github.com/arkenfox/user.js/wiki/3.2-Overrides-[Common]) are subjectively strict and/or may cause some websites to not work properly - [which you can easily change](https://github.com/arkenfox/user.js/wiki/3.1-Overrides) to suit your needs. We **strongly recommend** reading through their full [wiki](https://github.com/arkenfox/user.js/wiki). Arkenfox also enables [container](https://support.mozilla.org/en-US/kb/containers#w_for-advanced-users) support.
|
||||
|
||||
### Brave
|
||||
## Brave
|
||||
|
||||
!!! recommendation
|
||||
|
||||
@ -105,7 +108,7 @@ The [Arkenfox project](https://github.com/arkenfox/user.js) provides a set of ca
|
||||
|
||||
1. We advise against using the Flatpak version of Brave, as it replaces Chromium's sandbox with Flatpak's, which is less effective. Additionally, the package is not maintained by Brave Software, Inc.
|
||||
|
||||
#### Recommended Configuration
|
||||
### Recommended Configuration
|
||||
|
||||
Tor Browser is the only way to truly browse the internet anonymously. When you use Brave, we recommend changing the following settings to protect your privacy from certain parties, but all browsers other than the [Tor Browser](tor.md#tor-browser) will be traceable by *somebody* in some regard or another.
|
||||
|
||||
@ -136,18 +139,19 @@ Shields' options can be downgraded on a per-site basis as needed, but by default
|
||||
|
||||
- [ ] Uncheck all social media components
|
||||
|
||||
##### Privacy and Security
|
||||
##### Privacy and security
|
||||
|
||||
<div class="annotate" markdown>
|
||||
|
||||
- [x] Select **Disable Non-Proxied UDP** under [WebRTC IP Handling Policy](https://support.brave.com/hc/en-us/articles/360017989132-How-do-I-change-my-Privacy-Settings-#webrtc)
|
||||
- [x] Select **Disable non-proxied UDP** under [WebRTC IP Handling Policy](https://support.brave.com/hc/en-us/articles/360017989132-How-do-I-change-my-Privacy-Settings-#webrtc)
|
||||
- [ ] Uncheck **Use Google services for push messaging**
|
||||
- [ ] Uncheck **Allow privacy-preserving product analytics (P3A)**
|
||||
- [ ] Uncheck **Automatically send daily usage ping to Brave**
|
||||
- [ ] Uncheck **Automatically send diagnostic reports**
|
||||
- [x] Select **Always use secure connections** in the **Security** menu
|
||||
- [ ] Uncheck **Private window with Tor** (1)
|
||||
|
||||
!!! important "Sanitizing on Close"
|
||||
!!! tip "Sanitizing on Close"
|
||||
- [x] Select **Clear cookies and site data when you close all windows** in the *Cookies and other site data* menu
|
||||
|
||||
If you wish to stay logged in to a particular site you visit often, you can set exceptions on a per-site basis under the *Customized behaviors* section.
|
||||
@ -181,6 +185,10 @@ Under the *System* menu
|
||||
|
||||
1. This option is not present on all platforms.
|
||||
|
||||
### Brave Sync
|
||||
|
||||
[Brave Sync](https://support.brave.com/hc/en-us/articles/360059793111-Understanding-Brave-Sync) allows your browsing data (history, bookmarks, etc.) to be accessible on all your devices without requiring an account and protects it with E2EE.
|
||||
|
||||
## Additional Resources
|
||||
|
||||
We generally do not recommend installing any extensions as they increase your attack surface. However, uBlock Origin may prove useful if you value content blocking functionality.
|
||||
@ -204,4 +212,49 @@ We generally do not recommend installing any extensions as they increase your at
|
||||
- [:simple-googlechrome: Chrome](https://chrome.google.com/webstore/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm)
|
||||
- [:simple-microsoftedge: Edge](https://microsoftedge.microsoft.com/addons/detail/ublock-origin/odfafepnkmbhccpbejgmiehpchacaeak)
|
||||
|
||||
We suggest following the [developer's documentation](https://github.com/gorhill/uBlock/wiki/Blocking-mode) and picking one of the "modes". Additional filter lists can impact performance and may increase attack surface, so only apply what you need. If there is a [vulnerability in uBlock Origin](https://portswigger.net/research/ublock-i-exfiltrate-exploiting-ad-blockers-with-css) a third-party filter could add malicious rules that can potentially steal user data.
|
||||
We suggest following the [developer's documentation](https://github.com/gorhill/uBlock/wiki/Blocking-mode) and picking one of the "modes". Additional filter lists can impact performance and [may increase attack surface](https://portswigger.net/research/ublock-i-exfiltrate-exploiting-ad-blockers-with-css).
|
||||
|
||||
##### Other lists
|
||||
|
||||
These are some other [filter lists](https://github.com/gorhill/uBlock/wiki/Dashboard:-Filter-lists) that you may want to consider adding:
|
||||
|
||||
- [x] Check **Privacy** > **AdGuard URL Tracking Protection**
|
||||
- Add [Actually Legitimate URL Shortener Tool](https://raw.githubusercontent.com/DandelionSprout/adfilt/master/LegitimateURLShortener.txt)
|
||||
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
### Minimum Requirements
|
||||
|
||||
- Must be open-source software.
|
||||
- Supports automatic updates.
|
||||
- Receives engine updates in 0-1 days from upstream release.
|
||||
- Available on Linux, macOS, and Windows.
|
||||
- Any changes required to make the browser more privacy-respecting should not negatively impact user experience.
|
||||
- Blocks third-party cookies by default.
|
||||
- Supports [state partitioning](https://developer.mozilla.org/en-US/docs/Web/Privacy/State_Partitioning) to mitigate cross-site tracking.[^1]
|
||||
|
||||
[^1]: Brave's implementation is detailed at [Brave Privacy Updates: Partitioning network-state for privacy](https://brave.com/privacy-updates/14-partitioning-network-state/).
|
||||
|
||||
### Best-Case
|
||||
|
||||
Our best-case criteria represents what we would like to see from the perfect project in this category. Our recommendations may not include any or all of this functionality, but those which do may rank higher than others on this page.
|
||||
|
||||
- Includes built-in content blocking functionality.
|
||||
- Supports cookie compartmentalization (à la [Multi-Account Containers](https://support.mozilla.org/en-US/kb/containers)).
|
||||
- Supports Progressive Web Apps.
|
||||
PWAs enable you to install certain websites as if they were native apps on your computer. This can have advantages over installing Electron-based apps, because you benefit from your browser's regular security updates.
|
||||
- Does not include add-on functionality (bloatware) that does not impact user privacy.
|
||||
- Does not collect telemetry by default.
|
||||
- Provides open-source sync server implementation.
|
||||
- Defaults to a [private search engine](search-engines.md).
|
||||
|
||||
### Extension Criteria
|
||||
|
||||
- Must not replicate built-in browser or OS functionality.
|
||||
- Must directly impact user privacy, i.e. must not simply provide information.
|
@ -1,12 +1,10 @@
|
||||
---
|
||||
title: "Linux"
|
||||
title: "Desktop/PC"
|
||||
icon: simple/linux
|
||||
---
|
||||
Linux distributions are commonly recommended for privacy protection and software freedom.
|
||||
Linux distributions are commonly recommended for privacy protection and software freedom. If you don't already use Linux, below are some distributions we suggest trying out, as well as some general privacy and security improvement tips that are applicable to many Linux distributions.
|
||||
|
||||
- [General Linux Overview :material-arrow-right-drop-circle:](linux-desktop/overview.md)
|
||||
|
||||
If you don't already use Linux, below are some distributions we suggest trying out, as well as some general privacy and security improvement tips that are applicable to many Linux distributions.
|
||||
- [General Linux Overview :material-arrow-right-drop-circle:](os/linux-overview.md)
|
||||
|
||||
## Traditional Distributions
|
||||
|
||||
@ -16,7 +14,7 @@ If you don't already use Linux, below are some distributions we suggest trying o
|
||||
|
||||
{ align=right }
|
||||
|
||||
**Fedora Workstation** is our recommended distribution for people new to Linux. Fedora generally adopts newer technologies before other distributions e.g., [Wayland](https://wayland.freedesktop.org/), [PipeWire](https://pipewire.org), and soon, [FS-Verity](https://fedoraproject.org/wiki/Changes/FsVerityRPM). These new technologies often come with improvements in security, privacy, and usability in general.
|
||||
**Fedora Workstation** is our recommended distribution for people new to Linux. Fedora generally adopts newer technologies before other distributions e.g., [Wayland](https://wayland.freedesktop.org/), [PipeWire](https://pipewire.org). These new technologies often come with improvements in security, privacy, and usability in general.
|
||||
|
||||
[:octicons-home-16: Homepage](https://getfedora.org/){ .md-button .md-button--primary }
|
||||
[:octicons-info-16:](https://docs.fedoraproject.org/en-US/docs/){ .card-link title=Documentation}
|
||||
@ -54,7 +52,7 @@ Tumbleweed follows a rolling release model where each update is released as a sn
|
||||
|
||||
Arch Linux has a rolling release cycle. There is no fixed release schedule and packages are updated very frequently.
|
||||
|
||||
Being a DIY distribution, you are [expected to set up and maintain](linux-desktop/overview.md#arch-based-distributions) your system on your own. Arch has an [official installer](https://wiki.archlinux.org/title/Archinstall) to make the installation process a little easier.
|
||||
Being a DIY distribution, you are [expected to set up and maintain](os/linux-overview.md#arch-based-distributions) your system on your own. Arch has an [official installer](https://wiki.archlinux.org/title/Archinstall) to make the installation process a little easier.
|
||||
|
||||
A large portion of [Arch Linux’s packages](https://reproducible.archlinux.org) are [reproducible](https://reproducible-builds.org).
|
||||
|
||||
@ -110,9 +108,10 @@ Nix is a source-based package manager; if there’s no pre-built available in th
|
||||
|
||||
{ align=right }
|
||||
|
||||
**Whonix** is based on [Kicksecure](https://www.whonix.org/wiki/Kicksecure), a security-focused fork of Debian. It aims to provide privacy, security, and anonymity on the internet. Whonix is best used in conjunction with [Qubes OS](qubes.md).
|
||||
**Whonix** is based on [Kicksecure](https://www.whonix.org/wiki/Kicksecure), a security-focused fork of Debian. It aims to provide privacy, security, and anonymity on the internet. Whonix is best used in conjunction with [Qubes OS](#qubes-os).
|
||||
|
||||
[:octicons-home-16: Homepage](https://www.whonix.org/){ .md-button .md-button--primary }
|
||||
[:simple-torbrowser:](http://www.dds6qkxpwdeubwucdiaord2xgbbeyds25rbsgr73tbfpqpt4a6vjwsyd.onion){ .card-link title="Onion Service" }
|
||||
[:octicons-info-16:](https://www.whonix.org/wiki/Documentation){ .card-link title=Documentation}
|
||||
[:octicons-heart-16:](https://www.whonix.org/wiki/Donate){ .card-link title=Contribute }
|
||||
|
||||
@ -138,6 +137,45 @@ Whonix is best used [in conjunction with Qubes](https://www.whonix.org/wiki/Qube
|
||||
|
||||
Tails is great for counter forensics due to amnesia (meaning nothing is written to the disk); however, it is not a hardened distribution like Whonix. It lacks many anonymity and security features that Whonix has and gets updated much less often (only once every six weeks). A Tails system that is compromised by malware may potentially bypass the transparent proxy allowing for the user to be deanonymized.
|
||||
|
||||
Tails also installs uBlock Origin in Tor Browser by default, which potentially makes it easier for adversaries to fingerprint Tails users, and increases the attack surface of the browser. For all of these reasons, if your only goal is to browse the internet anonymously, Tails is not as good of a choice as using [Whonix](linux-desktop.md/#whonix) with [Qubes OS](qubes.md), which is much more secure and leakproof. If your goal is to use a computer without leaving any trace afterwards, Tails may be a good solution for you.
|
||||
Tails includes [uBlock Origin](desktop-browsers.md#ublock-origin) in Tor Browser by default, which may potentially make it easier for adversaries to fingerprint Tails users. [Whonix](desktop.md#whonix) virtual machines may be more leak-proof, however they are not amnesic, meaning data may be recovered from your storage device.
|
||||
|
||||
By design, Tails is meant to completely reset itself after each reboot. Encrypted [persistent storage](https://tails.boum.org/doc/first_steps/persistence/index.en.html) can be configured to store some data between reboots.
|
||||
By design, Tails is meant to completely reset itself after each reboot. Encrypted [persistent storage](https://tails.boum.org/doc/persistent_storage/index.en.html) can be configured to store some data between reboots.
|
||||
|
||||
## Security-focused Distributions
|
||||
|
||||
### Qubes OS
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
|
||||
**Qubes OS** is an open-source operating system designed to provide strong security for desktop computing. Qubes is based on Xen, the X Window System, and Linux, and can run most Linux applications and use most of the Linux drivers.
|
||||
|
||||
[:octicons-home-16: Homepage](https://www.qubes-os.org/){ .md-button .md-button--primary }
|
||||
[:material-arrow-right-drop-circle: Overview](os/qubes-overview.md){ .md-button .md-button--primary }
|
||||
[:simple-torbrowser:](http://qubesosfasa4zl44o4tws22di6kepyzfeqv3tg4e3ztknltfxqrymdad.onion){ .card-link title="Onion Service" }
|
||||
[:octicons-eye-16:](https://www.qubes-os.org/privacy/){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://www.qubes-os.org/doc/){ .card-link title=Documentation }
|
||||
[:octicons-code-16:](https://github.com/QubesOS/){ .card-link title="Source Code" }
|
||||
[:octicons-heart-16:](https://www.qubes-os.org/donate/){ .card-link title=Contribute }
|
||||
|
||||
Qubes OS is a Xen-based operating system meant to provide strong security for desktop computing through secure virtual machines (VMs), also known as *Qubes*.
|
||||
|
||||
The Qubes OS operating system secures the computer by isolating subsystems (e.g., networking, USB, etc.) and applications in separate VMs. Should one part of the system be compromised, the extra isolation is likely to protect the rest of the system. For further details see the Qubes [FAQ](https://www.qubes-os.org/faq/).
|
||||
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
Our recommended operating systems:
|
||||
|
||||
- Must be open-source.
|
||||
- Must receive regular software and Linux kernel updates.
|
||||
- Linux distributions must support [Wayland](os/linux-overview.md#Wayland).
|
||||
- Must support full-disk encryption during installation.
|
||||
- Must not freeze regular releases for more than 1 year. We [do not recommend](os/linux-overview.md#release-cycle) "Long Term Support" or "stable" distro releases for desktop usage.
|
||||
- Must support a wide variety of hardware.
|
@ -3,21 +3,21 @@ title: "DNS Resolvers"
|
||||
icon: material/dns
|
||||
---
|
||||
|
||||
!!! faq "Should I use encrypted DNS?"
|
||||
!!! question "Should I use encrypted DNS?"
|
||||
|
||||
Encrypted DNS with third-party servers should only be used to get around basic [DNS blocking](https://en.wikipedia.org/wiki/DNS_blocking) when you can be sure there won't be any consequences. Encrypted DNS will not help you hide any of your browsing activity.
|
||||
|
||||
[Learn more about DNS](basics/dns-overview.md){ .md-button }
|
||||
[Learn more about DNS](advanced/dns-overview.md){ .md-button }
|
||||
|
||||
## Recommended Providers
|
||||
|
||||
| DNS Provider | Privacy Policy | Protocols | Logging | ECS | Filtering |
|
||||
| ------------ | -------------- | --------- | ------- | --- | --------- |
|
||||
| [**AdGuard**](https://adguard.com/en/adguard-dns/overview.html) | [:octicons-link-external-24:](https://adguard.com/en/privacy/dns.html) | Cleartext <br> DoH <br> DoT <br> DNSCrypt | Some[^1] | No | Based on server choice. Filter list being used can be found here. [:octicons-link-external-24:](https://github.com/AdguardTeam/AdGuardDNS)
|
||||
| [**Cloudflare**](https://developers.cloudflare.com/1.1.1.1/setting-up-1.1.1.1/) | [:octicons-link-external-24:](https://developers.cloudflare.com/1.1.1.1/privacy/public-dns-resolver/) | Cleartext <br> DoH <br> DoT | Some[^2] | No | Based on server choice.|
|
||||
| [**Control D**](https://controld.com/free-dns) | [:octicons-link-external-24:](https://controld.com/privacy) | Cleartext <br> DoH <br> DoT <br> DNSCrypt <br> DoQ <br> DoH3 | Optional[^3] | No | Based on server choice. |
|
||||
| [**AdGuard**](https://adguard.com/en/adguard-dns/overview.html) | [:octicons-link-external-24:](https://adguard.com/en/privacy/dns.html) | Cleartext <br> DoH/3 <br> DoT <br> DNSCrypt | Some[^1] | No | Based on server choice. Filter list being used can be found here. [:octicons-link-external-24:](https://github.com/AdguardTeam/AdGuardDNS)
|
||||
| [**Cloudflare**](https://developers.cloudflare.com/1.1.1.1/setting-up-1.1.1.1/) | [:octicons-link-external-24:](https://developers.cloudflare.com/1.1.1.1/privacy/public-dns-resolver/) | Cleartext <br> DoH/3 <br> DoT | Some[^2] | No | Based on server choice.|
|
||||
| [**Control D**](https://controld.com/free-dns) | [:octicons-link-external-24:](https://controld.com/privacy) | Cleartext <br> DoH/3 <br> DoT <br> DoQ| Optional[^3] | No | Based on server choice. |
|
||||
| [**Mullvad**](https://mullvad.net/en/help/dns-over-https-and-dns-over-tls) | [:octicons-link-external-24:](https://mullvad.net/en/help/no-logging-data-policy/) | DoH <br> DoT | No[^4] | No | Based on server choice. Filter list being used can be found here. [:octicons-link-external-24:](https://github.com/mullvad/dns-adblock)
|
||||
| [**NextDNS**](https://www.nextdns.io) | [:octicons-link-external-24:](https://www.nextdns.io/privacy) | Cleartext <br> DoH <br> DoT <br> DNSCrypt | Optional[^5] | Optional | Based on server choice. |
|
||||
| [**NextDNS**](https://www.nextdns.io) | [:octicons-link-external-24:](https://www.nextdns.io/privacy) | Cleartext <br> DoH/3 <br> DoT | Optional[^5] | Optional | Based on server choice. |
|
||||
| [**Quad9**](https://quad9.net) | [:octicons-link-external-24:](https://quad9.net/privacy/policy/) | Cleartext <br> DoH <br> DoT <br> DNSCrypt | Some[^6] | Optional | Based on server choice, Malware blocking by default. |
|
||||
|
||||
[^1]: AdGuard stores aggregated performance metrics of their DNS servers, namely the number of complete requests to a particular server, the number of blocked requests, and the speed of processing requests. They also keep and store the database of domains requested in within last 24 hours. "We need this information to identify and block new trackers and threats." "We also log how many times this or that tracker has been blocked. We need this information to remove outdated rules from our filters." [https://adguard.com/en/privacy/dns.html](https://adguard.com/en/privacy/dns.html)
|
||||
@ -27,18 +27,24 @@ icon: material/dns
|
||||
[^5]: NextDNS can provide insights and logging features on an opt-in basis. You can choose retention times and log storage locations for any logs you choose to keep. If it's not specifically requested, no data is logged. [https://nextdns.io/privacy](https://nextdns.io/privacy)
|
||||
[^6]: Quad9 collects some data for the purposes of threat monitoring and response. That data may then be remixed and shared, such as for the purpose of security research. Quad9 does not collect or record IP addresses or other data they deem personally identifiable. [https://www.quad9.net/privacy/policy/](https://www.quad9.net/privacy/policy/)
|
||||
|
||||
The criteria for the servers listed above are:
|
||||
## Criteria
|
||||
|
||||
- Must support [DNSSEC](basics/dns-overview.md#what-is-dnssec)
|
||||
- Must have [anycast](https://en.wikipedia.org/wiki/Anycast#Addressing_methods) support
|
||||
- [QNAME Minimization](basics/dns-overview.md#what-is-qname-minimization)
|
||||
- Allow for [ECS](basics/dns-overview.md#what-is-edns-client-subnet-ecs) to be disabled
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
- Must support [DNSSEC](advanced/dns-overview.md#what-is-dnssec).
|
||||
- [QNAME Minimization](advanced/dns-overview.md#what-is-qname-minimization).
|
||||
- Allow for [ECS](advanced/dns-overview.md#what-is-edns-client-subnet-ecs) to be disabled.
|
||||
- Prefer [anycast](https://en.wikipedia.org/wiki/Anycast#Addressing_methods) support or geo-steering support.
|
||||
|
||||
## Native Operating System Support
|
||||
|
||||
### Android
|
||||
|
||||
Android 9 and above support DNS over TLS. Android 13 will support DNS over HTTPS. The settings can be found in: **Settings** → **Network & Internet** → **Private DNS**.
|
||||
Android 9 and above support DNS over TLS. The settings can be found in: **Settings** → **Network & Internet** → **Private DNS**.
|
||||
|
||||
### Apple Devices
|
||||
|
||||
@ -50,31 +56,13 @@ After installation of either a configuration profile or an app that uses the DNS
|
||||
|
||||
Apple does not provide a native interface for creating encrypted DNS profiles. [Secure DNS profile creator](https://dns.notjakob.com/tool.html) is an unofficial tool for creating your own encrypted DNS profiles, however they will not be signed. Signed profiles are preferred; signing validates a profile's origin and helps to ensure the integrity of the profiles. A green "Verified" label is given to signed configuration profiles. For more information on code signing, see [About Code Signing](https://developer.apple.com/library/archive/documentation/Security/Conceptual/CodeSigningGuide/Introduction/Introduction.html). **Signed profiles** are offered by [AdGuard](https://adguard.com/en/blog/encrypted-dns-ios-14.html), [NextDNS](https://apple.nextdns.io), and [Quad9](https://www.quad9.net/news/blog/ios-mobile-provisioning-profiles/).
|
||||
|
||||
#### iOS/iPadOS
|
||||
!!! info
|
||||
|
||||
Select **Settings** → **General** → **VPN, DNS, & Device Management** → **DNS**
|
||||
|
||||
#### macOS
|
||||
|
||||
Select **System Preferences → Profiles** or **System Preferences** → **Network** → **Advanced**, (depending on if you have configuration profiles installed).
|
||||
|
||||
#### tvOS
|
||||
|
||||
Select **Settings** → **General** → **Privacy** → **Share Apple TV Analytics** → then press the *Play* button on the remote.
|
||||
|
||||
### Windows
|
||||
|
||||
You can [turn on DoH](https://docs.microsoft.com/en-us/windows-server/networking/dns/doh-client-support) by accessing Windows settings in the control panel.
|
||||
|
||||
Select **Settings** → **Network & Internet** → **Ethernet or WiFi**, → **Edit DNS Settings** → **Preferred DNS encryption** → **Encrypted only (DNS over HTTPS)**.
|
||||
|
||||
### Linux
|
||||
|
||||
`systemd-resolved`, which many Linux distributions use to do their DNS lookups, doesn't yet [support DoH](https://github.com/systemd/systemd/issues/8639). If you want to use DoH, you'll need to install a proxy like [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy) and [configure it](https://wiki.archlinux.org/title/Dnscrypt-proxy) to take all the DNS queries from your system resolver and forward them over HTTPS.
|
||||
`systemd-resolved`, which many Linux distributions use to do their DNS lookups, doesn't yet [support DoH](https://github.com/systemd/systemd/issues/8639). If you want to use DoH, you'll need to install a proxy like [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy) and [configure it](https://wiki.archlinux.org/title/Dnscrypt-proxy) to take all the DNS queries from your system resolver and forward them over HTTPS.
|
||||
|
||||
## Encrypted DNS Proxies
|
||||
|
||||
Encrypted DNS proxy software provides a local proxy for the [unencrypted DNS](basics/dns-overview.md#unencrypted-dns) resolver to forward to. Typically it is used on platforms that don't natively support [encrypted DNS](basics/dns-overview.md#what-is-encrypted-dns).
|
||||
Encrypted DNS proxy software provides a local proxy for the [unencrypted DNS](advanced/dns-overview.md#unencrypted-dns) resolver to forward to. Typically it is used on platforms that don't natively support [encrypted DNS](advanced/dns-overview.md#what-is-encrypted-dns).
|
||||
|
||||
### RethinkDNS
|
||||
|
||||
@ -83,7 +71,7 @@ Encrypted DNS proxy software provides a local proxy for the [unencrypted DNS](ba
|
||||
{ align=right }
|
||||
{ align=right }
|
||||
|
||||
**RethinkDNS** is an open-source Android client supporting [DNS-over-HTTPS](basics/dns-overview.md#dns-over-https-doh), [DNS-over-TLS](basics/dns-overview.md#dns-over-tls-dot), [DNSCrypt](basics/dns-overview.md#dnscrypt) and DNS Proxy along with caching DNS responses, locally logging DNS queries and can be used as a firewall too.
|
||||
**RethinkDNS** is an open-source Android client supporting [DNS-over-HTTPS](advanced/dns-overview.md#dns-over-https-doh), [DNS-over-TLS](advanced/dns-overview.md#dns-over-tls-dot), [DNSCrypt](advanced/dns-overview.md#dnscrypt) and DNS Proxy along with caching DNS responses, locally logging DNS queries and can be used as a firewall too.
|
||||
|
||||
[:octicons-home-16: Homepage](https://rethinkdns.com){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://rethinkdns.com/privacy){ .card-link title="Privacy Policy" }
|
||||
@ -101,9 +89,9 @@ Encrypted DNS proxy software provides a local proxy for the [unencrypted DNS](ba
|
||||
|
||||
{ align=right }
|
||||
|
||||
**dnscrypt-proxy** is a DNS proxy with support for [DNSCrypt](basics/dns-overview.md#dnscrypt), [DNS-over-HTTPS](basics/dns-overview.md#dns-over-https-doh), and [Anonymized DNS](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Anonymized-DNS).
|
||||
**dnscrypt-proxy** is a DNS proxy with support for [DNSCrypt](advanced/dns-overview.md#dnscrypt), [DNS-over-HTTPS](advanced/dns-overview.md#dns-over-https-doh), and [Anonymized DNS](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Anonymized-DNS).
|
||||
|
||||
!!! warning "The anonymized DNS feature does [**not**](basics/dns-overview.md#why-shouldnt-i-use-encrypted-dns) anonymize other network traffic."
|
||||
!!! warning "The anonymized DNS feature does [**not**](advanced/dns-overview.md#why-shouldnt-i-use-encrypted-dns) anonymize other network traffic."
|
||||
|
||||
[:octicons-repo-16: Repository](https://github.com/DNSCrypt/dnscrypt-proxy){ .md-button .md-button--primary }
|
||||
[:octicons-info-16:](https://github.com/DNSCrypt/dnscrypt-proxy/wiki){ .card-link title=Documentation}
|
@ -4,7 +4,8 @@ icon: material/email-open
|
||||
---
|
||||
Our recommendation list contains email clients that support both [OpenPGP](encryption.md#openpgp) and strong authentication such as [Open Authorization (OAuth)](https://en.wikipedia.org/wiki/OAuth). OAuth allows you to use [Multi-Factor Authentication](basics/multi-factor-authentication.md) and prevent account theft.
|
||||
|
||||
??? Attention "Email does not provide forward secrecy"
|
||||
??? warning "Email does not provide forward secrecy"
|
||||
|
||||
When using end-to-end encryption (E2EE) technology like OpenPGP, email will still have [some metadata](email.md#email-metadata-overview) that is not encrypted in the header of the email.
|
||||
|
||||
OpenPGP also does not support [forward secrecy](https://en.wikipedia.org/wiki/Forward_secrecy), which means if either your or the recipient's private key is ever stolen, all previous messages encrypted with it will be exposed: [How do I protect my private keys?](basics/email-security.md) Consider using a medium that provides forward secrecy:
|
||||
@ -33,6 +34,25 @@ Our recommendation list contains email clients that support both [OpenPGP](encry
|
||||
- [:simple-linux: Linux](https://www.thunderbird.net)
|
||||
- [:simple-flathub: Flathub](https://flathub.org/apps/details/org.mozilla.Thunderbird)
|
||||
|
||||
#### Recommended Configuration
|
||||
|
||||
We recommend changing some of these settings to make Thunderbird a little more private.
|
||||
|
||||
These options can be found in :material-menu: → **Settings** → **Privacy & Security**.
|
||||
|
||||
##### Web Content
|
||||
|
||||
- [ ] Uncheck **Remember websites and links I've visited**
|
||||
- [ ] Uncheck **Accept cookies from sites**
|
||||
|
||||
##### Telemetry
|
||||
|
||||
- [ ] Uncheck **Allow Thunderbird to send technical and interaction data to Mozilla**
|
||||
|
||||
#### Thunderbird-user.js (advanced)
|
||||
|
||||
[`thunderbird-user.js`](https://github.com/HorlogeSkynet/thunderbird-user.js), is a set of configurations options that aims to disable as many of the web-browsing features within Thunderbird as possible in order to reduce surface area and maintain privacy. Some of the changes are backported from the [Arkenfox project](https://github.com/arkenfox/user.js).
|
||||
|
||||
## Platform Specific
|
||||
|
||||
### Apple Mail (macOS)
|
||||
@ -41,7 +61,7 @@ Our recommendation list contains email clients that support both [OpenPGP](encry
|
||||
|
||||
{ align=right }
|
||||
|
||||
**Apple Mail** is included in macOS and can be extended to have OpenPGP support with [GPG Suite](encryption.md#gpg-suite), which adds the ability to send encrypted email.
|
||||
**Apple Mail** is included in macOS and can be extended to have OpenPGP support with [GPG Suite](encryption.md#gpg-suite), which adds the ability to send PGP-encrypted email.
|
||||
|
||||
[:octicons-home-16: Homepage](https://support.apple.com/guide/mail/welcome/mac){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://www.apple.com/legal/privacy/en-ww/){ .card-link title="Privacy Policy" }
|
||||
@ -65,7 +85,7 @@ Our recommendation list contains email clients that support both [OpenPGP](encry
|
||||
- [:simple-appstore: App Store](https://apps.apple.com/app/id1236045954)
|
||||
- [:simple-windows11: Windows](https://canarymail.io/downloads.html)
|
||||
|
||||
!!! attention
|
||||
!!! warning
|
||||
|
||||
Canary Mail only recently released a Windows and Android client, though we don't believe they are as stable as their iOS and Mac counterparts.
|
||||
|
||||
@ -129,6 +149,10 @@ Canary Mail is closed-source. We recommend it due to the few choices there are f
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=com.fsck.k9)
|
||||
- [:simple-github: GitHub](https://github.com/k9mail/k-9/releases)
|
||||
|
||||
!!! warning
|
||||
|
||||
When replying to someone on a mailing list the "reply" option may also include the mailing list. For more information see [thundernest/k-9 #3738](https://github.com/thundernest/k-9/issues/3738).
|
||||
|
||||
### Kontact (KDE)
|
||||
|
||||
!!! recommendation
|
||||
@ -186,3 +210,27 @@ Canary Mail is closed-source. We recommend it due to the few choices there are f
|
||||
|
||||
- [:simple-apple: macOS](https://neomutt.org/distro)
|
||||
- [:simple-linux: Linux](https://neomutt.org/distro)
|
||||
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
### Minimum Qualifications
|
||||
|
||||
- Apps developed for open-source operating systems must be open-source.
|
||||
- Must not collect telemetry, or have an easy way to disable all telemetry.
|
||||
- Must support OpenPGP message encryption.
|
||||
|
||||
### Best-Case
|
||||
|
||||
Our best-case criteria represents what we would like to see from the perfect project in this category. Our recommendations may not include any or all of this functionality, but those which do may rank higher than others on this page.
|
||||
|
||||
- Should be open-source.
|
||||
- Should be cross-platform.
|
||||
- Should not collect any telemetry by default.
|
||||
- Should support OpenPGP natively, i.e. without extensions.
|
||||
- Should support storing OpenPGP encrypted emails locally.
|
@ -8,14 +8,16 @@ Email is practically a necessity for using any online service, however we do not
|
||||
|
||||
For everything else, we recommend a variety of email providers based on sustainable business models and built-in security and privacy features.
|
||||
|
||||
## OpenPGP Compatible Services
|
||||
|
||||
These providers natively support OpenPGP encryption/decryption, allowing for provider-agnostic E2EE emails. For example, a Proton Mail user could send an E2EE message to a Mailbox.org user, or you could receive OpenPGP-encrypted notifications from internet services which support it.
|
||||
|
||||
!!! warning
|
||||
|
||||
When using E2EE technology like OpenPGP, email will still have some metadata that is not encrypted in the header of the email. Read more about [email metadata](basics/email-security.md#email-metadata-overview).
|
||||
|
||||
OpenPGP also does not support Forward secrecy, which means if either your or the recipient's private key is ever stolen, all previous messages encrypted with it will be exposed. [How do I protect my private keys?](basics/email-security.md#how-do-i-protect-my-private-keys)
|
||||
|
||||
## Recommended Email Providers
|
||||
|
||||
### Proton Mail
|
||||
|
||||
!!! recommendation
|
||||
@ -24,10 +26,6 @@ For everything else, we recommend a variety of email providers based on sustaina
|
||||
|
||||
**Proton Mail** is an email service with a focus on privacy, encryption, security, and ease of use. They have been in operation since **2013**. Proton AG is based in Genève, Switzerland. Accounts start with 500 MB storage with their free plan.
|
||||
|
||||
Free accounts have some limitations, such as not being able to search body text and not having access to [Proton Mail Bridge](https://proton.me/mail/bridge), which is required to use a [recommended desktop email client](email-clients.md) (e.g. Thunderbird). Paid accounts include features like Proton Mail Bridge, additional storage, and custom domain support.
|
||||
|
||||
If you have the Proton Unlimited, Business, or Visionary Plan, you also get [SimpleLogin](#simplelogin) Premium for free.
|
||||
|
||||
[:octicons-home-16: Homepage](https://proton.me/mail){ .md-button .md-button--primary }
|
||||
[:simple-torbrowser:](https://protonmailrmez3lotccipshtkleegetolb73fuirgj7r4o4vfu7ozyd.onion){ .card-link title="Onion Service" }
|
||||
[:octicons-eye-16:](https://proton.me/legal/privacy){ .card-link title="Privacy Policy" }
|
||||
@ -44,30 +42,44 @@ For everything else, we recommend a variety of email providers based on sustaina
|
||||
- [:simple-linux: Linux](https://proton.me/mail/bridge#download)
|
||||
- [:octicons-browser-16: Web](https://mail.proton.me)
|
||||
|
||||
??? check "Custom Domains and Aliases"
|
||||
Free accounts have some limitations, such as not being able to search body text and not having access to [Proton Mail Bridge](https://proton.me/mail/bridge), which is required to use a [recommended desktop email client](email-clients.md) (e.g. Thunderbird). Paid accounts include features like Proton Mail Bridge, additional storage, and custom domain support. A [letter of attestation](https://proton.me/blog/security-audit-all-proton-apps) was provided for Proton Mail's apps on 9th November 2021 by [Securitum](https://research.securitum.com).
|
||||
|
||||
If you have the Proton Unlimited, Business, or Visionary Plan, you also get [SimpleLogin](#simplelogin) Premium for free.
|
||||
|
||||
Proton Mail has internal crash reports that they **do not** share with third parties. This can be disabled in: **Settings** > **Go to Settings** > **Account** > **Security and privacy** > **Send crash reports**.
|
||||
|
||||
??? success "Custom Domains and Aliases"
|
||||
|
||||
Paid Proton Mail subscribers can use their own domain with the service or a [catch-all](https://proton.me/support/catch-all) address. Proton Mail also supports [subaddressing](https://proton.me/support/creating-aliases), which is useful for people who don't want to purchase a domain.
|
||||
|
||||
??? check "Private Payment Methods"
|
||||
??? success "Private Payment Methods"
|
||||
|
||||
Proton Mail [accepts](https://proton.me/support/payment-options) Bitcoin and cash by mail in addition to standard credit/debit card and PayPal payments.
|
||||
|
||||
??? check "Account Security"
|
||||
??? success "Account Security"
|
||||
|
||||
Proton Mail supports TOTP [two factor authentication](https://proton.me/support/two-factor-authentication-2fa) only. The use of a U2F security key is not yet supported. Proton Mail is planning to implement U2F upon completion of their [Single Sign On (SSO)](https://reddit.com/comments/cheoy6/comment/feh2lw0/) code.
|
||||
|
||||
??? check "Data Security"
|
||||
??? success "Data Security"
|
||||
|
||||
Proton Mail has [zero-access encryption](https://proton.me/blog/zero-access-encryption) at rest for your emails and [calendars](https://proton.me/news/protoncalendar-security-model). Data secured with zero-access encryption is only accessible by you.
|
||||
|
||||
Certain information stored in [Proton Contacts](https://proton.me/support/proton-contacts), such as display names and email addresses, are not secured with zero-access encryption. Contact fields that support zero-access encryption, such as phone numbers, are indicated with a padlock icon.
|
||||
|
||||
??? check "Email Encryption"
|
||||
??? success "Email Encryption"
|
||||
|
||||
Proton Mail has [integrated OpenPGP encryption](https://proton.me/support/how-to-use-pgp) in their webmail. Emails to other Proton Mail accounts are encrypted automatically, and encryption to non-Proton Mail addresses with an OpenPGP key can be enabled easily in your account settings. They also allow you to [encrypt messages to non-Proton Mail addresses](https://proton.me/support/password-protected-emails) without the need for them to sign up for a Proton Mail account or use software like OpenPGP.
|
||||
|
||||
Proton Mail also supports the discovery of public keys via HTTP from their [Web Key Directory (WKD)](https://wiki.gnupg.org/WKD). This allows people who don't use Proton Mail to find the OpenPGP keys of Proton Mail accounts easily, for cross-provider E2EE.
|
||||
|
||||
??? warning "Digital Legacy"
|
||||
|
||||
Proton Mail doesn't offer a digital legacy feature.
|
||||
|
||||
??? info "Account Termination"
|
||||
|
||||
If you have a paid account and your [bill is unpaid](https://proton.me/support/delinquency) after 14 days, you won't be able to access your data. After 30 days, your account will become delinquent and won't receive incoming mail. You will continue to be billed during this period.
|
||||
|
||||
??? info "Additional Functionality"
|
||||
|
||||
Proton Mail offers an "Unlimited" account for €9.99/Month, which also enables access to Proton VPN in addition to providing multiple accounts, domains, aliases, and 500GB of storage.
|
||||
@ -88,7 +100,7 @@ For everything else, we recommend a variety of email providers based on sustaina
|
||||
|
||||
- [:octicons-browser-16: Web](https://login.mailbox.org)
|
||||
|
||||
??? check "Custom Domains and Aliases"
|
||||
??? success "Custom Domains and Aliases"
|
||||
|
||||
Mailbox.org lets you use your own domain, and they support [catch-all](https://kb.mailbox.org/display/MBOKBEN/Using+catch-all+alias+with+own+domain) addresses. Mailbox.org also supports [subaddressing](https://kb.mailbox.org/display/BMBOKBEN/What+is+an+alias+and+how+do+I+use+it), which is useful if you don't want to purchase a domain.
|
||||
|
||||
@ -96,7 +108,7 @@ For everything else, we recommend a variety of email providers based on sustaina
|
||||
|
||||
Mailbox.org doesn't accept Bitcoin or any other cryptocurrencies as a result of their payment processor BitPay suspending operations in Germany. However, they do accept Cash by mail, cash payment to bank account, bank transfer, credit card, PayPal and couple of German-specific processors: paydirekt and Sofortüberweisung.
|
||||
|
||||
??? check "Account Security"
|
||||
??? success "Account Security"
|
||||
|
||||
Mailbox.org supports [two factor authentication](https://kb.mailbox.org/display/MBOKBEN/How+to+use+two-factor+authentication+-+2FA) for their webmail only. You can use either TOTP or a [Yubikey](https://en.wikipedia.org/wiki/YubiKey) via the [Yubicloud](https://www.yubico.com/products/services-software/yubicloud). Web standards such as [WebAuthn](https://en.wikipedia.org/wiki/WebAuthn) are not yet supported.
|
||||
|
||||
@ -104,14 +116,22 @@ For everything else, we recommend a variety of email providers based on sustaina
|
||||
|
||||
Mailbox.org allows for encryption of incoming mail using their [encrypted mailbox](https://kb.mailbox.org/display/MBOKBEN/The+Encrypted+Mailbox). New messages that you receive will then be immediately encrypted with your public key.
|
||||
|
||||
However, [Open-Exchange](https://en.wikipedia.org/wiki/Open-Xchange), the software platform used by Mailbox.org, [does not support](https://kb.mailbox.org/display/BMBOKBEN/Encryption+of+calendar+and+address+book) the encryption of your address book and calendar. A [standalone option](calendar-contacts.md) may be more appropriate for that information.
|
||||
However, [Open-Exchange](https://en.wikipedia.org/wiki/Open-Xchange), the software platform used by Mailbox.org, [does not support](https://kb.mailbox.org/display/BMBOKBEN/Encryption+of+calendar+and+address+book) the encryption of your address book and calendar. A [standalone option](calendar.md) may be more appropriate for that information.
|
||||
|
||||
??? check "Email Encryption"
|
||||
??? success "Email Encryption"
|
||||
|
||||
Mailbox.org has [integrated encryption](https://kb.mailbox.org/display/MBOKBEN/Send+encrypted+e-mails+with+Guard) in their webmail, which simplifies sending messages to people with public OpenPGP keys. They also allow [remote recipients to decrypt an email](https://kb.mailbox.org/display/MBOKBEN/My+recipient+does+not+use+PGP) on Mailbox.org's servers. This feature is useful when the remote recipient does not have OpenPGP and cannot decrypt a copy of the email in their own mailbox.
|
||||
|
||||
Mailbox.org also supports the discovery of public keys via HTTP from their [Web Key Directory (WKD)](https://wiki.gnupg.org/WKD). This allows people outside of Mailbox.org to find the OpenPGP keys of Mailbox.org accounts easily, for cross-provider E2EE.
|
||||
|
||||
??? success "Digital Legacy"
|
||||
|
||||
Mailbox.org has a digital legacy feature for all plans. You can choose whether you want any of your data to be passed to heirs providing that they apply and provide your testament. Alternatively, you can nominate a person by name and address.
|
||||
|
||||
??? info "Account Termination"
|
||||
|
||||
Your account will be set to a restricted user account when your contract ends, after [30 days it will be irrevocably deleted](https://kb.mailbox.org/en/private/payment-article/what-happens-at-the-end-of-my-contract).
|
||||
|
||||
??? info "Additional Functionality"
|
||||
|
||||
You can access your Mailbox.org account via IMAP/SMTP using their [.onion service](https://kb.mailbox.org/display/MBOKBEN/The+Tor+exit+node+of+mailbox.org). However, their webmail interface cannot be accessed via their .onion service and you may experience TLS certificate errors.
|
||||
@ -135,7 +155,7 @@ For everything else, we recommend a variety of email providers based on sustaina
|
||||
|
||||
- [:octicons-browser-16: Web](https://mail.startmail.com/login)
|
||||
|
||||
??? check "Custom Domains and Aliases"
|
||||
??? success "Custom Domains and Aliases"
|
||||
|
||||
Personal accounts can use [Custom or Quick](https://support.startmail.com/hc/en-us/articles/360007297457-Aliases) aliases. [Custom domains](https://support.startmail.com/hc/en-us/articles/4403911432209-Setup-a-custom-domain) are also available.
|
||||
|
||||
@ -143,7 +163,7 @@ For everything else, we recommend a variety of email providers based on sustaina
|
||||
|
||||
StartMail accepts Visa, MasterCard, American Express and Paypal. StartMail also has other [payment options](https://support.startmail.com/hc/en-us/articles/360006620637-Payment-methods) such as Bitcoin (currently only for Personal accounts) and SEPA Direct Debit for accounts older than a year.
|
||||
|
||||
??? check "Account Security"
|
||||
??? success "Account Security"
|
||||
|
||||
StartMail supports TOTP two factor authentication [for webmail only](https://support.startmail.com/hc/en-us/articles/360006682158-Two-factor-authentication-2FA). They do not allow U2F security key authentication.
|
||||
|
||||
@ -151,16 +171,28 @@ For everything else, we recommend a variety of email providers based on sustaina
|
||||
|
||||
StartMail has [zero access encryption at rest](https://www.startmail.com/en/whitepaper/#_Toc458527835), using their "user vault" system. When you log in, the vault is opened, and the email is then moved to the vault out of the queue where it is decrypted by the corresponding private key.
|
||||
|
||||
StartMail supports importing [contacts](https://support.startmail.com/hc/en-us/articles/360006495557-Import-contacts) however, they are only accessible in the webmail and not through protocols such as [CalDAV](https://en.wikipedia.org/wiki/CalDAV). Contacts are also not stored using zero knowledge encryption, so a [standalone option](calendar-contacts.md) may be more appropriate.
|
||||
StartMail supports importing [contacts](https://support.startmail.com/hc/en-us/articles/360006495557-Import-contacts) however, they are only accessible in the webmail and not through protocols such as [CalDAV](https://en.wikipedia.org/wiki/CalDAV). Contacts are also not stored using zero knowledge encryption.
|
||||
|
||||
??? check "Email Encryption"
|
||||
??? success "Email Encryption"
|
||||
|
||||
StartMail has [integrated encryption](https://support.startmail.com/hc/en-us/sections/360001889078-Encryption) in their webmail, which simplifies sending encrypted messages with public OpenPGP keys.
|
||||
|
||||
??? warning "Digital Legacy"
|
||||
|
||||
StartMail does not offer a digital legacy feature.
|
||||
|
||||
??? info "Account Termination"
|
||||
|
||||
On account expiration, StartMail will permanently delete your account after [6 months in 3 phases](https://support.startmail.com/hc/en-us/articles/360006794398-Account-expiration).
|
||||
|
||||
??? info "Additional Functionality"
|
||||
|
||||
StartMail allows for proxying of images within emails. If you allow the remote image to be loaded, the sender won't know what your IP address is.
|
||||
|
||||
## More Providers
|
||||
|
||||
These providers store your emails with zero-knowledge encryption, making them great options for keeping your stored emails secure. However, they don't support interoperable encryption standards for E2EE communications between providers.
|
||||
|
||||
### Tutanota
|
||||
|
||||
!!! recommendation
|
||||
@ -178,18 +210,16 @@ For everything else, we recommend a variety of email providers based on sustaina
|
||||
??? downloads
|
||||
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=de.tutao.tutanota)
|
||||
- [:simple-appstore: App Store](https://itunes.apple.com/de/app/tutanota/id922429609)
|
||||
- [:simple-appstore: App Store](https://apps.apple.com/app/tutanota/id922429609)
|
||||
- [:simple-github: GitHub](https://github.com/tutao/tutanota/releases)
|
||||
- [:simple-windows11: Windows](https://tutanota.com/#download)
|
||||
- [:simple-apple: macOS](https://tutanota.com/#download)
|
||||
- [:simple-linux: Linux](https://tutanota.com/#download)
|
||||
- [:octicons-browser-16: Web](https://mail.tutanota.com/)
|
||||
|
||||
Tutanota [doesn't allow](https://tutanota.com/faq/#imap) the use of third-party [email clients](email-clients.md). Tutanota has no plans pull email from [external email accounts](https://github.com/tutao/tutanota/issues/544#issuecomment-670473647) using the IMAP protocol. [Email import](https://github.com/tutao/tutanota/issues/630) is currently not possible.
|
||||
Tutanota doesn't support the [IMAP protocol](https://tutanota.com/faq/#imap) or the use of third-party [email clients](email-clients.md), and you also won't be able to add [external email accounts](https://github.com/tutao/tutanota/issues/544#issuecomment-670473647) to the Tutanota app. Neither [Email import](https://github.com/tutao/tutanota/issues/630) or [subfolders](https://github.com/tutao/tutanota/issues/927) are currently supported, though this is [due to be changed](https://tutanota.com/blog/posts/kickoff-import). Emails can be exported [individually or by bulk selection](https://tutanota.com/howto#generalMail) per folder, which may be inconvenient if you have many folders.
|
||||
|
||||
Emails can be exported [individually or by bulk selection](https://tutanota.com/howto#generalMail). Tutanota does not allow for [subfolders](https://github.com/tutao/tutanota/issues/927) as you might expect with other email providers.
|
||||
|
||||
??? check "Custom Domains and Aliases"
|
||||
??? success "Custom Domains and Aliases"
|
||||
|
||||
Paid Tutanota accounts can use up to 5 [aliases](https://tutanota.com/faq#alias) and [custom domains](https://tutanota.com/faq#custom-domain). Tutanota doesn't allow for [subaddressing (plus addresses)](https://tutanota.com/faq#plus), but you can use a [catch-all](https://tutanota.com/howto#settings-global) with a custom domain.
|
||||
|
||||
@ -197,11 +227,11 @@ Emails can be exported [individually or by bulk selection](https://tutanota.com/
|
||||
|
||||
Tutanota only directly accepts credit cards and PayPal, however Bitcoin and Monero can be used to purchase gift cards via their [partnership](https://tutanota.com/faq/#cryptocurrency) with Proxystore.
|
||||
|
||||
??? check "Account Security"
|
||||
??? success "Account Security"
|
||||
|
||||
Tutanota supports [two factor authentication](https://tutanota.com/faq#2fa) with either TOTP or U2F. U2F support is [not yet available on Android](https://github.com/tutao/tutanota/issues/443).
|
||||
Tutanota supports [two factor authentication](https://tutanota.com/faq#2fa) with either TOTP or U2F.
|
||||
|
||||
??? check "Data Security"
|
||||
??? success "Data Security"
|
||||
|
||||
Tutanota has [zero access encryption at rest](https://tutanota.com/faq#what-encrypted) for your emails, [address book contacts](https://tutanota.com/faq#encrypted-address-book), and [calendars](https://tutanota.com/faq#calendar). This means the messages and other data stored in your account are only readable by you.
|
||||
|
||||
@ -209,7 +239,13 @@ Emails can be exported [individually or by bulk selection](https://tutanota.com/
|
||||
|
||||
Tutanota [does not use OpenPGP](https://www.tutanota.com/faq/#pgp). Tutanota accounts can only receive encrypted emails from non-Tutanota email accounts when sent via a [temporary Tutanota mailbox](https://www.tutanota.com/howto/#encrypted-email-external).
|
||||
|
||||
Tutanota [does have plans](https://github.com/tutao/tutanota/issues/198) to support [AutoCrypt](https://autocrypt.org). This would allow for non-Tutanota emails to send encrypted emails to Tutanota accounts as long as their email client supports the AutoCrypt headers.
|
||||
??? warning "Digital Legacy"
|
||||
|
||||
Tutanota doesn't offer a digital legacy feature.
|
||||
|
||||
??? info "Account Termination"
|
||||
|
||||
Tutanota will [delete inactive free accounts](https://tutanota.com/faq#inactive-accounts) after six months. You can reuse a deactivated free account if you pay.
|
||||
|
||||
??? info "Additional Functionality"
|
||||
|
||||
@ -337,9 +373,9 @@ For a more manual approach we've picked out these two articles:
|
||||
- [Setting up a mail server with OpenSMTPD, Dovecot and Rspamd](https://poolp.org/posts/2019-09-14/setting-up-a-mail-server-with-opensmtpd-dovecot-and-rspamd/) (2019)
|
||||
- [How To Run Your Own Mail Server](https://www.c0ffee.net/blog/mail-server-guide/) (August 2017)
|
||||
|
||||
## Our Criteria
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the providers we recommend.** This allows us to provide completely objective recommendations. We have developed a clear set of requirements for any Email provider wishing to be recommended, including implementing industry best practices, modern technology and more. We suggest you familiarize yourself with this list before choosing an Email provider, and conduct your own research to ensure the Email provider you choose is the right choice for you.
|
||||
**Please note we are not affiliated with any of the providers we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements for any Email provider wishing to be recommended, including implementing industry best practices, modern technology and more. We suggest you familiarize yourself with this list before choosing an Email provider, and conduct your own research to ensure the Email provider you choose is the right choice for you.
|
||||
|
||||
### Technology
|
||||
|
||||
@ -348,11 +384,13 @@ We regard these features as important in order to provide a safe and optimal ser
|
||||
**Minimum to Qualify:**
|
||||
|
||||
- Encrypts email account data at rest with zero-access encryption.
|
||||
- Export capability as [Mbox](https://en.wikipedia.org/wiki/Mbox) or individual .eml with [RFC5322](https://datatracker.ietf.org/doc/rfc5322/) standard.
|
||||
- Allow users to use their own [domain name](https://en.wikipedia.org/wiki/Domain_name). Custom domain names are important to users because it allows them to maintain their agency from the service, should it turn bad or be acquired by another company which doesn't prioritize privacy.
|
||||
- Operates on owned infrastructure, i.e. not built upon third-party email service providers.
|
||||
|
||||
**Best Case:**
|
||||
|
||||
- Encrypts all account data (Contacts, Calendars, etc) at rest with zero-access encryption.
|
||||
- Allow users to use their own [domain name](https://en.wikipedia.org/wiki/Domain_name). Custom domain names are important to users because it allows them to maintain their agency from the service, should it turn bad or be acquired by another company which doesn't prioritize privacy.
|
||||
- Integrated webmail E2EE/PGP encryption provided as a convenience.
|
||||
- Support for [WKD](https://wiki.gnupg.org/WKD) to allow improved discovery of public OpenPGP keys via HTTP.
|
||||
GnuPG users can get a key by typing: `gpg --locate-key example_user@example.com`
|
||||
@ -386,7 +424,8 @@ Email servers deal with a lot of very sensitive data. We expect that providers w
|
||||
- Protection of webmail with 2FA, such as TOTP.
|
||||
- Zero access encryption, builds on encryption at rest. The provider does not have the decryption keys to the data they hold. This prevents a rogue employee leaking data they have access to or remote adversary from releasing data they have stolen by gaining unauthorized access to the server.
|
||||
- [DNSSEC](https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions) support.
|
||||
- No [TLS](https://en.wikipedia.org/wiki/Opportunistic_TLS) errors/vulnerabilities when being profiled by tools such as [Hardenize](https://www.hardenize.com), [testssl.sh](https://testssl.sh) or [Qualys SSL Labs](https://www.ssllabs.com/ssltest), this includes certificate related errors, poor or weak ciphers suites, weak DH parameters such as those that led to [Logjam](https://en.wikipedia.org/wiki/Logjam_(computer_security)).
|
||||
- No TLS errors or vulnerabilities when being profiled by tools such as [Hardenize](https://www.hardenize.com/), [testssl.sh](https://testssl.sh/), or [Qualys SSL Labs](https://www.ssllabs.com/ssltest); this includes certificate related errors and weak DH parameters, such as those that led to [Logjam](https://en.wikipedia.org/wiki/Logjam_(computer_security)).
|
||||
- A server suite preference (optional on TLSv1.3) for strong cipher suites which support forward secrecy and authenticated encryption.
|
||||
- A valid [MTA-STS](https://tools.ietf.org/html/rfc8461) and [TLS-RPT](https://tools.ietf.org/html/rfc8460) policy.
|
||||
- Valid [DANE](https://en.wikipedia.org/wiki/DNS-based_Authentication_of_Named_Entities) records.
|
||||
- Valid [SPF](https://en.wikipedia.org/wiki/Sender_Policy_Framework) and [DKIM](https://en.wikipedia.org/wiki/DomainKeys_Identified_Mail) records.
|
||||
@ -396,6 +435,7 @@ Email servers deal with a lot of very sensitive data. We expect that providers w
|
||||
- Website security standards such as:
|
||||
- [HTTP Strict Transport Security](https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security)
|
||||
- [Subresource Integrity](https://en.wikipedia.org/wiki/Subresource_Integrity) if loading things from external domains.
|
||||
- Must support viewing of [Message headers](https://en.wikipedia.org/wiki/Email#Message_header), as it is a crucial forensic feature to determine if an email is a phishing attempt.
|
||||
|
||||
**Best Case:**
|
||||
|
@ -132,7 +132,7 @@ BitLocker is [only supported](https://support.microsoft.com/en-us/windows/turn-o
|
||||
manage-bde -protectors -get c: > %UserProfile%\Desktop\BitLocker-Recovery-Key.txt
|
||||
```
|
||||
|
||||
!!! important
|
||||
!!! tip
|
||||
|
||||
Backup `BitLocker-Recovery-Key.txt` on your Desktop to a separate storage device. Loss of this recovery code may result in loss of data.
|
||||
|
||||
@ -146,7 +146,7 @@ BitLocker is [only supported](https://support.microsoft.com/en-us/windows/turn-o
|
||||
|
||||
[:octicons-info-16:](https://support.apple.com/guide/mac-help/encrypt-mac-data-with-filevault-mh11785/mac){ .card-link title=Documentation}
|
||||
|
||||
We recommend storing a local recovery key in a secure place as opposed to using iCloud FileVault recovery. As well, FileVault should be enabled **after** a complete macOS installation as more pseudorandom number generator ([PRNG](https://support.apple.com/guide/security/random-number-generation-seca0c73a75b/web)) [entropy](https://en.wikipedia.org/wiki/Entropy_(computing)) will be available.
|
||||
We recommend storing a local recovery key in a secure place as opposed to using your iCloud account for recovery.
|
||||
|
||||
### Linux Unified Key Setup
|
||||
|
||||
@ -199,7 +199,7 @@ Browser-based encryption can be useful when you need to encrypt a file but canno
|
||||
[:octicons-eye-16:](https://hat.sh/about/){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://hat.sh/about/){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/sh-dv/hat.sh){ .card-link title="Source Code" }
|
||||
:octicons-heart-16:{ .card-link title="Donations methods can be found at the bottom of the website" }
|
||||
[:octicons-heart-16:](https://github.com/sh-dv/hat.sh#donations){ .card-link title="Donations methods can be found at the bottom of the website" }
|
||||
|
||||
## Command-line
|
||||
|
||||
@ -325,8 +325,29 @@ When encrypting with PGP, you have the option to configure different options in
|
||||
[:octicons-eye-16:](https://www.openkeychain.org/help/privacy-policy){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://www.openkeychain.org/faq/){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/open-keychain/open-keychain){ .card-link title="Source Code" }
|
||||
:octicons-heart-16:{ .card-link title="Donations can be made within the app" }
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=org.sufficientlysecure.keychain)
|
||||
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
### Minimum Qualifications
|
||||
|
||||
- Cross-platform encryption apps must be open-source.
|
||||
- File encryption apps must support decryption on Linux, macOS, and Windows.
|
||||
- External disk encryption apps must support decryption on Linux, macOS, and Windows.
|
||||
- Internal (OS) disk encryption apps must be cross-platform or built in to the operating system natively.
|
||||
|
||||
### Best-Case
|
||||
|
||||
Our best-case criteria represents what we would like to see from the perfect project in this category. Our recommendations may not include any or all of this functionality, but those which do may rank higher than others on this page.
|
||||
|
||||
- Operating System (FDE) encryption apps should utilize hardware security such as a TPM or Secure Enclave.
|
||||
- File encryption apps should have first- or third-party support for mobile platforms.
|
@ -45,6 +45,18 @@ ffsend upload --host https://send.vis.ee/ FILE
|
||||
- [:simple-apple: macOS](https://onionshare.org/#download)
|
||||
- [:simple-linux: Linux](https://onionshare.org/#download)
|
||||
|
||||
### Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
- Must not store decrypted data on a remote server.
|
||||
- Must be open-source software.
|
||||
- Must either have clients for Linux, macOS, and Windows; or have a web interface.
|
||||
|
||||
## FreedomBox
|
||||
|
||||
!!! recommendation
|
||||
@ -60,7 +72,35 @@ ffsend upload --host https://send.vis.ee/ FILE
|
||||
|
||||
## File Sync
|
||||
|
||||
### Syncthing
|
||||
### Nextcloud (Client-Server)
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
|
||||
**Nextcloud** is a suite of free and open-source client-server software for creating your own file hosting services on a private server you control.
|
||||
|
||||
[:octicons-home-16: Homepage](https://nextcloud.com){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://nextcloud.com/privacy){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://nextcloud.com/support/){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/nextcloud){ .card-link title="Source Code" }
|
||||
[:octicons-heart-16:](https://nextcloud.com/contribute/){ .card-link title=Contribute }
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:simple-googleplay: Google Play](https://play.google.com/store/apps/details?id=com.nextcloud.client)
|
||||
- [:simple-appstore: App Store](https://apps.apple.com/app/id1125420102)
|
||||
- [:simple-github: GitHub](https://github.com/nextcloud/android/releases)
|
||||
- [:simple-windows11: Windows](https://nextcloud.com/install/#install-clients)
|
||||
- [:simple-apple: macOS](https://nextcloud.com/install/#install-clients)
|
||||
- [:simple-linux: Linux](https://nextcloud.com/install/#install-clients)
|
||||
- [:simple-freebsd: FreeBSD](https://www.freshports.org/www/nextcloud)
|
||||
|
||||
!!! danger
|
||||
|
||||
We don't recommend using the [E2EE App](https://apps.nextcloud.com/apps/end_to_end_encryption) for Nextcloud as it may lead to data loss; it is highly experimental and not production quality.
|
||||
|
||||
### Syncthing (P2P)
|
||||
|
||||
!!! recommendation
|
||||
|
||||
@ -82,3 +122,24 @@ ffsend upload --host https://send.vis.ee/ FILE
|
||||
- [:simple-freebsd: FreeBSD](https://syncthing.net/downloads/)
|
||||
- [:simple-openbsd: OpenBSD](https://syncthing.net/downloads/)
|
||||
- [:simple-netbsd: NetBSD](https://syncthing.net/downloads/)
|
||||
|
||||
### Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
#### Minimum Requirements
|
||||
|
||||
- Must not require a third-party remote/cloud server.
|
||||
- Must be open-source software.
|
||||
- Must either have clients for Linux, macOS, and Windows; or have a web interface.
|
||||
|
||||
#### Best-Case
|
||||
|
||||
Our best-case criteria represents what we would like to see from the perfect project in this category. Our recommendations may not include any or all of this functionality, but those which do may rank higher than others on this page.
|
||||
|
||||
- Has mobile clients for iOS and Android, which at least support document previews.
|
||||
- Supports photo backup from iOS and Android, and optionally supports file/folder sync on Android.
|
@ -33,7 +33,7 @@ Sometimes services will try to force you to sign up for an account by blocking a
|
||||
|
||||
When self-hosting, it is important that you have other people using your instance as well in order for you to blend in. You should be careful with where and how you are hosting Librarian, as other peoples' usage will be linked to your hosting.
|
||||
|
||||
When you are using a Librarian instance, make sure to read the privacy policy of that specific instance. Librarian instances can be modified by their owners and therefore may not reflect the default policy. Librarian instances feature a "privacy nutrition label" to provide an overview of their policy. Some instances have Tor .onion addresses which may grant some privacy as long as your search queries don't contain PII (Personally Identifiable Information).
|
||||
When you are using a Librarian instance, make sure to read the privacy policy of that specific instance. Librarian instances can be modified by their owners and therefore may not reflect the default policy. Librarian instances feature a "privacy nutrition label" to provide an overview of their policy. Some instances have Tor .onion addresses which may grant some privacy as long as your search queries don't contain PII.
|
||||
|
||||
## Twitter
|
||||
|
||||
@ -55,11 +55,36 @@ When you are using a Librarian instance, make sure to read the privacy policy of
|
||||
|
||||
!!! tip
|
||||
|
||||
Nitter is useful if you want to browser Twitter content without having to log in and if you want to disable JavaScript in your browser, as is the case with [Tor Browser](https://www.torproject.org/) on the Safest security level. It also allows you to [create RSS feeds for Twitter](news-aggregators.md#twitter).
|
||||
Nitter is useful if you want to browse Twitter content without having to log in and if you want to disable JavaScript in your browser, as is the case with [Tor Browser](https://www.torproject.org/) on the Safest security level. It also allows you to [create RSS feeds for Twitter](news-aggregators.md#twitter).
|
||||
|
||||
When self-hosting, it is important that you have other people using your instance as well in order for you to blend in. You should be careful with where and how you are hosting Nitter, as other peoples' usage will be linked to your hosting.
|
||||
|
||||
When you are using a Nitter instance, make sure to read the privacy policy of that specific instance. Nitter instances can be modified by their owners and therefore may not reflect the default policy. Some instances have Tor .onion addresses which may grant some privacy as long as your search queries don't contain PII (Personally Identifiable Information).
|
||||
When you are using a Nitter instance, make sure to read the privacy policy of that specific instance. Nitter instances can be modified by their owners and therefore may not reflect the default policy. Some instances have Tor .onion addresses which may grant some privacy as long as your search queries don't contain PII.
|
||||
|
||||
## TikTok
|
||||
|
||||
### ProxiTok
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
|
||||
**ProxiTok** is an open source frontend to the [TikTok](https://www.tiktok.com) website that is also self-hostable.
|
||||
|
||||
There are a number of public instances, with some instances having [Tor](https://www.torproject.org) onion services support.
|
||||
|
||||
[:octicons-repo-16: Repository](https://github.com/pablouser1/ProxiTok){ .md-button .md-button--primary }
|
||||
[:octicons-server-16:](https://github.com/pablouser1/ProxiTok/wiki/Public-instances){ .card-link title="Public Instances"}
|
||||
[:octicons-info-16:](https://github.com/pablouser1/ProxiTok/wiki){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/pablouser1/ProxiTok){ .card-link title="Source Code" }
|
||||
|
||||
!!! tip
|
||||
|
||||
ProxiTok is useful if you want to disable JavaScript in your browser, such as [Tor Browser](https://www.torproject.org/) on the Safest security level.
|
||||
|
||||
When self-hosting, it is important that you have other people using your instance as well in order for you to blend in. You should be careful with where and how you are hosting ProxiTok, as other peoples' usage will be linked to your hosting.
|
||||
|
||||
When you are using a ProxiTok instance, make sure to read the privacy policy of that specific instance. ProxiTok instances can be modified by their owners and therefore may not reflect their associated privacy policy. Some instances have Tor .onion addresses which may grant some privacy as long as your search queries don't contain PII.
|
||||
|
||||
## YouTube
|
||||
|
||||
@ -86,10 +111,62 @@ When you are using a Nitter instance, make sure to read the privacy policy of th
|
||||
- [:simple-linux: Linux](https://freetubeapp.io/#download)
|
||||
- [:simple-flathub: Flathub](https://flathub.org/apps/details/io.freetubeapp.FreeTube)
|
||||
|
||||
!!! Warning
|
||||
!!! warning
|
||||
|
||||
When using FreeTube, your IP address may still be known to YouTube, [Invidious](https://instances.invidious.io) or [SponsorBlock](https://sponsor.ajay.app/) depending on your configuration. Consider using a [VPN](vpn.md) or [Tor](https://www.torproject.org) if your [threat model](basics/threat-modeling.md) requires hiding your IP address.
|
||||
|
||||
### Yattee
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
|
||||
**Yattee** is a free and open-source privacy oriented video player for iOS, tvOS and macOS for [YouTube](https://youtube.com). When using Yattee, your subscription list are saved locally on your device.
|
||||
|
||||
You will need to take a few [extra steps](https://gonzoknows.com/posts/Yattee/) before you can use Yattee to watch YouTube, due to App Store restrictions.
|
||||
|
||||
[:octicons-home-16: Homepage](https://github.com/yattee/yattee){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://r.yattee.stream/docs/privacy.html){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://github.com/yattee/yattee/wiki){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/yattee/yattee){ .card-link title="Source Code" }
|
||||
[:octicons-heart-16:](https://github.com/yattee/yattee/wiki/Donations){ .card-link title=Contribute }
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:simple-apple: App Store](https://apps.apple.com/us/app/yattee/id1595136629)
|
||||
- [:simple-github: GitHub](https://github.com/yattee/yattee/releases)
|
||||
|
||||
!!! warning
|
||||
|
||||
When using Yattee, your IP address may still be known to YouTube, [Invidious](https://instances.invidious.io), [Piped](https://github.com/TeamPiped/Piped/wiki/Instances) or [SponsorBlock](https://sponsor.ajay.app/) depending on your configuration. Consider using a [VPN](vpn.md) or [Tor](https://www.torproject.org) if your [threat model](basics/threat-modeling.md) requires hiding your IP address.
|
||||
|
||||
By default, Yattee blocks all YouTube advertisements. In addition, Yattee optionally integrates with [SponsorBlock](https://sponsor.ajay.app) to help you skip sponsored video segments.
|
||||
|
||||
### LibreTube (Android)
|
||||
|
||||
!!! recommendation
|
||||
|
||||
{ align=right }
|
||||
{ align=right }
|
||||
|
||||
**LibreTube** is a free and open-source Android application for [YouTube](https://youtube.com) which uses the [Piped](#piped) API.
|
||||
|
||||
LibreTube allows you to store your subscription list and playlists locally on your Android device, or to an account on your Piped instance of choice, which allows you to access them seamlessly on other devices as well.
|
||||
|
||||
[:octicons-home-16: Homepage](https://libre-tube.github.io){ .md-button .md-button--primary }
|
||||
[:octicons-eye-16:](https://github.com/libre-tube/LibreTube#privacy-policy-and-disclaimer){ .card-link title="Privacy Policy" }
|
||||
[:octicons-info-16:](https://github.com/libre-tube/LibreTube#readme){ .card-link title=Documentation}
|
||||
[:octicons-code-16:](https://github.com/libre-tube/LibreTube){ .card-link title="Source Code" }
|
||||
|
||||
??? downloads
|
||||
|
||||
- [:simple-github: GitHub](https://github.com/libre-tube/LibreTube/releases)
|
||||
|
||||
!!! warning
|
||||
|
||||
When using LibreTube, your IP address will be visible to the [Piped](https://github.com/TeamPiped/Piped/wiki/Instances) instance you choose and/or [SponsorBlock](https://sponsor.ajay.app/) depending on your configuration. Consider using a [VPN](vpn.md) or [Tor](https://www.torproject.org) if your [threat model](basics/threat-modeling.md) requires hiding your IP address.
|
||||
|
||||
By default, LibreTube blocks all YouTube advertisements. Additionally, Libretube uses [SponsorBlock](https://sponsor.ajay.app) to help you skip sponsored video segments. You are able to fully configure the types of segments that SponsorBlock will skip, or disable it completely. There is also a button on the video player itself to disable it for a specific video if desired.
|
||||
|
||||
### NewPipe (Android)
|
||||
|
||||
@ -114,7 +191,7 @@ When you are using a Nitter instance, make sure to read the privacy policy of th
|
||||
1. The default instance is [FramaTube](https://framatube.org/), however more can be added via **Settings** → **Content** → **PeerTube instances**
|
||||
|
||||
!!! Warning
|
||||
|
||||
|
||||
When using NewPipe, your IP address will be visible to the video providers used. Consider using a [VPN](vpn.md) or [Tor](https://www.torproject.org) if your [threat model](basics/threat-modeling.md) requires hiding your IP address.
|
||||
|
||||
### Invidious
|
||||
@ -144,7 +221,7 @@ When you are using a Nitter instance, make sure to read the privacy policy of th
|
||||
|
||||
When self-hosting, it is important that you have other people using your instance as well in order for you to blend in. You should be careful with where and how you are hosting Invidious, as other peoples' usage will be linked to your hosting.
|
||||
|
||||
When you are using an Invidious instance, make sure to read the privacy policy of that specific instance. Invidious instances can be modified by their owners and therefore may not reflect their associated privacy policy. Some instances have Tor .onion addresses which may grant some privacy as long as your search queries don't contain PII (Personally Identifiable Information).
|
||||
When you are using an Invidious instance, make sure to read the privacy policy of that specific instance. Invidious instances can be modified by their owners and therefore may not reflect their associated privacy policy. Some instances have Tor .onion addresses which may grant some privacy as long as your search queries don't contain PII.
|
||||
|
||||
### Piped
|
||||
|
||||
@ -169,3 +246,21 @@ When you are using an Invidious instance, make sure to read the privacy policy o
|
||||
When self-hosting, it is important that you have other people using your instance as well in order for you to blend in. You should be careful with where and how you are hosting Piped, as other peoples' usage will be linked to your hosting.
|
||||
|
||||
When you are using a Piped instance, make sure to read the privacy policy of that specific instance. Piped instances can be modified by their owners and therefore may not reflect their associated privacy policy.
|
||||
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
Recommended frontends...
|
||||
|
||||
- Must be open-source software.
|
||||
- Must be self-hostable.
|
||||
- Must provide all basic website functionality available to anonymous users.
|
||||
|
||||
We only consider frontends for websites which are...
|
||||
|
||||
- Not normally accessible without JavaScript.
|
@ -6,45 +6,36 @@ hide:
|
||||
- feedback
|
||||
---
|
||||
<!-- markdownlint-disable-next-line -->
|
||||
<div style="max-width:50rem;margin:auto;" markdown>
|
||||
<div style="max-width:38rem;" markdown>
|
||||
## Why should I care?
|
||||
|
||||
##### “I have nothing to hide. Why should I care about my privacy?”
|
||||
|
||||
Much like the right to interracial marriage, woman's suffrage, freedom of speech, and many others, our right to privacy hasn't always been upheld. In several dictatorships, it still isn't. Generations before ours fought for our right to privacy. ==Privacy is a human right, inherent to all of us,== that we are entitled to (without discrimination).
|
||||
|
||||
You shouldn't confuse privacy with secrecy. We know what happens in the bathroom, but you still close the door. That's because you want privacy, not secrecy. **Everyone** has something to protect. Privacy is something that makes you human.
|
||||
You shouldn't confuse privacy with secrecy. We know what happens in the bathroom, but you still close the door. That's because you want privacy, not secrecy. **Everyone** has something to protect. Privacy is something that makes us human.
|
||||
|
||||
[:material-target-account: Common Internet Threats](basics/common-threats.md){ .md-button .md-button--primary }
|
||||
</div>
|
||||
|
||||
<div style="margin-left:auto;margin-right:0;text-align:right;max-width:38rem;" markdown>
|
||||
## What should I do?
|
||||
|
||||
##### First, you need to make a plan.
|
||||
##### First, you need to make a plan
|
||||
|
||||
Trying to protect all your data from everyone all the time is impractical, expensive, and exhausting. But don't worry! Security is a process, and, by thinking ahead, you can put together a plan that's right for you. Security isn't just about the tools you use or the software you download. Rather, it begins by understanding the unique threats you face, and how you can mitigate them.
|
||||
|
||||
==This process of identifying threats and defining countermeasures is called **threat modeling**==, and it forms the basis of every good security and privacy plan.
|
||||
|
||||
[:material-book-outline: Learn More About Threat Modeling](basics/threat-modeling.md){ .md-button .md-button--primary }
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div style="padding:3em;max-width:960px;margin:auto;text-align:center;" markdown>
|
||||
---
|
||||
|
||||
## We need you! Here's how to get involved:
|
||||
|
||||
[:simple-discourse:](https://discuss.privacyguides.net/){ title="Join our Forum" }
|
||||
[:simple-mastodon:](https://mastodon.neat.computer/@privacyguides){ rel=me title="Follow us on Mastodon" }
|
||||
[:material-book-edit:](https://github.com/privacyguides/privacyguides.org){ title="Contribute to this website" }
|
||||
[:material-translate:](https://matrix.to/#/#pg-i18n:aragon.sh){ title="Help translate this website" }
|
||||
[:simple-matrix:](https://matrix.to/#/#privacyguides:matrix.org){ title="Chat with us on Matrix" }
|
||||
[:material-information-outline:](about/index.md){ title="Learn more about us" }
|
||||
[:material-hand-coin-outline:](about/donate.md){ title="Support the project" }
|
||||
|
||||
It's important for a website like Privacy Guides to always stay up-to-date. We need our audience to keep an eye on software updates for the applications listed on our site and follow recent news about providers that we recommend. It's hard to keep up with the fast pace of the internet, but we try our best. If you spot an error, think a provider should not be listed, notice a qualified provider is missing, believe a browser plugin is no longer the best choice, or uncover any other issue, please let us know.
|
||||
|
||||
<div class="grid cards" style="margin:auto;max-width:800px;text-align:center;" markdown>
|
||||
|
||||
- [:simple-discourse: Join our forum](https://discuss.privacyguides.org/)
|
||||
- [:simple-mastodon: Follow us on Mastodon](https://mastodon.social/@privacyguides){ rel=me }
|
||||
- [:material-book-edit: Contribute to this website](https://github.com/privacyguides/privacyguides.org)
|
||||
- [:simple-matrix: Chat with us on Matrix](https://matrix.to/#/#privacyguides:matrix.org)
|
||||
- [:material-information-outline: Learn more about us](about.md)
|
||||
- [:material-hand-coin-outline: Support the project](about/donate.md)
|
||||
|
||||
</div>
|
||||
</div>
|
15
docs/kb-archive.md
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
title: KB Archive
|
||||
icon: material/archive
|
||||
---
|
||||
# Pages Moved to Blog
|
||||
|
||||
Some pages that used to be in our knowledge base can now be found on our blog:
|
||||
|
||||
- [GrapheneOS vs. CalyxOS](https://blog.privacyguides.org/2022/04/21/grapheneos-or-calyxos/)
|
||||
- [Signal Configuration Hardening](https://blog.privacyguides.org/2022/07/07/signal-configuration-and-hardening/)
|
||||
- [Linux - System Hardening](https://blog.privacyguides.org/2022/04/22/linux-system-hardening/)
|
||||
- [Linux - Application Sandboxing](https://blog.privacyguides.org/2022/04/22/linux-application-sandboxing/)
|
||||
- [Secure Data Erasure](https://blog.privacyguides.org/2022/05/25/secure-data-erasure/)
|
||||
- [Integrating Metadata Removal](https://blog.privacyguides.org/2022/04/09/integrating-metadata-removal/)
|
||||
- [iOS Configuration Guide](https://blog.privacyguides.org/2022/10/22/ios-configuration-guide/)
|
@ -1,134 +0,0 @@
|
||||
---
|
||||
title: System Hardening
|
||||
icon: material/monitor-lock
|
||||
---
|
||||
There are a number of procedures you can follow to make your Linux desktop system more secure, some more advanced than others. We cover some general techniques here.
|
||||
|
||||
## Firewalls
|
||||
|
||||
A [firewall](https://en.wikipedia.org/wiki/Firewall_(computing)) may be used to secure connections to your system. If you’re on a public network, the necessity of this may be greater than if you’re on a local trusted network that you control. We would generally recommend that you block incoming connections only, unless you’re using an application firewall such as [OpenSnitch](https://github.com/evilsocket/opensnitch) or [Portmaster](https://safing.io/portmaster/).
|
||||
|
||||
Red Hat distributions (such as Fedora) are typically configured through [firewalld](https://en.wikipedia.org/wiki/Firewalld). Red Hat has plenty of [documentation](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_and_managing_networking/using-and-configuring-firewalld_configuring-and-managing-networking) regarding this topic. There is also the [Uncomplicated Firewall](https://en.wikipedia.org/wiki/Uncomplicated_Firewall) which can be used as an alternative.
|
||||
|
||||
You could also set your default firewall zone to drop packets. If you're on a Redhat based distribution, such as Fedora this can be done with the following commands:
|
||||
|
||||
!!! Example
|
||||
```
|
||||
firewall-cmd --set-default-zone=drop;
|
||||
firewall-cmd --add-protocol=ipv6-icmp --permanent;
|
||||
firewall-cmd --add-service=dhcpv6-client --permanent;
|
||||
```
|
||||
|
||||
All these firewalls use the [Netfilter](https://en.wikipedia.org/wiki/Netfilter) framework and therefore cannot protect against malicious programs running on the system. A malicious program could insert its own rules.
|
||||
|
||||
If you are using Flatpak packages, you can revoke their network socket access using Flatseal and prevent those applications from accessing your network. This permission is not bypassable.
|
||||
|
||||
If you are using non-classic [Snap](https://en.wikipedia.org/wiki/Snap_(package_manager)) packages on a system with proper snap confinement support (with both AppArmor and [cgroups](https://en.wikipedia.org/wiki/Cgroups) v1 present), you can use the Snap Store to revoke network permission as well. This is also not bypassable.
|
||||
|
||||
## Kernel hardening
|
||||
|
||||
Kernel hardening options such as configuring [sysctl](https://en.wikipedia.org/wiki/Sysctl#Linux) keys and [kernel command-line parameters](https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html) can help harden your system. We suggest looking at the following [sysctl settings](https://madaidans-insecurities.github.io/guides/linux-hardening.html#sysctl) and [boot parameters](https://madaidans-insecurities.github.io/guides/linux-hardening.html#boot-parameters).
|
||||
|
||||
We **strongly** recommend that you learn what these options do before applying them. There are also some methods of [kernel attack surface reduction](https://madaidans-insecurities.github.io/guides/linux-hardening.html#kernel-attack-surface-reduction) and [access restrictions to sysfs](https://madaidans-insecurities.github.io/guides/linux-hardening.html#restricting-sysfs) that can further improve security.
|
||||
|
||||
!!! Note
|
||||
Unprivileged [user namespaces](https://madaidans-insecurities.github.io/linux.html#kernel) can be disabled, due to it being responsible for various privileged escalation vulnerabilities. Some software such as Docker, Podman, and LXC require unprivileged user namespaces to function. If you use these tools you should not disable `kernel.unprivileged_userns_clone`.
|
||||
|
||||
Disabling access to `/sys` without a proper whitelist will lead to various applications breaking. This will unfortunately be an extremely tedious process for most users. Kicksecure, and by extension, Whonix, has an experimental [hide hardware info service](https://github.com/Kicksecure/security-misc/blob/master/lib/systemd/system/hide-hardware-info.service) which does just this. From our testing, these work perfectly fine on minimal Kicksecure installations and both Qubes-Whonix Workstation and Gateway. If you are using Kicksecure or Whonix, we recommend that you follow the [Kicksecure Wiki](https://www.kicksecure.com/wiki/Security-misc) to enable hide hardware info service.
|
||||
|
||||
## Linux-Hardened
|
||||
|
||||
Some distributions like Arch Linux have the [linux-hardened](https://github.com/anthraxx/linux-hardened), kernel package. It includes [hardening patches](https://wiki.archlinux.org/title/security#Kernel_hardening) and more security-conscious defaults. Linux-Hardened has `kernel.unprivileged_userns_clone=0` disabled by default. See the [note above](#kernel-hardening) about how this might impact you.
|
||||
|
||||
## Linux Kernel Runtime Guard (LKRG)
|
||||
|
||||
LKRG is a kernel module that performs runtime integrity check on the kernel to help detect exploits against the kernel. LKRG works in a *post*-detect fashion, attempting to respond to unauthorized modifications to the running Linux kernel. While it is [bypassable by design](https://lkrg.org/), it does stop off-the-shelf malware that does not specifically target LKRG itself. This may make exploits harder to develop and execute on vulnerable systems.
|
||||
|
||||
If you can get LKRG and maintain module updates, it provides a worthwhile improvement to security. Debian based distributions can get the LKRG DKMS package from KickSecure's secure repository and the [KickSecure documentation](https://www.kicksecure.com/wiki/Linux_Kernel_Runtime_Guard_LKRG) has instructions.
|
||||
|
||||
On Fedora, [fepitre](https://github.com/fepitre), a QubesOS developer has a [COPR repository](https://copr.fedorainfracloud.org/coprs/fepitre/lkrg/) where you can install it. Arch based systems can obtain the LKRG DKMS package via an [AUR package](https://aur.archlinux.org/packages/lkrg-dkms).
|
||||
|
||||
## GRSecurity
|
||||
|
||||
GRSecurity is a set of kernel patches that attempt to improve security of the Linux kernel. It requires [payment to access](https://grsecurity.net/purchase) the code and is worth using if you have a subscription.
|
||||
|
||||
## Simultaneous multithreading (SMT)
|
||||
|
||||
[SMT](https://en.wikipedia.org/wiki/Simultaneous_multithreading) has been the cause of numerous hardware vulnerabilities, and subsequent patches for those vulnerabilities often come with performance penalties that negate most of the performance gain given by SMT. If you followed the “kernel hardening” section above, some kernel parameters already disable SMT. If the option is available to you, we recommend that you disable it in your firmware as well.
|
||||
|
||||
## Hardened memory allocator
|
||||
|
||||
The [hardened memory allocator](https://github.com/GrapheneOS/hardened_malloc) from [GrapheneOS](https://grapheneos.org) can also be used on general Linux distributions. It is available as an [AUR package](https://wiki.archlinux.org/title/Security#Hardened_malloc) on Arch based distributions, and (though not enabled by default) on Whonix and Kicksecure.
|
||||
|
||||
If you are using Whonix, Kicksecure or the AUR package, consider setting up `LD_PRELOAD` as described in the [Kicksecure Documentation](https://www.kicksecure.com/wiki/Hardened_Malloc) or [Arch Wiki](https://wiki.archlinux.org/title/Security#Hardened_malloc).
|
||||
|
||||
## Umask
|
||||
|
||||
If you are not using openSUSE, consider changing the default [umask](https://en.wikipedia.org/wiki/Umask) for both regular user accounts and root to 077. Changing umask to 077 can break snapper on openSUSE and is **not** recommended.
|
||||
|
||||
## Mountpoint hardening
|
||||
|
||||
Consider adding the [following options](https://man7.org/linux/man-pages/man8/mount.8.html) `nodev`, `noexec`, and `nosuid` to [mountpoints](https://en.wikipedia.org/wiki/Mount_(computing)) which do not need them. Typically, these could be applied to `/boot`, `/boot/efi`, and `/var`.
|
||||
|
||||
These flags could also be applied to `/home` and `/root` as well, however, `noexec` will prevent applications from working that require binary execution in those locations. This includes products such as Flatpak and Snap.
|
||||
|
||||
If you use [Toolbox](https://docs.fedoraproject.org/en-US/fedora-silverblue/toolbox/), `/var/log/journal` must not have any of those options. If you are on Arch Linux, do not apply `noexec` to `/var/tmp`.
|
||||
|
||||
## Disabling SUID
|
||||
|
||||
SUID allows a user to execute an application as the owner of that application, which in many cases, would be the `root` user. Vulnerable SUID executables could lead to privilege escalation vulnerabilities.
|
||||
|
||||
It is desirable to remove SUID from as many binaries as possible; however, this takes substantial effort and trial and error on the user's part, as some applications require SUID to function.
|
||||
|
||||
Kicksecure, and by extension, Whonix has an experimental [permission hardening service](https://github.com/Kicksecure/security-misc/blob/master/lib/systemd/system/permission-hardening.service) and [application whitelist](https://github.com/Kicksecure/security-misc/tree/master/etc/permission-hardening.d) to automate SUID removal from most binaries and libraries on the system. From our testing, these work perfectly fine on a minimal Kicksecure installation and both Qubes-Whonix Workstation and Gateway.
|
||||
|
||||
If you are using Kicksecure or Whonix, we recommend that you follow the [Kicksecure Wiki](https://www.kicksecure.com/wiki/SUID_Disabler_and_Permission_Hardener) to enable the permission hardener.
|
||||
|
||||
Users of other distributions can adapt the permission hardener to their own system based on the source code linked above.
|
||||
|
||||
## Secure Time Synchronization
|
||||
|
||||
Most Linux distributions by default (especially Arch based distributions with `systemd-timesyncd`) use un-encrypted NTP for time synchronization. Securing NTP can be achieved by [configuring NTS with chronyd](https://fedoramagazine.org/secure-ntp-with-nts/) or by using [swdate](https://github.com/Kicksecure/sdwdate) on Debian based distributions.
|
||||
|
||||
## Linux Pluggable Authentication Modules (PAM)
|
||||
|
||||
The security of [PAM](https://en.wikipedia.org/wiki/Linux_PAM) can be [hardened](https://madaidans-insecurities.github.io/guides/linux-hardening.html#pam) to allow secure authentication to your system.
|
||||
|
||||
On Red Hat distributions you can use [`authselect`](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_authentication_and_authorization_in_rhel/configuring-user-authentication-using-authselect_configuring-authentication-and-authorization-in-rhel) to configure this e.g.:
|
||||
|
||||
```bash
|
||||
sudo authselect select <profile_id, default: sssd> with-faillock without-nullok with-pamaccess
|
||||
```
|
||||
|
||||
On systems where [`pam_faillock`](https://man7.org/linux/man-pages/man8/pam_tally.8.html) is not available, consider using [`pam_tally2`](https://man7.org/linux/man-pages/man8/pam_tally.8.html) instead.
|
||||
|
||||
## USB port protection
|
||||
|
||||
To better protect your [USB](https://en.wikipedia.org/wiki/USB) ports from attacks such as [BadUSB](https://en.wikipedia.org/wiki/BadUSB), we recommend [USBGuard](https://github.com/USBGuard/usbguard). USBGuard has [documentation](https://github.com/USBGuard/usbguard#documentation) as does the [Arch Wiki](https://wiki.archlinux.org/title/USBGuard).
|
||||
|
||||
Another alternative option if you’re using the [linux-hardened](#linux-hardened) is the [`deny_new_usb`](https://github.com/GrapheneOS/linux-hardened/commit/96dc427ab60d28129b36362e1577b6673b0ba5c4) sysctl. See [Preventing USB Attacks with `linux-hardened`](https://blog.lizzie.io/preventing-usb-attacks-with-linux-hardened.html).
|
||||
|
||||
## Secure Boot
|
||||
|
||||
[Secure Boot](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface#Secure_Boot) can be used to secure the boot process by preventing the loading of [unsigned](https://en.wikipedia.org/wiki/Public-key_cryptography) [UEFI](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface) drivers or [boot loaders](https://en.wikipedia.org/wiki/Bootloader).
|
||||
|
||||
One of the problems with Secure Boot, particularly on Linux is, that only the [chainloader](https://en.wikipedia.org/wiki/Chain_loading#Chain_loading_in_boot_manager_programs) (shim), the [boot loader](https://en.wikipedia.org/wiki/Bootloader) (GRUB), and the [kernel](https://en.wikipedia.org/wiki/Kernel_(operating_system)) are verified and that's where verification stops. The [initramfs](https://en.wikipedia.org/wiki/Initial_ramdisk) is often left unverified, unencrypted, and open up the window for an [evil maid](https://en.wikipedia.org/wiki/Evil_maid_attack) attack. The firmware on most devices is also configured to trust Microsoft's keys for Windows and its partners, leading to a large attacks surface.
|
||||
|
||||
To eliminate the need to trust Microsoft's keys, follow the "Using your own keys" section on the [Arch Wiki](https://wiki.archlinux.org/title/Unified_Extensible_Firmware_Interface/Secure_Boot). The important thing that needs to be done here is to replace the OEM's key with your own Platform Key.
|
||||
|
||||
There are several ways to work around the unverified initramfs:
|
||||
|
||||
The first way is to [encrypt the /boot partition](https://wiki.archlinux.org/title/GRUB#Encrypted_/boot). If you are on Fedora Workstation (not Silverblue), you can follow [this guide](https://mutschler.eu/linux/install-guides/fedora-btrfs-33/) to convert the existing installation to encrypted `/boot`. openSUSE comes with this that by default.
|
||||
|
||||
Encrypting `/boot` however have its own issues, one being that [GRUB](https://en.wikipedia.org/wiki/GNU_GRUB) only supports [LUKS1](https://en.wikipedia.org/wiki/Linux_Unified_Key_Setup) and not the newer default LUKS2 scheme. As the bootloader runs in [protected mode](https://en.wikipedia.org/wiki/Protected_mode) and the encryption module lacks [SSE acceleration](https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions) so the boot process will take minutes to complete. Another problem with this is that you have to type the encryption password twice, which could be solved by following the [openSUSE Wiki](https://en.opensuse.org/SDB:Encrypted_root_file_system#Avoiding_to_type_the_passphrase_twice).
|
||||
|
||||
There are a few options depending on your configuration:
|
||||
|
||||
- If you enroll your own keys as described above, and your distribution supports Secure Boot by default, you can add your distribution's EFI Key into the list of trusted keys (db keys). It can then be enrolled into the firmware. Then, you should move all of your keys off your local storage device.
|
||||
- If you enroll your own keys as described above, and your distribution does **not** support Secure Boot out of the box (like Arch Linux), you have to leave the keys on the disk and setup automatic signing of the [kernel](https://wiki.archlinux.org/title/Unified_Extensible_Firmware_Interface/Secure_Boot#Signing_the_kernel_with_a_pacman_hook) and bootloader. If you are using Grub, you can install it with the `--no-shim-lock` option and remove the need for the chainloader.
|
||||
|
||||
The second option is to creating an [EFI Boot Stub](https://wiki.archlinux.org/title/Unified_kernel_image) that contains the [kernel](https://en.wikipedia.org/wiki/Kernel_(operating_system)), [initramfs](https://en.wikipedia.org/wiki/Initial_ramdisk), and [microcode](https://en.wikipedia.org/wiki/Microcode). This EFI stub can then be signed. If you use [dracut](https://en.wikipedia.org/wiki/Dracut_(software)) this can easily be done with the [`--uefi-stub` switch](https://man7.org/linux/man-pages/man8/dracut.8.html) or the [`uefi_stub` config](https://www.man7.org/linux/man-pages/man5/dracut.conf.5.html) option. This option also requires you to leave the keys on the disk to setup automatic signing, which weakens the security model.
|
||||
|
||||
After setting up Secure Boot it is crucial that you set a “firmware password” (also called a “supervisor password”, “BIOS password” or “UEFI password”), otherwise an adversary can simply disable Secure Boot.
|
||||
|
||||
These recommendations can make you a little more resistant to [evil maid](https://en.wikipedia.org/wiki/Evil_maid_attack) attacks, but they not good as a proper verified boot process such as that found on [Android](https://source.android.com/security/verifiedboot), [ChromeOS](https://www.chromium.org/chromium-os/chromiumos-design-docs/security-overview/#verified-boot), [macOS](https://support.apple.com/en-us/HT208198), or [Windows](https://docs.microsoft.com/en-us/windows/security/information-protection/secure-the-windows-10-boot-process).
|
@ -1,64 +0,0 @@
|
||||
---
|
||||
title: Application Sandboxing
|
||||
icon: octicons/apps-16
|
||||
---
|
||||
Some sandboxing solutions for desktop Linux distributions do exist, however they are not as strict as those found in macOS or ChromeOS. Applications installed from the package manager (`dnf`, `apt`, etc.) typically have **no** sandboxing or confinement whatsoever. Below are a few projects that aim to solve this problem:
|
||||
|
||||
### Flatpak
|
||||
|
||||
[Flatpak](https://flatpak.org) aims to be a universal package manager for Linux. One of its main functions is to provide a universal package format which can be used in most Linux distributions. It provides some [permission control](https://docs.flatpak.org/en/latest/sandbox-permissions.html).However, [it is known](https://madaidans-insecurities.github.io/linux.html#flatpak) that Flatpak sandboxing could be improved as particular Flatpaks often have greater permission than required. There does seem to be [some agreement](https://theevilskeleton.gitlab.io/2021/02/11/response-to-flatkill-org.html) that this is the case.
|
||||
|
||||
You can restrict applications further by issuing [Flatpak overrides](https://docs.flatpak.org/en/latest/flatpak-command-reference.html#flatpak-override). This can be done with the command-line or by using [Flatseal](https://flathub.org/apps/details/com.github.tchx84.Flatseal). Some sample overrides are provided by [tommytran732](https://github.com/tommytran732/Flatpak-Overrides) and [rusty-snake](https://github.com/rusty-snake/kyst/tree/main/flatpak).
|
||||
|
||||
We generally recommend revoking access to:
|
||||
|
||||
- the Network (`share=network`) socket (internet access)
|
||||
- the PulseAudio socket (for both audio in and out), `device=all` (access to all devices including the camera)
|
||||
- `org.freedesktop.secrets` dbus (access to secrets stored on your keychain) for applications which do not need it
|
||||
|
||||
If an application works natively with Wayland (and not running through the [XWayland](https://wayland.freedesktop.org/xserver.html) compatibility layer), consider revoking its access to the X11 (`socket=x11`) and [Inter-process communications (IPC)](https://en.wikipedia.org/wiki/Unix_domain_socket) socket (`share=ipc`) as well.
|
||||
|
||||
We also recommend restricting broad filesystem permissions such as `filesystem=home` and `filesystem=host` which should be revoked and replaced with just the directories that the app needs to access. Some applications like [VLC](https://www.flathub.org/apps/details/org.videolan.VLC) implement the [Portals](https://docs.flatpak.org/en/latest/portal-api-reference.html) [API](https://en.wikipedia.org/wiki/API), which allows a file manager to pass files to the Flatpak application (e.g. VLC) without specific filesystem access privileges. VLC is only able to access the specific file that you want to open, rather than requiring privileges to particular locations.
|
||||
|
||||
Hard-coded access to some kernel interfaces like [`/sys`](https://en.wikipedia.org/wiki/Sysfs) and [`/proc`](https://en.wikipedia.org/wiki/Procfs#Linux) and weak [seccomp](https://en.wikipedia.org/wiki/Seccomp) filters unfortunately cannot be secured with Flatpak.
|
||||
|
||||
### Firejail
|
||||
|
||||
[Firejail](https://firejail.wordpress.com/) is another method of sandboxing. As it is a large [setuid](https://en.wikipedia.org/wiki/Setuid) binary, it has a large attack surface which may assist in [privilege escalation](https://en.wikipedia.org/wiki/Privilege_escalation).
|
||||
|
||||
[This post from a Whonix security researcher](https://madaidans-insecurities.github.io/linux.html#firejail) provides additional details on how Firejail can worsen the security of your device.
|
||||
|
||||
### Mandatory Access Control
|
||||
|
||||
[Mandatory access control](https://en.wikipedia.org/wiki/Mandatory_access_control) systems require policy files in order to force constraints on the system.
|
||||
|
||||
The two main control systems are [SELinux](https://en.wikipedia.org/wiki/Security-Enhanced_Linux) (used on Android and Fedora) and [AppArmor](https://en.wikipedia.org/wiki/AppArmor).
|
||||
|
||||
Fedora includes SELinux preconfigured with some policies that will confine [system daemons](https://en.wikipedia.org/wiki/Daemon_(computing)) (background processes). We don’t recommend disabling SELinux.
|
||||
|
||||
openSUSE gives the choice of AppArmor or SELinux during the installation process. We recommend sticking to the default for each variant (AppArmor for [Tumbleweed](https://get.opensuse.org/tumbleweed/) and SELinux for [MicroOS](https://microos.opensuse.org/)). openSUSE’s SELinux policies are derived from Fedora.
|
||||
|
||||
Arch and Arch-based operating systems often do not come with a mandatory access control system and that must be configured manually for either [AppArmor](https://wiki.archlinux.org/title/AppArmor) or [SELinux](https://wiki.archlinux.org/title/SELinux).
|
||||
|
||||
Linux desktops don't usually include individual app confinement rules, unlike Android which sandboxes every application installed.
|
||||
|
||||
### Making your own policies/profiles
|
||||
|
||||
You can make your own AppArmor profiles, SELinux policies, Bubblewrap profiles, and [seccomp](https://en.wikipedia.org/wiki/Seccomp) blacklist to have better confinement of applications. This is an advanced and sometimes tedious task, so we won’t go into detail about how to do it here, but we do have a few projects that you could use as reference.
|
||||
|
||||
- Whonix’s [AppArmor Everything](https://github.com/Whonix/apparmor-profile-everything)
|
||||
- Krathalan’s [AppArmor profiles](https://github.com/krathalan/apparmor-profiles)
|
||||
- noatsecure’s [SELinux templates](https://github.com/noatsecure/hardhat-selinux-templates)
|
||||
- Seirdy’s [Bubblewrap scripts](https://sr.ht/~seirdy/bwrap-scripts)
|
||||
|
||||
### Securing Linux containers
|
||||
|
||||
If you’re running a server, you may have heard of Linux Containers, Docker, or Podman which refer to a kind of [OS-level virtualization](https://en.wikipedia.org/wiki/OS-level_virtualization). Containers are more common in server and development environments where individual apps are built to operate independently.
|
||||
|
||||
[Docker](https://en.wikipedia.org/wiki/Docker_(software)) is one of the most common container solutions. It does not run a proper sandbox, and this means that there is a large kernel attack surface. The [daemon](https://en.wikipedia.org/wiki/Daemon_(computing)) controls everything and [typically](https://docs.docker.com/engine/security/rootless/#known-limitations) runs as root. If it crashes for some reason, all the containers will crash too. The [gVisor](https://en.wikipedia.org/wiki/GVisor) runtime which implements an application level kernel can help limit the number of [syscalls](https://en.wikipedia.org/wiki/System_call) an application can make and can help isolate it from the host’s [kernel](https://en.wikipedia.org/wiki/Kernel_(operating_system)).
|
||||
|
||||
Red Hat develops [Podman](https://docs.podman.io/en/latest/) and secures it with SELinux to [isolate](https://www.redhat.com/sysadmin/apparmor-selinux-isolation) containers from each other. One of the notable differences between Docker and Podman is that Docker requires [root](https://en.wikipedia.org/wiki/Superuser) while Podman can run with [rootless containers](https://developers.redhat.com/blog/2020/09/25/rootless-containers-with-podman-the-basics) that are also [daemonless](https://developers.redhat.com/blog/2018/08/29/intro-to-podman), meaning if one crashes they don’t all come down.
|
||||
|
||||
Another option is [Kata containers](https://katacontainers.io/), where virtual machines masquerade as containers. Each Kata container has its own Linux kernel and is isolated from the host.
|
||||
|
||||
The above container technologies can be useful if you want to run certain web app software on your local network, such as [Vaultwarden](https://github.com/dani-garcia/vaultwarden) or images provided by [LinuxServer.io](https://www.linuxserver.io), to increase privacy by decreasing dependence on various web services. A guide on [hardening Docker and OCI](https://wonderfall.dev/docker-hardening) has been written by the author "Wonderfall."
|
22
docs/meta/brand.md
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
title: Branding Guidelines
|
||||
---
|
||||
|
||||
The name of the website is **Privacy Guides** and should **not** be changed to:
|
||||
|
||||
<div class="pg-red" markdown>
|
||||
- PrivacyGuides
|
||||
- Privacy guides
|
||||
- PG
|
||||
- PG.org
|
||||
</div>
|
||||
|
||||
The name of the subreddit is **r/PrivacyGuides** or **the Privacy Guides Subreddit**.
|
||||
|
||||
Additional branding guidelines can be found at [github.com/privacyguides/brand](https://github.com/privacyguides/brand)
|
||||
|
||||
## Trademark
|
||||
|
||||
"Privacy Guides" and the shield logo are trademarks owned by Jonah Aragon, unlimited usage is granted to the Privacy Guides project.
|
||||
|
||||
Without waiving any of its rights, Privacy Guides does not advise others on the scope of its intellectual property rights. Privacy Guides does not permit or consent to any use of its trademarks in any manner that is likely to cause confusion by implying association with or sponsorship by Privacy Guides. If you are aware of any such use, please contact Jonah Aragon at jonah@privacyguides.org. Consult your legal counsel if you have questions.
|
45
docs/meta/git-recommendations.md
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
title: Git Recommendations
|
||||
---
|
||||
If you make changes to this website on GitHub.com's web editor directly, you shouldn't have to worry about this. If you are developing locally and/or are a long-term website editor (who should probably be developing locally!), consider these recommendations.
|
||||
|
||||
## Enable SSH Key Commit Signing
|
||||
|
||||
You can use an existing SSH key for signing, or [create a new one](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent).
|
||||
|
||||
1. Configure your Git client to sign commits and tags by default (remove `--global` to only sign by default for this repo):
|
||||
```
|
||||
git config --global commit.gpgsign true
|
||||
git config --global gpg.format ssh
|
||||
git config --global tag.gpgSign true
|
||||
```
|
||||
2. Copy your SSH public key to your clipboard, for example:
|
||||
```
|
||||
pbcopy < ~/.ssh/id_ed25519.pub
|
||||
# Copies the contents of the id_ed25519.pub file to your clipboard
|
||||
```
|
||||
3. Set your SSH key for signing in Git with the following command, replacing the last string in quotes with the public key in your clipboard:
|
||||
```
|
||||
git config --global user.signingkey 'ssh-ed25519 AAAAC3(...) user@example.com'
|
||||
```
|
||||
|
||||
Ensure you [add your SSH key to your GitHub account](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account#adding-a-new-ssh-key-to-your-account) **as a Signing Key** (as opposed to or in addition to as an Authentication Key).
|
||||
|
||||
## Rebase on Git pull
|
||||
|
||||
Use `git pull --rebase` instead of `git pull` when pulling in changes from GitHub to your local machine. This way your local changes will always be "on top of" the latest changes on GitHub, and you avoid merge commits (which are disallowed in this repo).
|
||||
|
||||
You can set this to be the default behavior:
|
||||
|
||||
```
|
||||
git config --global pull.rebase true
|
||||
```
|
||||
|
||||
## Rebase from `main` before submitting a PR
|
||||
|
||||
If you are working on your own branch, run these commands before submitting a PR:
|
||||
|
||||
```
|
||||
git fetch origin
|
||||
git rebase origin/main
|
||||
```
|
89
docs/meta/uploading-images.md
Normal file
@ -0,0 +1,89 @@
|
||||
---
|
||||
title: Uploading Images
|
||||
---
|
||||
|
||||
Here are a couple of general rules for contributing to Privacy Guides:
|
||||
|
||||
## Images
|
||||
|
||||
- We **prefer** SVG images, but if those do not exist we can use PNG images
|
||||
|
||||
Company logos have canvas size of:
|
||||
|
||||
- 128x128px
|
||||
- 384x128px
|
||||
|
||||
## Optimization
|
||||
|
||||
### PNG
|
||||
|
||||
Use the [OptiPNG](https://sourceforge.net/projects/optipng/) to optimize the PNG image:
|
||||
|
||||
```bash
|
||||
optipng -o7 file.png
|
||||
```
|
||||
|
||||
### SVG
|
||||
|
||||
#### Inkscape
|
||||
|
||||
[Scour](https://github.com/scour-project/scour) all SVG images.
|
||||
|
||||
In Inkscape:
|
||||
|
||||
1. File Save As..
|
||||
2. Set type to Optimized SVG (*.svg)
|
||||
|
||||
In the **Options** tab:
|
||||
|
||||
- **Number of significant digits for coordinates** > **5**
|
||||
- [x] Turn on **Shorten color values**
|
||||
- [x] Turn on **Convert CSS attributes to XML attributes**
|
||||
- [x] Turn on **Collapse groups**
|
||||
- [x] Turn on **Create groups for similar attributes**
|
||||
- [ ] Turn off **Keep editor data**
|
||||
- [ ] Turn off **Keep unreferenced definitions**
|
||||
- [x] Turn on **Work around renderer bugs**
|
||||
|
||||
In the **SVG Output** tab under **Document options**:
|
||||
|
||||
- [ ] Turn off **Remove the XML declaration**
|
||||
- [x] Turn on **Remove metadata**
|
||||
- [x] Turn on **Remove comments**
|
||||
- [x] Turn on **Embeded raster images**
|
||||
- [x] Turn on **Enable viewboxing**
|
||||
|
||||
In the **SVG Output** under **Pretty-printing**:
|
||||
|
||||
- [ ] Turn off **Format output with line-breaks and indentation**
|
||||
- **Indentation characters** > Select **Space**
|
||||
- **Depth of indentation** > **1**
|
||||
- [ ] Turn off **Strip the "xml:space" attribute from the root SVG element**
|
||||
|
||||
In the **IDs** tab:
|
||||
|
||||
- [x] Turn on **Remove unused IDs**
|
||||
- [ ] Turn off **Shorten IDs**
|
||||
- **Prefix shortened IDs with** > `leave blank`
|
||||
- [x] Turn on **Preserve manually created IDs not ending with digits**
|
||||
- **Preserve the following IDs** > `leave blank`
|
||||
- **Preserve IDs starting with** > `leave blank`
|
||||
|
||||
#### CLI
|
||||
|
||||
The same can be achieved with the [Scour](https://github.com/scour-project/scour) command:
|
||||
|
||||
```bash
|
||||
scour --set-precision=5 \
|
||||
--create-groups \
|
||||
--renderer-workaround \
|
||||
--remove-descriptive-elements \
|
||||
--enable-comment-stripping \
|
||||
--enable-viewboxing \
|
||||
--indent=space \
|
||||
--nindent=1 \
|
||||
--no-line-breaks \
|
||||
--enable-id-stripping \
|
||||
--protect-ids-noninkscape \
|
||||
input.svg output.svg
|
||||
```
|
87
docs/meta/writing-style.md
Normal file
@ -0,0 +1,87 @@
|
||||
---
|
||||
title: Writing Style
|
||||
---
|
||||
|
||||
Privacy Guides is written in American English, and you should refer to [APA Style guidelines](https://apastyle.apa.org/style-grammar-guidelines/grammar) when in doubt.
|
||||
|
||||
In general the [United States federal plain language guidelines](https://www.plainlanguage.gov/guidelines/) provide a good overview of how to write clearly and concisely. We highlight a few important notes from these guidelines below.
|
||||
|
||||
## Writing for our audience
|
||||
|
||||
Privacy Guides' intended [audience](https://www.plainlanguage.gov/guidelines/audience/) is primarily average, technology using adults. Don't dumb down content as if you are addressing a middle-school class, but don't overuse complicated terminology about concepts average computer users wouldn't be familiar with.
|
||||
|
||||
### Address only what people want to know
|
||||
|
||||
People don't need overly complex articles with little relevance to them. Figure out what you want people to accomplish when writing an article, and only include those details.
|
||||
|
||||
> Tell your audience why the material is important to them. Say, “If you want a research grant, here’s what you have to do.” Or, “If you want to mine federal coal, here’s what you should know.” Or, “If you’re planning a trip to Rwanda, read this first.”
|
||||
|
||||
### Address people directly
|
||||
|
||||
We're writing *for* a wide variety of people, but we are writing *to* the person who is actually reading it. Use "you" to address the reader directly.
|
||||
|
||||
> More than any other single technique, using “you” pulls users into the information and makes it relevant to them.
|
||||
>
|
||||
> When you use “you” to address users, they are more likely to understand what their responsibility is.
|
||||
|
||||
Source: [plainlanguage.gov](https://www.plainlanguage.gov/guidelines/audience/address-the-user/)
|
||||
|
||||
### Avoid "users"
|
||||
|
||||
Avoid calling people "users", in favor of "people", or a more specific description of the group of people you are writing for.
|
||||
|
||||
## Organizing content
|
||||
|
||||
Organization is key. Content should flow from most to least important information, and use headers as much as needed to logically separate different ideas.
|
||||
|
||||
- Limit the document to around five or six sections. Long documents should probably be broken up into separate pages.
|
||||
- Mark important ideas with **bold** or *italics*.
|
||||
|
||||
Source: [plainlanguage.gov](https://www.plainlanguage.gov/guidelines/design/)
|
||||
|
||||
### Begin with a topic sentence
|
||||
|
||||
> If you tell your reader what they’re going to read about, they’re less likely to have to read your paragraph again. Headings help, but they’re not enough. Establish a context for your audience before you provide them with the details.
|
||||
>
|
||||
> We often write the way we think, putting our premises first and then our conclusion. It may be the natural way to develop thoughts, but we wind up with the topic sentence at the end of the paragraph. Move it up front and let users know where you’re going. Don’t make readers hold a lot of information in their heads before getting to the point.
|
||||
|
||||
Source: [plainlanguage.gov](https://www.plainlanguage.gov/guidelines/organize/have-a-topic-sentence/)
|
||||
|
||||
## Choose your words carefully
|
||||
|
||||
> Words matter. They are the most basic building blocks of written and spoken communication. Don’t complicate things by using jargon, technical terms, or abbreviations that people won’t understand.
|
||||
|
||||
We should try to avoid abbreviations where possible, but technology is full of abbreviations. In general, spell out the abbreviation/acronym the first time it is used on a page, and add the abbreviation to the abbreviation glossary file when it is used repeatedly.
|
||||
|
||||
> Kathy McGinty offers tongue-in-cheek instructions for bulking up your simple, direct sentences:
|
||||
>
|
||||
> > There is no escaping the fact that it is considered very important to note that a number of various available applicable studies ipso facto have generally identified the fact that additional appropriate nocturnal employment could usually keep juvenile adolescents off thoroughfares during the night hours, including but not limited to the time prior to midnight on weeknights and/or 2 a.m. on weekends.
|
||||
>
|
||||
>And the original, using stronger, simpler words:
|
||||
>
|
||||
> > More night jobs would keep youths off the streets.
|
||||
|
||||
## Be concise
|
||||
|
||||
> Unnecessary words waste your audience’s time. Great writing is like a conversation. Omit information that the audience doesn’t need to know. This can be difficult as a subject matter expert so it’s important to have someone look at the information from the audience’s perspective.
|
||||
|
||||
Source: [plainlanguage.gov](https://www.plainlanguage.gov/guidelines/concise/)
|
||||
|
||||
## Keep text conversational
|
||||
|
||||
> Verbs are the fuel of writing. They give your sentences power and direction. They enliven your writing and make it more interesting.
|
||||
>
|
||||
> Verbs tell your audience what to do. Make sure it’s clear who does what.
|
||||
|
||||
### Use active voice
|
||||
|
||||
> Active voice makes it clear who is supposed to do what. It eliminates ambiguity about responsibilities. Not “It must be done,” but “You must do it.”
|
||||
|
||||
Source: [plainlanguage.gov](https://www.plainlanguage.gov/guidelines/conversational/use-active-voice/)
|
||||
|
||||
### Use "must" for requirements
|
||||
|
||||
> - “must” for an obligation
|
||||
> - “must not” for a prohibition
|
||||
> - “may” for a discretionary action
|
||||
> - “should” for a recommendation
|
@ -39,6 +39,8 @@ These options can be found in :material-menu: → **Settings** → **Brave Shiel
|
||||
|
||||
Brave includes some anti-fingerprinting measures in its [Shields](https://support.brave.com/hc/en-us/articles/360022973471-What-is-Shields-) feature. We suggest configuring these options [globally](https://support.brave.com/hc/en-us/articles/360023646212-How-do-I-configure-global-and-site-specific-Shields-settings-) across all pages that you visit.
|
||||
|
||||
##### Brave shields global defaults
|
||||
|
||||
Shields' options can be downgraded on a per-site basis as needed, but by default we recommend setting the following:
|
||||
|
||||
<div class="annotate" markdown>
|
||||
@ -48,32 +50,41 @@ Shields' options can be downgraded on a per-site basis as needed, but by default
|
||||
??? warning "Use default filter lists"
|
||||
Brave allows you to select additional content filters within the internal `brave://adblock` page. We advise against using this feature; instead, keep the default filter lists. Using extra lists will make you stand out from other Brave users and may also increase attack surface if there is an exploit in Brave and a malicious rule is added to one of the lists you use.
|
||||
|
||||
- [x] Select **Upgrade connections to HTTPS**
|
||||
- [x] (Optional) Select **Block Scripts** (1)
|
||||
- [x] Select **Strict, may break sites** under Block fingerprinting
|
||||
- [x] Select **Strict, may break sites** under **Block fingerprinting**
|
||||
|
||||
</div>
|
||||
|
||||
1. This option provides functionality similar to uBlock Origin's advanced [blocking modes](https://github.com/gorhill/uBlock/wiki/Blocking-mode) or the [NoScript](https://noscript.net/) extension.
|
||||
|
||||
##### Clear browsing data
|
||||
|
||||
- [x] Select **Clear data on exit**
|
||||
|
||||
##### Social Media Blocking
|
||||
|
||||
- [ ] Uncheck all social media components
|
||||
|
||||
##### IPFS
|
||||
|
||||
InterPlanetary File System (IPFS) is a decentralized, peer-to-peer network for storing and sharing data in a distributed filesystem. Unless you use the feature, disable it.
|
||||
|
||||
- [ ] Uncheck **IPFS Gateway**
|
||||
|
||||
##### Other privacy settings
|
||||
|
||||
- [x] Select **Disable Non-Proxied UDP** under [WebRTC IP Handling Policy](https://support.brave.com/hc/en-us/articles/360017989132-How-do-I-change-my-Privacy-Settings-#webrtc)
|
||||
- [ ] Uncheck **Allow privacy-preserving product analytics (P3A)**
|
||||
- [ ] Uncheck **Automatically send daily usage ping to Brave**
|
||||
- [ ] Uncheck **Automatically send diagnostic reports**
|
||||
- [x] Select **Always use secure connections**
|
||||
<div class="annotate" markdown>
|
||||
|
||||
- [x] Select **Disable non-proxied UDP** under [WebRTC IP Handling Policy](https://support.brave.com/hc/en-us/articles/360017989132-How-do-I-change-my-Privacy-Settings-#webrtc)
|
||||
- [ ] Uncheck **Allow sites to check if you have payment methods saved**
|
||||
- [ ] Uncheck **IPFS Gateway** (1)
|
||||
- [x] Select **Close tabs on exit**
|
||||
- [x] Select **Clear data on exit**
|
||||
- [ ] Uncheck **Allow privacy-preserving product analytics (P3A)**
|
||||
- [ ] Uncheck **Automatically send diagnostic reports**
|
||||
- [ ] Uncheck **Automatically send daily usage ping to Brave**
|
||||
|
||||
1. InterPlanetary File System (IPFS) is a decentralized, peer-to-peer network for storing and sharing data in a distributed filesystem. Unless you use the feature, disable it.
|
||||
|
||||
</div>
|
||||
|
||||
#### Brave Sync
|
||||
|
||||
[Brave Sync](https://support.brave.com/hc/en-us/articles/360059793111-Understanding-Brave-Sync) allows your browsing data (history, bookmarks, etc.) to be accessible on all your devices without requiring an account and protects it with E2EE.
|
||||
|
||||
## iOS
|
||||
|
||||
@ -127,9 +138,13 @@ Do note that Private Browsing does not save cookies and website data, so it won'
|
||||
|
||||
##### iCloud Sync
|
||||
|
||||
Synchronization of Safari History, Tab Groups, iCloud Tabs and saved passwords are E2EE. However, bookmarks are [not](https://support.apple.com/en-us/HT202303). Apple can decrypt and access them in accordance with their [privacy policy](https://www.apple.com/legal/privacy/en-ww/).
|
||||
Synchronization of Safari History, Tab Groups, iCloud Tabs and saved passwords are E2EE. However, by default, bookmarks are [not](https://support.apple.com/en-us/HT202303). Apple can decrypt and access them in accordance with their [privacy policy](https://www.apple.com/legal/privacy/en-ww/).
|
||||
|
||||
If you use iCloud, we also recommend checking to ensure Safari's default download location is set to locally on your device. This option can be found in :gear: **Settings** → **Safari** → **General** → **Downloads**.
|
||||
You can enable E2EE for you Safari bookmarks and downloads by enabling [Advanced Data Protection](https://support.apple.com/en-us/HT212520). Go to your **Apple ID name → iCloud → Advanced Data Protection**.
|
||||
|
||||
- [x] Turn On **Advanced Data Protection**
|
||||
|
||||
If you use iCloud with Advanced Data Protection disabled, we also recommend checking to ensure Safari's default download location is set to locally on your device. This option can be found in :gear: **Settings** → **Safari** → **General** → **Downloads**.
|
||||
|
||||
### AdGuard
|
||||
|
||||
@ -151,3 +166,25 @@ If you use iCloud, we also recommend checking to ensure Safari's default downloa
|
||||
- [:simple-appstore: App Store](https://apps.apple.com/app/apple-store/id1047223162)
|
||||
|
||||
Additional filter lists do slow things down and may increase your attack surface, so only apply what you need.
|
||||
|
||||
## Criteria
|
||||
|
||||
**Please note we are not affiliated with any of the projects we recommend.** In addition to [our standard criteria](about/criteria.md), we have developed a clear set of requirements to allow us to provide objective recommendations. We suggest you familiarize yourself with this list before choosing to use a project, and conduct your own research to ensure it's the right choice for you.
|
||||
|
||||
!!! example "This section is new"
|
||||
|
||||
We are working on establishing defined criteria for every section of our site, and this may be subject to change. If you have any questions about our criteria, please [ask on our forum](https://discuss.privacyguides.net/latest) and don't assume we didn't consider something when making our recommendations if it is not listed here. There are many factors considered and discussed when we recommend a project, and documenting every single one is a work-in-progress.
|
||||
|
||||
### Minimum Requirements
|
||||
|
||||
- Must support automatic updates.
|
||||
- Must receive engine updates in 0-1 days from upstream release.
|
||||
- Any changes required to make the browser more privacy-respecting should not negatively impact user experience.
|
||||
- Android browsers must use the Chromium engine.
|
||||
- Unfortunately, Mozilla GeckoView is still less secure than Chromium on Android.
|
||||
- iOS browsers are limited to WebKit.
|
||||
|
||||
### Extension Criteria
|
||||
|
||||
- Must not replicate built-in browser or OS functionality.
|
||||
- Must directly impact user privacy, i.e. must not simply provide information.
|