mirror of
https://github.com/pi-hole/docs.git
synced 2025-12-20 03:08:45 +00:00
Markdownlint: enable MD040 rule
Signed-off-by: XhmikosR <xhmikosr@gmail.com>
This commit is contained in:
@@ -32,7 +32,6 @@
|
|||||||
},
|
},
|
||||||
"MD036": false,
|
"MD036": false,
|
||||||
"MD038": false,
|
"MD038": false,
|
||||||
"MD040": false,
|
|
||||||
"MD041": false,
|
"MD041": false,
|
||||||
"MD045": false,
|
"MD045": false,
|
||||||
"MD046": {
|
"MD046": {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ In case you wish to customize the image, or perhaps check out a branch after bei
|
|||||||
|
|
||||||
In order to build the image locally, you will first need a copy of the repository on your computer. The following commands will clone the repository from Github and then put you into the directory
|
In order to build the image locally, you will first need a copy of the repository on your computer. The following commands will clone the repository from Github and then put you into the directory
|
||||||
|
|
||||||
```
|
```bash
|
||||||
git clone https://github.com/pi-hole/docker-pi-hole
|
git clone https://github.com/pi-hole/docker-pi-hole
|
||||||
cd docker-pi-hole
|
cd docker-pi-hole
|
||||||
git checkout development #NOTE: This step is only needed until V6 is released
|
git checkout development #NOTE: This step is only needed until V6 is released
|
||||||
@@ -14,7 +14,7 @@ All other commands following assume you have at least run the above steps.
|
|||||||
|
|
||||||
## Build.sh
|
## Build.sh
|
||||||
|
|
||||||
```
|
```text
|
||||||
Usage: ./build.sh [-l] [-f <ftl_branch>] [-c <core_branch>] [-w <web_branch>] [-t <tag>] [use_cache]
|
Usage: ./build.sh [-l] [-f <ftl_branch>] [-c <core_branch>] [-w <web_branch>] [-t <tag>] [use_cache]
|
||||||
Options:
|
Options:
|
||||||
-f, --ftlbranch <branch> Specify FTL branch (cannot be used in conjunction with -l)
|
-f, --ftlbranch <branch> Specify FTL branch (cannot be used in conjunction with -l)
|
||||||
@@ -37,7 +37,7 @@ When contributing, it's always a good idea to test your changes before submittin
|
|||||||
|
|
||||||
There is also `./build-and-test.sh`, which can be used to verify the tests that are run on Github pass with your changes.
|
There is also `./build-and-test.sh`, which can be used to verify the tests that are run on Github pass with your changes.
|
||||||
|
|
||||||
```
|
```bash
|
||||||
git checkout -b myNewFeatureBranch
|
git checkout -b myNewFeatureBranch
|
||||||
#make some changes
|
#make some changes
|
||||||
./build.sh
|
./build.sh
|
||||||
@@ -51,13 +51,13 @@ Occasionally you may need to try an alternative branch of one of the components
|
|||||||
|
|
||||||
- You have been asked by a developer to checkout the FTL branch `new/Sensors`. To do so
|
- You have been asked by a developer to checkout the FTL branch `new/Sensors`. To do so
|
||||||
|
|
||||||
```
|
```bash
|
||||||
./build.sh -f new/Sensors
|
./build.sh -f new/Sensors
|
||||||
```
|
```
|
||||||
|
|
||||||
- There is new docker-specific work being carried out on the branch `fix/logRotate` that you wish to test
|
- There is new docker-specific work being carried out on the branch `fix/logRotate` that you wish to test
|
||||||
|
|
||||||
```
|
```bash
|
||||||
git checkout fix/logRotate
|
git checkout fix/logRotate
|
||||||
./build.sh
|
./build.sh
|
||||||
```
|
```
|
||||||
@@ -74,6 +74,6 @@ services:
|
|||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
```
|
```bash
|
||||||
docker run [options] pihole:local
|
docker run [options] pihole:local
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ Run `docker compose up -d` to build and start Pi-hole (on older systems, the syn
|
|||||||
|
|
||||||
The equivalent command for `docker run` would be:
|
The equivalent command for `docker run` would be:
|
||||||
|
|
||||||
```
|
```bash
|
||||||
docker run --name pihole -p 53:53/tcp -p 53:53/udp -p 80:80/tcp -p 443:443/tcp -e TZ=Europe/London -e FTLCONF_webserver_api_password="correct horse battery staple" -e FTLCONF_dns_listeningMode=all -v ./etc-pihole:/etc/pihole -v ./etc-dnsmasq.d:/etc/dnsmasq.d --cap-add NET_ADMIN --restart unless-stopped pihole/pihole:latest
|
docker run --name pihole -p 53:53/tcp -p 53:53/udp -p 80:80/tcp -p 443:443/tcp -e TZ=Europe/London -e FTLCONF_webserver_api_password="correct horse battery staple" -e FTLCONF_dns_listeningMode=all -v ./etc-pihole:/etc/pihole -v ./etc-dnsmasq.d:/etc/dnsmasq.d --cap-add NET_ADMIN --restart unless-stopped pihole/pihole:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -28,4 +28,3 @@ docker rm pihole
|
|||||||
docker pull pihole/pihole:latest
|
docker pull pihole/pihole:latest
|
||||||
docker run [ ... arguments (see Getting Started) ... ]
|
docker run [ ... arguments (see Getting Started) ... ]
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ Nearly all environment variables from previous versions have been removed, but f
|
|||||||
|
|
||||||
Reverse server (`REV_SERVER*`) variables should be replaced with the single `FTLCONF_dns_revServers`, which accepts an array of reverse servers (delimited by `;`) in the following format:
|
Reverse server (`REV_SERVER*`) variables should be replaced with the single `FTLCONF_dns_revServers`, which accepts an array of reverse servers (delimited by `;`) in the following format:
|
||||||
|
|
||||||
```
|
```text
|
||||||
<enabled>,<ip-address>[/<prefix-len>],<server>[#<port>],<domain>
|
<enabled>,<ip-address>[/<prefix-len>],<server>[#<port>],<domain>
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ If, for example, you had the following old style variables:
|
|||||||
|
|
||||||
You would now set:
|
You would now set:
|
||||||
|
|
||||||
```
|
```text
|
||||||
FTLCONF_dns_revServers: 'true,192.168.0.0/24,192.168.0.1#53,lan'
|
FTLCONF_dns_revServers: 'true,192.168.0.0/24,192.168.0.1#53,lan'
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -93,4 +93,3 @@ The following variables can be removed without replacement, as they are no longe
|
|||||||
- `WEB_UID`
|
- `WEB_UID`
|
||||||
- `WEBLOGS_STDOUT`
|
- `WEBLOGS_STDOUT`
|
||||||
- `WEBPASSWORD_FILE`
|
- `WEBPASSWORD_FILE`
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ In `NULL` mode, which is both the default and recommended mode for Pi-hole *FTL*
|
|||||||
|
|
||||||
A blocked query would look like the following:
|
A blocked query would look like the following:
|
||||||
|
|
||||||
```
|
```text
|
||||||
;; QUESTION SECTION:
|
;; QUESTION SECTION:
|
||||||
;doubleclick.net. IN ANY
|
;doubleclick.net. IN ANY
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ In `IP-NODATA-AAAA` mode, blocked queries will be answered with the local IPv4 a
|
|||||||
|
|
||||||
Assuming your Pi-hole server is at `192.168.1.42`, then a blocked query would look like the following:
|
Assuming your Pi-hole server is at `192.168.1.42`, then a blocked query would look like the following:
|
||||||
|
|
||||||
```
|
```text
|
||||||
;; QUESTION SECTION:
|
;; QUESTION SECTION:
|
||||||
;doubleclick.net. IN ANY
|
;doubleclick.net. IN ANY
|
||||||
|
|
||||||
@@ -64,7 +64,7 @@ The IP that is returned is automatically determined by FTL, however it can also
|
|||||||
|
|
||||||
A blocked query would look like the following:
|
A blocked query would look like the following:
|
||||||
|
|
||||||
```
|
```text
|
||||||
;; QUESTION SECTION:
|
;; QUESTION SECTION:
|
||||||
;doubleclick.net. IN ANY
|
;doubleclick.net. IN ANY
|
||||||
|
|
||||||
@@ -88,7 +88,7 @@ In `NXDOMAIN` mode, blocked queries will be answered with an empty response (i.e
|
|||||||
|
|
||||||
A blocked query would look like the following:
|
A blocked query would look like the following:
|
||||||
|
|
||||||
```
|
```text
|
||||||
;; QUESTION SECTION:
|
;; QUESTION SECTION:
|
||||||
;doubleclick.net. IN ANY
|
;doubleclick.net. IN ANY
|
||||||
```
|
```
|
||||||
@@ -101,10 +101,9 @@ In `NODATA` mode, blocked queries will be answered with an empty response (no an
|
|||||||
|
|
||||||
A blocked query would look like the following:
|
A blocked query would look like the following:
|
||||||
|
|
||||||
```
|
```text
|
||||||
;; QUESTION SECTION:
|
;; QUESTION SECTION:
|
||||||
;doubleclick.net. IN ANY
|
;doubleclick.net. IN ANY
|
||||||
```
|
```
|
||||||
|
|
||||||
**Advantages & Disadvantages:** This mode is similar to `NXDOMAIN` blocking mode. Clients might have a better acceptance of `NODATA` replies compared to `NXDOMAIN` replies.
|
**Advantages & Disadvantages:** This mode is similar to `NXDOMAIN` blocking mode. Clients might have a better acceptance of `NODATA` replies compared to `NXDOMAIN` replies.
|
||||||
|
|
||||||
|
|||||||
@@ -104,7 +104,7 @@ Blockdata is used to cache records that do not fit in normal cache records. Thes
|
|||||||
|
|
||||||
### Server statistics
|
### Server statistics
|
||||||
|
|
||||||
```
|
```text
|
||||||
server 127.0.0.1#5353: queries sent 10801, retried or failed 69
|
server 127.0.0.1#5353: queries sent 10801, retried or failed 69
|
||||||
server 192.168.2.1#53: queries sent 388, retried or failed 3
|
server 192.168.2.1#53: queries sent 388, retried or failed 3
|
||||||
```
|
```
|
||||||
@@ -170,7 +170,7 @@ The three numbers in the `address` field correspond to the key tag, the algorith
|
|||||||
|
|
||||||
Note that `DS` records may have an empty `address` field when they are `NODATA` (flag `N`) like
|
Note that `DS` records may have an empty `address` field when they are `NODATA` (flag `N`) like
|
||||||
|
|
||||||
```
|
```text
|
||||||
Host Address Flags Expires
|
Host Address Flags Expires
|
||||||
hosted-by-discourse.com SF N V Sat Dec 18 11:06:03 2021
|
hosted-by-discourse.com SF N V Sat Dec 18 11:06:03 2021
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -2,13 +2,13 @@
|
|||||||
|
|
||||||
Pi-hole has its own embedded package dumping. It can be enabled by adding the following to a file like `/etc/dnsmasq.d/99-record.conf`:
|
Pi-hole has its own embedded package dumping. It can be enabled by adding the following to a file like `/etc/dnsmasq.d/99-record.conf`:
|
||||||
|
|
||||||
```
|
```text
|
||||||
dumpfile=/etc/pihole/dump.pcap
|
dumpfile=/etc/pihole/dump.pcap
|
||||||
```
|
```
|
||||||
|
|
||||||
(or any other location you prefer), in addition to
|
(or any other location you prefer), in addition to
|
||||||
|
|
||||||
```
|
```text
|
||||||
dumpmask=<mask>
|
dumpmask=<mask>
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -26,7 +26,7 @@ Each time a packet is written to the dumpfile, we log the packet sequence and th
|
|||||||
|
|
||||||
If you just want to record everything and later filter this in Wireshark you can just add the two lines
|
If you just want to record everything and later filter this in Wireshark you can just add the two lines
|
||||||
|
|
||||||
```
|
```text
|
||||||
dumpfile=/etc/pihole/dump.pcap
|
dumpfile=/etc/pihole/dump.pcap
|
||||||
dumpmask=0x00ff
|
dumpmask=0x00ff
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -43,14 +43,14 @@ They'll automatically be re-added when using `sudo service pihole-FTL start` nex
|
|||||||
|
|
||||||
We suggest the following one-liner to run `pihole-FTL` in `memcheck`:
|
We suggest the following one-liner to run `pihole-FTL` in `memcheck`:
|
||||||
|
|
||||||
```
|
```bash
|
||||||
sudo service pihole-FTL stop && sudo setcap -r /usr/bin/pihole-FTL
|
sudo service pihole-FTL stop && sudo setcap -r /usr/bin/pihole-FTL
|
||||||
sudo valgrind --trace-children=yes --leak-check=full --track-origins=yes --vgdb=full --log-file=valgrind.log -s /usr/bin/pihole-FTL
|
sudo valgrind --trace-children=yes --leak-check=full --track-origins=yes --vgdb=full --log-file=valgrind.log -s /usr/bin/pihole-FTL
|
||||||
```
|
```
|
||||||
|
|
||||||
If you compile FTL from source, use
|
If you compile FTL from source, use
|
||||||
|
|
||||||
```
|
```bash
|
||||||
sudo service pihole-FTL stop
|
sudo service pihole-FTL stop
|
||||||
./build.sh && sudo valgrind --trace-children=yes --leak-check=full --track-origins=yes --vgdb=full --log-file=valgrind.log -s ./pihole-FTL
|
./build.sh && sudo valgrind --trace-children=yes --leak-check=full --track-origins=yes --vgdb=full --log-file=valgrind.log -s ./pihole-FTL
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ As an alternative tool to this end, consider [cloudflared](https://github.com/cl
|
|||||||
|
|
||||||
Raspberry Pi OS and Debian as well as Ubuntu come with packages for `dnscrypt-proxy`, which makes its installation a breeze:
|
Raspberry Pi OS and Debian as well as Ubuntu come with packages for `dnscrypt-proxy`, which makes its installation a breeze:
|
||||||
|
|
||||||
```shell
|
```bash
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt install dnscrypt-proxy
|
sudo apt install dnscrypt-proxy
|
||||||
```
|
```
|
||||||
@@ -21,7 +21,7 @@ To avoid conflicts with `FTLDNS`, edit `/usr/lib/systemd/system/dnscrypt-proxy.s
|
|||||||
|
|
||||||
The following settings in `/usr/lib/systemd/system/dnscrypt-proxy.socket`, let `dnscrypt-proxy` listen on localhost on port 5053:
|
The following settings in `/usr/lib/systemd/system/dnscrypt-proxy.socket`, let `dnscrypt-proxy` listen on localhost on port 5053:
|
||||||
|
|
||||||
```
|
```text
|
||||||
ListenStream=127.0.0.1:5053
|
ListenStream=127.0.0.1:5053
|
||||||
ListenDatagram=127.0.0.1:5053
|
ListenDatagram=127.0.0.1:5053
|
||||||
```
|
```
|
||||||
@@ -43,7 +43,7 @@ server_names = ['cloudflare-security']
|
|||||||
|
|
||||||
Run the following command to set the upstream DNS server of Pi-hole to your local `dnscrypt-proxy` instance:
|
Run the following command to set the upstream DNS server of Pi-hole to your local `dnscrypt-proxy` instance:
|
||||||
|
|
||||||
```shell
|
```bash
|
||||||
sudo pihole-FTL --config dns.upstreams '["127.0.0.1#5053"]'
|
sudo pihole-FTL --config dns.upstreams '["127.0.0.1#5053"]'
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -51,7 +51,7 @@ sudo pihole-FTL --config dns.upstreams '["127.0.0.1#5053"]'
|
|||||||
|
|
||||||
Run the following commands to restart `dnscrypt-proxy` and `FTLDNS`:
|
Run the following commands to restart `dnscrypt-proxy` and `FTLDNS`:
|
||||||
|
|
||||||
```shell
|
```bash
|
||||||
sudo systemctl restart dnscrypt-proxy.socket
|
sudo systemctl restart dnscrypt-proxy.socket
|
||||||
sudo systemctl restart dnscrypt-proxy.service
|
sudo systemctl restart dnscrypt-proxy.service
|
||||||
sudo systemctl restart pihole-FTL.service
|
sudo systemctl restart pihole-FTL.service
|
||||||
@@ -61,7 +61,7 @@ sudo systemctl restart pihole-FTL.service
|
|||||||
|
|
||||||
Run the following commands to review the status of each restarted service:
|
Run the following commands to review the status of each restarted service:
|
||||||
|
|
||||||
```shell
|
```bash
|
||||||
sudo systemctl status dnscrypt-proxy.socket
|
sudo systemctl status dnscrypt-proxy.socket
|
||||||
sudo systemctl status dnscrypt-proxy.service
|
sudo systemctl status dnscrypt-proxy.service
|
||||||
sudo systemctl status pihole-FTL.service
|
sudo systemctl status pihole-FTL.service
|
||||||
@@ -84,7 +84,7 @@ Optionally, confirm in the Pi-hole admin web interface that upstream DNS servers
|
|||||||
|
|
||||||
Since you installed `dnscrypt-proxy` via APT, updating `dnscrypt-proxy` is a matter of running the following commands:
|
Since you installed `dnscrypt-proxy` via APT, updating `dnscrypt-proxy` is a matter of running the following commands:
|
||||||
|
|
||||||
```shell
|
```bash
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt upgrade
|
sudo apt upgrade
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -236,7 +236,7 @@ server:
|
|||||||
|
|
||||||
Second, create log dir and file, set permissions:
|
Second, create log dir and file, set permissions:
|
||||||
|
|
||||||
```
|
```bash
|
||||||
sudo mkdir -p /var/log/unbound
|
sudo mkdir -p /var/log/unbound
|
||||||
sudo touch /var/log/unbound/unbound.log
|
sudo touch /var/log/unbound/unbound.log
|
||||||
sudo chown unbound /var/log/unbound/unbound.log
|
sudo chown unbound /var/log/unbound/unbound.log
|
||||||
@@ -259,7 +259,7 @@ sudo service apparmor restart
|
|||||||
|
|
||||||
Lastly, restart unbound:
|
Lastly, restart unbound:
|
||||||
|
|
||||||
```
|
```bash
|
||||||
sudo service unbound restart
|
sudo service unbound restart
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
2. Clone `https://github.com/<your_namespace>/<your_repo_name>/` with the tool of you choice.
|
2. Clone `https://github.com/<your_namespace>/<your_repo_name>/` with the tool of you choice.
|
||||||
3. To keep your fork in sync with our repo, add an upstream remote for pi-hole/pi-hole to your repo.
|
3. To keep your fork in sync with our repo, add an upstream remote for pi-hole/pi-hole to your repo.
|
||||||
|
|
||||||
```
|
```bash
|
||||||
git remote add upstream https://github.com/pi-hole/pi-hole.git
|
git remote add upstream https://github.com/pi-hole/pi-hole.git
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -30,7 +30,7 @@ Forking is a GitHub concept and cannot be done from GitHub to other git-based co
|
|||||||
|
|
||||||
To rebase your commits and squash previous commits, you can use:
|
To rebase your commits and squash previous commits, you can use:
|
||||||
|
|
||||||
```
|
```bash
|
||||||
git rebase -i your_topic_branch~(number of commits to combine)
|
git rebase -i your_topic_branch~(number of commits to combine)
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -38,13 +38,13 @@ For more details visit [gitready.com](http://gitready.com/advanced/2009/02/10/sq
|
|||||||
|
|
||||||
1. The following would combine the last four commits in the branch `mytopic`.
|
1. The following would combine the last four commits in the branch `mytopic`.
|
||||||
|
|
||||||
```
|
```bash
|
||||||
git rebase -i mytopic~4
|
git rebase -i mytopic~4
|
||||||
```
|
```
|
||||||
|
|
||||||
2. An editor window opens with the most recent commits indicated: (edit the commands to the left of the commit ID)
|
2. An editor window opens with the most recent commits indicated: (edit the commands to the left of the commit ID)
|
||||||
|
|
||||||
```
|
```text
|
||||||
pick 9dff55b2 existing commit comments
|
pick 9dff55b2 existing commit comments
|
||||||
squash ebb1a730 existing commit comments
|
squash ebb1a730 existing commit comments
|
||||||
squash 07cc5b50 existing commit comments
|
squash 07cc5b50 existing commit comments
|
||||||
@@ -53,20 +53,20 @@ For more details visit [gitready.com](http://gitready.com/advanced/2009/02/10/sq
|
|||||||
|
|
||||||
3. Save and close the editor. The next editor window opens: (edit the new commit message). *If you select reword for a commit, an additional editor window will open for you to edit the comment.*
|
3. Save and close the editor. The next editor window opens: (edit the new commit message). *If you select reword for a commit, an additional editor window will open for you to edit the comment.*
|
||||||
|
|
||||||
```
|
```text
|
||||||
new commit comments
|
new commit comments
|
||||||
Signed-off-by: yourname <your email address>
|
Signed-off-by: yourname <your email address>
|
||||||
```
|
```
|
||||||
|
|
||||||
4. Save and close the editor for the rebase process to execute. The terminal output should say something like the following:
|
4. Save and close the editor for the rebase process to execute. The terminal output should say something like the following:
|
||||||
|
|
||||||
```
|
```text
|
||||||
Successfully rebased and updated refs/heads/mytopic.
|
Successfully rebased and updated refs/heads/mytopic.
|
||||||
```
|
```
|
||||||
|
|
||||||
5. Once you have a successful rebase, and before you sync your local clone, you have to force push origin to update your repo:
|
5. Once you have a successful rebase, and before you sync your local clone, you have to force push origin to update your repo:
|
||||||
|
|
||||||
```
|
```bash
|
||||||
git push -f origin
|
git push -f origin
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ This is not recommended, but here are some things you can do:
|
|||||||
|
|
||||||
Edit `/etc/tor/torrc` as root and, add the following lines to the end and replace `CountryCodeN` (keep the `{` and `}`) with the country code you've chosen (you can also use only one country code; in this case, it would be just `{CountryCode1}` without a comma).
|
Edit `/etc/tor/torrc` as root and, add the following lines to the end and replace `CountryCodeN` (keep the `{` and `}`) with the country code you've chosen (you can also use only one country code; in this case, it would be just `{CountryCode1}` without a comma).
|
||||||
|
|
||||||
```
|
```text
|
||||||
ExitNodes {CountryCode1},{CountryCode2},{CountryCode3}
|
ExitNodes {CountryCode1},{CountryCode2},{CountryCode3}
|
||||||
StrictNodes 1
|
StrictNodes 1
|
||||||
```
|
```
|
||||||
@@ -45,7 +45,7 @@ This is not recommended, but here are some things you can do:
|
|||||||
3. Make sure the relay allows Port `53` in his `IPv4 Exit Policy Summary` (and/or `IPv6 Exit Policy Summary` if you want to resolve IPv6 AAAA queries).
|
3. Make sure the relay allows Port `53` in his `IPv4 Exit Policy Summary` (and/or `IPv6 Exit Policy Summary` if you want to resolve IPv6 AAAA queries).
|
||||||
4. As root copy the `Fingerprint` (Top Right under Relay Details) of those two Relays to the end of your `/etc/tor/torrc` file on the Pi-hole host in the following format:
|
4. As root copy the `Fingerprint` (Top Right under Relay Details) of those two Relays to the end of your `/etc/tor/torrc` file on the Pi-hole host in the following format:
|
||||||
|
|
||||||
```
|
```text
|
||||||
ExitNodes Fingerprint1,Fingerprint2
|
ExitNodes Fingerprint1,Fingerprint2
|
||||||
StrictNodes 1
|
StrictNodes 1
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ sudo apt install tor
|
|||||||
|
|
||||||
Edit `/etc/tor/torrc` as root, include the following line at the end and save the changes
|
Edit `/etc/tor/torrc` as root, include the following line at the end and save the changes
|
||||||
|
|
||||||
```
|
```text
|
||||||
DNSPort 127.0.10.1:53
|
DNSPort 127.0.10.1:53
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -21,7 +21,7 @@ Change your Pi-hole upstream DNS server to use `127.0.10.1` in the Pi-hole WebGU
|
|||||||
|
|
||||||
If you want a recognizable hostname for the Tor DNS in your Pi-hole GUI statistics, edit `/etc/hosts` as root, include the following line at the end and save the changes
|
If you want a recognizable hostname for the Tor DNS in your Pi-hole GUI statistics, edit `/etc/hosts` as root, include the following line at the end and save the changes
|
||||||
|
|
||||||
```
|
```text
|
||||||
127.0.10.1 tor.dns.local
|
127.0.10.1 tor.dns.local
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -47,7 +47,7 @@ dig @<IPv4/6-dns-server-address> api.mixpanel.com <A/AAAA>
|
|||||||
|
|
||||||
For Windows:
|
For Windows:
|
||||||
|
|
||||||
```shell
|
```bash
|
||||||
nslookup -server=<IPv4/6-dns-server-address> -q=<A/AAAA> api.mixpanel.com
|
nslookup -server=<IPv4/6-dns-server-address> -q=<A/AAAA> api.mixpanel.com
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ The easiest and most reliable solution would be to use the [Tor Browser](https:/
|
|||||||
|
|
||||||
Edit `/etc/tor/torrc` on your Pi-hole as root, include the following line at the end and save the changes
|
Edit `/etc/tor/torrc` on your Pi-hole as root, include the following line at the end and save the changes
|
||||||
|
|
||||||
```
|
```text
|
||||||
SocksPort 0.0.0.0:9050
|
SocksPort 0.0.0.0:9050
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -26,19 +26,19 @@ Next, if needed, port forward the newly configured port from your router to your
|
|||||||
|
|
||||||
Your server line should look like this:
|
Your server line should look like this:
|
||||||
|
|
||||||
```
|
```text
|
||||||
server 10.9.0.0 255.255.255.0
|
server 10.9.0.0 255.255.255.0
|
||||||
```
|
```
|
||||||
|
|
||||||
Make sure that the DNS requests go through the instance of OpenVPN:
|
Make sure that the DNS requests go through the instance of OpenVPN:
|
||||||
|
|
||||||
```
|
```text
|
||||||
push "dhcp-option DNS 10.9.0.1"
|
push "dhcp-option DNS 10.9.0.1"
|
||||||
```
|
```
|
||||||
|
|
||||||
One other setting that we need to change is to comment out the `bypass-dhcp` instruction so that it looks like:
|
One other setting that we need to change is to comment out the `bypass-dhcp` instruction so that it looks like:
|
||||||
|
|
||||||
```
|
```text
|
||||||
# push "redirect-gateway def1 bypass-dhcp"`.
|
# push "redirect-gateway def1 bypass-dhcp"`.
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ This setup assumes that your local network is in the range **192.168.2.0** (i.e.
|
|||||||
|
|
||||||
Edit your `/etc/openvpn/server/server.conf`:
|
Edit your `/etc/openvpn/server/server.conf`:
|
||||||
|
|
||||||
```
|
```text
|
||||||
push "route 192.168.2.0 255.255.255.0"
|
push "route 192.168.2.0 255.255.255.0"
|
||||||
push "dhcp-option DNS 192.168.2.123"
|
push "dhcp-option DNS 192.168.2.123"
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ vim /etc/openvpn/server/server.conf
|
|||||||
|
|
||||||
Set this line to use your Pi-hole's IP address, which you determined from the `ifconfig` command and comment out or remove the other line (if it exists):
|
Set this line to use your Pi-hole's IP address, which you determined from the `ifconfig` command and comment out or remove the other line (if it exists):
|
||||||
|
|
||||||
```
|
```text
|
||||||
push "dhcp-option DNS 10.8.0.1"
|
push "dhcp-option DNS 10.8.0.1"
|
||||||
#push "dhcp-option DNS 8.8.8.8"
|
#push "dhcp-option DNS 8.8.8.8"
|
||||||
```
|
```
|
||||||
@@ -35,7 +35,7 @@ It's [suggested to have Pi-hole be the only resolver](https://discourse.pi-hole.
|
|||||||
|
|
||||||
Furthermore, you might want to enable logging for your OpenVPN server. In this case, add the following lines to your server's config file:
|
Furthermore, you might want to enable logging for your OpenVPN server. In this case, add the following lines to your server's config file:
|
||||||
|
|
||||||
```
|
```text
|
||||||
log /var/log/openvpn.log
|
log /var/log/openvpn.log
|
||||||
verb 3
|
verb 3
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
OpenVPN 2.4 and newer check the validity of the Certificate Revocation List (CRL). This can result in a sudden malfunction of `openvpn` after an update even though no configuration files have changed. This error manifests in the following, not very helpful, error on the client's side:
|
OpenVPN 2.4 and newer check the validity of the Certificate Revocation List (CRL). This can result in a sudden malfunction of `openvpn` after an update even though no configuration files have changed. This error manifests in the following, not very helpful, error on the client's side:
|
||||||
|
|
||||||
```
|
```text
|
||||||
Wed Apr 24 11:19:07 2019 VERIFY OK: depth=0, CN=server
|
Wed Apr 24 11:19:07 2019 VERIFY OK: depth=0, CN=server
|
||||||
Wed Apr 24 11:19:07 2019 Connection reset, restarting [0]
|
Wed Apr 24 11:19:07 2019 Connection reset, restarting [0]
|
||||||
Wed Apr 24 11:19:07 2019 SIGUSR1[soft,connection-reset] received, process restarting
|
Wed Apr 24 11:19:07 2019 SIGUSR1[soft,connection-reset] received, process restarting
|
||||||
@@ -17,7 +17,7 @@ Android clients simply report: "Transport error, trying to reconnect..."
|
|||||||
|
|
||||||
On the OpenVPN server, the following messages are logged:
|
On the OpenVPN server, the following messages are logged:
|
||||||
|
|
||||||
```
|
```text
|
||||||
Wed Apr 24 11:19:07 2019 aaa.bbb.ccc.ddd:pppp TLS: Initial packet from [AF_INET]aaa.bbb.ccc.ddd:pppp, sid=57719cb8 77945ae9
|
Wed Apr 24 11:19:07 2019 aaa.bbb.ccc.ddd:pppp TLS: Initial packet from [AF_INET]aaa.bbb.ccc.ddd:pppp, sid=57719cb8 77945ae9
|
||||||
Wed Apr 24 11:19:07 2019 aaa.bbb.ccc.ddd:pppp VERIFY ERROR: depth=0, error=CRL has expired: CN=client1
|
Wed Apr 24 11:19:07 2019 aaa.bbb.ccc.ddd:pppp VERIFY ERROR: depth=0, error=CRL has expired: CN=client1
|
||||||
Wed Apr 24 11:19:07 2019 aaa.bbb.ccc.ddd:pppp OpenSSL: error:11089086:SSL routines:ssl3_get_client_certificate:certificate verify failed
|
Wed Apr 24 11:19:07 2019 aaa.bbb.ccc.ddd:pppp OpenSSL: error:11089086:SSL routines:ssl3_get_client_certificate:certificate verify failed
|
||||||
@@ -30,7 +30,7 @@ Wed Apr 24 11:19:07 2019 aaa.bbb.ccc.ddd:pppp SIGUSR1[soft,tls-error] received,
|
|||||||
|
|
||||||
The error is `CRL has expired` and can be solved using the following commands:
|
The error is `CRL has expired` and can be solved using the following commands:
|
||||||
|
|
||||||
```
|
```bash
|
||||||
sudo -s
|
sudo -s
|
||||||
cd /etc/openvpn
|
cd /etc/openvpn
|
||||||
mv crl.pem crl.pem_old
|
mv crl.pem crl.pem_old
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ After going through our quick tutorial, we provide some more advanced examples s
|
|||||||
|
|
||||||
## Block domain with only numbers
|
## Block domain with only numbers
|
||||||
|
|
||||||
```
|
```text
|
||||||
^[0-9][^a-z]+\.((com)|(edu))$
|
^[0-9][^a-z]+\.((com)|(edu))$
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -118,7 +118,7 @@ Blocks domains containing only numbers (no letters) and ending in `.com` or `.ed
|
|||||||
|
|
||||||
### Block domains without subdomains
|
### Block domains without subdomains
|
||||||
|
|
||||||
```
|
```text
|
||||||
^[a-z0-9]+([-]{1}[a-z0-9]+)*\.[a-z]{2,7}$
|
^[a-z0-9]+([-]{1}[a-z0-9]+)*\.[a-z]{2,7}$
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ Beware: This tutorial does not explain on how to block DoH or DoT.
|
|||||||
|
|
||||||
SSH into your Pi-hole. A quick `ifconfig eth0` (substituting `eth0` for the applicable network interface) will get you the address information:
|
SSH into your Pi-hole. A quick `ifconfig eth0` (substituting `eth0` for the applicable network interface) will get you the address information:
|
||||||
|
|
||||||
```
|
```text
|
||||||
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
|
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
|
||||||
inet 10.0.51.2 netmask 255.255.255.0 broadcast 192.168.0.255
|
inet 10.0.51.2 netmask 255.255.255.0 broadcast 192.168.0.255
|
||||||
inet6 2001:470:5:3::8ed prefixlen 128 scopeid 0x0<global>
|
inet6 2001:470:5:3::8ed prefixlen 128 scopeid 0x0<global>
|
||||||
@@ -27,7 +27,7 @@ Take note of the `inet` address, and the `inet6` address which starts with `fe`
|
|||||||
|
|
||||||
Choosing this option will have DNS queries taking the following path:
|
Choosing this option will have DNS queries taking the following path:
|
||||||
|
|
||||||
```
|
```text
|
||||||
(Clients) -> Pi-hole -> Upstream DNS Server
|
(Clients) -> Pi-hole -> Upstream DNS Server
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -63,7 +63,7 @@ All client devices on your network should now automatically be configured with a
|
|||||||
If you'd rather have your OPNsense forward all DNS traffic to Pi-hole, you can complete this *alternative* step.
|
If you'd rather have your OPNsense forward all DNS traffic to Pi-hole, you can complete this *alternative* step.
|
||||||
Doing so will have DNS queries taking the following path:
|
Doing so will have DNS queries taking the following path:
|
||||||
|
|
||||||
```
|
```text
|
||||||
(Clients) -> OPNsense -> Pi-hole -> Upstream DNS Server
|
(Clients) -> OPNsense -> Pi-hole -> Upstream DNS Server
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ This guide was developed using a Ubiquiti Cloud Key v2 with UniFi Network v7.1.6
|
|||||||
|
|
||||||
SSH into your Raspi. A quick `ifconfig eth0` (substituting `eth0` for the applicable network interface) will get you the address information:
|
SSH into your Raspi. A quick `ifconfig eth0` (substituting `eth0` for the applicable network interface) will get you the address information:
|
||||||
|
|
||||||
```
|
```text
|
||||||
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
|
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
|
||||||
inet 192.168.0.9 netmask 255.255.255.0 broadcast 192.168.0.255
|
inet 192.168.0.9 netmask 255.255.255.0 broadcast 192.168.0.255
|
||||||
inet6 2001:470:5:3::8ed prefixlen 128 scopeid 0x0<global>
|
inet6 2001:470:5:3::8ed prefixlen 128 scopeid 0x0<global>
|
||||||
@@ -26,7 +26,7 @@ Take note of the `inet` address, and the `inet6` address which starts with `fe`
|
|||||||
|
|
||||||
Choosing this option will have DNS queries taking the following path:
|
Choosing this option will have DNS queries taking the following path:
|
||||||
|
|
||||||
```
|
```text
|
||||||
(Clients) -> Pi-hole -> Upstream DNS Server
|
(Clients) -> Pi-hole -> Upstream DNS Server
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -48,7 +48,7 @@ All client devices on your network should now automatically be configured with a
|
|||||||
|
|
||||||
If you'd rather have your USG forward all DNS traffic to Pi-hole, you can complete this *alternative* step. Doing so will have DNS queries taking the following path:
|
If you'd rather have your USG forward all DNS traffic to Pi-hole, you can complete this *alternative* step. Doing so will have DNS queries taking the following path:
|
||||||
|
|
||||||
```
|
```text
|
||||||
(Clients) -> USG -> Pi-hole -> Upstream DNS Server
|
(Clients) -> USG -> Pi-hole -> Upstream DNS Server
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user