Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6017d06739 | ||
|
|
12d0a19e0b | ||
|
|
db34f595c9 | ||
|
|
a8fccec141 | ||
|
|
0c12f19ab5 | ||
|
|
e2d262809e | ||
|
|
598794a484 | ||
|
|
45276ff4bc | ||
|
|
4ee89fc68a | ||
|
|
cd6bc56380 | ||
|
|
6f2ff67069 | ||
|
|
5554d47959 | ||
|
|
afe430fa6c | ||
|
|
145cd3ac81 | ||
|
|
58e163fa08 | ||
|
|
23daf15da1 | ||
|
|
bc64dc748a | ||
|
|
00f37ec9e8 | ||
|
|
10a16bb8a4 | ||
|
|
a826ba6e59 | ||
|
|
c52ed3e3ef | ||
|
|
ed6e26e05a | ||
|
|
bf5b5d0019 | ||
|
|
0cb8fc4cfd | ||
|
|
a3bb4d52eb | ||
|
|
0ad0d260ae | ||
|
|
2dae914835 | ||
|
|
1e6c9deb77 | ||
|
|
6fb2c3e993 | ||
|
|
b78cc75d5f | ||
|
|
2fc923b014 | ||
|
|
85984027fd | ||
|
|
95de13f369 | ||
|
|
3994461be4 | ||
|
|
d74ce1378b | ||
|
|
72a3311812 | ||
|
|
bbdf58449c | ||
|
|
3ec89cdd9e | ||
|
|
3512f10a51 | ||
|
|
82047cac55 | ||
|
|
ecf7bd1bfc | ||
|
|
3dc0fdbac0 | ||
|
|
d7be1222e5 | ||
|
|
85fd0ee9ce | ||
|
|
bbd606a2dd | ||
|
|
88ca322261 | ||
|
|
523117d97d | ||
|
|
3ef37886ca | ||
|
|
07a0b7bfc5 | ||
|
|
8ba66c7795 | ||
|
|
8fb51bef59 | ||
|
|
b6ca8ecb6e | ||
|
|
0c204b58b9 | ||
|
|
6c4416ffdb | ||
|
|
b05eca9505 | ||
|
|
14d41542ed | ||
|
|
bc8d4dfc88 | ||
|
|
05cdb4d0a2 | ||
|
|
171b9b5978 | ||
|
|
3f49ee8ee9 | ||
|
|
dc4dae96f5 | ||
|
|
5b03c5f9c1 | ||
|
|
1a8e75f1cb | ||
|
|
59b1c275ef | ||
|
|
ef75b456a7 | ||
|
|
9b6cb1109a | ||
|
|
084de54c10 | ||
|
|
be423f999d | ||
|
|
b00edef74c | ||
|
|
57f952e03b | ||
|
|
4a8813eba6 | ||
|
|
6e55708c64 | ||
|
|
469ba4b3cc | ||
|
|
581cc63395 | ||
|
|
83b54bcbfd | ||
|
|
cc00a44552 | ||
|
|
eba6ecf910 | ||
|
|
8467c14270 | ||
|
|
b46f32728d | ||
|
|
a84c71c8fb | ||
|
|
8fdb1c49cd | ||
|
|
1cdb3159b9 | ||
|
|
a9ac7f44f2 | ||
|
|
c557e2e856 | ||
|
|
df52f06ff4 | ||
|
|
232ec8443f | ||
|
|
79958bb0e6 | ||
|
|
f806474ab2 | ||
|
|
5cca0e924c | ||
|
|
d28f94c9dd | ||
|
|
0a0ca47ac6 | ||
|
|
51995304ea | ||
|
|
257b52c13b | ||
|
|
72a4183fb8 | ||
|
|
554e938fc5 | ||
|
|
234b370284 | ||
|
|
5a2a084ef8 | ||
|
|
1d7db04fb5 | ||
|
|
6334082982 | ||
|
|
65feee2b48 | ||
|
|
38e53dd654 | ||
|
|
7b50a1feb9 | ||
|
|
99a6d7c18a | ||
|
|
6cc3bece8b | ||
|
|
ec5b916223 | ||
|
|
ab5aad0f5a | ||
|
|
6199ccd528 | ||
|
|
f91afbf85c | ||
|
|
9dc3f29c1b | ||
|
|
3f8a528df8 | ||
|
|
1f74593459 | ||
|
|
80d72b6688 | ||
|
|
e998360d33 | ||
|
|
f2eaf7a704 | ||
|
|
783c3bc710 | ||
|
|
e2348bceb4 | ||
|
|
870ade3522 | ||
|
|
16f0e134ab | ||
|
|
7467798d5c | ||
|
|
e652c0e815 | ||
|
|
85e88e9d42 | ||
|
|
0b939e499b | ||
|
|
3b4709f25f | ||
|
|
422d6a5d98 | ||
|
|
32f96d5492 | ||
|
|
88214ffcd2 | ||
|
|
7ad2811572 | ||
|
|
6a3a329abf | ||
|
|
65ebac6bf8 | ||
|
|
da98969cf1 | ||
|
|
34735e32c9 | ||
|
|
f1d2ff31cf | ||
|
|
6d10be852c | ||
|
|
0c117e8c1c | ||
|
|
38185015b4 | ||
|
|
6f9ab23c66 | ||
|
|
d919b0e25d | ||
|
|
272659110c | ||
|
|
fed5590f26 | ||
|
|
33bd0df131 | ||
|
|
8fc7f948a8 | ||
|
|
15da4c8406 | ||
|
|
b3f93f1528 | ||
|
|
85cc9dff95 | ||
|
|
34ba3638fb | ||
|
|
87950f72ee | ||
|
|
eb73e9a07a | ||
|
|
4579444412 | ||
|
|
fb03756f6b | ||
|
|
66f6e9c3d3 | ||
|
|
3e7548ea87 | ||
|
|
bca2e76b4f | ||
|
|
ca08e62e5b | ||
|
|
1c25bd1693 | ||
|
|
03e1e33213 | ||
|
|
94c0ac2cdf | ||
|
|
7311969c45 | ||
|
|
23b74c7756 | ||
|
|
479b5923a3 | ||
|
|
560615dd7f | ||
|
|
2415078892 | ||
|
|
4574a4a48c | ||
|
|
616408666f | ||
|
|
f0b6120075 | ||
|
|
369b483787 | ||
|
|
0bf24bb5b0 | ||
|
|
df85659d54 | ||
|
|
b52e6db372 | ||
|
|
7ecb84e53b | ||
|
|
682bb73b6d | ||
|
|
e9f679312b | ||
|
|
17b5fcb344 | ||
|
|
96a0e1bf72 | ||
|
|
1aa462c141 | ||
|
|
8695605224 | ||
|
|
17f6bb4d88 | ||
|
|
497e52d7a4 | ||
|
|
3b2c9dda2b | ||
|
|
1f3f3236ed | ||
|
|
8f208abb74 | ||
|
|
ef9a61fec0 | ||
|
|
072062f9e8 | ||
|
|
35ea9abbb4 | ||
|
|
439665cb9a | ||
|
|
726763af69 | ||
|
|
19478b8a0d | ||
|
|
178907f54e | ||
|
|
1892e80aa4 | ||
|
|
a3f202074b | ||
|
|
7e25ed039a | ||
|
|
93f0d86d46 | ||
|
|
fd703f9baa | ||
|
|
98ce8df763 | ||
|
|
7e881e6cfb | ||
|
|
ef1ac68038 | ||
|
|
78c092dcb0 | ||
|
|
fa33288ca3 | ||
|
|
80c0db326d | ||
|
|
8f50a92d29 | ||
|
|
0318c66170 | ||
|
|
b5e0ad141a | ||
|
|
dd58715041 | ||
|
|
4733e70ce6 | ||
|
|
e1aed14323 | ||
|
|
4565eef107 | ||
|
|
9e0fa8dbf4 | ||
|
|
cfdf2526b2 | ||
|
|
bdf4bafbf9 | ||
|
|
5bf0802369 | ||
|
|
cd382a63df | ||
|
|
da336f2745 | ||
|
|
adbbd807d6 | ||
|
|
735f9bcdde | ||
|
|
ab9caa3969 | ||
|
|
570fb4302a | ||
|
|
0ab1237b15 | ||
|
|
f94289b856 | ||
|
|
95b0381560 | ||
|
|
6b64d2e573 | ||
|
|
3c3de5ed84 | ||
|
|
b2512fcd57 | ||
|
|
c6b0aae93f | ||
|
|
bbe11d622e | ||
|
|
d1b1d87dea | ||
|
|
29435ac463 | ||
|
|
6729005309 | ||
|
|
d6fd71fa66 | ||
|
|
f731939d98 | ||
|
|
677a036d68 | ||
|
|
e86d6b8a97 | ||
|
|
828dc13cb0 | ||
|
|
506a33f5aa | ||
|
|
343eec32af | ||
|
|
107082b0e2 | ||
|
|
c2cc10cc0e | ||
|
|
d1807cf543 | ||
|
|
2c5ea4e113 | ||
|
|
1c11dc2a8b | ||
|
|
510502de68 | ||
|
|
0ea9a40158 | ||
|
|
6d48930c6f | ||
|
|
a4d9fb6c4c | ||
|
|
0a76a88a38 | ||
|
|
fcdf163ba5 | ||
|
|
060ebf2f47 | ||
|
|
aacd2b02a2 | ||
|
|
b9a92daf6b | ||
|
|
a7d1521e95 | ||
|
|
3157d55049 | ||
|
|
7b45134c8d | ||
|
|
97b0146fdb | ||
|
|
cbadab339b | ||
|
|
72b69bb5c8 | ||
|
|
8007e17d0a | ||
|
|
e1a2bf21c2 | ||
|
|
bdc96809c8 | ||
|
|
b5173215a1 | ||
|
|
7a452ee537 | ||
|
|
9f2ba78232 | ||
|
|
aafa4e38c8 | ||
|
|
6380b4fe12 | ||
|
|
c02d6979dd | ||
|
|
899887ebe7 | ||
|
|
bf508140d3 | ||
|
|
adf011ee2c | ||
|
|
afa0f14165 | ||
|
|
3bcdb558ed | ||
|
|
bc70259936 | ||
|
|
fb212d5e3d | ||
|
|
e9388c231a | ||
|
|
50a2374b5f |
No files matched your search
|
After Width: | Height: | Size: 27 KiB |
@@ -1,20 +0,0 @@
|
||||
# Number of days of inactivity before an issue becomes stale
|
||||
daysUntilStale: 120
|
||||
# Number of days of inactivity before a stale issue is closed
|
||||
daysUntilClose: 14
|
||||
# Issues with these labels will never be considered stale
|
||||
exemptLabels:
|
||||
- bug
|
||||
- discussion
|
||||
- monitor (ongoing)
|
||||
- enhancement
|
||||
# Label to use when marking an issue as stale
|
||||
staleLabel: wontfix
|
||||
# Comment to post when marking an issue as stale. Set to `false` to disable
|
||||
markComment: >
|
||||
This issue has been automatically marked as stale because it has not had
|
||||
recent activity. It will be closed in 14 days if no further activity occurs.
|
||||
Thank you for your contributions.
|
||||
# Comment to post when closing a stale issue. Set to `false` to disable
|
||||
closeComment: >
|
||||
Closing.
|
||||
@@ -20,19 +20,26 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python:
|
||||
- '3.7'
|
||||
- '3.8'
|
||||
- '3.9'
|
||||
- '3.10'
|
||||
- '3.11'
|
||||
- '3.12'
|
||||
os:
|
||||
- ubuntu-latest
|
||||
- macos-latest
|
||||
- windows-latest
|
||||
include:
|
||||
- os: macos-latest
|
||||
python: '3.8'
|
||||
- os: macos-latest
|
||||
python: '3.12'
|
||||
- os: windows-latest
|
||||
python: '3.8'
|
||||
- os: windows-latest
|
||||
python: '3.12'
|
||||
|
||||
steps:
|
||||
- name: Clone repository
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Clone repository
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
@@ -20,15 +20,15 @@ jobs:
|
||||
packages: write
|
||||
steps:
|
||||
- name: Clone repository
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v2
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Log in to the Container registry
|
||||
uses: docker/login-action@v2
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ${{ env.REGISTRY }}
|
||||
username: ${{ github.actor }}
|
||||
@@ -36,12 +36,12 @@ jobs:
|
||||
|
||||
- name: Extract metadata (tags, labels)
|
||||
id: meta
|
||||
uses: docker/metadata-action@v4
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
||||
|
||||
- name: Build and push container image
|
||||
uses: docker/build-push-action@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
push: ${{ github.event_name != 'pull_request' }}
|
||||
|
||||
@@ -9,7 +9,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Clone repository
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
@@ -8,3 +8,4 @@ hosts-*
|
||||
/__pycache__
|
||||
/node_modules/
|
||||
/package-lock.json
|
||||
/yarn.lock
|
||||
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 40 KiB |
@@ -0,0 +1,674 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: fakenews, gambling
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: fakenews, gambling](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts)
|
||||
containing 10,040 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
Fake News |[link](https://github.com/marktron/fakenews) | [raw](https://raw.githubusercontent.com/marktron/fakenews/master/fakenews) | MIT | [issues](https://github.com/marktron/fakenews/issues)| An in-progress collection of fake news outlets.
|
||||
BigDargon's gambling domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/gambling/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
Sinfonietta's gambling blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/gambling-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -0,0 +1,680 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: fakenews, gambling, porn
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: fakenews, gambling, porn](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts)
|
||||
containing 66,055 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
Fake News |[link](https://github.com/marktron/fakenews) | [raw](https://raw.githubusercontent.com/marktron/fakenews/master/fakenews) | MIT | [issues](https://github.com/marktron/fakenews/issues)| An in-progress collection of fake news outlets.
|
||||
BigDargon's gambling domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/gambling/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
Sinfonietta's gambling blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/gambling-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
BigDargon's adult domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/adult/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
brijrajparmar27 - pornography |[link](https://github.com/brijrajparmar27/host-sources) | [raw](https://raw.githubusercontent.com/brijrajparmar27/host-sources/master/Porn/hosts) | CC BY 4.0 | [issues](https://github.com/brijrajparmar27/host-sources/issues)| hosts files for DNS based content blocking
|
||||
pornhosts -- a consolidated anti porn hosts file |[link](https://github.com/Clefspeare13/pornhosts) | [raw](https://raw.githubusercontent.com/StevenBlack/hosts/master/extensions/porn/clefspeare13/hosts) | MIT | [issues](https://github.com/Clefspeare13/pornhosts/issues)| This is an endeavour to find all porn domains and compile them into a single hosts to allow for easy blocking of porn on your local machine or on a network.
|
||||
Sinfonietta's porn blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/pornography-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Sinfonietta's snuff-site blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/snuff-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - pornography |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/porn) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -0,0 +1,682 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: fakenews, gambling, porn, social
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: fakenews, gambling, porn, social](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
containing 68,893 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
Fake News |[link](https://github.com/marktron/fakenews) | [raw](https://raw.githubusercontent.com/marktron/fakenews/master/fakenews) | MIT | [issues](https://github.com/marktron/fakenews/issues)| An in-progress collection of fake news outlets.
|
||||
BigDargon's gambling domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/gambling/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
Sinfonietta's gambling blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/gambling-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
BigDargon's adult domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/adult/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
brijrajparmar27 - pornography |[link](https://github.com/brijrajparmar27/host-sources) | [raw](https://raw.githubusercontent.com/brijrajparmar27/host-sources/master/Porn/hosts) | CC BY 4.0 | [issues](https://github.com/brijrajparmar27/host-sources/issues)| hosts files for DNS based content blocking
|
||||
pornhosts -- a consolidated anti porn hosts file |[link](https://github.com/Clefspeare13/pornhosts) | [raw](https://raw.githubusercontent.com/StevenBlack/hosts/master/extensions/porn/clefspeare13/hosts) | MIT | [issues](https://github.com/Clefspeare13/pornhosts/issues)| This is an endeavour to find all porn domains and compile them into a single hosts to allow for easy blocking of porn on your local machine or on a network.
|
||||
Sinfonietta's porn blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/pornography-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Sinfonietta's snuff-site blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/snuff-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - pornography |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/porn) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
Sinfonietta's social media blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/social-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - social |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/social) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with fakenews, gambling, porn, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts)
|
||||
containing 241,960 entries.
|
||||
[raw hosts file Unified hosts file with fakenews, gambling, porn, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts)
|
||||
containing 209,855 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -195,6 +210,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -258,6 +277,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -491,6 +513,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -649,6 +673,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with fakenews, gambling, porn extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts)
|
||||
containing 239,137 entries.
|
||||
[raw hosts file Unified hosts file with fakenews, gambling, porn extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts)
|
||||
containing 207,034 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -193,6 +208,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -256,6 +275,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -489,6 +511,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -647,6 +671,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -0,0 +1,676 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: fakenews, gambling, social
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: fakenews, gambling, social](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts)
|
||||
containing 12,881 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
Fake News |[link](https://github.com/marktron/fakenews) | [raw](https://raw.githubusercontent.com/marktron/fakenews/master/fakenews) | MIT | [issues](https://github.com/marktron/fakenews/issues)| An in-progress collection of fake news outlets.
|
||||
BigDargon's gambling domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/gambling/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
Sinfonietta's gambling blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/gambling-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Sinfonietta's social media blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/social-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - social |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/social) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with fakenews, gambling, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts)
|
||||
containing 193,875 entries.
|
||||
[raw hosts file Unified hosts file with fakenews, gambling, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts)
|
||||
containing 154,483 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -189,6 +204,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -252,6 +271,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -485,6 +507,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -643,6 +667,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with fakenews, gambling extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts)
|
||||
containing 191,051 entries.
|
||||
[raw hosts file Unified hosts file with fakenews, gambling extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts)
|
||||
containing 151,659 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -187,6 +202,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -250,6 +269,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -483,6 +505,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -641,6 +665,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -0,0 +1,672 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: fakenews
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: fakenews](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts)
|
||||
containing 2,194 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
Fake News |[link](https://github.com/marktron/fakenews) | [raw](https://raw.githubusercontent.com/marktron/fakenews/master/fakenews) | MIT | [issues](https://github.com/marktron/fakenews/issues)| An in-progress collection of fake news outlets.
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -0,0 +1,678 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: fakenews, porn
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: fakenews, porn](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts)
|
||||
containing 58,209 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
Fake News |[link](https://github.com/marktron/fakenews) | [raw](https://raw.githubusercontent.com/marktron/fakenews/master/fakenews) | MIT | [issues](https://github.com/marktron/fakenews/issues)| An in-progress collection of fake news outlets.
|
||||
BigDargon's adult domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/adult/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
brijrajparmar27 - pornography |[link](https://github.com/brijrajparmar27/host-sources) | [raw](https://raw.githubusercontent.com/brijrajparmar27/host-sources/master/Porn/hosts) | CC BY 4.0 | [issues](https://github.com/brijrajparmar27/host-sources/issues)| hosts files for DNS based content blocking
|
||||
pornhosts -- a consolidated anti porn hosts file |[link](https://github.com/Clefspeare13/pornhosts) | [raw](https://raw.githubusercontent.com/StevenBlack/hosts/master/extensions/porn/clefspeare13/hosts) | MIT | [issues](https://github.com/Clefspeare13/pornhosts/issues)| This is an endeavour to find all porn domains and compile them into a single hosts to allow for easy blocking of porn on your local machine or on a network.
|
||||
Sinfonietta's porn blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/pornography-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Sinfonietta's snuff-site blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/snuff-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - pornography |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/porn) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -0,0 +1,680 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: fakenews, porn, social
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: fakenews, porn, social](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts)
|
||||
containing 61,047 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
Fake News |[link](https://github.com/marktron/fakenews) | [raw](https://raw.githubusercontent.com/marktron/fakenews/master/fakenews) | MIT | [issues](https://github.com/marktron/fakenews/issues)| An in-progress collection of fake news outlets.
|
||||
BigDargon's adult domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/adult/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
brijrajparmar27 - pornography |[link](https://github.com/brijrajparmar27/host-sources) | [raw](https://raw.githubusercontent.com/brijrajparmar27/host-sources/master/Porn/hosts) | CC BY 4.0 | [issues](https://github.com/brijrajparmar27/host-sources/issues)| hosts files for DNS based content blocking
|
||||
pornhosts -- a consolidated anti porn hosts file |[link](https://github.com/Clefspeare13/pornhosts) | [raw](https://raw.githubusercontent.com/StevenBlack/hosts/master/extensions/porn/clefspeare13/hosts) | MIT | [issues](https://github.com/Clefspeare13/pornhosts/issues)| This is an endeavour to find all porn domains and compile them into a single hosts to allow for easy blocking of porn on your local machine or on a network.
|
||||
Sinfonietta's porn blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/pornography-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Sinfonietta's snuff-site blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/snuff-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - pornography |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/porn) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
Sinfonietta's social media blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/social-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - social |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/social) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with fakenews, porn, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts)
|
||||
containing 234,459 entries.
|
||||
[raw hosts file Unified hosts file with fakenews, porn, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts)
|
||||
containing 202,021 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -193,6 +208,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -256,6 +275,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -489,6 +511,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -647,6 +671,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with fakenews, porn extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts)
|
||||
containing 231,636 entries.
|
||||
[raw hosts file Unified hosts file with fakenews, porn extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts)
|
||||
containing 199,200 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -191,6 +206,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -254,6 +273,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -487,6 +509,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -645,6 +669,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -0,0 +1,674 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: fakenews, social
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: fakenews, social](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts)
|
||||
containing 5,035 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
Fake News |[link](https://github.com/marktron/fakenews) | [raw](https://raw.githubusercontent.com/marktron/fakenews/master/fakenews) | MIT | [issues](https://github.com/marktron/fakenews/issues)| An in-progress collection of fake news outlets.
|
||||
Sinfonietta's social media blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/social-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - social |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/social) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with fakenews, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts)
|
||||
containing 186,374 entries.
|
||||
[raw hosts file Unified hosts file with fakenews, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts)
|
||||
containing 146,649 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -187,6 +202,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -250,6 +269,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -483,6 +505,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -641,6 +665,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with fakenews extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts)
|
||||
containing 183,550 entries.
|
||||
[raw hosts file Unified hosts file with fakenews extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts)
|
||||
containing 143,825 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -185,6 +200,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -248,6 +267,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -481,6 +503,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -639,6 +663,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -0,0 +1,673 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: gambling
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: gambling](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts)
|
||||
containing 7,846 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
BigDargon's gambling domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/gambling/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
Sinfonietta's gambling blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/gambling-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -0,0 +1,679 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: gambling, porn
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: gambling, porn](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts)
|
||||
containing 63,861 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
BigDargon's gambling domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/gambling/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
Sinfonietta's gambling blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/gambling-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
BigDargon's adult domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/adult/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
brijrajparmar27 - pornography |[link](https://github.com/brijrajparmar27/host-sources) | [raw](https://raw.githubusercontent.com/brijrajparmar27/host-sources/master/Porn/hosts) | CC BY 4.0 | [issues](https://github.com/brijrajparmar27/host-sources/issues)| hosts files for DNS based content blocking
|
||||
pornhosts -- a consolidated anti porn hosts file |[link](https://github.com/Clefspeare13/pornhosts) | [raw](https://raw.githubusercontent.com/StevenBlack/hosts/master/extensions/porn/clefspeare13/hosts) | MIT | [issues](https://github.com/Clefspeare13/pornhosts/issues)| This is an endeavour to find all porn domains and compile them into a single hosts to allow for easy blocking of porn on your local machine or on a network.
|
||||
Sinfonietta's porn blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/pornography-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Sinfonietta's snuff-site blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/snuff-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - pornography |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/porn) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -0,0 +1,681 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: gambling, porn, social
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: gambling, porn, social](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts)
|
||||
containing 66,699 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
BigDargon's gambling domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/gambling/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
Sinfonietta's gambling blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/gambling-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
BigDargon's adult domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/adult/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
brijrajparmar27 - pornography |[link](https://github.com/brijrajparmar27/host-sources) | [raw](https://raw.githubusercontent.com/brijrajparmar27/host-sources/master/Porn/hosts) | CC BY 4.0 | [issues](https://github.com/brijrajparmar27/host-sources/issues)| hosts files for DNS based content blocking
|
||||
pornhosts -- a consolidated anti porn hosts file |[link](https://github.com/Clefspeare13/pornhosts) | [raw](https://raw.githubusercontent.com/StevenBlack/hosts/master/extensions/porn/clefspeare13/hosts) | MIT | [issues](https://github.com/Clefspeare13/pornhosts/issues)| This is an endeavour to find all porn domains and compile them into a single hosts to allow for easy blocking of porn on your local machine or on a network.
|
||||
Sinfonietta's porn blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/pornography-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Sinfonietta's snuff-site blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/snuff-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - pornography |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/porn) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
Sinfonietta's social media blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/social-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - social |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/social) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with gambling, porn, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts)
|
||||
containing 239,766 entries.
|
||||
[raw hosts file Unified hosts file with gambling, porn, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts)
|
||||
containing 207,661 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -194,6 +209,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -257,6 +276,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -490,6 +512,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -648,6 +672,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with gambling, porn extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts)
|
||||
containing 236,943 entries.
|
||||
[raw hosts file Unified hosts file with gambling, porn extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts)
|
||||
containing 204,840 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -192,6 +207,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -255,6 +274,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -488,6 +510,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -646,6 +670,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -0,0 +1,675 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: gambling, social
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: gambling, social](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts)
|
||||
containing 10,687 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
BigDargon's gambling domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/gambling/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
Sinfonietta's gambling blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/gambling-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Sinfonietta's social media blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/social-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - social |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/social) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with gambling, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts)
|
||||
containing 191,681 entries.
|
||||
[raw hosts file Unified hosts file with gambling, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts)
|
||||
containing 152,289 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -188,6 +203,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -251,6 +270,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -484,6 +506,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -642,6 +666,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with gambling extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts)
|
||||
containing 188,857 entries.
|
||||
[raw hosts file Unified hosts file with gambling extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts)
|
||||
containing 149,465 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -186,6 +201,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -249,6 +268,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -482,6 +504,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -640,6 +664,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -0,0 +1,677 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: porn
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: porn](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts)
|
||||
containing 56,015 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
BigDargon's adult domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/adult/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
brijrajparmar27 - pornography |[link](https://github.com/brijrajparmar27/host-sources) | [raw](https://raw.githubusercontent.com/brijrajparmar27/host-sources/master/Porn/hosts) | CC BY 4.0 | [issues](https://github.com/brijrajparmar27/host-sources/issues)| hosts files for DNS based content blocking
|
||||
pornhosts -- a consolidated anti porn hosts file |[link](https://github.com/Clefspeare13/pornhosts) | [raw](https://raw.githubusercontent.com/StevenBlack/hosts/master/extensions/porn/clefspeare13/hosts) | MIT | [issues](https://github.com/Clefspeare13/pornhosts/issues)| This is an endeavour to find all porn domains and compile them into a single hosts to allow for easy blocking of porn on your local machine or on a network.
|
||||
Sinfonietta's porn blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/pornography-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Sinfonietta's snuff-site blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/snuff-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - pornography |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/porn) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -0,0 +1,679 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: porn, social
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: porn, social](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts)
|
||||
containing 58,853 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
BigDargon's adult domain blocking hosts file |[link](https://github.com/bigdargon/hostsVN/) | [raw](https://raw.githubusercontent.com/bigdargon/hostsVN/master/extensions/adult/hosts-VN) | MIT | [issues](https://github.com/bigdargon/hostsVN/issues)| Extension from the project hostsVN
|
||||
brijrajparmar27 - pornography |[link](https://github.com/brijrajparmar27/host-sources) | [raw](https://raw.githubusercontent.com/brijrajparmar27/host-sources/master/Porn/hosts) | CC BY 4.0 | [issues](https://github.com/brijrajparmar27/host-sources/issues)| hosts files for DNS based content blocking
|
||||
pornhosts -- a consolidated anti porn hosts file |[link](https://github.com/Clefspeare13/pornhosts) | [raw](https://raw.githubusercontent.com/StevenBlack/hosts/master/extensions/porn/clefspeare13/hosts) | MIT | [issues](https://github.com/Clefspeare13/pornhosts/issues)| This is an endeavour to find all porn domains and compile them into a single hosts to allow for easy blocking of porn on your local machine or on a network.
|
||||
Sinfonietta's porn blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/pornography-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Sinfonietta's snuff-site blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/snuff-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - pornography |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/porn) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
Sinfonietta's social media blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/social-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - social |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/social) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with porn, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts)
|
||||
containing 232,265 entries.
|
||||
[raw hosts file Unified hosts file with porn, social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts)
|
||||
containing 199,827 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -192,6 +207,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -255,6 +274,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -488,6 +510,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -646,6 +670,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with porn extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts)
|
||||
containing 229,442 entries.
|
||||
[raw hosts file Unified hosts file with porn extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts)
|
||||
containing 197,006 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -190,6 +205,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -253,6 +272,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -486,6 +508,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -644,6 +668,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -0,0 +1,673 @@
|
||||
**Take Note!**
|
||||
|
||||
With the exception of issues and PRs regarding changes to
|
||||
`hosts/data/StevenBlack/hosts`, all other issues regarding the content of the
|
||||
produced hosts files should be made with the appropriate data source that
|
||||
contributed the content in question. The contact information for all of the data
|
||||
sources can be found in the `hosts/data/` directory.
|
||||
|
||||
---
|
||||
|
||||

|
||||
|
||||
[](https://github.com/StevenBlack/hosts/releases)
|
||||
[](https://github.com/StevenBlack/hosts/blob/master/license.txt)
|
||||
[](https://github.com/StevenBlack/hosts)
|
||||
[](https://github.com/StevenBlack/hosts/graphs/contributors)
|
||||
[](https://github.com/StevenBlack/hosts/actions/workflows/ci.yml?query=branch%3Amaster)
|
||||
[](https://github.com/python/black)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Limited to the extensions: social
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
files are provided.
|
||||
|
||||
**Therefore this repository is a hosts file aggregator.**
|
||||
|
||||

|
||||
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file Limited to the extensions: social](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts)
|
||||
containing 2,841 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
of OS.
|
||||
|
||||
## Sources of hosts data unified in this variant
|
||||
|
||||
Updated `hosts` files from the following locations are always unified and
|
||||
included:
|
||||
|
||||
| Host file source | Home page | Raw hosts | License | Issues | Description |
|
||||
| ---------------- | :-------: | :-------: | :-----: | :----: | ----------- |
|
||||
Sinfonietta's social media blocking hosts file |[link](https://github.com/Sinfonietta/hostfiles) | [raw](https://raw.githubusercontent.com/Sinfonietta/hostfiles/master/social-hosts) | MIT | [issues](https://github.com/Sinfonietta/hostfiles/issues)| A collection of category-specific host files.
|
||||
Tiuxo hostlist - social |[link](https://github.com/tiuxo/hosts) | [raw](https://raw.githubusercontent.com/tiuxo/hosts/master/social) | CC BY 4.0 | [issues](https://github.com/tiuxo/hosts/issues)| Categorized hosts files for DNS based content blocking
|
||||
|
||||
|
||||
## Extensions
|
||||
|
||||
The unified hosts file is optionally extensible. Extensions are used to include
|
||||
domains by category. Currently, we offer the following categories: `fakenews`,
|
||||
`social`, `gambling`, and `porn`.
|
||||
|
||||
Extensions are optional, and can be combined in various ways with the base hosts
|
||||
file. The combined products are stored in the
|
||||
[`alternates`](https://github.com/StevenBlack/hosts/tree/master/alternates)
|
||||
folder.
|
||||
|
||||
Data for extensions are stored in the
|
||||
[`extensions`](https://github.com/StevenBlack/hosts/tree/master/extensions)
|
||||
folder. You manage extensions by curating this folder tree, where you will find
|
||||
the data for `fakenews`, `social`, `gambling`, and `porn` extension data that we
|
||||
maintain and provide for you.
|
||||
|
||||
## Generate your own unified hosts file
|
||||
|
||||
You have three options to generate your own hosts file. You can use our
|
||||
container image, build your own image, or do it in your own environment. Option
|
||||
#1 is easiest if you have Linux with Docker installed.
|
||||
|
||||
### Option 1: Use our container image (Linux only)
|
||||
|
||||
> This will replace your `/etc/hosts`.
|
||||
|
||||
We assume you have Docker available on your host. Just run the following
|
||||
command. Set extensions to your preference.
|
||||
|
||||
```sh
|
||||
docker run --pull always --rm -it -v /etc/hosts:/etc/hosts \
|
||||
ghcr.io/stevenblack/hosts:latest updateHostsFile.py --auto \
|
||||
--replace --extensions gambling porn
|
||||
```
|
||||
|
||||
If you want to add custom hosts or a whitelist, create either or both files as
|
||||
per [the instructions](#how-do-i-control-which-sources-are-unified) and add the
|
||||
following arguments _before_ `ghcr.io/stevenblack/hosts:latest` depending on
|
||||
which you wish to use.
|
||||
|
||||
```sh
|
||||
-v "path/to/myhosts:/hosts/myhosts" \
|
||||
-v "path/to/whitelist:/hosts/whitelist" \
|
||||
```
|
||||
|
||||
You can rerun this exact command later to update based on the latest available
|
||||
hosts (for example, add it to a weekly cron job).
|
||||
|
||||
### Option 2: Generate your own container image
|
||||
|
||||
We provide the
|
||||
[Dockerfile](https://github.com/StevenBlack/hosts/blob/master/Dockerfile) used
|
||||
by the previous step, which you can use to create a container image with
|
||||
everything you need. The container will contain Python 3 and all its dependency
|
||||
requirements, and a copy of the latest version of this repository.
|
||||
|
||||
Build the Docker container from the root of this repo like this:
|
||||
|
||||
```sh
|
||||
docker build --no-cache . -t stevenblack-hosts
|
||||
```
|
||||
|
||||
Then run your command as such:
|
||||
|
||||
```sh
|
||||
docker run --rm -it stevenblack-hosts updateHostsFile.py
|
||||
```
|
||||
|
||||
> This will create the hosts file, and remove it with the container when done,
|
||||
> so not very useful. You can use the example in option #1 to add volumes so
|
||||
> files on your host are replaced.
|
||||
|
||||
### Option 3: Generate it in your own environment
|
||||
|
||||
To generate your own amalgamated hosts files you will need Python 3.6 or later.
|
||||
|
||||
First, install the dependencies with:
|
||||
|
||||
```sh
|
||||
pip3 install --user -r requirements.txt
|
||||
```
|
||||
|
||||
**Note** we recommend the `--user` flag which installs the required dependencies
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
|
||||
```sh
|
||||
python3 testUpdateHostsFile.py
|
||||
```
|
||||
|
||||
The `updateHostsFile.py` script will generate a unified hosts file based on the
|
||||
sources in the local `data/` subfolder. The script will prompt you whether it
|
||||
should fetch updated versions (from locations defined by the `update.json` text
|
||||
file in each source's folder). Otherwise, it will use the `hosts` file that's
|
||||
already there.
|
||||
|
||||
```sh
|
||||
python3 updateHostsFile.py [--auto] [--replace] [--ip nnn.nnn.nnn.nnn] [--extensions ext1 ext2 ext3]
|
||||
```
|
||||
|
||||
#### Command line options
|
||||
|
||||
`--help`, or `-h`: display help.
|
||||
|
||||
`--auto`, or `-a`: run the script without prompting. When `--auto` is invoked,
|
||||
|
||||
- Hosts data sources, including extensions, are updated.
|
||||
- No extensions are included by default. Use the `--extensions` or `-e` flag to
|
||||
include any you want.
|
||||
- Your active hosts file is _not_ replaced unless you include the `--replace`
|
||||
flag.
|
||||
|
||||
`--backup`, or `-b`: Make a backup of existing hosts file(s) as you generate
|
||||
over them.
|
||||
|
||||
`--extensions <ext1> <ext2> <ext3>`, or `-e <ext1> <ext2> <ext3>`: the names of
|
||||
subfolders below the `extensions` folder containing additional category-specific
|
||||
hosts files to include in the amalgamation. Example: `--extensions porn` or
|
||||
`-e social porn`.
|
||||
|
||||
`--flush-dns-cache`, or `-f`: skip the prompt for flushing the DNS cache. Only
|
||||
active when `--replace` is also active.
|
||||
|
||||
`--ip nnn.nnn.nnn.nnn`, or `-i nnn.nnn.nnn.nnn`: the IP address to use as the
|
||||
target. Default is `0.0.0.0`.
|
||||
|
||||
`--keepdomaincomments`, or `-k`: `true` (default) or `false`, keep the comments
|
||||
that appear on the same line as domains. The default is `true`.
|
||||
|
||||
`--noupdate`, or `-n`: skip fetching updates from hosts data sources.
|
||||
|
||||
`--output <subfolder>`, or `-o <subfolder>`: place the generated source file in
|
||||
a subfolder. If the subfolder does not exist, it will be created.
|
||||
|
||||
`--replace`, or `-r`: trigger replacing your active hosts
|
||||
|
||||
`--skipstatichosts`, or `-s`: `false` (default) or `true`, omit the standard
|
||||
section at the top, containing lines like `127.0.0.1 localhost`. This is useful
|
||||
for configuring proximate DNS services on the local network.
|
||||
|
||||
`--nogendata`, or `-g`: `false` (default) or `true`, skip the generation of the
|
||||
readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
the performances under Windows (with DNS Client service enabled).
|
||||
|
||||
`--minimise`, or `-m`: `false` (default) or `true`, like `--compress`, but puts
|
||||
each domain on a separate line. This is necessary because many implementations
|
||||
of URL blockers that rely on `hosts` files do not conform to the standard which
|
||||
allows multiple hosts on a single line.
|
||||
|
||||
`--blacklist <blacklistfile>`, or `-x <blacklistfile>`: Append the given
|
||||
blacklist file in hosts format to the generated hosts file.
|
||||
|
||||
`--whitelist <whitelistfile>`, or `-w <whitelistfile>`: Use the given whitelist
|
||||
file to remove hosts from the generated hosts file.
|
||||
|
||||
## How do I control which sources are unified?
|
||||
|
||||
Add one or more _additional_ sources, each in a subfolder of the `data/` folder,
|
||||
and specify the `url` key in its `update.json` file.
|
||||
|
||||
Add one or more _optional_ extensions, which originate from subfolders of the
|
||||
`extensions/` folder. Again the url in `update.json` controls where this
|
||||
extension finds its updates.
|
||||
|
||||
Create an _optional_ `blacklist` file. The contents of this file (containing a
|
||||
listing of additional domains in `hosts` file format) are appended to the
|
||||
unified hosts file during the update process. A sample `blacklist` is included,
|
||||
and may be modified as you need.
|
||||
|
||||
- NOTE: The `blacklist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I include my own custom domain mappings?
|
||||
|
||||
If you have custom hosts records, place them in file `myhosts`. The contents of
|
||||
this file are prepended to the unified hosts file during the update process.
|
||||
|
||||
The `myhosts` file is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
### How do I prevent domains from being included?
|
||||
|
||||
The domains you list in the `whitelist` file are excluded from the final hosts
|
||||
file.
|
||||
|
||||
The `whitelist` uses partial matching. Therefore if you whitelist
|
||||
`google-analytics.com`, that domain and all its subdomains won't be merged into
|
||||
the final hosts file.
|
||||
|
||||
The `whitelist` is not tracked by git, so any changes you make won't be
|
||||
overridden when you `git pull` this repo from `origin` in the future.
|
||||
|
||||
## How can I contribute hosts records?
|
||||
|
||||
If you discover sketchy domains you feel should be included here, here are some
|
||||
ways to contribute them.
|
||||
|
||||
### Option 1: contact one of our hosts sources
|
||||
|
||||
The best way to get new domains included is to submit an issue to any of the
|
||||
data providers whose home pages are
|
||||
[listed here](https://github.com/StevenBlack/hosts#sources-of-hosts-data-unified-in-this-variant).
|
||||
This is best because once you submit new domains, they will be curated and
|
||||
updated by the dedicated folks who maintain these sources.
|
||||
|
||||
### Option 2: Fork this repository, add your domains to Steven Black's personal data file, and submit a pull request
|
||||
|
||||
Fork this hosts this repo and add your links to
|
||||
[https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts](https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts).
|
||||
|
||||
Then, submit a pull request.
|
||||
|
||||
**WARNING**: this is less desirable than Option 1 because the ongoing curation
|
||||
falls on us. So this creates more work for us.
|
||||
|
||||
### Option 3: create your own hosts list as a repo on GitHub
|
||||
|
||||
If you're able to curate your own collection of sketchy domains, then curate
|
||||
your own hosts list. Then signal the existence of your repo as
|
||||
[a new issue](https://github.com/StevenBlack/hosts/issues) and we may include
|
||||
your new repo into the collection of sources we pull whenever we create new
|
||||
versions.
|
||||
|
||||
## What is a hosts file?
|
||||
|
||||
A hosts file, named `hosts` (with no file extension), is a plain-text file used
|
||||
by all operating systems to map hostnames to IP addresses.
|
||||
|
||||
In most operating systems, the `hosts` file is preferential to `DNS`. Therefore
|
||||
if a domain name is resolved by the `hosts` file, the request never leaves your
|
||||
computer.
|
||||
|
||||
Having a smart `hosts` file goes a long way towards blocking malware, adware,
|
||||
and other irritants.
|
||||
|
||||
For example, to nullify requests to some doubleclick.net servers, adding these
|
||||
lines to your hosts file will do it:
|
||||
|
||||
```text
|
||||
# block doubleClick's servers
|
||||
0.0.0.0 ad.ae.doubleclick.net
|
||||
0.0.0.0 ad.ar.doubleclick.net
|
||||
0.0.0.0 ad.at.doubleclick.net
|
||||
0.0.0.0 ad.au.doubleclick.net
|
||||
0.0.0.0 ad.be.doubleclick.net
|
||||
# etc...
|
||||
```
|
||||
|
||||
## We recommend using `0.0.0.0` instead of `127.0.0.1`
|
||||
|
||||
Traditionally most host files use `127.0.0.1`, the _loopback address_, to
|
||||
establish an IP connection to the local machine.
|
||||
|
||||
We prefer to use `0.0.0.0`, which is defined as a non-routable meta-address used
|
||||
to designate an invalid, unknown, or non-applicable target.
|
||||
|
||||
Using `0.0.0.0` is empirically faster, possibly because there's no wait for a
|
||||
timeout resolution. It also does not interfere with a web server that may be
|
||||
running on the local PC.
|
||||
|
||||
## Why not use `0` instead of `0.0.0.0`?
|
||||
|
||||
We tried that. Using `0` doesn't work universally.
|
||||
|
||||
## Location of your hosts file
|
||||
|
||||
To modify your current `hosts` file, look for it in the following places and
|
||||
modify it with a text editor.
|
||||
|
||||
- **macOS (until 10.14.x macOS Mojave), iOS, Android, Linux**: `/etc/hosts`
|
||||
file.
|
||||
- **macOS Catalina:** `/private/etc/hosts` file.
|
||||
- **Windows**: `%SystemRoot%\system32\drivers\etc\hosts` file.
|
||||
|
||||
## Gentoo
|
||||
|
||||
Gentoo users may find
|
||||
[`sb-hosts`](https://github.com/PF4Public/gentoo-overlay/tree/master/net-misc/sb-hosts)
|
||||
in [::pf4public](https://github.com/PF4Public/gentoo-overlay) Gentoo overlay
|
||||
|
||||
## NixOS
|
||||
|
||||
To install hosts file on your machine add the following into your
|
||||
`configuration.nix`:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.extraHosts = let
|
||||
hostsPath = https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts;
|
||||
hostsFile = builtins.fetchurl hostsPath;
|
||||
in builtins.readFile "${hostsFile}";
|
||||
}
|
||||
```
|
||||
|
||||
- NOTE: Change `hostsPath` if you need other versions of hosts file.
|
||||
- NOTE: The call to `fetchurl` is impure. Use `fetchFromGitHub` with the exact
|
||||
commit if you want to always get the same result.
|
||||
|
||||
### Nix Flake
|
||||
|
||||
NixOS installations which are managed through _flakes_ can use the hosts file
|
||||
like this:
|
||||
|
||||
```nix
|
||||
{
|
||||
inputs.hosts.url = github:StevenBlack/hosts;
|
||||
outputs = { self, nixpkgs, hosts }: {
|
||||
nixosConfigurations.my-hostname = {
|
||||
system = "<architecture>";
|
||||
modules = [
|
||||
hosts.nixosModule {
|
||||
networking.stevenBlackHosts.enable = true;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
The hosts extensions are also available with the following options:
|
||||
|
||||
```nix
|
||||
{
|
||||
networking.stevenBlackHosts = {
|
||||
blockFakenews = true;
|
||||
blockGambling = true;
|
||||
blockPorn = true;
|
||||
blockSocial = true;
|
||||
};
|
||||
}
|
||||
```
|
||||
|
||||
## Updating hosts file on Windows
|
||||
|
||||
(NOTE: See also some third-party Hosts managers, listed below.)
|
||||
|
||||
On Linux and macOS, run the Python script. On Windows more work is required due
|
||||
to compatibility issues so it's preferable to run the batch file as follows:
|
||||
|
||||
```sh
|
||||
updateHostsWindows.bat
|
||||
```
|
||||
|
||||
This file **MUST** be run in command prompt with administrator privileges in the
|
||||
repository directory. In addition to updating the hosts file, it can also
|
||||
replace the existing hosts file, and reload the DNS cache. It goes without
|
||||
saying that for this to work, you must be connected to the internet.
|
||||
|
||||
To open a command prompt as administrator in the repository's directory, do the
|
||||
following:
|
||||
|
||||
- **Windows XP**: Start → Run → `cmd`
|
||||
- **Windows Vista, 7**: Start Button → type `cmd` → right-click Command Prompt →
|
||||
"Run as Administrator"
|
||||
- **Windows 8**: Start → Swipe Up → All Apps → Windows System → right-click
|
||||
Command Prompt → "Run as Administrator"
|
||||
- **Windows 10**: Start Button → type `cmd` → right-click Command Prompt → "Run
|
||||
as Administrator"
|
||||
|
||||
You can also refer to the "Third-Party Hosts Managers" section for further
|
||||
recommended solutions from third parties.
|
||||
|
||||
### Warning: Using this `hosts` file in Windows may require disabling DNS Cache service
|
||||
|
||||
Windows has issues with larger hosts files. Recent changes in security within
|
||||
Windows 10 denies access to changing services via other tools except registry
|
||||
hacks. Use the `disable-dnscache-service-win.cmd` file to make proper changes to
|
||||
the Windows registry. You will need to reboot your device once that's done. See
|
||||
the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
following commands to manually flush your DNS cache once the new hosts file is
|
||||
in place.
|
||||
|
||||
The Google Chrome browser may require manually cleaning up its DNS Cache on
|
||||
`chrome://net-internals/#dns` page to thereafter see the changes in your hosts
|
||||
file. See: <https://superuser.com/questions/723703>
|
||||
|
||||
### Windows
|
||||
|
||||
Open a command prompt with administrator privileges and run this command:
|
||||
|
||||
```bat
|
||||
ipconfig /flushdns
|
||||
```
|
||||
|
||||
### Linux
|
||||
|
||||
Open a Terminal and run with root privileges:
|
||||
|
||||
- **Debian/Ubuntu** `sudo service network-manager restart`
|
||||
- **Linux Mint** `sudo /etc/init.d/dns-clean start`
|
||||
- **Linux with systemd**: `sudo systemctl restart network.service`
|
||||
- **Fedora Linux**: `sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Network Manager**:
|
||||
`sudo systemctl restart NetworkManager.service`
|
||||
- **Arch Linux/Manjaro with Wicd**: `sudo systemctl restart wicd.service`
|
||||
- **RHEL/Centos**: `sudo /etc/init.d/network restart`
|
||||
- **FreeBSD**: `sudo service nscd restart`
|
||||
|
||||
To enable the `nscd` daemon initially, it is recommended that you run the
|
||||
following commands:
|
||||
|
||||
```sh
|
||||
sudo sysrc nscd_enable="YES"
|
||||
sudo service nscd start
|
||||
```
|
||||
|
||||
Then modify the `hosts` line in your `/etc/nsswitch.conf` file to the
|
||||
following:
|
||||
|
||||
```text
|
||||
hosts: cache files dns
|
||||
```
|
||||
|
||||
- **NixOS**: The `nscd.service` is automatically restarted when the option
|
||||
`networking.extraHosts` was changed.
|
||||
- **Others**: Consult
|
||||
[this Wikipedia article](https://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system).
|
||||
|
||||
### macOS
|
||||
|
||||
As described in [this article](https://osxdaily.com/2022/11/21/how-clear-dns-cache-macos-ventura-monterey/),
|
||||
open a Terminal and run:
|
||||
|
||||
```sh
|
||||
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
|
||||
```
|
||||
|
||||
## Release management
|
||||
|
||||
This repository uses [release-it](https://github.com/release-it/release-it), an
|
||||
excellent CLI release tool for GitHub repos and npm packages, to automate
|
||||
creating [releases](https://github.com/StevenBlack/hosts/releases). This is why
|
||||
the
|
||||
[package.json](https://github.com/StevenBlack/hosts/blob/master/package.json)
|
||||
and
|
||||
[.release-it.json](https://github.com/StevenBlack/hosts/blob/master/.release-it.json)
|
||||
files are bundled.
|
||||
|
||||
## Goals of this unified hosts file
|
||||
|
||||
The goals of this repo are to:
|
||||
|
||||
1. automatically combine high-quality lists of hosts,
|
||||
2. provide situation-appropriate extensions,
|
||||
3. de-dupe the resultant combined list,
|
||||
4. and keep the resultant file reasonably sized.
|
||||
|
||||
A high-quality source is defined here as one that is actively curated. A hosts
|
||||
source should be frequently updated by its maintainers with both additions and
|
||||
removals. The larger the hosts file, the higher the level of curation is
|
||||
expected.
|
||||
|
||||
It is expected that this unified hosts file will serve both desktop and mobile
|
||||
devices under a variety of operating systems.
|
||||
|
||||
## Third-Party Hosts Managers
|
||||
|
||||
- [Unified Hosts AutoUpdate](https://github.com/ScriptTiger/Unified-Hosts-AutoUpdate "Unified Hosts AutoUpdate")
|
||||
(for Windows): The Unified Hosts AutoUpdate package is purpose-built for this
|
||||
unified hosts project as well as in active development by community members.
|
||||
You can install and uninstall any blacklist and keep it automatically up to
|
||||
date, and can be placed in a shared network location and deployed across an
|
||||
organization via group policies. And since it is in active development by
|
||||
community members, your bug reports, feature requests, and other feedback are
|
||||
most welcome.
|
||||
- [ViHoMa](https://github.com/cmabad/ViHoMa) is a Visual Hosts file Manager,
|
||||
written in Java, by Christian Martínez. Check it out!
|
||||
|
||||
## Interesting Applications
|
||||
|
||||
- [Hosts-BL](https://github.com/ScriptTiger/Hosts-BL "Hosts-BL") is a simple
|
||||
tool to handle hosts file black lists. It can remove comments, remove
|
||||
duplicates, compress to 9 domains per line, add IPv6 entries. In addition, it
|
||||
can also convert black lists to multiple other black list formats compatible
|
||||
with other software, such as dnsmasq, DualServer, RPZ, Privoxy, and Unbound,
|
||||
to name a few.
|
||||
- [Host Minder](https://github.com/jeremehancock/hostminder#readme) is a simple
|
||||
GUI that allows you to easily update your /etc/hosts file to one of four
|
||||
consolidated hosts files from StevenBlack/hosts. It is provided as a deb
|
||||
package and comes pre-installed on [UbuntuCE](https://ubuntuce.com/).
|
||||
- [Maza ad blocking](https://github.com/tanrax/maza-ad-blocking) is a bash
|
||||
script that automatically updates host file. You can also update a fresh copy.
|
||||
And each time it generates a dnsmasq-compatible configuration file. Fast
|
||||
installation, compatible with MacOS, Linux and BSD.
|
||||
- [Hostile](https://github.com/feross/hostile) is a nifty command line utility
|
||||
to easily add or remove domains from your hosts file. If our hosts files are
|
||||
too aggressive for you, you can use `hostile` to remove domains, or you can
|
||||
use `hostile` in a bash script to automate a post process each time you
|
||||
download fresh versions of hosts.
|
||||
- [macOS Scripting for Configuration, Backup and Restore](https://github.com/tiiiecherle/osx_install_config)
|
||||
helps customizing, re-installing and using macOS. It also provides a
|
||||
[script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/hosts_file_generator.sh)
|
||||
to install and update the hosts file using this project on macOS. In
|
||||
combination with a
|
||||
[launchd](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/launchd_and_script/com.hostsfile.install_update.plist)
|
||||
it updates the hosts file every x days (default is 4). To install both,
|
||||
download the GitHub repo and run the
|
||||
[install script](https://github.com/tiiiecherle/osx_install_config/blob/master/09_launchd/9b_run_on_boot/root/1_hosts_file/install_hosts_file_generator_and_launchdservice.sh)
|
||||
from the directory one level up.
|
||||
- [Pi-hole](https://pi-hole.net/) is a network-wide DHCP server and ad blocker
|
||||
that runs on [Raspberry Pi](https://en.wikipedia.org/wiki/Raspberry_Pi).
|
||||
Pi-hole uses this repository as one of its sources.
|
||||
- [Block ads and malware via local BIND9 DNS server](https://github.com/mueller-ma/block-ads-via-dns "Block ads and malware via local DNS server")
|
||||
(for Debian, Raspbian & Ubuntu): Set up a local DNS server with a
|
||||
`/etc/bind/named.conf.blocked` file, sourced from here.
|
||||
- [Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server](https://scripttiger.github.io/dualserver/ "Block ads, malware, and deploy parental controls via local DualServer DNS/DHCP server")
|
||||
(for BSD, Windows & Linux): Set up a blacklist for everyone on your network
|
||||
using the power of the unified hosts reformatted for DualServer. And if you're
|
||||
on Windows, this project also maintains an update script to make updating
|
||||
DualServer's blacklist even easier.
|
||||
- [Blocking ads and malwares with unbound](https://deadc0de.re/articles/unbound-blocking-ads.html "Blocking ads and malwares with unbound")
|
||||
–
|
||||
[Unbound](https://www.unbound.net/ "Unbound is a validating, recursive, and caching DNS resolver.")
|
||||
is a validating, recursive, and caching DNS resolver.
|
||||
- [dnsmasq conversion script](https://gist.github.com/erlepereira/c11f4f7a3f60cd2071e79018e895fc8a#file-dnsmasq-antimalware)
|
||||
This GitHub gist has a short shell script (bash, will work on any 'nix) and
|
||||
uses `wget` & `awk` present in most distros, to fetch a specified hosts file
|
||||
and convert it to the format required by dnsmasq. Supports IPv4 and IPv6.
|
||||
Designed to be used as either a shell script, or can be dropped into
|
||||
`/etc/cron.weekly` (or wherever suits). The script is short and easily edited,
|
||||
also has a short document attached with notes on dnsmasq setup.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
- [Control D](https://controld.com/free-dns)
|
||||
offers a public anycast network hosted mirror of the Unified (Adware + Malware) blocklist:
|
||||
- Legacy DNS: `76.76.2.35`, `76.76.10.35`, `2606:1a40::35`, `2606:1a40:1::35`
|
||||
- DNS-over-HTTPS/TLS/DOQ: `https://freedns.controld.com/x-stevenblack`, `x-stevenblack.freedns.controld.com`
|
||||
|
||||
## Contribute
|
||||
|
||||
Please read our
|
||||
[Contributing Guide](https://github.com/StevenBlack/hosts/blob/master/contributing.md).
|
||||
Among other things, this explains how we organize files and folders in this
|
||||
repository.
|
||||
|
||||
We are always interested in discovering well-curated sources of hosts. If you
|
||||
find one, please open an [issue](https://github.com/StevenBlack/hosts/issues) to
|
||||
draw our attention.
|
||||
|
||||
Before you create or respond to any issue, please read our
|
||||
[code of conduct](https://github.com/StevenBlack/hosts/blob/master/code_of_conduct.md).
|
||||
|
||||
Logo by [@Tobaloidee](https://github.com/Tobaloidee) Thank you!.
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts)
|
||||
containing 184,180 entries.
|
||||
[raw hosts file Unified hosts file with social extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts)
|
||||
containing 144,455 entries.
|
||||
|
||||
|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -186,6 +201,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -249,6 +268,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -482,6 +504,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -640,6 +664,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -399,3 +399,119 @@
|
||||
2022-07-23,54912
|
||||
2022-07-25,54029
|
||||
2022-07-29,55170
|
||||
2022-07-29,55170
|
||||
2022-08-03,56212
|
||||
2022-08-09,55363
|
||||
2022-08-12,56199
|
||||
2022-08-17,57242
|
||||
2022-08-20,58029
|
||||
2022-08-24,58671
|
||||
2022-08-25,59079
|
||||
2022-08-31,58909
|
||||
2022-09-04,59632
|
||||
2022-09-05,59801
|
||||
2022-09-08,60419
|
||||
2022-09-11,60871
|
||||
2022-09-13,61716
|
||||
2022-09-17,62637
|
||||
2022-09-23,69250
|
||||
2022-10-01,70975
|
||||
2022-10-06,71961
|
||||
2022-10-09,72393
|
||||
2022-10-13,73542
|
||||
2022-10-15,73812
|
||||
2022-10-17,74045
|
||||
2022-10-20,74663
|
||||
2022-10-27,75985
|
||||
2022-11-01,76659
|
||||
2022-11-09,77533
|
||||
2022-11-12,77958
|
||||
2022-11-13,78048
|
||||
2022-11-20,79200
|
||||
2022-11-21,79392
|
||||
2022-11-26,80074
|
||||
2022-11-28,80242
|
||||
2022-11-29,80593
|
||||
2022-12-03,81424
|
||||
2022-12-04,81480
|
||||
2022-12-05,81939
|
||||
2022-12-06,82151
|
||||
2022-12-11,83395
|
||||
2022-12-13,83729
|
||||
2022-12-15,84409
|
||||
2022-12-18,85143
|
||||
2022-12-20,85678
|
||||
2022-12-26,86493
|
||||
2022-12-29,87155
|
||||
2022-12-29,87249
|
||||
2023-01-01,87381
|
||||
2023-01-06,88183
|
||||
2023-01-08,88327
|
||||
2023-01-11,90282
|
||||
2023-01-13,90627
|
||||
2023-01-19,92889
|
||||
2023-01-23,93644
|
||||
2023-01-24,94292
|
||||
2023-01-27,95607
|
||||
2023-01-31,96093
|
||||
2023-02-05,98119
|
||||
2023-02-07,99720
|
||||
2023-02-16,103828
|
||||
2023-02-19,105052
|
||||
2023-02-23,105764
|
||||
2023-02-28,106639
|
||||
2023-03-03,107407
|
||||
2023-03-06,107829
|
||||
2023-03-07,108127
|
||||
2023-03-10,109968
|
||||
2023-03-14,111107
|
||||
2023-03-21,114538
|
||||
2023-03-25,115719
|
||||
2023-03-29,116916
|
||||
2023-04-07,123209
|
||||
2023-04-11,125209
|
||||
2023-04-16,127216
|
||||
2023-04-18,130388
|
||||
2023-04-19,130588
|
||||
2023-04-23,131577
|
||||
2023-04-26,134882
|
||||
2023-04-27,135241
|
||||
2023-04-30,135656
|
||||
2023-05-02,136074
|
||||
2023-05-05,136917
|
||||
2023-05-08,137729
|
||||
2023-05-11,138767
|
||||
2023-05-14,141533
|
||||
2023-05-15,142238
|
||||
2023-05-20,143946
|
||||
2023-05-21,144092
|
||||
2023-05-24,146074
|
||||
2023-06-02,148891
|
||||
2023-06-06,150385
|
||||
2023-06-10,151188
|
||||
2023-06-11,151275
|
||||
2023-06-13,151745
|
||||
2023-06-14,152002
|
||||
2023-06-14,152198
|
||||
2023-06-16,152956
|
||||
2023-06-17,153132
|
||||
2023-06-18,153288
|
||||
2023-06-23,154980
|
||||
2023-06-27,156185
|
||||
2023-07-01,157308
|
||||
2023-07-06,158737
|
||||
2023-07-09,159309
|
||||
2023-07-14,160857
|
||||
2023-07-15,160953
|
||||
2023-07-21,162723
|
||||
2023-07-23,162923
|
||||
2023-07-27,164181
|
||||
2023-08-01,165426
|
||||
2023-08-04,167551
|
||||
2023-08-05,167697
|
||||
2023-08-08,168343
|
||||
2023-08-13,170007
|
||||
2023-08-17,170776
|
||||
2023-08-21,171751
|
||||
2023-08-22,172007
|
||||
2023-08-26,173323
|
||||
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 25 KiB |
@@ -825,7 +825,6 @@
|
||||
0.0.0.0 a.faymobi.com
|
||||
0.0.0.0 fdn-en.net
|
||||
0.0.0.0 ads.feedly.com
|
||||
0.0.0.0 feylibertad.org
|
||||
0.0.0.0 fgddl9szdof7.com
|
||||
0.0.0.0 fgoogle.com
|
||||
0.0.0.0 www.fgoogle.com
|
||||
@@ -865,7 +864,7 @@
|
||||
0.0.0.0 www.girlstofap.ga
|
||||
0.0.0.0 git-hub.co
|
||||
0.0.0.0 githb.co
|
||||
0.0.0.0 superlogout.github.io
|
||||
|
||||
0.0.0.0 goodblock.gladly.io
|
||||
0.0.0.0 www.goodblock.gladly.io
|
||||
0.0.0.0 ad-dev.globalnoticias.pt
|
||||
@@ -2229,9 +2228,6 @@
|
||||
0.0.0.0 amusingdates.net
|
||||
0.0.0.0 honey-date4u.life
|
||||
|
||||
# Added August 3, 2022
|
||||
0.0.0.0 secur.hopp.to
|
||||
|
||||
# Added August 9, 2022
|
||||
0.0.0.0 shopsplumbing.com
|
||||
|
||||
@@ -2430,8 +2426,8 @@
|
||||
0.0.0.0 vs.hotstar.com
|
||||
|
||||
# Added December 11, 2022
|
||||
analytics.shein.com
|
||||
analytics.shein.co.uk
|
||||
0.0.0.0 analytics.shein.com
|
||||
0.0.0.0 analytics.shein.co.uk
|
||||
|
||||
# Added December 29, 2022
|
||||
0.0.0.0 8a97175fd63e1d3a69f36979b9b34470.safeframe.googlesyndication.com
|
||||
@@ -2501,7 +2497,6 @@ analytics.shein.co.uk
|
||||
0.0.0.0 a125375509.cdn.optimizely.com
|
||||
0.0.0.0 cdn.cookielaw.org
|
||||
0.0.0.0 cdn.indexww.com
|
||||
0.0.0.0 encrypted-tbn1.gstatic.com
|
||||
|
||||
# Added March 25, 2023
|
||||
0.0.0.0 wpad.www.tendawifi.com
|
||||
@@ -2521,11 +2516,8 @@ analytics.shein.co.uk
|
||||
0.0.0.0 use1.fptls3.com
|
||||
|
||||
# Added April 7, 2023
|
||||
0.0.0.0 turnip.cdn.turner.com
|
||||
0.0.0.0 d2uap9jskdzp2.cloudfront.net
|
||||
0.0.0.0 steadfastseat.com
|
||||
0.0.0.0 medium.ngtv.io
|
||||
0.0.0.0 licensing.bitmovin.com
|
||||
0.0.0.0 eq97f.publishers.tremorhub.com
|
||||
|
||||
# Added April 13, 2023
|
||||
@@ -2559,15 +2551,135 @@ analytics.shein.co.uk
|
||||
0.0.0.0 ads-tm-glb.click
|
||||
0.0.0.0 cbox4.ignorelist.com
|
||||
0.0.0.0 hsdps.cc
|
||||
0.0.0.0 slotmagie.de
|
||||
0.0.0.0 www.slotmagie.de
|
||||
0.0.0.0 slotmagie.zendesk.com
|
||||
0.0.0.0 tubepornclassics.com
|
||||
0.0.0.0 www.tubepornclassics.com
|
||||
0.0.0.0 ww1.tubepornclassics.com
|
||||
0.0.0.0 ww7.tubepornclassics.com
|
||||
0.0.0.0 ww12.tubepornclassics.com
|
||||
0.0.0.0 kwrn.eu
|
||||
0.0.0.0 www.kwrn.eu
|
||||
0.0.0.0 profile.omega.kwrn.eu
|
||||
0.0.0.0 api.sprig.com
|
||||
|
||||
# Added May 15, 2023
|
||||
0.0.0.0 telemetry-cii.api.playstation.com
|
||||
|
||||
# Added May 19, 2023
|
||||
0.0.0.0 clorec4.net
|
||||
0.0.0.0 wu.idismfonts.com
|
||||
0.0.0.0 xml-eu.flairadscpc.com
|
||||
|
||||
# Added May 30, 2023
|
||||
0.0.0.0 serasearchtop.com
|
||||
0.0.0.0 track.atom-ds.com
|
||||
|
||||
# Added June 3, 2023
|
||||
0.0.0.0 addatamarket.net
|
||||
0.0.0.0 backuprabbit.com
|
||||
0.0.0.0 businessvideonews.com
|
||||
0.0.0.0 cloudsponcer.com
|
||||
0.0.0.0 datamarketplace.net
|
||||
0.0.0.0 mobilegamerstats.com
|
||||
0.0.0.0 snoweeanalytics.com
|
||||
0.0.0.0 tagclick-cdn.com
|
||||
0.0.0.0 topographyupdates.com
|
||||
0.0.0.0 unlimitedteacup.com
|
||||
0.0.0.0 virtuallaughing.com
|
||||
0.0.0.0 web-trackers.com
|
||||
0.0.0.0 growthtransport.com
|
||||
0.0.0.0 anstv.net
|
||||
0.0.0.0 ans7tv.net
|
||||
0.0.0.0 123-vendasvoos25.lovestoblog.com
|
||||
0.0.0.0 c-123milhas.shop
|
||||
|
||||
# Added June 13, 2023
|
||||
0.0.0.0 assistant-chronopost.com
|
||||
0.0.0.0 zhihu-web-analytics.zhihu.com
|
||||
|
||||
# Added July 4, 2023
|
||||
0.0.0.0 stmicroelectronics.d3.sc.omtrdc.net
|
||||
|
||||
0.0.0.0 giyhub.com
|
||||
0.0.0.0 d2wzkjnj9pfptq.cloudfront.net
|
||||
0.0.0.0 storiesnexus.com
|
||||
0.0.0.0 rumadel.com
|
||||
|
||||
# Added August 8, 2023
|
||||
0.0.0.0 ms4.applvn.com
|
||||
0.0.0.0 adsninjacdn.b-cdn.net
|
||||
0.0.0.0 cdn.adsninja.ca
|
||||
0.0.0.0 nom.telemetrydeck.com
|
||||
0.0.0.0 api.ibeat-analytics.com
|
||||
0.0.0.0 mads.amazon.com
|
||||
|
||||
# Add August 9, 2023
|
||||
0.0.0.0 s2.bl-1.com
|
||||
|
||||
# Added August 10, 2023
|
||||
0.0.0.0 w61.1piecemanga.com
|
||||
0.0.0.0 fbet.com
|
||||
0.0.0.0 stemboastfulrattle.com
|
||||
0.0.0.0 onwardrespirationcommandment.com
|
||||
|
||||
# Added October 13, 2023
|
||||
0.0.0.0 s.dmmew.com
|
||||
|
||||
# Added November 2, 2023
|
||||
0.0.0.0 run.cntxtfl.com
|
||||
0.0.0.0 live-manifests-lln.warnermediacdn.com
|
||||
0.0.0.0 live-manifests-aka.warnermediacdn.com
|
||||
0.0.0.0 logs.browser-intake-datadoghq.com
|
||||
|
||||
# Added November 3, 2023
|
||||
0.0.0.0 b2b6d102cb7a4898bc54a3b73e31b759.safeframe.googlesyndication.com
|
||||
0.0.0.0 cpm.didna.io
|
||||
0.0.0.0 hb.minutemedia-prebid.com
|
||||
0.0.0.0 ox-rtb-us-east1.openx.net
|
||||
0.0.0.0 ox-rtb-us-east4.openx.net
|
||||
0.0.0.0 pbs.nextmillmedia.com
|
||||
0.0.0.0 report2.hb.brainlyads.com
|
||||
0.0.0.0 ssp-sync.criteo.com
|
||||
0.0.0.0 st.pubmatic.com
|
||||
|
||||
# Added November 9, 2023
|
||||
0.0.0.0 beacons5.gvt2.com
|
||||
0.0.0.0 beacons4.gvt2.com
|
||||
0.0.0.0 beacons3.gvt2.com
|
||||
0.0.0.0 beacons2.gvt2.com
|
||||
|
||||
# Added November 21, 2023
|
||||
0.0.0.0 pickanewdeliverytime.com
|
||||
|
||||
# Added November 24, 2023
|
||||
0.0.0.0 80d4b6e40cc712bf92fcdbabdd4345fd.safeframe.googlesyndication.com
|
||||
0.0.0.0 a6709203f34992a5095d2bc7ceaf2ec504f651a8.cws.conviva.com
|
||||
0.0.0.0 a.jsrdn.com
|
||||
0.0.0.0 atom.warnermedia.com
|
||||
0.0.0.0 d9esmwyn3ffr1.cloudfront.net
|
||||
0.0.0.0 dqif5bl25s0bf.cloudfront.net
|
||||
0.0.0.0 healthguides.cnn.com
|
||||
0.0.0.0 ipv4.cws.conviva.com
|
||||
0.0.0.0 licensing.bitmovin.com
|
||||
0.0.0.0 live-media-aka.warnermediacdn.com
|
||||
0.0.0.0 medium.ngtv.io
|
||||
0.0.0.0 registry.api.cnn.io
|
||||
0.0.0.0 s.cdn.turner.com
|
||||
0.0.0.0 turnip.cdn.turner.com
|
||||
0.0.0.0 vi.ml314.com
|
||||
0.0.0.0 vod-media-aka.warnermediacdn.com
|
||||
0.0.0.0 warnermediagroup-com.videoplayerhub.com
|
||||
0.0.0.0 www.i.cdn.cnn.com
|
||||
0.0.0.0 d32ajg1ye8vnl9.cloudfront.net
|
||||
0.0.0.0 dvqcs4w0eo35b.cloudfront.net
|
||||
0.0.0.0 facf31c1c8559131d653f3c5ad4ecc78.safeframe.googlesyndication.com
|
||||
0.0.0.0 i.jsrdn.com
|
||||
0.0.0.0 lb.eu-1-id5-sync.com
|
||||
0.0.0.0 live-media-lln.warnermediacdn.com
|
||||
0.0.0.0 zion.api.cnn.io
|
||||
|
||||
# Added November 25, 2023
|
||||
0.0.0.0 bucket.cdnwebcloud.com
|
||||
0.0.0.0 c23811bc8d067cdb4f00f6af2c918f3d.safeframe.googlesyndication.com
|
||||
0.0.0.0 cadmus.script.ac
|
||||
0.0.0.0 cdn.topsrvimp.com
|
||||
0.0.0.0 cookies.nextmillmedia.com
|
||||
0.0.0.0 didna.b-cdn.net
|
||||
0.0.0.0 exchange.kueezrtb.com
|
||||
0.0.0.0 neural40.cdnwebcloud.com
|
||||
0.0.0.0 rt.marphezis.com
|
||||
0.0.0.0 sync.colossusssp.com
|
||||
0.0.0.0 sync.kueezrtb.com
|
||||
0.0.0.0 t.adx.opera.com
|
||||
0.0.0.0 web.hb.ad.cpe.dotomi.com
|
||||
@@ -1,7 +1,7 @@
|
||||
# Title: hostsVN
|
||||
# Last modified: 14 May 2023 23:14 UTC+7
|
||||
# Version: 2305142314
|
||||
# Blocked: 1,792 domains
|
||||
# Last modified: 11 Dec 2023 22:02 UTC+7
|
||||
# Version: 2312112202
|
||||
# Blocked: 1,809 domains
|
||||
# Only include advertisers in Vietnam
|
||||
# Homepage: https://bigdargon.github.io/hostsVN/
|
||||
# GitHub: https://github.com/bigdargon/hostsVN
|
||||
@@ -424,13 +424,16 @@
|
||||
0.0.0.0 log.zingmp3.vn
|
||||
0.0.0.0 za.zingmp3.vn
|
||||
0.0.0.0 zlog.zingmp3.vn
|
||||
#[zingnews.vn]
|
||||
#[zingnews]
|
||||
0.0.0.0 log.zingnews.vn
|
||||
0.0.0.0 za.zingnews.vn
|
||||
#[zingnews.com.vn]
|
||||
0.0.0.0 log.zingnews.com.vn
|
||||
0.0.0.0 za.zingnews.com.vn
|
||||
0.0.0.0 log.znews.vn
|
||||
#[zingplay.com]
|
||||
0.0.0.0 trackingbr.zingplay.com
|
||||
0.0.0.0 trackingin.zingplay.com
|
||||
0.0.0.0 trackingsea.zingplay.com
|
||||
0.0.0.0 trackingvn.zingplay.com
|
||||
#[zalo.me]
|
||||
0.0.0.0 ads-platform.zalo.me
|
||||
0.0.0.0 ads.platform.zalo.me
|
||||
0.0.0.0 button-call.zalo.me
|
||||
0.0.0.0 button-follow.zalo.me
|
||||
@@ -453,6 +456,8 @@
|
||||
0.0.0.0 page.widget.zalo.me
|
||||
#[zalo.ai]
|
||||
0.0.0.0 stats.lab.zalo.ai
|
||||
#[log.zalo.video]
|
||||
0.0.0.0 log.zalo.video
|
||||
#[zaloapp.com]
|
||||
0.0.0.0 centralized.zaloapp.com
|
||||
0.0.0.0 px.dmp.zaloapp.com
|
||||
@@ -1076,19 +1081,23 @@
|
||||
0.0.0.0 api.piads.vn
|
||||
0.0.0.0 piads.vn
|
||||
0.0.0.0 static.piads.vn
|
||||
#[haraloyalty.com]
|
||||
0.0.0.0 app.haraloyalty.com
|
||||
0.0.0.0 haraloyalty.com
|
||||
0.0.0.0 www.haraloyalty.com
|
||||
#[harafunnel.com]
|
||||
#[hara*.com]
|
||||
0.0.0.0 app.harafunnel.com
|
||||
0.0.0.0 assets.harafunnel.com
|
||||
0.0.0.0 harafunnel.com
|
||||
0.0.0.0 www.harafunnel.com
|
||||
#[haraads.com]
|
||||
0.0.0.0 app.haraloyalty.com
|
||||
0.0.0.0 app.harasocial.com
|
||||
0.0.0.0 apps.haraads.com
|
||||
0.0.0.0 haraads.com
|
||||
0.0.0.0 www.haraads.com
|
||||
0.0.0.0 assets.harafunnel.com
|
||||
#[haravan.com]
|
||||
0.0.0.0 combo-omni.haravan.com
|
||||
0.0.0.0 socialloginplus-apps.haravan.com
|
||||
0.0.0.0 facebookinbox-omni-onapp.haravan.com
|
||||
0.0.0.0 promotion.haravan.com
|
||||
0.0.0.0 onapp.haravan.com
|
||||
#[hara.vn]
|
||||
0.0.0.0 facebook-ads.hara.vn
|
||||
0.0.0.0 google-ads.hara.vn
|
||||
0.0.0.0 stats.hara.vn
|
||||
0.0.0.0 tiktok-ads.hara.vn
|
||||
#[starseed.fr]
|
||||
0.0.0.0 cdn.starseed.fr
|
||||
0.0.0.0 log.starseed.fr
|
||||
@@ -1294,6 +1303,7 @@
|
||||
0.0.0.0 adnetwork-adserver.aiactiv.io
|
||||
0.0.0.0 adnetwork-core-lb7.aiactiv.io
|
||||
0.0.0.0 adnetwork-core.aiactiv.io
|
||||
0.0.0.0 aiactiv.io
|
||||
0.0.0.0 identify.aiactiv.io
|
||||
0.0.0.0 sdk-cdn.aiactiv.io
|
||||
0.0.0.0 static.aiactiv.io
|
||||
@@ -1407,14 +1417,18 @@
|
||||
#[imacdn.com]
|
||||
0.0.0.0 ff.imacdn.com
|
||||
0.0.0.0 sponsor.imacdn.com
|
||||
#[epicdn.me]
|
||||
#[quangcao-*.epicdn.me]
|
||||
0.0.0.0 quangcao-thanhnien.epicdn.me
|
||||
#[log-*.epicdn.me]
|
||||
0.0.0.0 log-baodauthau.epicdn.me
|
||||
0.0.0.0 log-baogialai.epicdn.me
|
||||
0.0.0.0 log-dttc-sggp.epicdn.me
|
||||
0.0.0.0 log-en-nhandan.epicdn.me
|
||||
0.0.0.0 log-en-sggp.epicdn.me
|
||||
0.0.0.0 log-giaoduc.epicdn.me
|
||||
0.0.0.0 log-giaoducthoidai.epicdn.me
|
||||
0.0.0.0 log-kienthucnet.epicdn.me
|
||||
0.0.0.0 log-mekongasean.epicdn.me
|
||||
0.0.0.0 log-nhandan.epicdn.me
|
||||
0.0.0.0 log-thanhnien.epicdn.me
|
||||
0.0.0.0 log-tinnhanhchungkhoan.epicdn.me
|
||||
@@ -1466,6 +1480,22 @@
|
||||
0.0.0.0 cdn.aanetwork.vn
|
||||
0.0.0.0 imgs2.aanetwork.vn
|
||||
0.0.0.0 pub.aanetwork.vn
|
||||
#[ultraviewer.net]
|
||||
0.0.0.0 ads.ultraviewer.net
|
||||
0.0.0.0 qc.ultraviewer.net
|
||||
#[vipads.cc]
|
||||
0.0.0.0 vipads.cc
|
||||
0.0.0.0 pv.vipads.cc
|
||||
0.0.0.0 www.vipads.cc
|
||||
#[kernh41.com]
|
||||
0.0.0.0 kernh41.com
|
||||
0.0.0.0 static1.kernh41.com
|
||||
#[realclick.vn]
|
||||
0.0.0.0 as.realclick.vn
|
||||
0.0.0.0 i.realclick.vn
|
||||
0.0.0.0 realclick.vn
|
||||
0.0.0.0 stats.realclick.vn
|
||||
0.0.0.0 www.realclick.vn
|
||||
# --- Block adsVN ---
|
||||
0.0.0.0 12signup.com
|
||||
0.0.0.0 ad-admin.vnay.vn
|
||||
@@ -1494,13 +1524,11 @@
|
||||
0.0.0.0 adms.phunusuckhoe.vn
|
||||
0.0.0.0 adpostback.headlines.pw
|
||||
0.0.0.0 ads-api.playfun.vn
|
||||
0.0.0.0 ads-backend.nhadatmoi.net
|
||||
0.0.0.0 ads-cdn.fptplay.net
|
||||
0.0.0.0 ads.1thegioi.vn
|
||||
0.0.0.0 ads.568play.vn
|
||||
0.0.0.0 ads.6svn.com
|
||||
0.0.0.0 ads.admatrix.vn
|
||||
0.0.0.0 ads.alophim.org
|
||||
0.0.0.0 ads.autonet.com.vn
|
||||
0.0.0.0 ads.baoangiang.com.vn
|
||||
0.0.0.0 ads.baobinhduong.vn
|
||||
@@ -1538,10 +1566,10 @@
|
||||
0.0.0.0 ads.thegioitiepthi.vn
|
||||
0.0.0.0 ads.thesaigontimes.vn
|
||||
0.0.0.0 ads.thitruongtaichinhtiente.vn
|
||||
0.0.0.0 ads.thvli.vn
|
||||
0.0.0.0 ads.tiki.vn
|
||||
0.0.0.0 ads.vietbao.vn
|
||||
0.0.0.0 ads.vishare.vn
|
||||
0.0.0.0 ads.vkool.info
|
||||
0.0.0.0 ads.vlr.vn
|
||||
0.0.0.0 ads.vovlive.vn
|
||||
0.0.0.0 ads.xedoisong.vn
|
||||
@@ -1553,6 +1581,7 @@
|
||||
0.0.0.0 adserver.muaban.net
|
||||
0.0.0.0 adserver.trangphim.net
|
||||
0.0.0.0 adsgo.nhipcaudautu.vn
|
||||
0.0.0.0 adsphim.lol
|
||||
0.0.0.0 adsplus.vn
|
||||
0.0.0.0 adsv2.autodaily.vn
|
||||
0.0.0.0 adsweb.vn
|
||||
@@ -1567,14 +1596,11 @@
|
||||
0.0.0.0 adv.vnnshop.vn
|
||||
0.0.0.0 adver.24h.com.vn
|
||||
0.0.0.0 advert-admin.vnay.vn
|
||||
0.0.0.0 advertisement-nhatanh.com
|
||||
0.0.0.0 advserver.cgv.vn
|
||||
0.0.0.0 advzone.ioe.vn
|
||||
0.0.0.0 adx.baolongan.vn
|
||||
0.0.0.0 adx.chinmedia.vn
|
||||
0.0.0.0 adx.edutimes.com.vn
|
||||
0.0.0.0 adx.golfnews.vn
|
||||
0.0.0.0 adx.hoanggia.net
|
||||
0.0.0.0 adx.hoanggia.net.vn
|
||||
0.0.0.0 adx.hongtinnhanh.com
|
||||
0.0.0.0 adx.kul.vn
|
||||
@@ -1591,6 +1617,7 @@
|
||||
0.0.0.0 api2.boclinkads.com
|
||||
0.0.0.0 apia.headlines.pw
|
||||
0.0.0.0 avoadsservices.com
|
||||
0.0.0.0 ax.mpcdn.top
|
||||
0.0.0.0 banner.5giay.vn
|
||||
0.0.0.0 banner.etargeting.mobifone.vn
|
||||
0.0.0.0 banner.thadaco.vn
|
||||
@@ -1599,7 +1626,6 @@
|
||||
0.0.0.0 bgadx.com
|
||||
0.0.0.0 bidgear-syndication.com
|
||||
0.0.0.0 cdn-ads.thesaigontimes.vn
|
||||
0.0.0.0 cdn.rongzhouxing.com
|
||||
0.0.0.0 cdn2.cache.vn
|
||||
0.0.0.0 chiasephim.xyz
|
||||
0.0.0.0 click.vieon.vn
|
||||
@@ -1618,7 +1644,6 @@
|
||||
0.0.0.0 duamilsyr.com
|
||||
0.0.0.0 financial-agent.headlines.pw
|
||||
0.0.0.0 gamma.cachefly.net
|
||||
0.0.0.0 ghimc.vn
|
||||
0.0.0.0 go.vnecdn.com
|
||||
0.0.0.0 hexapinow.xyz
|
||||
0.0.0.0 iads.staticscdn.net
|
||||
@@ -1632,31 +1657,28 @@
|
||||
0.0.0.0 lottery.headlines.pw
|
||||
0.0.0.0 marketing.hub-js.com
|
||||
0.0.0.0 media.dabong247.com
|
||||
0.0.0.0 mega1.yeah1.com
|
||||
0.0.0.0 menu.metu.vn
|
||||
0.0.0.0 microad.vn
|
||||
0.0.0.0 mobileads.dieuviet.com
|
||||
0.0.0.0 ng-vn-notice.gameitop.com
|
||||
0.0.0.0 offerwall.headlines.pw
|
||||
0.0.0.0 onapp.haravan.com
|
||||
0.0.0.0 openx.motgame.vn
|
||||
0.0.0.0 ox1.vietstock.vn
|
||||
0.0.0.0 promotion.haravan.com
|
||||
0.0.0.0 qc.5giay.vn
|
||||
0.0.0.0 qc.designervn.net
|
||||
0.0.0.0 qc.japo.vn
|
||||
0.0.0.0 qc.kqbd88.com
|
||||
0.0.0.0 qc.mhsolution.vn
|
||||
0.0.0.0 qc.violet.vn
|
||||
0.0.0.0 qcao.happyskin.vn
|
||||
0.0.0.0 qctt24h.24h.com.vn
|
||||
0.0.0.0 qcv5.blogtruyen.vn
|
||||
0.0.0.0 quangcao.24h.com.vn
|
||||
0.0.0.0 quangcao.baovannghe.com.vn
|
||||
0.0.0.0 quangcao.fff.com.vn
|
||||
0.0.0.0 quangcao247.com.vn
|
||||
0.0.0.0 quangcaococcoc.vn
|
||||
0.0.0.0 quangcaodantri.vn
|
||||
0.0.0.0 r.tinmoi24.vn
|
||||
0.0.0.0 realclick.vn
|
||||
0.0.0.0 s.cntqk.com
|
||||
0.0.0.0 s.cntqk.vn
|
||||
0.0.0.0 s.giaoducthoidai.vn
|
||||
@@ -1685,32 +1707,28 @@
|
||||
0.0.0.0 trenddigital.vn
|
||||
0.0.0.0 truoctran.com
|
||||
0.0.0.0 ttus.tructiepbongda.me
|
||||
0.0.0.0 tvnotice.kg.garena.vn
|
||||
0.0.0.0 tvc.biphim.club
|
||||
0.0.0.0 upfile16.mediaphim.com
|
||||
0.0.0.0 user.headlines.pw
|
||||
0.0.0.0 v9banners.com
|
||||
0.0.0.0 vietbuzzad.com
|
||||
0.0.0.0 vietdorje.com
|
||||
0.0.0.0 vinaads.vn
|
||||
0.0.0.0 vipads.live
|
||||
0.0.0.0 vlxx.host
|
||||
0.0.0.0 vnadssb.com
|
||||
0.0.0.0 webpush.vn
|
||||
0.0.0.0 widget.headlines.pw
|
||||
0.0.0.0 www.12signup.com
|
||||
0.0.0.0 www.adsweb.vn
|
||||
0.0.0.0 www.adt.com.vn
|
||||
0.0.0.0 www.advertisement-nhatanh.com
|
||||
0.0.0.0 www.avoadsservices.com
|
||||
0.0.0.0 www.bidgear-syndication.com
|
||||
0.0.0.0 www.delecpuzz.com
|
||||
0.0.0.0 www.hexapinow.xyz
|
||||
0.0.0.0 www.ketquaxosotoancau.org
|
||||
0.0.0.0 www.landingpagelagi.vn
|
||||
0.0.0.0 www.microad.vn
|
||||
0.0.0.0 www.realclick.vn
|
||||
0.0.0.0 www.sbbanner.com
|
||||
0.0.0.0 www.v9banners.com
|
||||
0.0.0.0 www.vietbuzzad.com
|
||||
0.0.0.0 www.vietdorje.com
|
||||
0.0.0.0 www.vipads.live
|
||||
0.0.0.0 xads.joboko.com
|
||||
0.0.0.0 xmadsapi.joboko.com
|
||||
# --- Block trackingVN ---
|
||||
@@ -1724,19 +1742,22 @@
|
||||
0.0.0.0 affiliate.chiaki.vn
|
||||
0.0.0.0 alexajstrack.com
|
||||
0.0.0.0 analytic.baodantoc.vn
|
||||
0.0.0.0 analytic.thuanbui.me
|
||||
0.0.0.0 analytic.vnanet.vn
|
||||
0.0.0.0 analytics.admon.com.vn
|
||||
0.0.0.0 analytics.aita.gov.vn
|
||||
0.0.0.0 analytics.amedigital.vn
|
||||
0.0.0.0 analytics.bachtuongphat.com
|
||||
0.0.0.0 analytics.bkav.com
|
||||
0.0.0.0 analytics.bkav.com.vn
|
||||
0.0.0.0 analytics.diamondstarfinancial.com.vn
|
||||
0.0.0.0 analytics.digi8.vn
|
||||
0.0.0.0 analytics.evgcdn.net
|
||||
0.0.0.0 analytics.fsoft.com.vn
|
||||
0.0.0.0 analytics.gotama.link
|
||||
0.0.0.0 analytics.hapo.vn
|
||||
0.0.0.0 analytics.hebela.vn
|
||||
0.0.0.0 analytics.hub-js.com
|
||||
0.0.0.0 analytics.jamstackvietnam.com
|
||||
0.0.0.0 analytics.mfocus.vn
|
||||
0.0.0.0 analytics.molistar.com
|
||||
0.0.0.0 analytics.moneycat.vn
|
||||
0.0.0.0 analytics.nhattao.com
|
||||
@@ -1771,11 +1792,11 @@
|
||||
0.0.0.0 counter.24h.com.vn
|
||||
0.0.0.0 counter.ntdvn.com
|
||||
0.0.0.0 counter.ntdvn.net
|
||||
0.0.0.0 countervov.emitech.vn
|
||||
0.0.0.0 crm.bizfly.vn
|
||||
0.0.0.0 crm.englishtown.edu.vn
|
||||
0.0.0.0 crmbizfly.todo.vn
|
||||
0.0.0.0 crmx.eqvn.net
|
||||
0.0.0.0 cskh-hcm.fpt.edu.vn
|
||||
0.0.0.0 cskh.onlinecrm.vn
|
||||
0.0.0.0 digi.vinut.com.vn
|
||||
0.0.0.0 elink.nhanlucnganhluat.vn
|
||||
@@ -1784,10 +1805,10 @@
|
||||
0.0.0.0 event.headlines.pw
|
||||
0.0.0.0 f-emc.ngsp.gov.vn
|
||||
0.0.0.0 fa.fpt.shop
|
||||
0.0.0.0 facebookinbox-omni-onapp.haravan.com
|
||||
0.0.0.0 fbuser.ovp.vn
|
||||
0.0.0.0 file-subiz.com
|
||||
0.0.0.0 follow.vnay.vn
|
||||
0.0.0.0 gtm.saostar.vn
|
||||
0.0.0.0 gtmjs.com
|
||||
0.0.0.0 hit.123c.vn
|
||||
0.0.0.0 intranet.dcorp.com.vn
|
||||
@@ -1800,8 +1821,10 @@
|
||||
0.0.0.0 live.careplusvn.com
|
||||
0.0.0.0 live.vnpgroup.net
|
||||
0.0.0.0 liveonline.nhanhoa.com
|
||||
0.0.0.0 lmsreport.systems.vn
|
||||
0.0.0.0 log-collector.shopee.vn
|
||||
0.0.0.0 log-dttc.sggp.org.vn
|
||||
0.0.0.0 log-en.nhandan.vn
|
||||
0.0.0.0 log-en.sggp.org.vn
|
||||
0.0.0.0 log.anninhthudo.vn
|
||||
0.0.0.0 log.baobackan.com.vn
|
||||
0.0.0.0 log.baocaobang.vn
|
||||
@@ -1825,8 +1848,8 @@
|
||||
0.0.0.0 log.infonet.vn
|
||||
0.0.0.0 log.kaka.me
|
||||
0.0.0.0 log.kienthuc.net.vn
|
||||
0.0.0.0 log.kinhdoanhhoinhap.vn
|
||||
0.0.0.0 log.kinhtedouong.vn
|
||||
0.0.0.0 log.mekongasean.vn
|
||||
0.0.0.0 log.ngaynay.vn
|
||||
0.0.0.0 log.nhandan.vn
|
||||
0.0.0.0 log.nhipcaudautu.vn
|
||||
@@ -1843,11 +1866,7 @@
|
||||
0.0.0.0 log.tinnhac.com
|
||||
0.0.0.0 log.tinnhanhchungkhoan.vn
|
||||
0.0.0.0 log.tinxe.vn
|
||||
0.0.0.0 log.toss.vn
|
||||
0.0.0.0 log.trithuctructuyen.com.vn
|
||||
0.0.0.0 log.trithuctructuyen.vn
|
||||
0.0.0.0 log.tv360.vn
|
||||
0.0.0.0 log.vietnamdaily.net.vn
|
||||
0.0.0.0 log.viettimes.vn
|
||||
0.0.0.0 log.vnay.vn
|
||||
0.0.0.0 log.vneconomy.vn
|
||||
@@ -1860,14 +1879,16 @@
|
||||
0.0.0.0 log4x.nixcdn.com
|
||||
0.0.0.0 logapi.misa.com.vn
|
||||
0.0.0.0 logging.kinhtedothi.vn
|
||||
0.0.0.0 logs-ott.fbox.fpt.vn
|
||||
0.0.0.0 logs.1cdn.vn
|
||||
0.0.0.0 logs.docnhanh.com.vn
|
||||
0.0.0.0 logs.thethaovanhoa.vn
|
||||
0.0.0.0 logsbin.dantri.com.vn
|
||||
0.0.0.0 logscafef.channelvn.net
|
||||
0.0.0.0 logv3.metric.vn
|
||||
0.0.0.0 marketing.itgeek.vn
|
||||
0.0.0.0 matomo.quan.hoabinh.vn
|
||||
0.0.0.0 matomo.vietlottsms.vn
|
||||
0.0.0.0 mautic-learn.teky.edu.vn
|
||||
0.0.0.0 mautic.200lab.io
|
||||
0.0.0.0 mautic.teky.edu.vn
|
||||
0.0.0.0 mkt.hoanghamobile.com
|
||||
@@ -1877,10 +1898,9 @@
|
||||
0.0.0.0 newlog.daidoanket.vn
|
||||
0.0.0.0 newlog.tapchitaichinh.vn
|
||||
0.0.0.0 nstat.headlines.pw
|
||||
0.0.0.0 pixel.chotot.com
|
||||
0.0.0.0 plausible.vucar.vn
|
||||
0.0.0.0 production-tracking.riviu.co
|
||||
0.0.0.0 proof.sudo.vn
|
||||
0.0.0.0 px-cdn.saostar.vn
|
||||
0.0.0.0 px.saostar.vn
|
||||
0.0.0.0 report.mediahub.vn
|
||||
0.0.0.0 report.vnay.vn
|
||||
@@ -1889,8 +1909,8 @@
|
||||
0.0.0.0 s.homedy.com
|
||||
0.0.0.0 s.kenh14.vn
|
||||
0.0.0.0 s.soha.vn
|
||||
0.0.0.0 s6.textlink.vn
|
||||
0.0.0.0 smetrics.kone.vn
|
||||
0.0.0.0 socialloginplus-apps.haravan.com
|
||||
0.0.0.0 st-a.vtvdigital.vn
|
||||
0.0.0.0 stat.headlines.pw
|
||||
0.0.0.0 static.masoffer.net
|
||||
@@ -1905,7 +1925,6 @@
|
||||
0.0.0.0 stats.bizweb.vn
|
||||
0.0.0.0 stats.dongphim.net
|
||||
0.0.0.0 stats.hstatic.net
|
||||
0.0.0.0 stats.muasamcong.gov.vn
|
||||
0.0.0.0 stats.petrotimes.vn
|
||||
0.0.0.0 stats.tamdiem247.com
|
||||
0.0.0.0 stats.vietnammoi.vn
|
||||
@@ -1920,6 +1939,7 @@
|
||||
0.0.0.0 thongke.bookingcare.vn
|
||||
0.0.0.0 thongke.opencps.vn
|
||||
0.0.0.0 thongke.tcdulichtphcm.vn
|
||||
0.0.0.0 thongke.thethaovanhoa.vn
|
||||
0.0.0.0 thongke.vui.vn
|
||||
0.0.0.0 thongke99.baogiaothong.vn
|
||||
0.0.0.0 tr.topdevvn.com
|
||||
@@ -1931,13 +1951,13 @@
|
||||
0.0.0.0 track.lapa.pub
|
||||
0.0.0.0 track.lemonnovel.com
|
||||
0.0.0.0 track.pnj.com.vn
|
||||
0.0.0.0 track.popsww.com
|
||||
0.0.0.0 track.sendo.vn
|
||||
0.0.0.0 track.vio.edu.vn
|
||||
0.0.0.0 tracker.anime47.com
|
||||
0.0.0.0 tracker.edupia.vn
|
||||
0.0.0.0 tracker.fado.vn
|
||||
0.0.0.0 tracker.gigaphim.com
|
||||
0.0.0.0 tracker.nhandaovadoisong.vn
|
||||
0.0.0.0 tracker.phunusuckhoe.vn
|
||||
0.0.0.0 tracker.phunuvagiadinh.vn
|
||||
0.0.0.0 tracker.thichxemphim.net
|
||||
@@ -1958,8 +1978,8 @@
|
||||
0.0.0.0 tracking.vegaid.vn
|
||||
0.0.0.0 tracking.vht.com.vn
|
||||
0.0.0.0 tracking.vietbao.vn
|
||||
0.0.0.0 tracking.viez.vn
|
||||
0.0.0.0 trackingapi.foody.vn
|
||||
0.0.0.0 trackingvn.zingplay.com
|
||||
0.0.0.0 trackity.tiki.vn
|
||||
0.0.0.0 traffic.vietnhan.co
|
||||
0.0.0.0 trk.123c.vn
|
||||
@@ -1979,9 +1999,11 @@
|
||||
# --- Block popupVN ---
|
||||
0.0.0.0 b8zk2cl6bjs92j7ah8k2kzi92jf8ck9vj7v0z5bv2v3cj2azlp0c8z5vb7dt.me
|
||||
0.0.0.0 ch6p2aj2gh8zy5cm0px9ow7aj3tmzhtk6lzx2ch9xj7gx2jq1cj8v4jklz6b.me
|
||||
0.0.0.0 e7z9t4x6a0v5mk3zo1a0xj2z7c6g8sa6js5z7s2c3h9x0s5fh3a6sjwb8q7m.xyz
|
||||
0.0.0.0 h6o2z0pwx5ja7dwxn0wx4fhv7mp0qoladm8vj6do4h1c6gja8evrn6g5fixk.me
|
||||
0.0.0.0 kz2oq0xm6ie7gn5dkswlpv6mfgci8yoe3xlqp12gjotp5fdjxs5ckztb8rzn.codes
|
||||
0.0.0.0 m6pz5h8qi18jq1s7hjkytxn7sjc0zpxw5gks3vyk8dcxs2cstjgdxkp7t1eb.me
|
||||
0.0.0.0 n7e4t5trg0u3yegn8szj9c8xjz5wf8szcj2a5h9dzxjs50salczs8azls0zm.com
|
||||
0.0.0.0 q2h0x5l7gj8xdm5wdx8ht5szd4jw8nzq5klt8sr9sk2zjg6mtk0q8xzi0i9z.me
|
||||
0.0.0.0 rei9jc56oyqux0rcpcquqmm7jc5freirpsquqkope3n3axrjacg8ipolxvbm.codes
|
||||
0.0.0.0 su6t2a0v1cbj6fu8o2cjdo1dx0oxdm6kgl6f7zdjxt6aqxjlwrt7cu2r5g2d.me
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
# minecraft-hosts - Tracking Domains
|
||||
# License: CC0
|
||||
|
||||
analytics.atlauncher.com
|
||||
auxilium.ftb.team
|
||||
beacon.quiltmc.org
|
||||
bstats.org
|
||||
mcmc.dev
|
||||
mcstats.org
|
||||
|
||||
@@ -68,7 +68,6 @@
|
||||
0.0.0.0 stats.framasoft.org
|
||||
0.0.0.0 stats.kde.org
|
||||
0.0.0.0 stats.nextcloud.com
|
||||
0.0.0.0 t.stripe.com
|
||||
0.0.0.0 tag.rmp.rakuten.com
|
||||
0.0.0.0 trackjs.com
|
||||
0.0.0.0 trk.justanswer.com
|
||||
|
||||
@@ -41,11 +41,13 @@
|
||||
0.0.0.0 777.com
|
||||
0.0.0.0 7777.bg
|
||||
0.0.0.0 777bets.co.uk
|
||||
0.0.0.0 7bet.lt
|
||||
0.0.0.0 7epta7.com
|
||||
0.0.0.0 7godscasino.com
|
||||
0.0.0.0 7jackpots.com
|
||||
0.0.0.0 828bet.net
|
||||
0.0.0.0 888.com
|
||||
0.0.0.0 888.pt
|
||||
0.0.0.0 888sport.com
|
||||
0.0.0.0 88asia88.com
|
||||
0.0.0.0 88sports.com
|
||||
@@ -87,6 +89,7 @@
|
||||
0.0.0.0 atg.se
|
||||
0.0.0.0 axbet.com
|
||||
0.0.0.0 b-bets.com
|
||||
0.0.0.0 bacanaplay.pt
|
||||
0.0.0.0 balkanbet.co.rs
|
||||
0.0.0.0 ballebaazi.com
|
||||
0.0.0.0 bananajackpot.com
|
||||
@@ -125,6 +128,7 @@
|
||||
0.0.0.0 betandclick.com
|
||||
0.0.0.0 betano.bg
|
||||
0.0.0.0 betano.cz
|
||||
0.0.0.0 betano.pt
|
||||
0.0.0.0 betanysports.eu
|
||||
0.0.0.0 betbanks.com
|
||||
0.0.0.0 betboro.com
|
||||
@@ -140,6 +144,7 @@
|
||||
0.0.0.0 betcityru.com
|
||||
0.0.0.0 betclic.com
|
||||
0.0.0.0 betclic.pl
|
||||
0.0.0.0 betclic.pt
|
||||
0.0.0.0 betclock.com
|
||||
0.0.0.0 betcostarica.ag
|
||||
0.0.0.0 betcris.com
|
||||
@@ -227,6 +232,7 @@
|
||||
0.0.0.0 bets10go.com
|
||||
0.0.0.0 bets4all.com
|
||||
0.0.0.0 betsafe.com
|
||||
0.0.0.0 betsafe.lt
|
||||
0.0.0.0 betsbi.com
|
||||
0.0.0.0 betser.com
|
||||
0.0.0.0 betshop.com
|
||||
@@ -261,12 +267,14 @@
|
||||
0.0.0.0 betway.co.ke
|
||||
0.0.0.0 betway.bg
|
||||
0.0.0.0 betway.com
|
||||
0.0.0.0 betway.pt
|
||||
0.0.0.0 betworks.com
|
||||
0.0.0.0 betxchange.co.za
|
||||
0.0.0.0 betzest.com
|
||||
0.0.0.0 betzone.com
|
||||
0.0.0.0 bgbet.com
|
||||
0.0.0.0 bgo.com
|
||||
0.0.0.0 bidluck.pt
|
||||
0.0.0.0 bigbetworld.com
|
||||
0.0.0.0 bingo.com
|
||||
0.0.0.0 bingo.vernons.com
|
||||
@@ -309,6 +317,7 @@
|
||||
0.0.0.0 bustadice.com
|
||||
0.0.0.0 butterflybingo.com
|
||||
0.0.0.0 bwin.com
|
||||
0.0.0.0 bwin.pt
|
||||
0.0.0.0 cafecasino.lv
|
||||
0.0.0.0 caliente.mx
|
||||
0.0.0.0 campaign.rizk.com
|
||||
@@ -353,8 +362,10 @@
|
||||
0.0.0.0 casinostugan.com
|
||||
0.0.0.0 casinotown.se
|
||||
0.0.0.0 casinowinner.com
|
||||
0.0.0.0 casinoportugal.pt
|
||||
0.0.0.0 casinsi.com
|
||||
0.0.0.0 casumo.com
|
||||
0.0.0.0 cbet.lt
|
||||
0.0.0.0 cbmsport.com
|
||||
0.0.0.0 cc898.com
|
||||
0.0.0.0 celebbingo.com
|
||||
@@ -540,7 +551,9 @@
|
||||
0.0.0.0 eloterija.si
|
||||
0.0.0.0 emeraldbet.com
|
||||
0.0.0.0 en.betclic.com
|
||||
0.0.0.0 en.cbet.lt
|
||||
0.0.0.0 en.expekt.com
|
||||
0.0.0.0 en.topsport.lt
|
||||
0.0.0.0 energybet.com
|
||||
0.0.0.0 enterbet.com
|
||||
0.0.0.0 eqraffle.com
|
||||
@@ -550,6 +563,7 @@
|
||||
0.0.0.0 esports.gtorb.com
|
||||
0.0.0.0 esportsbetting.com
|
||||
0.0.0.0 esportscasino.com
|
||||
0.0.0.0 estorilsolcasinos.pt
|
||||
0.0.0.0 etherdice.io
|
||||
0.0.0.0 etipos.sk
|
||||
0.0.0.0 etopaz.az
|
||||
@@ -635,6 +649,7 @@
|
||||
0.0.0.0 golazobet.com
|
||||
0.0.0.0 goldbetsports.com
|
||||
0.0.0.0 goldenbetsng.com
|
||||
0.0.0.0 goldenpark.pt
|
||||
0.0.0.0 goldmedalbingo.com
|
||||
0.0.0.0 goliathcasino.com
|
||||
0.0.0.0 gossipbingo.com
|
||||
@@ -775,6 +790,7 @@
|
||||
0.0.0.0 latloto.lv
|
||||
0.0.0.0 lazvegas.com
|
||||
0.0.0.0 leaguex.com
|
||||
0.0.0.0 lebull.pt
|
||||
0.0.0.0 legendsportsbook.com
|
||||
0.0.0.0 legolas.bet
|
||||
0.0.0.0 leisure888.com
|
||||
@@ -813,6 +829,7 @@
|
||||
0.0.0.0 loterie.ma
|
||||
0.0.0.0 loteries.lotoquebec.com
|
||||
0.0.0.0 loterija.si
|
||||
0.0.0.0 loto.lt
|
||||
0.0.0.0 loto.mk
|
||||
0.0.0.0 loto.ro
|
||||
0.0.0.0 lotoquebec.com
|
||||
@@ -919,6 +936,7 @@
|
||||
0.0.0.0 monacoaces.com
|
||||
0.0.0.0 moneyplayscasino.com
|
||||
0.0.0.0 montecarlocasino.com
|
||||
0.0.0.0 moosh.pt
|
||||
0.0.0.0 morganbet.eu
|
||||
0.0.0.0 mozzartbet.co.ke
|
||||
0.0.0.0 mozzartbet.com
|
||||
@@ -980,6 +998,7 @@
|
||||
0.0.0.0 norskeautomater.com
|
||||
0.0.0.0 norskespilleautomater.com
|
||||
0.0.0.0 nostrabet.com
|
||||
0.0.0.0 nossaaposta.pt
|
||||
0.0.0.0 novibet.com
|
||||
0.0.0.0 noxwin.com
|
||||
0.0.0.0 nyspins.com
|
||||
@@ -995,6 +1014,7 @@
|
||||
0.0.0.0 olimp.com
|
||||
0.0.0.0 olybet.com
|
||||
0.0.0.0 olybet.eu
|
||||
0.0.0.0 olybet.lt
|
||||
0.0.0.0 omniacasino.com
|
||||
0.0.0.0 onetpedia.net
|
||||
0.0.0.0 online.caliente.mx
|
||||
@@ -1003,6 +1023,7 @@
|
||||
0.0.0.0 opap.gr
|
||||
0.0.0.0 opcrates.com
|
||||
0.0.0.0 optibet.com
|
||||
0.0.0.0 optibet.lt
|
||||
0.0.0.0 optionsports.com
|
||||
0.0.0.0 orakulas.lt
|
||||
0.0.0.0 orlandocasino.com
|
||||
@@ -1021,6 +1042,7 @@
|
||||
0.0.0.0 paradisewin.com
|
||||
0.0.0.0 parasino.com
|
||||
0.0.0.0 parimatch.com
|
||||
0.0.0.0 partycasino.lt
|
||||
0.0.0.0 partypoker.cz
|
||||
0.0.0.0 pasarbola.com
|
||||
0.0.0.0 pelaa.com
|
||||
@@ -1037,6 +1059,7 @@
|
||||
0.0.0.0 playojo.com
|
||||
0.0.0.0 playolg.ca
|
||||
0.0.0.0 playtech.com
|
||||
0.0.0.0 placard.pt
|
||||
0.0.0.0 plexodds.com
|
||||
0.0.0.0 plus.betway.com
|
||||
0.0.0.0 pocketvegas.co.uk
|
||||
@@ -1103,6 +1126,8 @@
|
||||
0.0.0.0 royrichie.com
|
||||
0.0.0.0 rubet.com
|
||||
0.0.0.0 rush777.com
|
||||
0.0.0.0 ru.cbet.lt
|
||||
0.0.0.0 ru.topsport.lt
|
||||
0.0.0.0 saartoto.de
|
||||
0.0.0.0 sachsenlotto.de
|
||||
0.0.0.0 safaribet.com.gh
|
||||
@@ -1160,6 +1185,7 @@
|
||||
0.0.0.0 socalsportbook.com
|
||||
0.0.0.0 society.gg
|
||||
0.0.0.0 softbet.eu
|
||||
0.0.0.0 solverde.pt
|
||||
0.0.0.0 speedybet.com
|
||||
0.0.0.0 spela.com
|
||||
0.0.0.0 spindipity.com
|
||||
@@ -1255,6 +1281,7 @@
|
||||
0.0.0.0 tabgold.co.za
|
||||
0.0.0.0 taiwanlottery.com.tw
|
||||
0.0.0.0 takarakuji-official.jp
|
||||
0.0.0.0 tatkazino.lt
|
||||
0.0.0.0 tatts.com
|
||||
0.0.0.0 templenile.com
|
||||
0.0.0.0 tempobet.com
|
||||
@@ -1287,6 +1314,7 @@
|
||||
0.0.0.0 topodds.com.au
|
||||
0.0.0.0 topplay.cc
|
||||
0.0.0.0 topsport.com.au
|
||||
0.0.0.0 topsport.lt
|
||||
0.0.0.0 topsportwetten.com
|
||||
0.0.0.0 topwin.cc
|
||||
0.0.0.0 totalbets.com
|
||||
@@ -1343,6 +1371,7 @@
|
||||
0.0.0.0 wap.moneyyellow.com
|
||||
0.0.0.0 webbookmakers.com
|
||||
0.0.0.0 webpartners.co
|
||||
0.0.0.0 welcome.olybet.lt
|
||||
0.0.0.0 westlotto.de
|
||||
0.0.0.0 wettpunkt.com
|
||||
0.0.0.0 wgh.ag
|
||||
@@ -1405,6 +1434,7 @@
|
||||
0.0.0.0 www.724sports.com
|
||||
0.0.0.0 www.777.com
|
||||
0.0.0.0 www.7777.bg
|
||||
0.0.0.0 www.7bet.lt
|
||||
0.0.0.0 www.7epta7.com
|
||||
0.0.0.0 www.7godscasino.com
|
||||
0.0.0.0 www.7jackpots.com
|
||||
@@ -1578,6 +1608,7 @@
|
||||
0.0.0.0 www.bets10go.com
|
||||
0.0.0.0 www.bets4all.com
|
||||
0.0.0.0 www.betsafe.com
|
||||
0.0.0.0 www.betsafe.lt
|
||||
0.0.0.0 www.betsbc.com
|
||||
0.0.0.0 www.betsbi.com
|
||||
0.0.0.0 www.betser.com
|
||||
@@ -1690,6 +1721,7 @@
|
||||
0.0.0.0 www.casinotown.se
|
||||
0.0.0.0 www.casinsi.com
|
||||
0.0.0.0 www.casumo.com
|
||||
0.0.0.0 www.cbet.lt
|
||||
0.0.0.0 www.cbmsport.com
|
||||
0.0.0.0 www.cc898.com
|
||||
0.0.0.0 www.celebbingo.com
|
||||
@@ -2080,6 +2112,7 @@
|
||||
0.0.0.0 www.loterie.ma
|
||||
0.0.0.0 www.loteries.lotoquebec.com
|
||||
0.0.0.0 www.loterija.si
|
||||
0.0.0.0 www.loto.lt
|
||||
0.0.0.0 www.loto.mk
|
||||
0.0.0.0 www.loto.ro
|
||||
0.0.0.0 www.lotoquebec.com
|
||||
@@ -2252,12 +2285,14 @@
|
||||
0.0.0.0 www.olimp.com
|
||||
0.0.0.0 www.olybet.com
|
||||
0.0.0.0 www.olybet.eu
|
||||
0.0.0.0 www.olybet.lt
|
||||
0.0.0.0 www.omniacasino.com
|
||||
0.0.0.0 www.online.singaporepools.com
|
||||
0.0.0.0 www.onlywinners.com
|
||||
0.0.0.0 www.opap.gr
|
||||
0.0.0.0 www.opcrates.com
|
||||
0.0.0.0 www.optibet.com
|
||||
0.0.0.0 www.optibet.lt
|
||||
0.0.0.0 www.optionsports.com
|
||||
0.0.0.0 www.orakulas.lt
|
||||
0.0.0.0 www.orlandocasino.com
|
||||
@@ -2273,6 +2308,7 @@
|
||||
0.0.0.0 www.parasino.com
|
||||
0.0.0.0 www.parimatch.com
|
||||
0.0.0.0 www.parimatchplay1.com
|
||||
0.0.0.0 www.partycasino.lt
|
||||
0.0.0.0 www.partypoker.cz
|
||||
0.0.0.0 www.pasarbola.com
|
||||
0.0.0.0 www.pinnacle.com
|
||||
@@ -2297,6 +2333,7 @@
|
||||
0.0.0.0 www.pokerstars.cz
|
||||
0.0.0.0 www.pokerstars.eu
|
||||
0.0.0.0 www.pokerstars.uk
|
||||
0.0.0.0 www.pokerstars.pt
|
||||
0.0.0.0 www.pokerstarscasino.uk
|
||||
0.0.0.0 www.portail.lotoquebec.com
|
||||
0.0.0.0 www.postcodeloterij.nl
|
||||
@@ -2464,6 +2501,7 @@
|
||||
0.0.0.0 www.tabgold.co.za
|
||||
0.0.0.0 www.taiwanlottery.com.tw
|
||||
0.0.0.0 www.takarakuji-official.jp
|
||||
0.0.0.0 www.tatkazino.lt
|
||||
0.0.0.0 www.tempobet.com
|
||||
0.0.0.0 www.texascasino.com
|
||||
0.0.0.0 www.thebetarena.com
|
||||
@@ -2489,6 +2527,7 @@
|
||||
0.0.0.0 www.topodds.com.au
|
||||
0.0.0.0 www.topplay.cc
|
||||
0.0.0.0 www.topsport.com.au
|
||||
0.0.0.0 www.topsport.lt
|
||||
0.0.0.0 www.topsportwetten.com
|
||||
0.0.0.0 www.topwin.cc
|
||||
0.0.0.0 www.totalbets.com
|
||||
@@ -2581,3 +2620,6 @@
|
||||
0.0.0.0 zetpoker.eu
|
||||
0.0.0.0 zodiacu.com
|
||||
0.0.0.0 zpisportbk.com
|
||||
0.0.0.0 www.draftkings.com
|
||||
0.0.0.0 luckia.pt
|
||||
0.0.0.0 luckylandslots.com
|
||||
@@ -3662,7 +3662,7 @@ fe80::1%lo0 localhost
|
||||
0.0.0.0 cast13.porngo.com
|
||||
0.0.0.0 cast14.porngo.com
|
||||
0.0.0.0 cast15.porngo.com
|
||||
0.0.0.0 cast.porngo.com.
|
||||
0.0.0.0 cast.porngo.com
|
||||
0.0.0.0 cast.xxxfiles.com
|
||||
0.0.0.0 castingcouch-x.com
|
||||
0.0.0.0 castingcouchxfan.com
|
||||
@@ -20943,7 +20943,6 @@ fe80::1%lo0 localhost
|
||||
0.0.0.0 www.blog-sexo-gratis.blogspot.com
|
||||
0.0.0.0 www.blogsexoverbal.blogspot.com
|
||||
0.0.0.0 www.blogs-list.com
|
||||
0.0.0.0 www.blogspot.com
|
||||
0.0.0.0 www.blog-thegoose.blogspot.com
|
||||
0.0.0.0 www.blogtothepeople.blogspot.com
|
||||
0.0.0.0 www.blogtravestis.blogspot.com
|
||||
|
||||
@@ -23,4 +23,3 @@
|
||||
127.0.0.1 devilpain.com
|
||||
127.0.0.1 crazypain.com
|
||||
127.0.0.1 sadovids.com
|
||||
|
||||
@@ -1738,7 +1738,7 @@
|
||||
127.0.0.1 badges.instagram.com
|
||||
127.0.0.1 black.ish.instagram.com
|
||||
127.0.0.1 business.instagram.com
|
||||
127.0.0.1 c.ns.cdninstagram.com
|
||||
127.0.0.1 c.ns.cdninstagram.com
|
||||
127.0.0.1 cdninstagram.com
|
||||
127.0.0.1 creative.cdninstagram.com
|
||||
127.0.0.1 d.ns.cdninstagram.com
|
||||
@@ -1748,7 +1748,7 @@
|
||||
127.0.0.1 external-vie1-1.cdninstagram.com
|
||||
127.0.0.1 external-waw1-1.cdninstagram.com
|
||||
127.0.0.1 external.cdninstagram.com
|
||||
127.0.0.1 fundingchoicesmessages.google.com
|
||||
127.0.0.1 fundingchoicesmessages.google.com
|
||||
127.0.0.1 help.instagram.com
|
||||
127.0.0.1 i.instagram.com
|
||||
127.0.0.1 images.instagram.com
|
||||
@@ -1931,7 +1931,7 @@
|
||||
127.0.0.1 scontent-frt.cdninstagram.com
|
||||
127.0.0.1 scontent-frt3-1.cdninstagram.com
|
||||
127.0.0.1 scontent-frt3-2.cdninstagram.com
|
||||
127.0.0.1 scontent-frx.cdninstagram.com
|
||||
127.0.0.1 scontent-frx.cdninstagram.com
|
||||
127.0.0.1 scontent-frx5-1.cdninstagram.com
|
||||
127.0.0.1 scontent-gig2-1.cdninstagram.com
|
||||
127.0.0.1 scontent-gmp1-1.cdninstagram.com
|
||||
@@ -2111,8 +2111,7 @@
|
||||
127.0.0.1 z-p42-scontent-waw1-1.cdninstagram.com
|
||||
127.0.0.1 z-p42-scontent-yyz1-1.cdninstagram.com
|
||||
127.0.0.1 z-p42-scontent.cdninstagram.com
|
||||
127.0.0.1 z-p42-static.cdninstagram.com
|
||||
|
||||
127.0.0.1 z-p42-static.cdninstagram.com
|
||||
# Whatsapp
|
||||
127.0.0.1 account.whatsapp.com
|
||||
127.0.0.1 alpha.whatsapp.com
|
||||
@@ -2795,7 +2794,7 @@
|
||||
127.0.0.1 www.redditmedia.com
|
||||
127.0.0.1 www.redditstatic.com
|
||||
|
||||
127.0.0.1 pinpages.alwaysdata.net
|
||||
127.0.0.1 pinpages.alwaysdata.net
|
||||
127.0.0.1 allotalk.com
|
||||
|
||||
# TikTok
|
||||
|
||||
@@ -1,45 +1,50 @@
|
||||
{
|
||||
description = "Unified hosts file with base extensions.";
|
||||
inputs.flake-utils.url = "github:numtide/flake-utils";
|
||||
outputs = { self, nixpkgs, flake-utils }: {
|
||||
nixosModule = { config, ... }:
|
||||
with nixpkgs.lib;
|
||||
let
|
||||
cfg = config.networking.stevenBlackHosts;
|
||||
alternatesList = (if cfg.blockFakenews then [ "fakenews" ] else []) ++
|
||||
(if cfg.blockGambling then [ "gambling" ] else []) ++
|
||||
(if cfg.blockPorn then [ "porn" ] else []) ++
|
||||
(if cfg.blockSocial then [ "social" ] else []);
|
||||
alternatesPath = "alternates/" + builtins.concatStringsSep "-" alternatesList + "/";
|
||||
in
|
||||
{
|
||||
options.networking.stevenBlackHosts = {
|
||||
enable = mkEnableOption "Use Steven Black's hosts file as extra hosts.";
|
||||
blockFakenews = mkEnableOption "Additionally block fakenews hosts.";
|
||||
blockGambling = mkEnableOption "Additionally block gambling hosts.";
|
||||
blockPorn = mkEnableOption "Additionally block porn hosts.";
|
||||
blockSocial = mkEnableOption "Additionally block social hosts.";
|
||||
outputs = { self, nixpkgs, ... }@inputs:
|
||||
let
|
||||
forAllSystems = nixpkgs.lib.genAttrs nixpkgs.lib.platforms.unix;
|
||||
|
||||
nixpkgsFor = forAllSystems (system: import nixpkgs {
|
||||
inherit system;
|
||||
});
|
||||
in
|
||||
{
|
||||
nixosModule = { config, ... }:
|
||||
with nixpkgs.lib;
|
||||
let
|
||||
cfg = config.networking.stevenBlackHosts;
|
||||
alternatesList = (if cfg.blockFakenews then [ "fakenews" ] else []) ++
|
||||
(if cfg.blockGambling then [ "gambling" ] else []) ++
|
||||
(if cfg.blockPorn then [ "porn" ] else []) ++
|
||||
(if cfg.blockSocial then [ "social" ] else []);
|
||||
alternatesPath = "alternates/" + builtins.concatStringsSep "-" alternatesList + "/";
|
||||
in
|
||||
{
|
||||
options.networking.stevenBlackHosts = {
|
||||
enable = mkEnableOption "Use Steven Black's hosts file as extra hosts.";
|
||||
blockFakenews = mkEnableOption "Additionally block fakenews hosts.";
|
||||
blockGambling = mkEnableOption "Additionally block gambling hosts.";
|
||||
blockPorn = mkEnableOption "Additionally block porn hosts.";
|
||||
blockSocial = mkEnableOption "Additionally block social hosts.";
|
||||
};
|
||||
config = mkIf cfg.enable {
|
||||
networking.extraHosts =
|
||||
builtins.readFile (
|
||||
"${self}/" + (if alternatesList != [] then alternatesPath else "") + "hosts"
|
||||
);
|
||||
};
|
||||
};
|
||||
config = mkIf cfg.enable {
|
||||
networking.extraHosts =
|
||||
builtins.readFile (
|
||||
"${self}/" + (if alternatesList != [] then alternatesPath else "") + "hosts"
|
||||
);
|
||||
};
|
||||
};
|
||||
} // flake-utils.lib.eachDefaultSystem
|
||||
(system:
|
||||
let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
in
|
||||
{
|
||||
devShell = pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
python3
|
||||
python3Packages.flake8
|
||||
python3Packages.requests
|
||||
];
|
||||
};
|
||||
}
|
||||
);
|
||||
|
||||
devShells = forAllSystems (system:
|
||||
let pkgs = nixpkgsFor.${system}; in
|
||||
{
|
||||
default = pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
python3
|
||||
python3Packages.flake8
|
||||
python3Packages.requests
|
||||
];
|
||||
};
|
||||
});
|
||||
};
|
||||
}
|
||||
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 33 KiB |
@@ -53,6 +53,30 @@ def update_readme_file():
|
||||
print_failure("Failed to update readme file")
|
||||
|
||||
|
||||
def recursively_loop_extensions(extension, extensions, current_extensions):
|
||||
"""
|
||||
Helper function that recursively calls itself to prevent manually creating
|
||||
all possible combinations of extensions.
|
||||
|
||||
Will call update_hosts_file for all combinations of extensions
|
||||
"""
|
||||
|
||||
c_extensions = extensions.copy()
|
||||
c_current_extensions = current_extensions.copy()
|
||||
c_current_extensions.append(extension)
|
||||
|
||||
name = "-".join(c_current_extensions)
|
||||
|
||||
params = ("-a", "-n", "-o", "alternates/"+name, "-e") + tuple(c_current_extensions)
|
||||
update_hosts_file(*params)
|
||||
|
||||
params = ("-a", "-n", "-s", "--nounifiedhosts", "-o", "alternates/"+name+"-only", "-e") + tuple(c_current_extensions)
|
||||
update_hosts_file(*params)
|
||||
|
||||
while len(c_extensions) > 0:
|
||||
recursively_loop_extensions(c_extensions.pop(0), c_extensions, c_current_extensions)
|
||||
|
||||
|
||||
def main():
|
||||
parser = argparse.ArgumentParser(
|
||||
description="Creates custom hosts "
|
||||
@@ -61,84 +85,15 @@ def main():
|
||||
)
|
||||
parser.parse_args()
|
||||
|
||||
update_hosts_file("-a", "-o", "alternates/gambling", "-e", "gambling")
|
||||
update_hosts_file("-a", "-n", "-o", "alternates/porn", "-e", "porn")
|
||||
update_hosts_file("-a", "-n", "-o", "alternates/social", "-e", "social")
|
||||
update_hosts_file("-a", "-n", "-o", "alternates/fakenews", "-e", "fakenews")
|
||||
# Update the unified hosts file
|
||||
update_hosts_file("-a")
|
||||
|
||||
update_hosts_file(
|
||||
"-a", "-n", "-o", "alternates/fakenews-gambling", "-e", "fakenews", "gambling"
|
||||
)
|
||||
update_hosts_file(
|
||||
"-a", "-n", "-o", "alternates/fakenews-porn", "-e", "fakenews", "porn"
|
||||
)
|
||||
update_hosts_file(
|
||||
"-a", "-n", "-o", "alternates/fakenews-social", "-e", "fakenews", "social"
|
||||
)
|
||||
update_hosts_file(
|
||||
"-a", "-n", "-o", "alternates/gambling-porn", "-e", "gambling", "porn"
|
||||
)
|
||||
update_hosts_file(
|
||||
"-a", "-n", "-o", "alternates/gambling-social", "-e", "gambling", "social"
|
||||
)
|
||||
update_hosts_file(
|
||||
"-a", "-n", "-o", "alternates/porn-social", "-e", "porn", "social"
|
||||
)
|
||||
# List of extensions we want to generate, we will loop over them recursively to prevent manual definitions
|
||||
# Only add new extensions to the end of the array, to avoid relocating existing hosts-files
|
||||
extensions = ["fakenews", "gambling", "porn", "social"]
|
||||
|
||||
update_hosts_file(
|
||||
"-a",
|
||||
"-n",
|
||||
"-o",
|
||||
"alternates/fakenews-gambling-porn",
|
||||
"-e",
|
||||
"fakenews",
|
||||
"gambling",
|
||||
"porn",
|
||||
)
|
||||
update_hosts_file(
|
||||
"-a",
|
||||
"-n",
|
||||
"-o",
|
||||
"alternates/fakenews-gambling-social",
|
||||
"-e",
|
||||
"fakenews",
|
||||
"gambling",
|
||||
"social",
|
||||
)
|
||||
update_hosts_file(
|
||||
"-a",
|
||||
"-n",
|
||||
"-o",
|
||||
"alternates/fakenews-porn-social",
|
||||
"-e",
|
||||
"fakenews",
|
||||
"porn",
|
||||
"social",
|
||||
)
|
||||
update_hosts_file(
|
||||
"-a",
|
||||
"-n",
|
||||
"-o",
|
||||
"alternates/gambling-porn-social",
|
||||
"-e",
|
||||
"gambling",
|
||||
"porn",
|
||||
"social",
|
||||
)
|
||||
|
||||
update_hosts_file(
|
||||
"-a",
|
||||
"-n",
|
||||
"-o",
|
||||
"alternates/fakenews-gambling-porn-social",
|
||||
"-e",
|
||||
"fakenews",
|
||||
"gambling",
|
||||
"porn",
|
||||
"social",
|
||||
)
|
||||
|
||||
update_hosts_file("-a", "-n")
|
||||
while len(extensions) > 0:
|
||||
recursively_loop_extensions(extensions.pop(0), extensions, [])
|
||||
|
||||
# Update the readme files.
|
||||
update_readme_file()
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "hosts",
|
||||
"version": "3.12.32",
|
||||
"version": "3.14.37",
|
||||
"description": "Extending and consolidating hosts files from several well-curated sources like adaway.org, mvps.org, malwaredomainlist.com, someonewhocares.org, and potentially others. You can optionally invoke extensions to block additional sites by category.",
|
||||
"main": "",
|
||||
"private": true,
|
||||
@@ -35,6 +35,6 @@
|
||||
},
|
||||
"homepage": "https://github.com/StevenBlack/hosts#readme",
|
||||
"devDependencies": {
|
||||
"release-it": "^15.10.1"
|
||||
"release-it": "^16.1.5"
|
||||
}
|
||||
}
|
||||
@@ -30,18 +30,18 @@ files are provided.
|
||||
|
||||

|
||||
|
||||
- Last updated: **May 14 2023**.
|
||||
- Last updated: **December 13 2023**.
|
||||
- Here's the
|
||||
[raw hosts file with base extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts)
|
||||
containing 181,356 entries.
|
||||
[raw hosts file Unified hosts file with base extensions](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts)
|
||||
containing 141,631 entries.
|
||||
|
||||

|
||||
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -49,22 +49,37 @@ with GitHub download links.
|
||||
|
||||
| Host file recipe | Readme | Raw hosts | Unique domains | Non GitHub mirror |
|
||||
| ---------------- | :----: | :-------: | :------------: | :---------------: |
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 181,356 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 183,550 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 188,857 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 229,442 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 184,180 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 191,051 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 231,636 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 186,374 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 236,943 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 191,681 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 232,265 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 239,137 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 193,875 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 234,459 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 239,766 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 241,960 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
Unified hosts = **(adware + malware)** | [Readme](https://github.com/StevenBlack/hosts/blob/master/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts) | 141,631 | [link](http://sbc.io/hosts/hosts)
|
||||
Unified hosts **+ fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews/hosts) | 143,825 | [link](http://sbc.io/hosts/alternates/fakenews/hosts)
|
||||
**fakenews** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts) | 2,194 | [link](http://sbc.io/hosts/alternates/fakenews-only/hosts)
|
||||
Unified hosts **+ gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling/hosts) | 149,465 | [link](http://sbc.io/hosts/alternates/gambling/hosts)
|
||||
**gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-only/hosts) | 7,846 | [link](http://sbc.io/hosts/alternates/gambling-only/hosts)
|
||||
Unified hosts **+ porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn/hosts) | 197,006 | [link](http://sbc.io/hosts/alternates/porn/hosts)
|
||||
**porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-only/hosts) | 56,015 | [link](http://sbc.io/hosts/alternates/porn-only/hosts)
|
||||
Unified hosts **+ social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social/hosts) | 144,455 | [link](http://sbc.io/hosts/alternates/social/hosts)
|
||||
**social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/social-only/hosts) | 2,841 | [link](http://sbc.io/hosts/alternates/social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling/hosts) | 151,659 | [link](http://sbc.io/hosts/alternates/fakenews-gambling/hosts)
|
||||
**fakenews + gambling** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-only/hosts) | 10,040 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-only/hosts)
|
||||
Unified hosts **+ fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn/hosts) | 199,200 | [link](http://sbc.io/hosts/alternates/fakenews-porn/hosts)
|
||||
**fakenews + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-only/hosts) | 58,209 | [link](http://sbc.io/hosts/alternates/fakenews-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social/hosts) | 146,649 | [link](http://sbc.io/hosts/alternates/fakenews-social/hosts)
|
||||
**fakenews + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-social-only/hosts) | 5,035 | [link](http://sbc.io/hosts/alternates/fakenews-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn/hosts) | 204,840 | [link](http://sbc.io/hosts/alternates/gambling-porn/hosts)
|
||||
**gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-only/hosts) | 63,861 | [link](http://sbc.io/hosts/alternates/gambling-porn-only/hosts)
|
||||
Unified hosts **+ gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social/hosts) | 152,289 | [link](http://sbc.io/hosts/alternates/gambling-social/hosts)
|
||||
**gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-social-only/hosts) | 10,687 | [link](http://sbc.io/hosts/alternates/gambling-social-only/hosts)
|
||||
Unified hosts **+ porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social/hosts) | 199,827 | [link](http://sbc.io/hosts/alternates/porn-social/hosts)
|
||||
**porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/porn-social-only/hosts) | 58,853 | [link](http://sbc.io/hosts/alternates/porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts) | 207,034 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn/hosts)
|
||||
**fakenews + gambling + porn** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-only/hosts) | 66,055 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social/hosts) | 154,483 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social/hosts)
|
||||
**fakenews + gambling + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-social-only/hosts) | 12,881 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-social-only/hosts)
|
||||
Unified hosts **+ fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social/hosts) | 202,021 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social/hosts)
|
||||
**fakenews + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-porn-social-only/hosts) | 61,047 | [link](http://sbc.io/hosts/alternates/fakenews-porn-social-only/hosts)
|
||||
Unified hosts **+ gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social/hosts) | 207,661 | [link](http://sbc.io/hosts/alternates/gambling-porn-social/hosts)
|
||||
**gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/gambling-porn-social-only/hosts) | 66,699 | [link](http://sbc.io/hosts/alternates/gambling-porn-social-only/hosts)
|
||||
Unified hosts **+ fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts) | 209,855 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social/hosts)
|
||||
**fakenews + gambling + porn + social** | [Readme](https://github.com/StevenBlack/hosts/blob/master/alternates/fakenews-gambling-porn-social-only/readme.md) | [link](https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social-only/hosts) | 68,893 | [link](http://sbc.io/hosts/alternates/fakenews-gambling-porn-social-only/hosts)
|
||||
|
||||
|
||||
**Expectation**: These unified hosts files should serve all devices, regardless
|
||||
@@ -184,6 +199,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -247,6 +266,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -480,6 +502,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -638,6 +662,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"fakenews-gambling-porn": {"location": "alternates/fakenews-gambling-porn/", "entries": 239137, "sourcesdata": [{"name": "Steven Black's ad-hoc list", "description": "Additional sketch domains as I come across them.", "homeurl": "https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts", "frequency": "occasionally", "issues": "https://github.com/StevenBlack/hosts/issues", "url": "https://raw.githubusercontent.com/StevenBlack/hosts/master/data/StevenBlack/hosts", "license": "MIT"}, {"name": "AdAway", "description": "AdAway is an open source ad blocker for Android using the hosts file.", "homeurl": "https://adaway.org/", "frequency": "frequently", "issues": "https://github.com/AdAway/adaway.github.io/issues", "url": "https://raw.githubusercontent.com/AdAway/adaway.github.io/master/hosts.txt", "license": "CC BY 3.0", "pause": true}, {"name": "add.2o7Net", "description": "2o7Net tracking sites based on [hostsfile.org](https://www.hostsfile.org/hosts.html) content.", "homeurl": "https://github.com/FadeMind/hosts.extras", "frequency": "occasionally", "issues": "https://github.com/FadeMind/hosts.extras/issues", "url": "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.2o7Net/hosts", "license": "MIT"}, {"name": "add.Dead", "description": "Dead sites based on [hostsfile.org](https://www.hostsfile.org/hosts.html) content.", "homeurl": "https://github.com/FadeMind/hosts.extras", "frequency": "occasionally", "issues": "https://github.com/FadeMind/hosts.extras/issues", "url": "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Dead/hosts", "license": "MIT"}, {"name": "add.Risk", "description": "Risk content sites based on [hostsfile.org](https://www.hostsfile.org/hosts.html) content.", "homeurl": "https://github.com/FadeMind/hosts.extras", "frequency": "occasionally", "issues": "https://github.com/FadeMind/hosts.extras/issues", "url": "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Risk/hosts", "license": "MIT"}, {"name": "add.Spam", "description": "Spam sites based on [hostsfile.org](https://www.hostsfile.org/hosts.html) content.", "homeurl": "https://github.com/FadeMind/hosts.extras", "frequency": "occasionally", "issues": "https://github.com/FadeMind/hosts.extras/issues", "url": "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Spam/hosts", "license": "MIT"}, {"name": "Mitchell Krog's - Badd Boyz Hosts", "description": "Sketchy domains and Bad Referrers from my Nginx and Apache Bad Bot and Spam Referrer Blockers", "homeurl": "https://github.com/mitchellkrogza/Badd-Boyz-Hosts", "frequency": "weekly", "issues": "https://github.com/mitchellkrogza/Badd-Boyz-Hosts/issues", "url": "https://raw.githubusercontent.com/mitchellkrogza/Badd-Boyz-Hosts/master/hosts", "license": "MIT"}, {"name": "hostsVN", "description": "Hosts block ads of Vietnamese", "homeurl": "https://github.com/bigdargon/hostsVN", "frequency": "occasionally", "issues": "https://github.com/bigdargon/hostsVN/issues", "url": "https://raw.githubusercontent.com/bigdargon/hostsVN/master/option/hosts-VN", "license": "MIT"}, {"name": "KADhosts", "description": "Fraud/adware/scam websites.", "homeurl": "https://kadantiscam.netlify.app/", "frequency": "frequently", "issues": "https://github.com/PolishFiltersTeam/KADhosts/issues", "url": "https://raw.githubusercontent.com/PolishFiltersTeam/KADhosts/master/KADhosts.txt", "license": "CC BY-SA 4.0"}, {"name": "MetaMask eth-phishing-detect", "description": "Phishing domains targeting Ethereum users.", "homeurl": "https://github.com/MetaMask/eth-phishing-detect", "frequency": "frequent", "issues": "https://github.com/MetaMask/eth-phishing-detect/issues", "url": "https://raw.githubusercontent.com/MetaMask/eth-phishing-detect/master/src/hosts.txt", "license": "DON'T BE A DICK PUBLIC LICENSE"}, {"name": "minecraft-hosts", "description": "Minecraft related tracker hosts", "homeurl": "https://github.com/jamiemansfield/minecraft-hosts", "frequency": "occasionally", "issues": "https://github.com/jamiemansfield/minecraft-hosts/issues", "url": "https://raw.githubusercontent.com/jamiemansfield/minecraft-hosts/master/lists/tracking.txt", "license": "CC0-1.0"}, {"name": "MVPS hosts file", "description": "The purpose of this site is to provide the user with a high quality custom HOSTS file.", "homeurl": "https://winhelp2002.mvps.org/", "frequency": "monthly", "issues": "mailto:winhelp2002@gmail.com", "url": "https://winhelp2002.mvps.org/hosts.txt", "license": "CC BY-NC-SA 4.0", "pause": true}, {"name": "shady-hosts", "description": "Analytics, ad, and activity monitoring hosts", "homeurl": "https://github.com/shreyasminocha/shady-hosts", "frequency": "occasionally", "issues": "https://github.com/shreyasminocha/shady-hosts/issues", "url": "https://raw.githubusercontent.com/shreyasminocha/shady-hosts/main/hosts", "license": "CC0-1.0"}, {"name": "Dan Pollock \u2013 [someonewhocares](https://someonewhocares.org/)", "description": "How to make the interneLine truncated
|
||||
{"fakenews-gambling-porn": {"location": "alternates/fakenews-gambling-porn/", "no_unified_hosts": false, "entries": 207034, "sourcesdata": [{"name": "Steven Black's ad-hoc list", "description": "Additional sketch domains as I come across them.", "homeurl": "https://github.com/StevenBlack/hosts/blob/master/data/StevenBlack/hosts", "frequency": "occasionally", "issues": "https://github.com/StevenBlack/hosts/issues", "url": "https://raw.githubusercontent.com/StevenBlack/hosts/master/data/StevenBlack/hosts", "license": "MIT"}, {"name": "AdAway", "description": "AdAway is an open source ad blocker for Android using the hosts file.", "homeurl": "https://adaway.org/", "frequency": "frequently", "issues": "https://github.com/AdAway/adaway.github.io/issues", "url": "https://raw.githubusercontent.com/AdAway/adaway.github.io/master/hosts.txt", "license": "CC BY 3.0", "pause": true}, {"name": "add.2o7Net", "description": "2o7Net tracking sites based on [hostsfile.org](https://www.hostsfile.org/hosts.html) content.", "homeurl": "https://github.com/FadeMind/hosts.extras", "frequency": "occasionally", "issues": "https://github.com/FadeMind/hosts.extras/issues", "url": "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.2o7Net/hosts", "license": "MIT"}, {"name": "add.Dead", "description": "Dead sites based on [hostsfile.org](https://www.hostsfile.org/hosts.html) content.", "homeurl": "https://github.com/FadeMind/hosts.extras", "frequency": "occasionally", "issues": "https://github.com/FadeMind/hosts.extras/issues", "url": "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Dead/hosts", "license": "MIT"}, {"name": "add.Risk", "description": "Risk content sites based on [hostsfile.org](https://www.hostsfile.org/hosts.html) content.", "homeurl": "https://github.com/FadeMind/hosts.extras", "frequency": "occasionally", "issues": "https://github.com/FadeMind/hosts.extras/issues", "url": "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Risk/hosts", "license": "MIT"}, {"name": "add.Spam", "description": "Spam sites based on [hostsfile.org](https://www.hostsfile.org/hosts.html) content.", "homeurl": "https://github.com/FadeMind/hosts.extras", "frequency": "occasionally", "issues": "https://github.com/FadeMind/hosts.extras/issues", "url": "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Spam/hosts", "license": "MIT"}, {"name": "Mitchell Krog's - Badd Boyz Hosts", "description": "Sketchy domains and Bad Referrers from my Nginx and Apache Bad Bot and Spam Referrer Blockers", "homeurl": "https://github.com/mitchellkrogza/Badd-Boyz-Hosts", "frequency": "weekly", "issues": "https://github.com/mitchellkrogza/Badd-Boyz-Hosts/issues", "url": "https://raw.githubusercontent.com/mitchellkrogza/Badd-Boyz-Hosts/master/hosts", "license": "MIT"}, {"name": "hostsVN", "description": "Hosts block ads of Vietnamese", "homeurl": "https://github.com/bigdargon/hostsVN", "frequency": "occasionally", "issues": "https://github.com/bigdargon/hostsVN/issues", "url": "https://raw.githubusercontent.com/bigdargon/hostsVN/master/option/hosts-VN", "license": "MIT"}, {"name": "KADhosts", "description": "Fraud/adware/scam websites.", "homeurl": "https://kadantiscam.netlify.app/", "frequency": "frequently", "issues": "https://github.com/PolishFiltersTeam/KADhosts/issues", "url": "https://raw.githubusercontent.com/PolishFiltersTeam/KADhosts/master/KADhosts.txt", "license": "CC BY-SA 4.0"}, {"name": "MetaMask eth-phishing-detect", "description": "Phishing domains targeting Ethereum users.", "homeurl": "https://github.com/MetaMask/eth-phishing-detect", "frequency": "frequent", "issues": "https://github.com/MetaMask/eth-phishing-detect/issues", "url": "https://raw.githubusercontent.com/MetaMask/eth-phishing-detect/master/src/hosts.txt", "license": "DON'T BE A DICK PUBLIC LICENSE"}, {"name": "minecraft-hosts", "description": "Minecraft related tracker hosts", "homeurl": "https://github.com/jamiemansfield/minecraft-hosts", "frequency": "occasionally", "issues": "https://github.com/jamiemansfield/minecraft-hosts/issues", "url": "https://raw.githubusercontent.com/jamiemansfield/minecraft-hosts/master/lists/tracking.txt", "license": "CC0-1.0"}, {"name": "MVPS hosts file", "description": "The purpose of this site is to provide the user with a high quality custom HOSTS file.", "homeurl": "https://winhelp2002.mvps.org/", "frequency": "monthly", "issues": "mailto:winhelp2002@gmail.com", "url": "https://winhelp2002.mvps.org/hosts.txt", "license": "CC BY-NC-SA 4.0", "pause": true}, {"name": "shady-hosts", "description": "Analytics, ad, and activity monitoring hosts", "homeurl": "https://github.com/shreyasminocha/shady-hosts", "frequency": "occasionally", "issues": "https://github.com/shreyasminocha/shady-hosts/issues", "url": "https://raw.githubusercontent.com/shreyasminocha/shady-hosts/main/hosts", "license": "CC0-1.0"}, {"name": "Dan Pollock \u2013 [someonewhocares](https://someonewhocares.org/)", "descriptionLine truncated
|
||||
@@ -20,7 +20,7 @@ sources can be found in the `hosts/data/` directory.
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
[](https://github.com/StevenBlack/hosts/commits/master)
|
||||
|
||||
# Unified hosts file @EXTENSIONS_HEADER@
|
||||
# @EXTENSIONS_HEADER@
|
||||
|
||||
This repository consolidates several reputable `hosts` files, and merges them
|
||||
into a unified hosts file with duplicates removed. A variety of tailored hosts
|
||||
@@ -40,8 +40,8 @@ files are provided.
|
||||
## List of all hosts file variants
|
||||
|
||||
This repository offers
|
||||
[15 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant.
|
||||
[31 different host file variants](https://github.com/StevenBlack/hosts/tree/master/alternates),
|
||||
in addition to the base variant, with and without the unified hosts included.
|
||||
|
||||
The **Non GitHub mirror** is the link to use for some hosts file managers like
|
||||
[Hostsman for Windows](https://www.abelhadigital.com/hostsman/) that don't work
|
||||
@@ -150,6 +150,10 @@ pip3 install --user -r requirements.txt
|
||||
at the user level. More information about it can be found on pip
|
||||
[documentation](https://pip.pypa.io/en/stable/reference/pip_install/?highlight=--user#cmdoption-user).
|
||||
|
||||
### Option 4: Generate it in Google Colab
|
||||
|
||||
Spin up a free remote [Google Colab](https://colab.research.google.com/drive/1tYWXpU2iuPDqN_o03JW9ml3ExO80eBLq?usp=sharing) environment.
|
||||
|
||||
### Common steps regardless of your development environment
|
||||
|
||||
To **run unit tests**, in the top-level directory, run:
|
||||
@@ -213,6 +217,9 @@ readmeData.json file used for generating readme.md files. This is useful if you
|
||||
are generating host files with additional whitelists or blacklists and want to
|
||||
keep your local checkout of this repo unmodified.
|
||||
|
||||
`--nounifiedhosts`: `false` (default) or `true`, do not include the unified hosts
|
||||
file in the final hosts file. Usually used together with `--extensions`.
|
||||
|
||||
`--compress`, or `-c`: `false` (default) or `true`, _Compress_ the hosts file
|
||||
ignoring non-necessary lines (empty lines and comments) and putting multiple
|
||||
domains in each line. Reducing the number of lines of the hosts file improves
|
||||
@@ -446,6 +453,8 @@ the
|
||||
[the comments within the `cmd` file](https://github.com/StevenBlack/hosts/blob/master/disable-dnscache-service-win.bat)
|
||||
for more details.
|
||||
|
||||
Disabling the DNS Cache Service can cause issues with services and applications like *WSL* and it's possible to compress the hosts file and negate the need to disable the DNS caching service. You can try the *C++* Windows command line tool at [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) (the recommended method) or the *PowerShell* compression script and check out the guide located at the [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) repository.
|
||||
|
||||
## Reloading hosts file
|
||||
|
||||
Your operating system will cache DNS lookups. You can either reboot or run the
|
||||
@@ -604,6 +613,8 @@ devices under a variety of operating systems.
|
||||
- [BlackHosts - Command Line Installer/Updater](https://github.com/Lateralus138/blackhosts)
|
||||
This is a cross-platform command line utility to help install/update hosts
|
||||
files found at this repository.
|
||||
- [Hosts Compression Scripts](https://github.com/Lateralus138/hosts-compression-scripts) These are various scripts to help compress hosts files (by the author of BlackHosts).
|
||||
- [Hosts Compress - Windows](https://github.com/Lateralus138/hosts-compress-windows) This is a *C++* Windows command line tool to help compress hosts files (by the author of BlackHosts and Hosts Compression Scripts). This is highly recommended over the scripts as it is **exponentially faster**.
|
||||
- [dnscrypt-proxy](https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Combining-Blocklists)
|
||||
provides a tool to build block lists from local and remote lists in common
|
||||
formats.
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
requests ~=2.20
|
||||
flake8 ~=4.0
|
||||
flake8 ~=6.0
|
||||
@@ -10,10 +10,10 @@
|
||||
NotebookFileLineBreakTest
|
||||
NotebookFileLineBreakTest
|
||||
NotebookDataPosition[ 161, 7]
|
||||
NotebookDataLength[ 38698, 930]
|
||||
NotebookOptionsPosition[ 38124, 912]
|
||||
NotebookOutlinePosition[ 38521, 928]
|
||||
CellTagsIndexPosition[ 38478, 925]
|
||||
NotebookDataLength[ 31336, 705]
|
||||
NotebookOptionsPosition[ 30762, 687]
|
||||
NotebookOutlinePosition[ 31159, 703]
|
||||
CellTagsIndexPosition[ 31116, 700]
|
||||
WindowFrame->Normal*)
|
||||
|
||||
(* Beginning of Notebook Content *)
|
||||
@@ -56,7 +56,7 @@ Cell[BoxData[{
|
||||
RowBox[{"ToString", "[",
|
||||
RowBox[{
|
||||
RowBox[{"Last", "[", "data", "]"}], "[",
|
||||
RowBox[{"[", "2", "]"}], "]"}], "]"}], ",", "Right", ",", " ",
|
||||
RowBox[{"[", "2", "]"}], "]"}], "]"}], ",", "Left", ",", " ",
|
||||
RowBox[{"LabelStyle", "->", "Small"}], ",", " ",
|
||||
RowBox[{"Background", "->", "LightBlue"}]}], "]"}]}],
|
||||
";"}], "\[IndentingNewLine]",
|
||||
@@ -82,8 +82,10 @@ Cell[BoxData[{
|
||||
3.867443529594183*^9, 3.867443565893339*^9}, {3.867445761749815*^9,
|
||||
3.86744582007928*^9}, {3.867445877108981*^9, 3.867445877563551*^9}, {
|
||||
3.88987554010293*^9, 3.889875542354431*^9}, {3.8909097713956842`*^9,
|
||||
3.890909773446272*^9}},
|
||||
CellLabel->"In[15]:=",ExpressionUUID->"e5e34011-aa3d-4e95-90b1-863054ac32f5"],
|
||||
3.890909773446272*^9}, {3.89765774638717*^9, 3.8976577472230463`*^9}, {
|
||||
3.898379436246955*^9, 3.898379440050661*^9}, {3.90338401735606*^9,
|
||||
3.9033840200448112`*^9}, {3.906908185436775*^9, 3.9069081879516287`*^9}},
|
||||
CellLabel->"In[8]:=",ExpressionUUID->"e5e34011-aa3d-4e95-90b1-863054ac32f5"],
|
||||
|
||||
Cell[CellGroupData[{
|
||||
|
||||
@@ -158,123 +160,141 @@ Cell[BoxData[{
|
||||
3.867190455350173*^9}, {3.867191170483214*^9, 3.867191170658471*^9}, {
|
||||
3.8671912032969103`*^9, 3.867191245177144*^9}, {3.867443579626745*^9,
|
||||
3.867443615991692*^9}, {3.867445864801002*^9, 3.867445865695055*^9}, {
|
||||
3.8675854619929047`*^9, 3.867585470469511*^9}},
|
||||
3.8675854619929047`*^9, 3.867585470469511*^9}, {3.904556674711198*^9,
|
||||
3.90455667849632*^9}},
|
||||
NumberMarks->False,
|
||||
CellLabel->"In[22]:=",ExpressionUUID->"55c17c4f-14a9-40f1-a01c-ab0b0c9b3309"],
|
||||
CellLabel->"In[15]:=",ExpressionUUID->"55c17c4f-14a9-40f1-a01c-ab0b0c9b3309"],
|
||||
|
||||
Cell[BoxData[
|
||||
GraphicsBox[{{}, {{{}, {},
|
||||
{RGBColor[0.368417, 0.506779, 0.709798], PointSize[
|
||||
0.0055000000000000005`], AbsoluteThickness[1.6], LineBox[CompressedData["
|
||||
1:eJyN2HmcTXUfB/BjrGPJTcoT4tizHylZooMepo2rZJ8c5rGLS5YKOcnYl2Of
|
||||
kjpPZBtxs8xQyklIIRejxmQ5GIxhzDW2GevTfL6f88ftpdfr6Y+m9+v3+31/
|
||||
3+/397v3nlOVvsPf6BelKEqZv/6V//evf8xZey+1zv8Pt+sl/SEOJv2Dne6R
|
||||
NjvCvhK/iPUucKA3bb8F29M9S7zQJtoRa8V+pXvAVi/a7Qk7U2j900irsbD6
|
||||
p7debDbcJzb6Sr7daXWA5LuetsV6qjd/QdbDHIjaT6+Q/LvQaqLkn0jrm2Dj
|
||||
KO1slHoe0LZY/fAA6/sg0nYLyf8wrWZnIv+7tH4Zdmv+Rp+D9XG0cQJWqh+k
|
||||
T8HO/n/yYTh8k1bF/ldD9AbZ/4uQV5/s/wutiPVKh3gfNsOBGNpdARsVDrO+
|
||||
RNl/OO3Mlf2u0KYl8Yce4foJsP14CtebcOhFWhVbGbTSTep54SjHxeZ3R737
|
||||
K/0p9Qf3OynrZ3p2YbV4KvtzR+qfRrsz5P6coO3Zch/ij3H/zyLtLo20I9bS
|
||||
aDVZ7kuhNO53UO5LA1pPg8OTaLPgZeRT90/Gi4YDKf9gtxQcevo4/RRsHaLN
|
||||
VDhc4wTz73wF/VpBq51gN5d2k/B5CO07yfXJsHrtFOePg4MjXI7Pl89P+dOs
|
||||
J0/WD/NcAPHVxWfYz+awb9BZ5hMHa/3TOf477KTT7jRZ3+wc3Rj2x3muLfFK
|
||||
no/IX4u+wHy/hq1Y2vX/zd3h8De00w12J2fQV6XfBS+y3p7S7660kS3fV3Uy
|
||||
uV9xmb/yEusXKzUuc/4EmX+AtkfK95edxfXj5f7kXGF+i+TzVTGb80fBvoQw
|
||||
8zl1Md/6Ts8++Txsz2F/C4fzbW+7xvG12cj/rOetsJN0nfW+Bvufu0HPhvVi
|
||||
N7n/LNhqeItOl/NIpY1zcKh2Hv0Y5odr3qYX5uA8O9F2NMZ91e+w3my5D1Xu
|
||||
Mv8bZ5DfF7QqDlS4z3i5sLaL1suexfw2DzheDtYXKpfFKqwNKCBWisPmnCix
|
||||
Uxi2ZxYUm8Uk3rRCXF9U5jcqTP8q+39dhPHWw/61RcXuSlifUIzzk2BrRbRY
|
||||
D8Lm2OJcnyjz1RLMZypsPFWS8brD7rBSXN9P9l/8CMcbIT8rk1brSv5lS7Me
|
||||
cfCC5/LSn/4+rn8cVkuWiRj3N/H8pMyPfkxsN5P9tLJ0U4lf/3HGE4fqPEFf
|
||||
kP5P9Jwh+d2j7cuwe7scfQ1Wcv/F/fNk/e4K9F3Jb2dFxhP7hjzF8Qcyf2Al
|
||||
umN6vsO+yozfFzbn0mY8HNzmeTaslajC+ItlvFdVji+FlcnV6J7Sj6jq7H+Z
|
||||
SDu9I20/JvXXo5XliBdYXYPnu0r271ST8dbD/g61uH4zbFSqzf37S7yRngdK
|
||||
f67S9m3Md4fXYfyLsHWpLu9ndqRtsTq4HuvPkf0Xer4v8crU5/oHMr9UQ+6f
|
||||
Kv3tQxsu7HNpO1PqO6GxP6XPoZ6ijRhf7E+j9TJwqG7jCCtdaHe61H+fduLk
|
||||
Ph56luNvy/26Q5tyHrr/uYdblfnW2CYc7wuH99G2zDdfeZ5+V+J/7nmI3P8R
|
||||
Tbk+GzbCtPIgA/m+1My7r5F2/mZFwfe9/6dmXv8xHizXnP24DfuG0u5xWF9M
|
||||
q5/BxoIWHC+LeOoLL9DPwaZF63Xk96VZS+bXENZKtmI+LWFnBq22kfWNX2S8
|
||||
Fv+X9eO03jzSqljboHP8NTjctTXvky79WEfbL8G+t9rQBhy6RzuK/J6Ob0tX
|
||||
lufJ27TyujwPLn+J+8XJ82/Vf3O/8fL8+xqtyu+xss8bnyjxK7djfbUibSyQ
|
||||
59GXaXuW7L+MVpbI73fF9oy/UfJp5zlJnp8DtJMs+e2mDZkfahvDeGmwlkDb
|
||||
GQ91WH+Z8fg8fJFWbsnzRqtXOH5F4p+n1U7yfNvvVfarXKTVp+X5ZtZr7Ec5
|
||||
PA+5SbRdO9JqHVgv8TrraQRrJ2nnadj/ZweuLwCbhTvSRWA7ys94T8rzb+1O
|
||||
vL+PSPxOb3C+2OjwJuffk+fx/bRRSPar0pn758n75HXaLXE5wo44NPIt7/ON
|
||||
+coyWr8D+3d14Xrms6Qr96sl+SzsxvwayP4DunP+MunXOVqfJ+ub96BbPtSh
|
||||
rbQzHlbdnhw/JvGL92L9p6Sfz9KOjLvTaHeOxD9BGzfkvNNimW892K3bm+P9
|
||||
5f3ofm/v+1Leh2v28X7fpJ/V+nL+lxJPjeN5/Sb3p/1/mE+K/P+G8v24fo28
|
||||
T2XR7jh5vi7Xn/2X+xjMpO3y8n5kDeR4ovSj9CDG+1jqj6OVIfJ+02Qw9+8v
|
||||
7zczaLuGvE80HsL+tcB6J3ZIxHh4Km3Whs0iQx9utTXW++JppSnG7YLvML+e
|
||||
8n4z6R3v917i1xnG/YbJ+bwxnP1cIZ+fGgGO75Z6c2l9s7yvVB7J8Q1y/3Jo
|
||||
Y6bU0+5djo+S+7KbNi35vF0exf4nSH93jGb8H6Sf88dw/qNZEVbKyPvk9ki7
|
||||
52m3ldT7yHscN6TffT3L+6gzi7YnSrze7zP/uRJvOu0ulvPr9QHP81uJ/w3t
|
||||
Jsn75uRxzL+SvA+t95wm7ytdxzP+bTiQSKt35f1o9QSOq3j/Umt96P2+wv5O
|
||||
tH8WHOgwURwcBRtVTMYbDgdjPuL8VbD+M23l4H1KCUwSa0Wv5Tvc5mOurw0H
|
||||
L9FWIuaHMiZz/niMO9/F83w6X0e+vili36hrEfZPknhz6FAS7DtLu2tgu89U
|
||||
9qsjHJpJO2/CShLt6xlpe6Tst2ka898j+zWazngnZb8ptLNO1nefIQ5cgq0/
|
||||
aL+OeoIpM7n+GVi5O4v5R8v42Dnc/4DkO2ou/ZX0c4TF+vbCZpjWciWf4fPo
|
||||
G9LPzPk8/2oS//sFjNcGdi/Qjob5WulFjD8U485s2poHm00Wc34qHIpdIg63
|
||||
vpFv/4YE1qPCbv1PeJ5t4ZDyKftzDFbq0nbUTex3hA79JPHeWMr4RTHuu0Pr
|
||||
VWG9xmccXwhrubR/M6zuW8b9lsOBnM+930/Yyv6C/Wki84fZ7F972NxJ28Ph
|
||||
0MX/cv5K2a/Vl/y8HJL1jy5nvadhdxutXXio7b4rWO8OWb/5K36fnJd8/1zJ
|
||||
fLNhpccq1pMl+afSvuhb6NdHq5lvEA4dXsP1hXIjbBWEwwfXsp5fMT/4XiLr
|
||||
2Q3rt2gzBQ5UWcf+3oYVm9brIp5V6Wvm0xB2YmgtBg5WWM/P01zYvkKH4yMd
|
||||
smDtnQ3cf6rE/5H2JcCqHuT6NbCbQQcmIT/Nt5Hzj8FGczqwC3bm0KFM6V+p
|
||||
TaxnO+L5kmijXh7qL76Zfg62n6Xdt6S/b9PhYdLfnlvY/6WSX4Mkns9xid+d
|
||||
dtIjbYlDBZJZf4b0M4UO7UO+5oStPK/f5TwObmP8I9K/PNqcLv17/VuexzLp
|
||||
337aSIZN9Tueb3s4cI223oGNPdu981Xy//o/+Z7zu97G+WbR2mjYdn7g/J2w
|
||||
MWgH682C1TIO+1fhDuo/R1tPwnbcj8wvBjZK7mT8+bJ+C632l/7G/sT1KzFf
|
||||
30jbW2AtfhfPpxEcrr+b/TNgV9nD9eXuop/3aWN0gfy/zsqfWW88rN6h9V5Y
|
||||
b3bcy/gj4UDVX1jfduQbGkNbRyJti9XPf2U9/R6gHyP28fzGyPwn9/P8v4Wt
|
||||
nXRwxz3U88QBzj8Im4vooIv52qMHxal7pJ65tLNcifA0sZpOa4NRT7BviM6T
|
||||
/JJpuyzmB0oc4v5hjGub6WIVJd7Uw+KmLWF98hFxxotwKCqF+XSXfI7Sxd6X
|
||||
+9b5qDh3Eey7R5trJF6t38XvJcNG9T+4fqPsf4AO7ZV4t+itB2B3dCrP57TU
|
||||
c51WsiW/mGN0cfTPukobjeHglTR+vzSIyv+r6ce5/whYfewE538CB+fRA204
|
||||
0Pwk63fh0Bx69VWJd5YO5MBOn1PihKIF0Y/prrhbW1jpdZr3cxxsfn2G9Rky
|
||||
v95Z9j8W1rvQag/YmpDO+5MCO6s8H4aDH5xjfssl3kE6ME/i5dF7EyWfL88z
|
||||
3y9hbT+9dYnsp15gv3bKfq/Q7hnJ/xqtJcNu+wyexy+y32d0attC6F/5i+Kn
|
||||
s2S/4Re97yuM+4dm8r6Xh91Mz8/AgUGX2M8msPHCZdbXEXYsetqbEq90Fu/3
|
||||
PDgYR9tLJR/jCr8fTsNWdDbX50m8xvTWRwoj3kY64XnY1cLcvx2sNLjK+fGw
|
||||
MYnOTYJ993PYnxZF8v/a468xPwM2alzn9/NY2J9La1tgd8wN7p8IB27QVrLE
|
||||
q3yT/f5R4u2ltbtwuN0t9r9hUZzPsFxxzExYKZfH8/gBdnbQe1PgQIs7rO/l
|
||||
Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
8PMzGFZ70P4psLmettbBelclC35vLRw6Shtn5Xw6F6CrFWn9P+hU0Yg=
|
||||
1:eJyN2Gl0FFUWB/AibEnYWkTDJhQIsgrFoAyrFuBAdBA6ikBYhoIMmyA0DCLK
|
||||
Ysmwr4UiRhEtBVkMQg9iEpWREkGjgDQQMCBLAQmEQEgTtiRsM7n/f33oOXjO
|
||||
+MH4O++9++6973VXlw2GT3hhRJSiKL3/+6/Sv//9x1yccbFr6X+4/S/q93Ew
|
||||
9Q/sJEba7CP2VfoZ1vuJA0Np+yWxvcAz4oW+pB1Yi/6FHii2BtPuILEzl9Y/
|
||||
iLQ6RKz+7q2HzdZ7YGM48k2k1VHIdzNtw3qWN/+d/Ps5ELWXXov8+9FqCvJP
|
||||
ofUvxcZh2tmKeu7RNqzO3Mf63oi03Qn5H6TVgjzJ/zatXxK7j/1K54j1abRx
|
||||
Qqw02k+fEjt7/8gHxeEbtAr7/xqit2D/j0Nefdj/Z1qB9XoHeB+2iQPxtLtW
|
||||
bNQ5yPpSsP8E2lmG/S7TpoX44w5x/Qyx/VAm15vi0NO0Clu5tDIA9XQ+zHHY
|
||||
/Pawd3/Rnyq/cb+TWL/IsytWY7PYn1uofz7tLsT9OUHbS3Af5hzl/h9G2l0V
|
||||
aQfWjtFqGu5LuWPcbz/uSytaPyYOz6LNspcknxa/M16MOJD5B3ariENNj9OP
|
||||
iK0DtJklDjc+wfz7XpZ+raXVBLFbRLup8nkI7TnJ9Wli9eopzp8mDk50Of42
|
||||
Pj+1T7OeYqwf77mMxFdXnmE/O4p9Y84ynySxNjKb40fETjbtzsf6Djl0W7E/
|
||||
yXMzxKt8LiJ/LeY88/1CbA2hXf//OFEc/hftDBC7s3PpK+h32QusdxD63Z82
|
||||
CvB91TyP+8Vi/rqLrB9WGl/i/BmYv4+2J+H7y87n+um4P4WXmd+7+HzVLeD8
|
||||
yWJfcpj5nLpQan2nZx8+D9sL2d/y4VLbX1/l+OcFkv9Zz+liJ/Ua6+0l9j95
|
||||
nV4i1qNvcP/FYqv1TTob55FFGzniULNi+kGZH36shF5RKOeZQNsxMu5rdIv1
|
||||
FuA+NLjN/K+fkfw+plU4UOcu4xWJtV20XuOszO92j+NxYn2FcglWxdqoMrAS
|
||||
KzaXRsFOebG9qCxsRiPe/HJcXxHz25Snf8H+X1RgvM1i/+cVYXedWJ8Rzfmp
|
||||
YmttDKwHxeZrsVyfgvlqJeYzT2w8UpnxEsXu+CpcPwL7r6zK8TaSn5VHqy2Q
|
||||
f41qrAcOnvdcG/0Z6eP6h8Rq5eoR4/52nmthfsyDsN0B+2k16PaI//hDjAeH
|
||||
mj9Mn0f/3/Sci/zu0PYlsVsSR18VK0U1uX8x1u+uQ99GfjvrMh7sG/sIx+9h
|
||||
/uh6dJ/sUod99Rl/uNhcRptzxMGvPS8Ra5UaMP5KjA9uyPFVYmX2o/Qg9COq
|
||||
EftfPdLO0EjbD6L+lrSyRuIFNjTm+a7H/gmPMd5msb93E67fJjbqNeP+IxFv
|
||||
kufR6M8V2i6R+e6E5ox/QWxdbMH7WRBpG1Zfbsn6C7H/Cs93Ea/641x/D/Or
|
||||
tOb+WejvMNpwxT6XtvNQ3wmN/amWI/VUbMP4sP8YrVcXh1q0jbDSj3YXoP67
|
||||
tJOE+3jgCY7/DffrFm3iPHT/k/e3ivnWa+04Plwc3kPbmG8+92f6H4j/keex
|
||||
uP8T23N9gdgI08q9XMn3mQ7efY208z9WFPm+9//Qweu/jAfjOrIfJWLfONo9
|
||||
LtZX0uqHYuOdThyvIfHUzp3pJ8WmRevN8Xzp0IX5tRZrlZ9iPl3EzkJa7Yb1
|
||||
bZ9mvE7/l/XjtN4x0iqsbdE53ksc7t+V90lHPzbR9jNi30vdaEMcukM7Cp6n
|
||||
07vT9fF7soRWnsfvwTXPcL8k/P5t+BfuNx2/f3vRKp7Hyh5v/E3Er9+D9TWJ
|
||||
tPEOfo8+S9uLsf9qWnkPz++6PRl/K/Lp4TkVv58DtJOG/HbTBuaHuscz3jGx
|
||||
lkzbufd1WH+W8fh7+AKt3MTvjaee4/hlxD9Hqwn4fTvir+xXXKTVpvh9s7gX
|
||||
+xEnv4fcVNpuFmm1uViv9DzraSPWTtJOU7H/995cX0Zslu9DVxDbUX7Gq4Xf
|
||||
v80SeH+rIn7CC5wPG71f5Pw7+D2+lzbKYb8Gfbl/Md4nr9FupUsRduDQpJe8
|
||||
z7fMV1bT+i2xf1c/rmc+7/Xnfk2Qz4oBzK8V9h+VyPmr0a8cWl+O9R0H0l3u
|
||||
61A67UwXq+4gjh9F/NjBrP8U+vkE7WDcnU+7SxH/BG1cx3kfG8J8W4rdFkM5
|
||||
PhLvR3eHet+XeB9+bJj3fEM/Hx3O+Z8inprE8/oV96fn35lPJv5/Q+0RXL8R
|
||||
71P5tDsNv6/jRrL/uI/BPNqujfcjazTHU9CPamMY75+oP4lWxuL9pt3L3H8k
|
||||
3m8W0nZjvE+0Hcv+dZL1zpCxEePhebTZTGxWGHd/q11lvW8OrbSXcbvsK8xv
|
||||
EN5vZr3iPe8Rv/l47jce5/PCBPZzLT4/jQMc3416i2h9G95X6k/i+Bbcv0La
|
||||
WIR6evyD45NxX3bTpoXP26XJ7H8y+rvjVcb/Dv18ewrnP5AfYaU63ie3R9o9
|
||||
R7tPod6qUzluoN/DPeN91FlM228i3tDXmf8yxFtAuytxfoPf4Hl+g/j/ot1U
|
||||
vG/Onsb86+F9aLPnY3hf6T+d8UvEgRRavY33ow0zOK7K+5faZKb3fBX7E2j/
|
||||
YnGg95twcLLYaGAy3gRxMP4tzl8v1n+irUJ5n1ICs2Ct4tVSh7v9k+ubiYMX
|
||||
aStF5odyZ3P+dBl3vp3D8+l7TfL1zYV9k69G2D8L8ZbSoVSx7yztbhTbw+ax
|
||||
X33EoUW086JYSaV9gyJtT8J+X85n/j9ivzYLGO8k9ptLO5uwPnEhHLgotn6j
|
||||
/brUE8xcxPV/Eiu3FzP/GIy/tpT770O+k5fRn6GfEy3WlyE2w7RWhHwmLKev
|
||||
o595b/P8H0X8f7/DeN3E7nna0WS+Vu1dxh8n484S2louNtut5PwscWjIe3C4
|
||||
6/VS+7cksx5V7D7+Ps+zuzikfMD+HBUrLWg76obsd4gO/YB4L6xi/Ioy7rtF
|
||||
6w3FeuMPOb5CrBXR/m1idc9q7rdGHCj8yHt+iq2Cj9mfdpg/3mb/eorNnbQ9
|
||||
QRy68Annr8N+T33Kz8sBrH9gDes9LXa/prXz97U9fC3r3YH12z7j98k55Pv7
|
||||
OuZbIFYGrmc9+cg/i/bF3JR+vbWB+QbFoYMbub5cUYStsuLw/s9Zzy8yPzg1
|
||||
hfXsFus3aTNTHGiwif0tESs2rbeQeFa9L5hPa7ETT2vx4mCdzfw8LRPbl+nw
|
||||
nEiHLLH2yhbuPw/xv6d9yWJVD3L9RrGbSwdmSX6abyvnHxUbHenALrGzlA7l
|
||||
oX9VvmQ92yWeL5U2WhZL/bHb6CfF9hO0+xL6+zc6PB79HfQV+78K+bVK5fkc
|
||||
R/xE2smOtAWHyqSx/lz0M5MO7ZF8zRnpPK8jOI/9XzP+IfSvmDYXoH/Pf8Pz
|
||||
WI3+7aWNNLGpfsvz7SkOXKWtV8TGj9u981VK//rf/zfn9y+R882ntVfFtvMd
|
||||
5+8UG2N2sN58sVrdYf/q3JL6c2irlthO+p75xYuNyjsZ/22s/4pWR6K/Q37g
|
||||
+nUyX99K21+JtTm7eD5txOHHd7N/hthVfuT6uNvSz7u08WqZ0r/Oup9Y7xyx
|
||||
eovWB8t6s08G408SBxr+zPq2S76hKbR1KNI2rH70C+sZcU/6MXEPz28K5tfa
|
||||
y/P/RmztpIM77kg9D+/j/P1i81066Mp87YH9cNaPqGcZ7axRIjwfVrNp7WWp
|
||||
Jzg8RBcjvzTariHzA5UOcP+wjGvb6Oi6iDfvINy+i1iffQjOfVocispkPonI
|
||||
5zAd/TruW9/DcNG7Yt8d2tyIeE2OwFPTxEaj37h+K/bfR4cyEO8mnb5P7L6a
|
||||
xfM5jXqu0UoB8os/SsdK/6wrtNFWHLx8jN8vraJK/2r6ce4/Uaw+eILz3xcH
|
||||
l9OjbXGg40nW74pDS+kNVxDvLB0oFDvDTsHJFctKPxa48IDuYmXwad7PaWLz
|
||||
izOsz8D8lmfZ/yFivR+tDhRbM7J5fzLFznrPB8XBN3KY3xrE208HliNeMZ2R
|
||||
gnw+Pcd8PxVre+n097Cfep792on9nqPdM8j/Kq2lid2euTyPn7Hfh3RW93LS
|
||||
v9oX4Kb52G/CBe/7Ssb94/J432uL3TzPfxIHxlxkP9uJjc6XWF8fsWPR819E
|
||||
vGr5vN/LxcEk2l6FfIzL/H44LbZiCri+GPHa0ulVy0u8rXTyn8WuFub+PcRK
|
||||
qyucP0dszKKLUsW+u4XsT6cKpX/t6VeZnyE2Gl/j9/NrYn8RrX0ldqdc5/4p
|
||||
4sB12kpDvPo32O/vES+D1m6Lwz1usv+tK8r5jC+C4xeJlbhinsd3YmcHnZEp
|
||||
DnS6xfqejZbzy6aVJLGadpv5LRKble4w3o1IJx/AeZ6ks7LFypC7PJ+B0i9t
|
||||
Hu0fJXbK3+Pn52WxOpD2zxWbm2lrk1jvr+SLp34uDh2mjbM4n75l6EelP9ZM
|
||||
Orqn2EyIgkePEwen0UZArJfQ6TvEql0Obu+TfgXrlYc3PIH+/USHnxfbV2i/
|
||||
H/3vUQFOHirWAnT0NLHxAd3eElu7vPEgzusyPX+dOFyzIux+LHYv0tFHsP+K
|
||||
aNi8gPhdYmClqpyX3xcLax3F7lI6vac4NKwSnPuGWFlM15yJ+7CgMhzchvM/
|
||||
QdvfiPW5VeCiM7hPiVVhKyZG6vmNju8lDpepxvz7iNWWdPCtWIlv0lM/EruZ
|
||||
tIr6A+8/xPxhpebDcMjB592h3bV4Hj0dx3xTxeYY2rcSz6PONeGM1WLlW9rG
|
||||
80/LoaMPi8NLasFZYXGwXW2Oj5LnlWvQU2eI7Zg6sJMsDrWl228QG1vpjOP4
|
||||
/VChLvtxBs+/o/QAPP8Csx7h/ASxvYn2j8Hz7Qid/jqeZxvrsX+pYn/T+rwP
|
||||
B/G8nE5bOVj/usr9WuP7/Vda7Y3nR68GvC8zxeEptLJQrH5Ct1+K59fkhjTq
|
||||
D2TQ1nqxf3wj3p9ny3T9D29RpSQ=
|
||||
"]]}},
|
||||
TagBox[
|
||||
{Opacity[0.], PointBox[{{3.8930112*^9, 181356.}}]},
|
||||
Annotation[#, {{Callout}, Charting`Private`Tag$145704, {
|
||||
530}}]& ]}, {{{}, {{}, GraphicsGroupBox[{
|
||||
{Opacity[0.], PointBox[{{3.9114144*^9, 141631.}}]},
|
||||
Annotation[#, {{Callout}, Charting`Private`Tag$163112, {
|
||||
590}}]& ]}, {{{}, {{}, GraphicsGroupBox[{
|
||||
{RGBColor[0.87, 0.94, 1], AbsoluteThickness[4], Opacity[
|
||||
NCache[
|
||||
Rational[2, 3], 0.6666666666666666]], CapForm["Butt"], JoinForm[
|
||||
"Round"],
|
||||
BSplineCurveBox[{
|
||||
Offset[{3., 0.}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{8., 0.}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{10., 0.}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{12., 0.}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{12., 0.}, {3.8932603125*^9, 181356.}]}]},
|
||||
Offset[{-3., 3.6739403974420594`*^-16}, {3.91113733125*^9,
|
||||
141631.}],
|
||||
Offset[{-8., 9.797174393178826*^-16}, {3.91113733125*^9, 141631.}],
|
||||
Offset[{-10., 9.797174393178826*^-16}, {3.91113733125*^9,
|
||||
141631.}],
|
||||
Offset[{-12., 9.797174393178826*^-16}, {3.91113733125*^9,
|
||||
141631.}],
|
||||
Offset[{-12., 9.797174393178826*^-16}, {3.91113733125*^9,
|
||||
141631.}]}]},
|
||||
{RGBColor[0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
|
||||
AbsoluteThickness[1.25],
|
||||
BSplineCurveBox[{
|
||||
Offset[{3., 0.}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{8., 0.}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{10., 0.}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{12., 0.}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{12., 0.}, {3.8932603125*^9, 181356.}]}]},
|
||||
Offset[{-3., 3.6739403974420594`*^-16}, {3.91113733125*^9,
|
||||
141631.}],
|
||||
Offset[{-8., 9.797174393178826*^-16}, {3.91113733125*^9, 141631.}],
|
||||
Offset[{-10., 9.797174393178826*^-16}, {3.91113733125*^9,
|
||||
141631.}],
|
||||
Offset[{-12., 9.797174393178826*^-16}, {3.91113733125*^9,
|
||||
141631.}],
|
||||
Offset[{-12., 9.797174393178826*^-16}, {3.91113733125*^9,
|
||||
141631.}]}]},
|
||||
{EdgeForm[None], FaceForm[{RGBColor[0.87, 0.94, 1], Opacity[
|
||||
NCache[
|
||||
Rational[2, 3], 0.6666666666666666]]}],
|
||||
PolygonBox[{
|
||||
Offset[{48., 6.0000000000000036`}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{48., -5.9999999999999964`}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{12., -6.0000000000000036`}, {3.8932603125*^9, 181356.}],
|
||||
Offset[{12., 5.9999999999999964`}, {3.8932603125*^9,
|
||||
181356.}]}]},
|
||||
Offset[{-12., 6.000000000000004}, {3.91113733125*^9, 141631.}],
|
||||
Offset[{-12., -5.999999999999996}, {3.91113733125*^9, 141631.}],
|
||||
Offset[{-48., -6.000000000000003}, {3.91113733125*^9, 141631.}],
|
||||
Offset[{-48., 5.999999999999997}, {3.91113733125*^9,
|
||||
141631.}]}]},
|
||||
{RGBColor[0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
|
||||
AbsoluteThickness[1.25], EdgeForm[None]}, {}, InsetBox[
|
||||
StyleBox[
|
||||
RotationBox["\<\"181356\"\>",
|
||||
RotationBox["\<\"141631\"\>",
|
||||
BoxRotation->0.],
|
||||
StripOnInput->False,
|
||||
LineColor->GrayLevel[0],
|
||||
@@ -287,7 +307,8 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
Opacity->1,
|
||||
FontSize->Small,
|
||||
FontColor->GrayLevel[0],
|
||||
FontOpacity->1], Offset[{30., 0.}, {3.8932603125*^9, 181356.}],
|
||||
FontOpacity->1],
|
||||
Offset[{-30., 9.797174393178826*^-16}, {3.91113733125*^9, 141631.}],
|
||||
NCache[ImageScaled[{Rational[1, 2], Rational[1, 2]}],
|
||||
ImageScaled[{0.5, 0.5}]]]}]}}, {}}},
|
||||
AspectRatio->NCache[GoldenRatio^(-1), 0.6180339887498948],
|
||||
@@ -315,88 +336,34 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
StyleBox["\"2018\"",
|
||||
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.7552896*^9,
|
||||
FormBox[
|
||||
StyleBox["\"2019\"",
|
||||
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.7868256*^9,
|
||||
FormBox[
|
||||
StyleBox["\"2020\"",
|
||||
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.818448*^9,
|
||||
FormBox[
|
||||
StyleBox["\"2021\"",
|
||||
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.849984*^9,
|
||||
FormBox[
|
||||
StyleBox["\"2022\"",
|
||||
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.88152*^9,
|
||||
FormBox[
|
||||
StyleBox["\"2023\"",
|
||||
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.913056*^9,
|
||||
FormBox[
|
||||
StyleBox["\"2024\"",
|
||||
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.9762144*^9,
|
||||
FormBox[
|
||||
StyleBox["\"2026\"",
|
||||
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.7237536*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7288512*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7341216*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.739392*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7447488*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7500192*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7552896*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7552896*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7603872*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7656576*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.770928*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7762848*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7815552*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7868256*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
@@ -405,54 +372,10 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7920096*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.79728*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8025504*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8079072*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8131776*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.818448*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.818448*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8235456*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.828816*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8340864*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8394432*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8447136*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.849984*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
@@ -461,71 +384,31 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8550816*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.860352*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8656224*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8709792*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8762496*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.88152*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.88152*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8866176*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.891888*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8971584*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.9025152*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.9077856*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.913056*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.913056*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.9446784*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.9762144*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}}, {{3.7237536*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.7552896*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.7868256*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.818448*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
@@ -533,11 +416,11 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.88152*^9,
|
||||
Directive[]}, {3.913056*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
Directive[]}, {3.913056*^9,
|
||||
Directive[]}, {3.9762144*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
Rational[1, 72], 0},
|
||||
@@ -545,54 +428,10 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7288512*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7341216*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.739392*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7447488*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7500192*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7552896*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7552896*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7603872*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7656576*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.770928*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7762848*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7815552*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7868256*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
@@ -601,54 +440,10 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.7920096*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.79728*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8025504*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8079072*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8131776*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.818448*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.818448*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8235456*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.828816*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8340864*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8394432*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8447136*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.849984*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
@@ -657,58 +452,26 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8550816*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.860352*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8656224*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8709792*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8762496*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.88152*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.88152*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8866176*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.891888*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.8971584*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.9025152*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.9077856*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.913056*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.913056*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.9446784*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}, {3.9762144*^9,
|
||||
FormBox[
|
||||
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
||||
0.009722222222222222, 0.},
|
||||
Directive[]}}}}],
|
||||
GridLines->FrontEndValueCache[{Charting`ScaledTickValues[
|
||||
((Transpose[{#,
|
||||
@@ -726,21 +489,11 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
Alternatives["",
|
||||
Spacer[{0, 0}]]], Head[#] === List, Length[#] > 0]& ], All, 1]]& )[
|
||||
SlotSequence[1]], {Identity, Identity}]& , Automatic}, {{{3.7237536*^9,
|
||||
Directive[
|
||||
GrayLevel[0.4],
|
||||
Opacity[0.5],
|
||||
AbsoluteThickness[1.],
|
||||
AbsoluteDashing[{1., 2.}]]}, {3.7552896*^9,
|
||||
Directive[
|
||||
GrayLevel[0.4],
|
||||
Opacity[0.5],
|
||||
AbsoluteThickness[1.],
|
||||
AbsoluteDashing[{1., 2.}]]}, {3.7868256*^9,
|
||||
Directive[
|
||||
GrayLevel[0.4],
|
||||
Opacity[0.5],
|
||||
AbsoluteThickness[1.],
|
||||
AbsoluteDashing[{1., 2.}]]}, {3.818448*^9,
|
||||
Directive[
|
||||
GrayLevel[0.4],
|
||||
Opacity[0.5],
|
||||
@@ -750,12 +503,12 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
GrayLevel[0.4],
|
||||
Opacity[0.5],
|
||||
AbsoluteThickness[1.],
|
||||
AbsoluteDashing[{1., 2.}]]}, {3.88152*^9,
|
||||
AbsoluteDashing[{1., 2.}]]}, {3.913056*^9,
|
||||
Directive[
|
||||
GrayLevel[0.4],
|
||||
Opacity[0.5],
|
||||
AbsoluteThickness[1.],
|
||||
AbsoluteDashing[{1., 2.}]]}, {3.913056*^9,
|
||||
AbsoluteDashing[{1., 2.}]]}, {3.9762144*^9,
|
||||
Directive[
|
||||
GrayLevel[0.4],
|
||||
Opacity[0.5],
|
||||
@@ -847,13 +600,13 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
"\"base version: (adware + malware) only\"", 12, Bold, StripOnInput ->
|
||||
False]}, {
|
||||
StyleBox[
|
||||
"\"updated: Sun 14 May 2023 23:25:52 UTC\"", 12, StripOnInput ->
|
||||
"\"updated: Wed 13 Dec 2023 05:16:27 UTC\"", 12, StripOnInput ->
|
||||
False]}}, GridBoxAlignment -> {"Columns" -> {{Center}}},
|
||||
DefaultBaseStyle -> "Column",
|
||||
GridBoxItemSize -> {
|
||||
"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}], "Column"],
|
||||
TraditionalForm],
|
||||
PlotRange->{{3.729024*^9, 3.8930112*^9}, {0, 204490.}},
|
||||
PlotRange->{{3.729024*^9, 3.9114144*^9}, {0, 218063.}},
|
||||
PlotRangePadding->{{
|
||||
Scaled[0.02],
|
||||
Scaled[0.02]}, {
|
||||
@@ -906,8 +659,30 @@ Yji/dFqJg9Xku8xvJmyWuMd4NyOdcEjO8ySdmg4rsfd5Pj3QL20q7R8AO4Uf
|
||||
3.89090978001711*^9, 3.891285151358225*^9, 3.891545263571479*^9,
|
||||
3.8916073042523813`*^9, 3.891872341652968*^9, 3.892072401751935*^9,
|
||||
3.89228235594491*^9, 3.892544999424947*^9, 3.892806179970969*^9,
|
||||
3.893095552437428*^9},
|
||||
CellLabel->"Out[24]=",ExpressionUUID->"1ff7dc78-af14-4465-b42c-0d219fe3f0c1"]
|
||||
3.893095552437428*^9, 3.8931723751025543`*^9, 3.89362060069613*^9,
|
||||
3.893686053639799*^9, 3.89397203764882*^9, 3.894751203039884*^9,
|
||||
3.895084844111672*^9, 3.895439490125032*^9, 3.8955263216939163`*^9,
|
||||
3.895657784061549*^9, 3.8957448599055853`*^9, 3.895931247787265*^9,
|
||||
3.896013566564756*^9, 3.896095386373332*^9, 3.8965191786429*^9,
|
||||
3.8968936313937263`*^9, 3.897216178858164*^9, 3.897657754621402*^9,
|
||||
3.897926194231195*^9, 3.8983794149994497`*^9, 3.8983794476037083`*^9,
|
||||
3.8984342923172283`*^9, 3.898951274337104*^9, 3.899121622375916*^9,
|
||||
3.899475149831279*^9, 3.899911501496304*^9, 3.900175205856585*^9,
|
||||
3.900270527812401*^9, 3.900491563343502*^9, {3.903025185560467*^9,
|
||||
3.9030252059821978`*^9}, 3.903174150401764*^9, 3.903182074275147*^9,
|
||||
3.903383990135808*^9, 3.903384025396119*^9, 3.903726387165244*^9,
|
||||
3.903971852825098*^9, 3.904336629052966*^9, 3.904556665826528*^9,
|
||||
3.904660734636202*^9, 3.905083048189001*^9, 3.9052851290532703`*^9,
|
||||
3.905441042720232*^9, 3.905782272103561*^9, 3.906106379419388*^9,
|
||||
3.90620708413487*^9, 3.906558811905631*^9, 3.9066353015959377`*^9,
|
||||
3.906908194396344*^9, 3.907055587466549*^9, 3.907452024145508*^9,
|
||||
3.90783837173269*^9, 3.90797214412626*^9, 3.908034764359009*^9,
|
||||
3.908469310792593*^9, 3.908732154353013*^9, 3.908732190062996*^9,
|
||||
3.908901085229148*^9, {3.909427575397406*^9, 3.909427588602787*^9},
|
||||
3.909612415221402*^9, 3.909847575834868*^9, 3.909936481017467*^9,
|
||||
3.909991254378272*^9, 3.910005424673617*^9, 3.910456143107051*^9,
|
||||
3.910647476573389*^9, 3.911433387460314*^9},
|
||||
CellLabel->"Out[17]=",ExpressionUUID->"0eeb98cb-4e1b-4280-9f13-11261c108412"]
|
||||
}, Open ]]
|
||||
},
|
||||
WindowSize->{1234, 1257},
|
||||
@@ -927,10 +702,10 @@ CellTagsIndex->{}
|
||||
*)
|
||||
(*NotebookFileOutline
|
||||
Notebook[{
|
||||
Cell[561, 20, 2810, 65, 157, "Input",ExpressionUUID->"e5e34011-aa3d-4e95-90b1-863054ac32f5"],
|
||||
Cell[561, 20, 3004, 67, 157, "Input",ExpressionUUID->"e5e34011-aa3d-4e95-90b1-863054ac32f5"],
|
||||
Cell[CellGroupData[{
|
||||
Cell[3396, 89, 3319, 73, 409, "Input",ExpressionUUID->"55c17c4f-14a9-40f1-a01c-ab0b0c9b3309"],
|
||||
Cell[6718, 164, 31390, 745, 426, "Output",ExpressionUUID->"1ff7dc78-af14-4465-b42c-0d219fe3f0c1"]
|
||||
Cell[3590, 91, 3368, 74, 409, "Input",ExpressionUUID->"55c17c4f-14a9-40f1-a01c-ab0b0c9b3309"],
|
||||
Cell[6961, 167, 23785, 517, 426, "Output",ExpressionUUID->"0eeb98cb-4e1b-4280-9f13-11261c108412"]
|
||||
}, Open ]]
|
||||
}
|
||||
]
|
||||
|
||||
@@ -528,3 +528,63 @@
|
||||
2023-05-08,177487
|
||||
2023-05-11,179308
|
||||
2023-05-14,181356
|
||||
2023-05-15,182497
|
||||
2023-05-20,183693
|
||||
2023-05-21,183820
|
||||
2023-05-24,186359
|
||||
2023-06-03,188935
|
||||
2023-06-06,190101
|
||||
2023-06-10,190910
|
||||
2023-06-11,190986
|
||||
2023-06-13,191475
|
||||
2023-06-14,192353
|
||||
2023-06-15,193031
|
||||
2023-06-16,194049
|
||||
2023-06-17,193745
|
||||
2023-06-18,193532
|
||||
2023-06-23,195265
|
||||
2023-06-27,195888
|
||||
2023-07-01,197056
|
||||
2023-07-06,198470
|
||||
2023-07-09,198903
|
||||
2023-07-14,200541
|
||||
2023-07-15,200643
|
||||
2023-07-21,202390
|
||||
2023-07-23,202580
|
||||
2023-07-27,203871
|
||||
2023-08-01,205106
|
||||
2023-08-04,207241
|
||||
2023-08-05,207329
|
||||
2023-08-06,217142
|
||||
2023-08-08,218063
|
||||
2023-08-10,193508
|
||||
2023-09-14,193527
|
||||
2023-09-17,170010
|
||||
2023-09-21,136348
|
||||
2023-09-24,136916
|
||||
2023-09-25,135874
|
||||
2023-09-30,136121
|
||||
2023-10-03,136500
|
||||
2023-10-04,137889
|
||||
2023-10-08,138779
|
||||
2023-10-12,142561
|
||||
2023-10-13,143279
|
||||
2023-10-17,144152
|
||||
2023-10-18,144647
|
||||
2023-10-21,146329
|
||||
2023-10-23,146518
|
||||
2023-10-28,148939
|
||||
2023-11-01,150073
|
||||
2023-11-02,150826
|
||||
2023-11-03,151351
|
||||
2023-11-08,153284
|
||||
2023-11-11,154182
|
||||
2023-11-13,154802
|
||||
2023-11-19,157163
|
||||
2023-11-21,158148
|
||||
2023-11-24,159709
|
||||
2023-11-25,160064
|
||||
2023-11-26,160199
|
||||
2023-12-01,144135
|
||||
2023-12-03,144626
|
||||
2023-12-13,141631
|
||||
@@ -113,6 +113,7 @@ class TestGetDefaults(Base):
|
||||
"keepdomaincomments": True,
|
||||
"extensionspath": "foo" + self.sep + "extensions",
|
||||
"extensions": [],
|
||||
"nounifiedhosts": False,
|
||||
"compress": False,
|
||||
"minimise": False,
|
||||
"outputsubfolder": "",
|
||||
@@ -679,6 +680,7 @@ class TestUpdateSourcesData(Base):
|
||||
datapath=self.data_path,
|
||||
extensionspath=self.extensions_path,
|
||||
sourcedatafilename=self.source_data_filename,
|
||||
nounifiedhosts=False,
|
||||
)
|
||||
|
||||
def update_sources_data(self, sources_data, extensions):
|
||||
@@ -838,8 +840,12 @@ class TestNormalizeRule(BaseStdout):
|
||||
# Note: "Bare"- Domains are accepted. IP are excluded.
|
||||
for rule in [
|
||||
"128.0.0.1",
|
||||
"0.0.0 google",
|
||||
"0.1.2.3.4 foo/bar",
|
||||
"::1",
|
||||
"0.0.0.0 128.0.0.2",
|
||||
"0.1.2.3 foo/bar",
|
||||
"0.3.4.5 example.org/hello/world",
|
||||
"0.0.0.0 https",
|
||||
"0.0.0.0 https..",
|
||||
]:
|
||||
self.assertEqual(normalize_rule(rule, **kwargs), (None, None))
|
||||
|
||||
@@ -849,6 +855,25 @@ class TestNormalizeRule(BaseStdout):
|
||||
expected = "==>" + rule + "<=="
|
||||
self.assertIn(expected, output)
|
||||
|
||||
def test_mixed_cases(self):
|
||||
for rule, expected_target in (
|
||||
("tWiTTer.cOM", "twitter.com"),
|
||||
("goOgLe.Com", "google.com"),
|
||||
("FoO.bAR.edu", "foo.bar.edu"),
|
||||
):
|
||||
expected = (expected_target, "0.0.0.0 " + expected_target + "\n")
|
||||
|
||||
actual = normalize_rule(
|
||||
rule, target_ip="0.0.0.0", keep_domain_comments=False
|
||||
)
|
||||
self.assertEqual(actual, expected)
|
||||
|
||||
# Nothing gets printed if there's a match.
|
||||
output = sys.stdout.getvalue()
|
||||
self.assertEqual(output, "")
|
||||
|
||||
sys.stdout = StringIO()
|
||||
|
||||
def test_no_comments(self):
|
||||
for target_ip in ("0.0.0.0", "127.0.0.1", "8.8.8.8"):
|
||||
rule = "127.0.0.1 1.google.com foo"
|
||||
@@ -888,21 +913,28 @@ class TestNormalizeRule(BaseStdout):
|
||||
def test_two_ips(self):
|
||||
for target_ip in ("0.0.0.0", "127.0.0.1", "8.8.8.8"):
|
||||
rule = "127.0.0.1 11.22.33.44 foo"
|
||||
expected = ("11.22.33.44", str(target_ip) + " 11.22.33.44\n")
|
||||
|
||||
actual = normalize_rule(
|
||||
rule, target_ip=target_ip, keep_domain_comments=False
|
||||
)
|
||||
self.assertEqual(actual, expected)
|
||||
self.assertEqual(actual, (None, None))
|
||||
|
||||
# Nothing gets printed if there's a match.
|
||||
output = sys.stdout.getvalue()
|
||||
self.assertEqual(output, "")
|
||||
|
||||
expected = "==>" + rule + "<=="
|
||||
self.assertIn(expected, output)
|
||||
|
||||
sys.stdout = StringIO()
|
||||
|
||||
def test_no_comment_raw(self):
|
||||
for rule in ("twitter.com", "google.com", "foo.bar.edu"):
|
||||
for rule in (
|
||||
"twitter.com",
|
||||
"google.com",
|
||||
"foo.bar.edu",
|
||||
"www.example-foo.bar.edu",
|
||||
"www.example-3045.foobar.com",
|
||||
"www.example.xn--p1ai"
|
||||
):
|
||||
expected = (rule, "0.0.0.0 " + rule + "\n")
|
||||
|
||||
actual = normalize_rule(
|
||||
@@ -990,7 +1022,7 @@ class TestWriteOpeningHeader(BaseMockDir):
|
||||
|
||||
def test_missing_keyword(self):
|
||||
kwargs = dict(
|
||||
extensions="", outputsubfolder="", numberofrules=5, skipstatichosts=False
|
||||
extensions="", outputsubfolder="", numberofrules=5, skipstatichosts=False, nounifiedhosts=False
|
||||
)
|
||||
|
||||
for k in kwargs.keys():
|
||||
@@ -1003,7 +1035,7 @@ class TestWriteOpeningHeader(BaseMockDir):
|
||||
|
||||
def test_basic(self):
|
||||
kwargs = dict(
|
||||
extensions="", outputsubfolder="", numberofrules=5, skipstatichosts=True
|
||||
extensions="", outputsubfolder="", numberofrules=5, skipstatichosts=True, nounifiedhosts=False
|
||||
)
|
||||
write_opening_header(self.final_file, **kwargs)
|
||||
|
||||
@@ -1032,7 +1064,7 @@ class TestWriteOpeningHeader(BaseMockDir):
|
||||
|
||||
def test_basic_include_static_hosts(self):
|
||||
kwargs = dict(
|
||||
extensions="", outputsubfolder="", numberofrules=5, skipstatichosts=False
|
||||
extensions="", outputsubfolder="", numberofrules=5, skipstatichosts=False, nounifiedhosts=False
|
||||
)
|
||||
with self.mock_property("platform.system") as obj:
|
||||
obj.return_value = "Windows"
|
||||
@@ -1059,7 +1091,7 @@ class TestWriteOpeningHeader(BaseMockDir):
|
||||
|
||||
def test_basic_include_static_hosts_linux(self):
|
||||
kwargs = dict(
|
||||
extensions="", outputsubfolder="", numberofrules=5, skipstatichosts=False
|
||||
extensions="", outputsubfolder="", numberofrules=5, skipstatichosts=False, nounifiedhosts=False
|
||||
)
|
||||
with self.mock_property("platform.system") as system:
|
||||
system.return_value = "Linux"
|
||||
@@ -1096,6 +1128,7 @@ class TestWriteOpeningHeader(BaseMockDir):
|
||||
outputsubfolder="",
|
||||
numberofrules=5,
|
||||
skipstatichosts=True,
|
||||
nounifiedhosts=False,
|
||||
)
|
||||
write_opening_header(self.final_file, **kwargs)
|
||||
|
||||
@@ -1123,6 +1156,41 @@ class TestWriteOpeningHeader(BaseMockDir):
|
||||
):
|
||||
self.assertNotIn(expected, contents)
|
||||
|
||||
def test_no_unified_hosts(self):
|
||||
kwargs = dict(
|
||||
extensions=["epsilon", "gamma"],
|
||||
outputsubfolder="",
|
||||
numberofrules=5,
|
||||
skipstatichosts=True,
|
||||
nounifiedhosts=True,
|
||||
)
|
||||
write_opening_header(self.final_file, **kwargs)
|
||||
|
||||
contents = self.final_file.getvalue()
|
||||
contents = contents.decode("UTF-8")
|
||||
|
||||
# Expected contents.
|
||||
for expected in (
|
||||
", ".join(kwargs["extensions"]),
|
||||
"# The unified hosts file was not used while generating this file.",
|
||||
"# Extensions used to generate this file:",
|
||||
"# This hosts file is a merged collection",
|
||||
"# with a dash of crowd sourcing via GitHub",
|
||||
"# Number of unique domains: {count}".format(count=kwargs["numberofrules"]),
|
||||
"Fetch the latest version of this file:",
|
||||
"Project home page: https://github.com/StevenBlack/hosts",
|
||||
):
|
||||
self.assertIn(expected, contents)
|
||||
|
||||
# Expected non-contents.
|
||||
for expected in (
|
||||
"127.0.0.1 localhost",
|
||||
"127.0.0.1 local",
|
||||
"127.0.0.53",
|
||||
"127.0.1.1",
|
||||
):
|
||||
self.assertNotIn(expected, contents)
|
||||
|
||||
def _check_preamble(self, check_copy):
|
||||
hosts_file = os.path.join(self.test_dir, "myhosts")
|
||||
hosts_file += ".example" if check_copy else ""
|
||||
@@ -1131,7 +1199,7 @@ class TestWriteOpeningHeader(BaseMockDir):
|
||||
f.write("peter-piper-picked-a-pepper")
|
||||
|
||||
kwargs = dict(
|
||||
extensions="", outputsubfolder="", numberofrules=5, skipstatichosts=True
|
||||
extensions="", outputsubfolder="", numberofrules=5, skipstatichosts=True, nounifiedhosts=False
|
||||
)
|
||||
|
||||
with self.mock_property("updateHostsFile.BASEDIR_PATH"):
|
||||
@@ -1180,7 +1248,7 @@ class TestUpdateReadmeData(BaseMockDir):
|
||||
|
||||
def test_missing_keyword(self):
|
||||
kwargs = dict(
|
||||
extensions="", outputsubfolder="", numberofrules="", sourcesdata=""
|
||||
extensions="", outputsubfolder="", numberofrules="", sourcesdata="", nounifiedhosts=False
|
||||
)
|
||||
|
||||
for k in kwargs.keys():
|
||||
@@ -1196,7 +1264,7 @@ class TestUpdateReadmeData(BaseMockDir):
|
||||
json.dump({"foo": "bar"}, f)
|
||||
|
||||
kwargs = dict(
|
||||
extensions=None, outputsubfolder="foo", numberofrules=5, sourcesdata="hosts"
|
||||
extensions=None, outputsubfolder="foo", numberofrules=5, sourcesdata="hosts", nounifiedhosts=False
|
||||
)
|
||||
update_readme_data(self.readme_file, **kwargs)
|
||||
|
||||
@@ -1206,7 +1274,7 @@ class TestUpdateReadmeData(BaseMockDir):
|
||||
sep = self.sep
|
||||
|
||||
expected = {
|
||||
"base": {"location": "foo" + sep, "sourcesdata": "hosts", "entries": 5},
|
||||
"base": {"location": "foo" + sep, 'no_unified_hosts': False, "sourcesdata": "hosts", "entries": 5},
|
||||
"foo": "bar",
|
||||
}
|
||||
|
||||
@@ -1219,7 +1287,7 @@ class TestUpdateReadmeData(BaseMockDir):
|
||||
json.dump({"base": "soprano"}, f)
|
||||
|
||||
kwargs = dict(
|
||||
extensions=None, outputsubfolder="foo", numberofrules=5, sourcesdata="hosts"
|
||||
extensions=None, outputsubfolder="foo", numberofrules=5, sourcesdata="hosts", nounifiedhosts=False
|
||||
)
|
||||
update_readme_data(self.readme_file, **kwargs)
|
||||
|
||||
@@ -1229,7 +1297,7 @@ class TestUpdateReadmeData(BaseMockDir):
|
||||
sep = self.sep
|
||||
|
||||
expected = {
|
||||
"base": {"location": "foo" + sep, "sourcesdata": "hosts", "entries": 5}
|
||||
"base": {"location": "foo" + sep, 'no_unified_hosts': False, "sourcesdata": "hosts", "entries": 5},
|
||||
}
|
||||
|
||||
with open(self.readme_file, "r") as f:
|
||||
@@ -1245,6 +1313,7 @@ class TestUpdateReadmeData(BaseMockDir):
|
||||
outputsubfolder="foo",
|
||||
numberofrules=5,
|
||||
sourcesdata="hosts",
|
||||
nounifiedhosts=False,
|
||||
)
|
||||
update_readme_data(self.readme_file, **kwargs)
|
||||
|
||||
@@ -1254,7 +1323,33 @@ class TestUpdateReadmeData(BaseMockDir):
|
||||
sep = self.sep
|
||||
|
||||
expected = {
|
||||
"com-org": {"location": "foo" + sep, "sourcesdata": "hosts", "entries": 5}
|
||||
"com-org": {"location": "foo" + sep, 'no_unified_hosts': False, "sourcesdata": "hosts", "entries": 5}
|
||||
}
|
||||
|
||||
with open(self.readme_file, "r") as f:
|
||||
actual = json.load(f)
|
||||
self.assertEqual(actual, expected)
|
||||
|
||||
def test_set_no_unified_hosts(self):
|
||||
with open(self.readme_file, "w") as f:
|
||||
json.dump({}, f)
|
||||
|
||||
kwargs = dict(
|
||||
extensions=["com", "org"],
|
||||
outputsubfolder="foo",
|
||||
numberofrules=5,
|
||||
sourcesdata="hosts",
|
||||
nounifiedhosts=True,
|
||||
)
|
||||
update_readme_data(self.readme_file, **kwargs)
|
||||
|
||||
if platform.system().lower() == "windows":
|
||||
sep = "/"
|
||||
else:
|
||||
sep = self.sep
|
||||
|
||||
expected = {
|
||||
"com-org-only": {"location": "foo" + sep, 'no_unified_hosts': True, "sourcesdata": "hosts", "entries": 5}
|
||||
}
|
||||
|
||||
with open(self.readme_file, "r") as f:
|
||||
@@ -1424,52 +1519,53 @@ class TestFlushDnsCache(BaseStdout):
|
||||
class TestRemoveOldHostsFile(BaseMockDir):
|
||||
def setUp(self):
|
||||
super(TestRemoveOldHostsFile, self).setUp()
|
||||
self.hosts_file = os.path.join(self.test_dir, "hosts")
|
||||
self.hosts_file = "hosts"
|
||||
self.full_hosts_path = os.path.join(self.test_dir, "hosts")
|
||||
|
||||
def test_remove_hosts_file(self):
|
||||
old_dir_count = self.dir_count
|
||||
|
||||
remove_old_hosts_file(self.hosts_file, backup=False)
|
||||
remove_old_hosts_file(self.test_dir, self.hosts_file, backup=False)
|
||||
|
||||
new_dir_count = old_dir_count + 1
|
||||
self.assertEqual(self.dir_count, new_dir_count)
|
||||
|
||||
with open(self.hosts_file, "r") as f:
|
||||
with open(self.full_hosts_path, "r") as f:
|
||||
contents = f.read()
|
||||
self.assertEqual(contents, "")
|
||||
|
||||
def test_remove_hosts_file_exists(self):
|
||||
with open(self.hosts_file, "w") as f:
|
||||
with open(self.full_hosts_path, "w") as f:
|
||||
f.write("foo")
|
||||
|
||||
old_dir_count = self.dir_count
|
||||
|
||||
remove_old_hosts_file(self.hosts_file, backup=False)
|
||||
remove_old_hosts_file(self.test_dir, self.hosts_file, backup=False)
|
||||
|
||||
new_dir_count = old_dir_count
|
||||
self.assertEqual(self.dir_count, new_dir_count)
|
||||
|
||||
with open(self.hosts_file, "r") as f:
|
||||
with open(self.full_hosts_path, "r") as f:
|
||||
contents = f.read()
|
||||
self.assertEqual(contents, "")
|
||||
|
||||
@mock.patch("time.strftime", return_value="new")
|
||||
def test_remove_hosts_file_backup(self, _):
|
||||
with open(self.hosts_file, "w") as f:
|
||||
with open(self.full_hosts_path, "w") as f:
|
||||
f.write("foo")
|
||||
|
||||
old_dir_count = self.dir_count
|
||||
|
||||
remove_old_hosts_file(self.hosts_file, backup=True)
|
||||
remove_old_hosts_file(self.test_dir, self.hosts_file, backup=True)
|
||||
|
||||
new_dir_count = old_dir_count + 1
|
||||
self.assertEqual(self.dir_count, new_dir_count)
|
||||
|
||||
with open(self.hosts_file, "r") as f:
|
||||
with open(self.full_hosts_path, "r") as f:
|
||||
contents = f.read()
|
||||
self.assertEqual(contents, "")
|
||||
|
||||
new_hosts_file = self.hosts_file + "-new"
|
||||
new_hosts_file = self.full_hosts_path + "-new"
|
||||
|
||||
with open(new_hosts_file, "r") as f:
|
||||
contents = f.read()
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
import argparse
|
||||
import fnmatch
|
||||
import ipaddress
|
||||
import json
|
||||
import locale
|
||||
import os
|
||||
@@ -72,6 +73,7 @@ def get_defaults():
|
||||
"keepdomaincomments": True,
|
||||
"extensionspath": path_join_robust(BASEDIR_PATH, "extensions"),
|
||||
"extensions": [],
|
||||
"nounifiedhosts": False,
|
||||
"compress": False,
|
||||
"minimise": False,
|
||||
"outputsubfolder": "",
|
||||
@@ -124,6 +126,13 @@ def main():
|
||||
nargs="*",
|
||||
help="Host extensions to include in the final hosts file.",
|
||||
)
|
||||
parser.add_argument(
|
||||
"--nounifiedhosts",
|
||||
dest="nounifiedhosts",
|
||||
default=False,
|
||||
action="store_true",
|
||||
help="Do not include the unified hosts file in the final hosts file. Usually used together with `--extensions`.",
|
||||
)
|
||||
parser.add_argument(
|
||||
"--ip",
|
||||
"-i",
|
||||
@@ -248,6 +257,7 @@ def main():
|
||||
auto = settings["auto"]
|
||||
exclusion_regexes = settings["exclusionregexes"]
|
||||
source_data_filename = settings["sourcedatafilename"]
|
||||
no_unified_hosts = settings["nounifiedhosts"]
|
||||
|
||||
update_sources = prompt_for_update(freshen=settings["freshen"], update_auto=auto)
|
||||
if update_sources:
|
||||
@@ -271,12 +281,13 @@ def main():
|
||||
extensions=extensions,
|
||||
extensionspath=extensions_path,
|
||||
sourcedatafilename=source_data_filename,
|
||||
nounifiedhosts=no_unified_hosts,
|
||||
)
|
||||
|
||||
merge_file = create_initial_file()
|
||||
remove_old_hosts_file(
|
||||
path_join_robust(settings["outputpath"], "hosts"), settings["backup"]
|
||||
merge_file = create_initial_file(
|
||||
nounifiedhosts=no_unified_hosts,
|
||||
)
|
||||
remove_old_hosts_file(settings["outputpath"], "hosts", settings["backup"])
|
||||
if settings["compress"]:
|
||||
final_file = open(path_join_robust(settings["outputpath"], "hosts"), "w+b")
|
||||
compressed_file = tempfile.NamedTemporaryFile()
|
||||
@@ -300,6 +311,7 @@ def main():
|
||||
numberofrules=number_of_rules,
|
||||
outputsubfolder=output_subfolder,
|
||||
skipstatichosts=skip_static_hosts,
|
||||
nounifiedhosts=no_unified_hosts,
|
||||
)
|
||||
final_file.close()
|
||||
|
||||
@@ -310,6 +322,7 @@ def main():
|
||||
numberofrules=number_of_rules,
|
||||
outputsubfolder=output_subfolder,
|
||||
sourcesdata=sources_data,
|
||||
nounifiedhosts=no_unified_hosts,
|
||||
)
|
||||
|
||||
print_success(
|
||||
@@ -372,7 +385,7 @@ def prompt_for_update(freshen, update_auto):
|
||||
)
|
||||
|
||||
if not freshen:
|
||||
return
|
||||
return False
|
||||
|
||||
prompt = "Do you want to update all data sources?"
|
||||
|
||||
@@ -668,6 +681,7 @@ def update_sources_data(sources_data, **sources_params):
|
||||
2) extensions
|
||||
3) extensionspath
|
||||
4) sourcedatafilename
|
||||
5) nounifiedhosts
|
||||
|
||||
Returns
|
||||
-------
|
||||
@@ -677,13 +691,16 @@ def update_sources_data(sources_data, **sources_params):
|
||||
|
||||
source_data_filename = sources_params["sourcedatafilename"]
|
||||
|
||||
for source in sort_sources(
|
||||
recursive_glob(sources_params["datapath"], source_data_filename)
|
||||
):
|
||||
update_file = open(source, "r", encoding="UTF-8")
|
||||
update_data = json.load(update_file)
|
||||
sources_data.append(update_data)
|
||||
update_file.close()
|
||||
if not sources_params["nounifiedhosts"]:
|
||||
for source in sort_sources(
|
||||
recursive_glob(sources_params["datapath"], source_data_filename)
|
||||
):
|
||||
update_file = open(source, "r", encoding="UTF-8")
|
||||
try:
|
||||
update_data = json.load(update_file)
|
||||
sources_data.append(update_data)
|
||||
finally:
|
||||
update_file.close()
|
||||
|
||||
for source in sources_params["extensions"]:
|
||||
source_dir = path_join_robust(sources_params["extensionspath"], source)
|
||||
@@ -691,10 +708,11 @@ def update_sources_data(sources_data, **sources_params):
|
||||
recursive_glob(source_dir, source_data_filename)
|
||||
):
|
||||
update_file = open(update_file_path, "r")
|
||||
update_data = json.load(update_file)
|
||||
|
||||
sources_data.append(update_data)
|
||||
update_file.close()
|
||||
try:
|
||||
update_data = json.load(update_file)
|
||||
sources_data.append(update_data)
|
||||
finally:
|
||||
update_file.close()
|
||||
|
||||
return sources_data
|
||||
|
||||
@@ -744,7 +762,7 @@ def update_all_sources(source_data_filename, host_filename):
|
||||
|
||||
# we can pause updating any given hosts source.
|
||||
# if the update.json "pause" key is missing, don't pause.
|
||||
if update_data.get('pause', False):
|
||||
if update_data.get("pause", False):
|
||||
continue
|
||||
|
||||
update_url = update_data["url"]
|
||||
@@ -778,23 +796,31 @@ def update_all_sources(source_data_filename, host_filename):
|
||||
|
||||
|
||||
# File Logic
|
||||
def create_initial_file():
|
||||
def create_initial_file(**initial_file_params):
|
||||
"""
|
||||
Initialize the file in which we merge all host files for later pruning.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
header_params : kwargs
|
||||
Dictionary providing additional parameters for populating the initial file
|
||||
information. Currently, those fields are:
|
||||
|
||||
1) nounifiedhosts
|
||||
"""
|
||||
|
||||
merge_file = tempfile.NamedTemporaryFile()
|
||||
|
||||
# spin the sources for the base file
|
||||
for source in sort_sources(
|
||||
recursive_glob(settings["datapath"], settings["hostfilename"])
|
||||
):
|
||||
if not initial_file_params["nounifiedhosts"]:
|
||||
# spin the sources for the base file
|
||||
for source in sort_sources(
|
||||
recursive_glob(settings["datapath"], settings["hostfilename"])
|
||||
):
|
||||
start = "# Start {}\n\n".format(os.path.basename(os.path.dirname(source)))
|
||||
end = "\n# End {}\n\n".format(os.path.basename(os.path.dirname(source)))
|
||||
|
||||
start = "# Start {}\n\n".format(os.path.basename(os.path.dirname(source)))
|
||||
end = "\n# End {}\n\n".format(os.path.basename(os.path.dirname(source)))
|
||||
|
||||
with open(source, "r", encoding="UTF-8") as curFile:
|
||||
write_data(merge_file, start + curFile.read() + end)
|
||||
with open(source, "r", encoding="UTF-8") as curFile:
|
||||
write_data(merge_file, start + curFile.read() + end)
|
||||
|
||||
# spin the sources for extensions to the base file
|
||||
for source in settings["extensions"]:
|
||||
@@ -1026,59 +1052,117 @@ def normalize_rule(rule, target_ip, keep_domain_comments):
|
||||
|
||||
if keep_domain_comments and extracted_suffix:
|
||||
if not extracted_suffix.strip().startswith("#"):
|
||||
rule += " #%s" % extracted_suffix
|
||||
# Strings are stripped, therefore we need to add the space back.
|
||||
rule += " # %s" % extracted_suffix
|
||||
else:
|
||||
rule += " %s" % extracted_suffix
|
||||
|
||||
return extracted_hostname, rule + "\n"
|
||||
|
||||
def is_ip(dataset: str) -> bool:
|
||||
"""
|
||||
Checks whether the given dataset is an IP.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
|
||||
dataset: str
|
||||
The dataset to work with.
|
||||
|
||||
Returns
|
||||
-------
|
||||
is_ip: bool
|
||||
Whether the dataset is an IP.
|
||||
"""
|
||||
|
||||
try:
|
||||
_ = ipaddress.ip_address(dataset)
|
||||
return True
|
||||
except ValueError:
|
||||
return False
|
||||
|
||||
def belch_unwanted(unwanted: str) -> Tuple[None, None]:
|
||||
"""
|
||||
Belches unwanted to screen.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
unwanted: str
|
||||
The unwanted string to belch.
|
||||
|
||||
Returns
|
||||
-------
|
||||
belched: tuple
|
||||
A tuple of None, None.
|
||||
"""
|
||||
|
||||
"""
|
||||
finally, if we get here, just belch to screen
|
||||
"""
|
||||
print("==>%s<==" % unwanted)
|
||||
return None, None
|
||||
|
||||
"""
|
||||
first try: IP followed by domain
|
||||
"""
|
||||
regex = r"^\s*(\d{1,3}\.){3}\d{1,3}\s+([\w\.-]+[a-zA-Z])(.*)"
|
||||
result = re.search(regex, rule)
|
||||
|
||||
if result:
|
||||
hostname, suffix = result.group(2, 3)
|
||||
static_ip_regex = r"^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})$"
|
||||
split_rule = rule.split(maxsplit=1)
|
||||
|
||||
# Explicitly lowercase and trim the hostname.
|
||||
hostname = hostname.lower().strip()
|
||||
if is_ip(split_rule[0]):
|
||||
# Assume that the first item is an IP address following the rule.
|
||||
|
||||
if " " or "\t" in split_rule[-1]:
|
||||
try:
|
||||
# Example: 0.0.0.0 example.org # hello, world!
|
||||
hostname, suffix = split_rule[-1].split(maxsplit=1)
|
||||
except ValueError:
|
||||
# Example: 0.0.0.0 example.org[:space:]
|
||||
hostname, suffix = split_rule[-1], None
|
||||
else:
|
||||
# Example: 0.0.0.0 example.org
|
||||
hostname, suffix = split_rule[-1], None
|
||||
|
||||
hostname = hostname.lower()
|
||||
|
||||
if (
|
||||
is_ip(hostname)
|
||||
or re.search(static_ip_regex, hostname)
|
||||
or "." not in hostname
|
||||
or "/" in hostname
|
||||
or ".." in hostname
|
||||
or ":" in hostname
|
||||
):
|
||||
# Example: 0.0.0.0 127.0.0.1
|
||||
|
||||
# If the hostname is:
|
||||
# - an IP - or looks like it,
|
||||
# - doesn't contain dots, or
|
||||
# - contains a colon,
|
||||
# we don't want to normalize it.
|
||||
return belch_unwanted(rule)
|
||||
|
||||
return normalize_response(hostname, suffix)
|
||||
|
||||
"""
|
||||
next try: IP address followed by host IP address
|
||||
"""
|
||||
regex = r"^\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})\s*(.*)"
|
||||
result = re.search(regex, rule)
|
||||
if (
|
||||
not re.search(static_ip_regex, split_rule[0])
|
||||
and ":" not in split_rule[0]
|
||||
and ".." not in split_rule[0]
|
||||
and "/" not in split_rule[0]
|
||||
and "." in split_rule[0]
|
||||
):
|
||||
# Deny anything that looks like an IP; doesn't container dots or INVALID.
|
||||
|
||||
if result:
|
||||
ip_host, suffix = result.group(2, 3)
|
||||
# Explicitly trim the ip host.
|
||||
ip_host = ip_host.strip()
|
||||
try:
|
||||
hostname, suffix = split_rule
|
||||
except ValueError:
|
||||
hostname, suffix = split_rule[0], None
|
||||
|
||||
return normalize_response(ip_host, suffix)
|
||||
hostname = hostname.lower()
|
||||
|
||||
"""
|
||||
next try: Keep RAW domain.
|
||||
"""
|
||||
# deny any potential IPv6 address here.
|
||||
if ":" not in rule:
|
||||
regex = r"^\s*([\w\.-]+[a-zA-Z])(.*)"
|
||||
result = re.search(regex, rule)
|
||||
return normalize_response(hostname, suffix)
|
||||
|
||||
if result:
|
||||
hostname, suffix = result.group(1, 2)
|
||||
# Explicitly lowercase and trim the hostname.
|
||||
hostname = hostname.lower().strip()
|
||||
|
||||
return normalize_response(hostname, suffix)
|
||||
|
||||
"""
|
||||
finally, if we get here, just belch to screen
|
||||
"""
|
||||
print("==>%s<==" % rule)
|
||||
return None, None
|
||||
return belch_unwanted(rule)
|
||||
|
||||
|
||||
def strip_rule(line):
|
||||
@@ -1115,6 +1199,7 @@ def write_opening_header(final_file, **header_params):
|
||||
2) numberofrules
|
||||
3) outputsubfolder
|
||||
4) skipstatichosts
|
||||
5) nounifiedhosts
|
||||
"""
|
||||
|
||||
final_file.seek(0) # Reset file pointer.
|
||||
@@ -1122,22 +1207,41 @@ def write_opening_header(final_file, **header_params):
|
||||
|
||||
final_file.seek(0) # Write at the top.
|
||||
|
||||
no_unified_hosts = header_params["nounifiedhosts"]
|
||||
|
||||
if header_params["extensions"]:
|
||||
if len(header_params["extensions"]) > 1:
|
||||
write_data(
|
||||
final_file,
|
||||
"# Title: StevenBlack/hosts with the {0} and {1} extensions\n#\n".format(
|
||||
", ".join(header_params["extensions"][:-1]),
|
||||
header_params["extensions"][-1],
|
||||
),
|
||||
)
|
||||
if no_unified_hosts:
|
||||
if len(header_params["extensions"]) > 1:
|
||||
write_data(
|
||||
final_file,
|
||||
"# Title: StevenBlack/hosts extensions {0} and {1} \n#\n".format(
|
||||
", ".join(header_params["extensions"][:-1]),
|
||||
header_params["extensions"][-1],
|
||||
),
|
||||
)
|
||||
else:
|
||||
write_data(
|
||||
final_file,
|
||||
"# Title: StevenBlack/hosts extension {0}\n#\n".format(
|
||||
", ".join(header_params["extensions"])
|
||||
),
|
||||
)
|
||||
else:
|
||||
write_data(
|
||||
final_file,
|
||||
"# Title: StevenBlack/hosts with the {0} extension\n#\n".format(
|
||||
", ".join(header_params["extensions"])
|
||||
),
|
||||
)
|
||||
if len(header_params["extensions"]) > 1:
|
||||
write_data(
|
||||
final_file,
|
||||
"# Title: StevenBlack/hosts with the {0} and {1} extensions\n#\n".format(
|
||||
", ".join(header_params["extensions"][:-1]),
|
||||
header_params["extensions"][-1],
|
||||
),
|
||||
)
|
||||
else:
|
||||
write_data(
|
||||
final_file,
|
||||
"# Title: StevenBlack/hosts with the {0} extension\n#\n".format(
|
||||
", ".join(header_params["extensions"])
|
||||
),
|
||||
)
|
||||
else:
|
||||
write_data(final_file, "# Title: StevenBlack/hosts\n#\n")
|
||||
|
||||
@@ -1153,12 +1257,21 @@ def write_opening_header(final_file, **header_params):
|
||||
)
|
||||
|
||||
if header_params["extensions"]:
|
||||
write_data(
|
||||
final_file,
|
||||
"# Extensions added to this file: "
|
||||
+ ", ".join(header_params["extensions"])
|
||||
+ "\n",
|
||||
)
|
||||
if header_params["nounifiedhosts"]:
|
||||
write_data(
|
||||
final_file,
|
||||
"# The unified hosts file was not used while generating this file.\n"
|
||||
"# Extensions used to generate this file: "
|
||||
+ ", ".join(header_params["extensions"])
|
||||
+ "\n",
|
||||
)
|
||||
else:
|
||||
write_data(
|
||||
final_file,
|
||||
"# Extensions added to this file: "
|
||||
+ ", ".join(header_params["extensions"])
|
||||
+ "\n",
|
||||
)
|
||||
|
||||
write_data(
|
||||
final_file,
|
||||
@@ -1236,17 +1349,22 @@ def update_readme_data(readme_file, **readme_updates):
|
||||
2) sourcesdata
|
||||
3) numberofrules
|
||||
4) outputsubfolder
|
||||
5) nounifiedhosts
|
||||
"""
|
||||
|
||||
extensions_key = "base"
|
||||
extensions = readme_updates["extensions"]
|
||||
no_unified_hosts = readme_updates["nounifiedhosts"]
|
||||
|
||||
if extensions:
|
||||
extensions_key = "-".join(extensions)
|
||||
if no_unified_hosts:
|
||||
extensions_key = extensions_key + "-only"
|
||||
|
||||
output_folder = readme_updates["outputsubfolder"]
|
||||
generation_data = {
|
||||
"location": path_join_robust(output_folder, ""),
|
||||
"no_unified_hosts": no_unified_hosts,
|
||||
"entries": readme_updates["numberofrules"],
|
||||
"sourcesdata": readme_updates["sourcesdata"],
|
||||
}
|
||||
@@ -1291,7 +1409,9 @@ def move_hosts_file_into_place(final_file):
|
||||
return False
|
||||
|
||||
if platform.system() == "Windows":
|
||||
target_file = str(Path(os.getenv("SystemRoot")) / "system32" / "drivers" / "etc" / "hosts")
|
||||
target_file = str(
|
||||
Path(os.getenv("SystemRoot")) / "system32" / "drivers" / "etc" / "hosts"
|
||||
)
|
||||
else:
|
||||
target_file = "/etc/hosts"
|
||||
|
||||
@@ -1308,7 +1428,11 @@ def move_hosts_file_into_place(final_file):
|
||||
except Exception:
|
||||
print_failure(f"Replacing content of {target_file} failed.")
|
||||
return False
|
||||
elif platform.system() == "Linux" or platform.system() == "Windows" or platform.system() == "Darwin":
|
||||
elif (
|
||||
platform.system() == "Linux"
|
||||
or platform.system() == "Windows"
|
||||
or platform.system() == "Darwin"
|
||||
):
|
||||
print(
|
||||
f"Replacing {target_file} requires root privileges. You might need to enter your password."
|
||||
)
|
||||
@@ -1411,7 +1535,7 @@ def flush_dns_cache():
|
||||
print_failure("Unable to determine DNS management tool.")
|
||||
|
||||
|
||||
def remove_old_hosts_file(old_file_path, backup):
|
||||
def remove_old_hosts_file(path_to_file, file_name, backup):
|
||||
"""
|
||||
Remove the old hosts file.
|
||||
|
||||
@@ -1424,21 +1548,25 @@ def remove_old_hosts_file(old_file_path, backup):
|
||||
Whether or not to backup the existing hosts file.
|
||||
"""
|
||||
|
||||
# Create if already removed, so remove won't raise an error.
|
||||
open(old_file_path, "a").close()
|
||||
full_file_path = path_join_robust(path_to_file, file_name)
|
||||
|
||||
if backup:
|
||||
backup_file_path = old_file_path + "-{}".format(
|
||||
time.strftime("%Y-%m-%d-%H-%M-%S")
|
||||
)
|
||||
if os.path.exists(full_file_path):
|
||||
if backup:
|
||||
backup_file_path = full_file_path + "-{}".format(
|
||||
time.strftime("%Y-%m-%d-%H-%M-%S")
|
||||
)
|
||||
|
||||
# Make a backup copy, marking the date in which the list was updated
|
||||
shutil.copy(old_file_path, backup_file_path)
|
||||
# Make a backup copy, marking the date in which the list was updated
|
||||
shutil.copy(full_file_path, backup_file_path)
|
||||
|
||||
os.remove(old_file_path)
|
||||
os.remove(full_file_path)
|
||||
|
||||
# Create directory if not exists
|
||||
if not os.path.exists(path_to_file):
|
||||
os.makedirs(path_to_file)
|
||||
|
||||
# Create new empty hosts file
|
||||
open(old_file_path, "a").close()
|
||||
open(full_file_path, "a").close()
|
||||
|
||||
|
||||
# End File Logic
|
||||
|
||||
@@ -32,7 +32,7 @@ def main():
|
||||
keys = list(data.keys())
|
||||
# Sort by the number of en-dashes in the key
|
||||
# and then by the key string itself.
|
||||
keys.sort(key=lambda item: (item.count("-"), item))
|
||||
keys.sort(key=lambda item: (item.replace("-only", "").count("-"), item.replace("-only", "")))
|
||||
|
||||
toc_rows = ""
|
||||
for key in keys:
|
||||
@@ -40,9 +40,14 @@ def main():
|
||||
if key == "base":
|
||||
data[key]["description"] = "Unified hosts = **(adware + malware)**"
|
||||
else:
|
||||
data[key]["description"] = (
|
||||
"Unified hosts **+ " + key.replace("-", " + ") + "**"
|
||||
)
|
||||
if data[key]["no_unified_hosts"]:
|
||||
data[key]["description"] = (
|
||||
"**" + key.replace("-only", "").replace("-", " + ") + "**"
|
||||
)
|
||||
else:
|
||||
data[key]["description"] = (
|
||||
"Unified hosts **+ " + key.replace("-", " + ") + "**"
|
||||
)
|
||||
|
||||
if "\\" in data[key]["location"]:
|
||||
data[key]["location"] = data[key]["location"].replace("\\", "/")
|
||||
@@ -64,9 +69,12 @@ def main():
|
||||
)
|
||||
size_history_graph = ""
|
||||
for key in keys:
|
||||
extensions = key.replace("-", ", ")
|
||||
extensions = key.replace("-only", "").replace("-", ", ")
|
||||
extensions_str = "* Extensions: **" + extensions + "**."
|
||||
extensions_header = "with " + extensions + " extensions"
|
||||
if data[key]["no_unified_hosts"]:
|
||||
extensions_header = "Limited to the extensions: " + extensions
|
||||
else:
|
||||
extensions_header = "Unified hosts file with " + extensions + " extensions"
|
||||
|
||||
source_rows = ""
|
||||
source_list = data[key]["sourcesdata"]
|
||||
|
||||