mirror of
https://github.com/dashpay/dash.git
synced 2024-12-25 03:52:49 +01:00
Merge #21075: doc: Fix markdown formatting
e1604b3d50dca3291a432be59cfd03c0e846e7b2 doc: Replace tabs for spaces (Gunar C. Gessner) 98db48d3490e5863b4d89e03cebeece9bd1f91ae doc: Fix markdown formatting (Gunar Gessner) Pull request description: Lines were being joined making it hard to read. ACKs for top commit: RandyMcMillan: ACK e1604b3d50dca3291a432be59cfd03c0e846e7b2 Tree-SHA512: fd5a7c5e9a1cbbf0fbb13b5c30b87853c84751da7f0fad08151bda07f1933872ab51cad29a0c0a70ced48e60df6d83bff3f84c2f77d00d22723fae9a8c3534fc
This commit is contained in:
parent
0a62b9f985
commit
f254f77d75
@ -9,7 +9,7 @@ Note
|
|||||||
Always use absolute paths to configure and compile Dash Core and the dependencies.
|
Always use absolute paths to configure and compile Dash Core and the dependencies.
|
||||||
For example, when specifying the path of the dependency:
|
For example, when specifying the path of the dependency:
|
||||||
|
|
||||||
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=$BDB_PREFIX
|
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=$BDB_PREFIX
|
||||||
|
|
||||||
Here BDB_PREFIX must be an absolute path - it is defined using $(pwd) which ensures
|
Here BDB_PREFIX must be an absolute path - it is defined using $(pwd) which ensures
|
||||||
the usage of the absolute path.
|
the usage of the absolute path.
|
||||||
@ -227,9 +227,9 @@ Boost
|
|||||||
-----
|
-----
|
||||||
If you need to build Boost yourself:
|
If you need to build Boost yourself:
|
||||||
|
|
||||||
sudo su
|
sudo su
|
||||||
./bootstrap.sh
|
./bootstrap.sh
|
||||||
./bjam install
|
./bjam install
|
||||||
|
|
||||||
|
|
||||||
Security
|
Security
|
||||||
@ -240,8 +240,8 @@ This can be disabled with:
|
|||||||
|
|
||||||
Hardening Flags:
|
Hardening Flags:
|
||||||
|
|
||||||
./configure --enable-hardening
|
./configure --enable-hardening
|
||||||
./configure --disable-hardening
|
./configure --disable-hardening
|
||||||
|
|
||||||
|
|
||||||
Hardening enables the following features:
|
Hardening enables the following features:
|
||||||
@ -256,7 +256,7 @@ Hardening enables the following features:
|
|||||||
|
|
||||||
To test that you have built PIE executable, install scanelf, part of paxutils, and use:
|
To test that you have built PIE executable, install scanelf, part of paxutils, and use:
|
||||||
|
|
||||||
scanelf -e ./dashd
|
scanelf -e ./dashd
|
||||||
|
|
||||||
The output should contain:
|
The output should contain:
|
||||||
|
|
||||||
@ -273,8 +273,8 @@ Hardening enables the following features:
|
|||||||
`scanelf -e ./dashd`
|
`scanelf -e ./dashd`
|
||||||
|
|
||||||
The output should contain:
|
The output should contain:
|
||||||
STK/REL/PTL
|
STK/REL/PTL
|
||||||
RW- R-- RW-
|
RW- R-- RW-
|
||||||
|
|
||||||
The STK RW- means that the stack is readable and writeable but not executable.
|
The STK RW- means that the stack is readable and writeable but not executable.
|
||||||
|
|
||||||
|
18
doc/init.md
18
doc/init.md
@ -53,11 +53,11 @@ Paths
|
|||||||
|
|
||||||
All three configurations assume several paths that might need to be adjusted.
|
All three configurations assume several paths that might need to be adjusted.
|
||||||
|
|
||||||
Binary: `/usr/bin/dashd`
|
Binary: /usr/bin/dashd
|
||||||
Configuration file: `/etc/dashcore/dash.conf`
|
Configuration file: /etc/dashcore/dash.conf
|
||||||
Data directory: `/var/lib/dashd`
|
Data directory: /var/lib/dashd
|
||||||
PID file: `/var/run/dashd/dashd.pid` (OpenRC and Upstart) or `/run/dashd/dashd.pid` (systemd)
|
PID file: /var/run/dashd/dashd.pid (OpenRC and Upstart) or /run/dashd/dashd.pid (systemd)
|
||||||
Lock file: `/var/lock/subsys/dashd` (CentOS)
|
Lock file: /var/lock/subsys/dashd (CentOS)
|
||||||
|
|
||||||
The PID directory (if applicable) and data directory should both be owned by the
|
The PID directory (if applicable) and data directory should both be owned by the
|
||||||
dashcore user and group. It is advised for security reasons to make the
|
dashcore user and group. It is advised for security reasons to make the
|
||||||
@ -83,10 +83,10 @@ OpenRC).
|
|||||||
|
|
||||||
### macOS
|
### macOS
|
||||||
|
|
||||||
Binary: `/usr/local/bin/dashd`
|
Binary: /usr/local/bin/dashd
|
||||||
Configuration file: `~/Library/Application Support/DashCore/dash.conf`
|
Configuration file: ~/Library/Application Support/DashCore/dash.conf
|
||||||
Data directory: `~/Library/Application Support/DashCore`
|
Data directory: ~/Library/Application Support/DashCore
|
||||||
Lock file: `~/Library/Application Support/DashCore/.lock`
|
Lock file: ~/Library/Application Support/DashCore/.lock
|
||||||
|
|
||||||
Installing Service Configuration
|
Installing Service Configuration
|
||||||
-----------------------------------
|
-----------------------------------
|
||||||
|
104
doc/tor.md
104
doc/tor.md
@ -24,44 +24,44 @@ information in the debug log about your Tor configuration.
|
|||||||
The first step is running Dash Core behind a Tor proxy. This will already anonymize all
|
The first step is running Dash Core behind a Tor proxy. This will already anonymize all
|
||||||
outgoing connections, but more is possible.
|
outgoing connections, but more is possible.
|
||||||
|
|
||||||
-proxy=ip:port Set the proxy server. If SOCKS5 is selected (default), this proxy
|
-proxy=ip:port Set the proxy server. If SOCKS5 is selected (default), this proxy
|
||||||
server will be used to try to reach .onion addresses as well.
|
server will be used to try to reach .onion addresses as well.
|
||||||
You need to use -noonion or -onion=0 to explicitly disable
|
You need to use -noonion or -onion=0 to explicitly disable
|
||||||
outbound access to onion services.
|
outbound access to onion services.
|
||||||
|
|
||||||
-onion=ip:port Set the proxy server to use for Tor onion services. You do not
|
-onion=ip:port Set the proxy server to use for Tor onion services. You do not
|
||||||
need to set this if it's the same as -proxy. You can use -onion=0
|
need to set this if it's the same as -proxy. You can use -onion=0
|
||||||
to explicitly disable access to onion services.
|
to explicitly disable access to onion services.
|
||||||
Note: Only the -proxy option sets the proxy for DNS requests;
|
Note: Only the -proxy option sets the proxy for DNS requests;
|
||||||
with -onion they will not route over Tor, so use -proxy if you
|
with -onion they will not route over Tor, so use -proxy if you
|
||||||
have privacy concerns.
|
have privacy concerns.
|
||||||
|
|
||||||
-listen When using -proxy, listening is disabled by default. If you want
|
-listen When using -proxy, listening is disabled by default. If you want
|
||||||
to manually configure an onion service (see section 3), you'll
|
to manually configure an onion service (see section 3), you'll
|
||||||
need to enable it explicitly.
|
need to enable it explicitly.
|
||||||
|
|
||||||
-connect=X When behind a Tor proxy, you can specify .onion addresses instead
|
-connect=X When behind a Tor proxy, you can specify .onion addresses instead
|
||||||
-addnode=X of IP addresses or hostnames in these parameters. It requires
|
-addnode=X of IP addresses or hostnames in these parameters. It requires
|
||||||
-seednode=X SOCKS5. In Tor mode, such addresses can also be exchanged with
|
-seednode=X SOCKS5. In Tor mode, such addresses can also be exchanged with
|
||||||
other P2P nodes.
|
other P2P nodes.
|
||||||
|
|
||||||
-onlynet=onion Make outgoing connections only to .onion addresses. Incoming
|
-onlynet=onion Make outgoing connections only to .onion addresses. Incoming
|
||||||
connections are not affected by this option. This option can be
|
connections are not affected by this option. This option can be
|
||||||
specified multiple times to allow multiple network types, e.g.
|
specified multiple times to allow multiple network types, e.g.
|
||||||
ipv4, ipv6 or onion. If you use this option with values other
|
ipv4, ipv6 or onion. If you use this option with values other
|
||||||
than onion you *cannot* disable onion connections; outgoing onion
|
than onion you *cannot* disable onion connections; outgoing onion
|
||||||
connections will be enabled when you use -proxy or -onion. Use
|
connections will be enabled when you use -proxy or -onion. Use
|
||||||
-noonion or -onion=0 if you want to be sure there are no outbound
|
-noonion or -onion=0 if you want to be sure there are no outbound
|
||||||
onion connections over the default proxy or your defined -proxy.
|
onion connections over the default proxy or your defined -proxy.
|
||||||
|
|
||||||
An example how to start the client if the Tor proxy is running on local host on
|
An example how to start the client if the Tor proxy is running on local host on
|
||||||
port 9050 and only allows .onion nodes to connect:
|
port 9050 and only allows .onion nodes to connect:
|
||||||
|
|
||||||
./dashd -onion=127.0.0.1:9050 -onlynet=onion -listen=0 -addnode=ssapp53tmftyjmjb.onion
|
./dashd -onion=127.0.0.1:9050 -onlynet=onion -listen=0 -addnode=ssapp53tmftyjmjb.onion
|
||||||
|
|
||||||
In a typical situation, this suffices to run behind a Tor proxy:
|
In a typical situation, this suffices to run behind a Tor proxy:
|
||||||
|
|
||||||
./dashd -proxy=127.0.0.1:9050
|
./dashd -proxy=127.0.0.1:9050
|
||||||
|
|
||||||
## 2. Automatically create a Dash Core onion service
|
## 2. Automatically create a Dash Core onion service
|
||||||
|
|
||||||
@ -162,57 +162,57 @@ reachable from the Tor network. Add these lines to your /etc/tor/torrc (or equiv
|
|||||||
config file): *Needed for Tor version 0.2.7.0 and older versions of Tor only. For newer
|
config file): *Needed for Tor version 0.2.7.0 and older versions of Tor only. For newer
|
||||||
versions of Tor see [Section 4](#4-automatically-listen-on-tor).*
|
versions of Tor see [Section 4](#4-automatically-listen-on-tor).*
|
||||||
|
|
||||||
HiddenServiceDir /var/lib/tor/dashcore-service/
|
HiddenServiceDir /var/lib/tor/dashcore-service/
|
||||||
HiddenServicePort 9999 127.0.0.1:9996
|
HiddenServicePort 9999 127.0.0.1:9996
|
||||||
|
|
||||||
The directory can be different of course, but virtual port numbers should be equal to
|
The directory can be different of course, but virtual port numbers should be equal to
|
||||||
your dashd's P2P listen port (9999 by default), and target addresses and ports
|
your dashd's P2P listen port (9999 by default), and target addresses and ports
|
||||||
should be equal to binding address and port for inbound Tor connections (127.0.0.1:9996 by default).
|
should be equal to binding address and port for inbound Tor connections (127.0.0.1:9996 by default).
|
||||||
|
|
||||||
-externalip=X You can tell Dash Core about its publicly reachable addresses using
|
-externalip=X You can tell Dash Core about its publicly reachable addresses using
|
||||||
this option, and this can be an onion address. Given the above
|
this option, and this can be an onion address. Given the above
|
||||||
configuration, you can find your onion address in
|
configuration, you can find your onion address in
|
||||||
/var/lib/tor/dashcore-service/hostname. For connections
|
/var/lib/tor/dashcore-service/hostname. For connections
|
||||||
coming from unroutable addresses (such as 127.0.0.1, where the
|
coming from unroutable addresses (such as 127.0.0.1, where the
|
||||||
Tor proxy typically runs), onion addresses are given
|
Tor proxy typically runs), onion addresses are given
|
||||||
preference for your node to advertise itself with.
|
preference for your node to advertise itself with.
|
||||||
|
|
||||||
You can set multiple local addresses with -externalip. The
|
You can set multiple local addresses with -externalip. The
|
||||||
one that will be rumoured to a particular peer is the most
|
one that will be rumoured to a particular peer is the most
|
||||||
compatible one and also using heuristics, e.g. the address
|
compatible one and also using heuristics, e.g. the address
|
||||||
with the most incoming connections, etc.
|
with the most incoming connections, etc.
|
||||||
|
|
||||||
-listen You'll need to enable listening for incoming connections, as this
|
-listen You'll need to enable listening for incoming connections, as this
|
||||||
is off by default behind a proxy.
|
is off by default behind a proxy.
|
||||||
|
|
||||||
-discover When -externalip is specified, no attempt is made to discover local
|
-discover When -externalip is specified, no attempt is made to discover local
|
||||||
IPv4 or IPv6 addresses. If you want to run a dual stack, reachable
|
IPv4 or IPv6 addresses. If you want to run a dual stack, reachable
|
||||||
from both Tor and IPv4 (or IPv6), you'll need to either pass your
|
from both Tor and IPv4 (or IPv6), you'll need to either pass your
|
||||||
other addresses using -externalip, or explicitly enable -discover.
|
other addresses using -externalip, or explicitly enable -discover.
|
||||||
Note that both addresses of a dual-stack system may be easily
|
Note that both addresses of a dual-stack system may be easily
|
||||||
linkable using traffic analysis.
|
linkable using traffic analysis.
|
||||||
|
|
||||||
In a typical situation, where you're only reachable via Tor, this should suffice:
|
In a typical situation, where you're only reachable via Tor, this should suffice:
|
||||||
|
|
||||||
./dashd -proxy=127.0.0.1:9050 -externalip=7zvj7a2imdgkdbg4f2dryd5rgtrn7upivr5eeij4cicjh65pooxeshid.onion -listen
|
./dashd -proxy=127.0.0.1:9050 -externalip=7zvj7a2imdgkdbg4f2dryd5rgtrn7upivr5eeij4cicjh65pooxeshid.onion -listen
|
||||||
|
|
||||||
(obviously, replace the .onion address with your own). It should be noted that you still
|
(obviously, replace the .onion address with your own). It should be noted that you still
|
||||||
listen on all devices and another node could establish a clearnet connection, when knowing
|
listen on all devices and another node could establish a clearnet connection, when knowing
|
||||||
your address. To mitigate this, additionally bind the address of your Tor proxy:
|
your address. To mitigate this, additionally bind the address of your Tor proxy:
|
||||||
|
|
||||||
./dashd ... -bind=127.0.0.1
|
./dashd ... -bind=127.0.0.1
|
||||||
|
|
||||||
If you don't care too much about hiding your node, and want to be reachable on IPv4
|
If you don't care too much about hiding your node, and want to be reachable on IPv4
|
||||||
as well, use `discover` instead:
|
as well, use `discover` instead:
|
||||||
|
|
||||||
./dashd ... -discover
|
./dashd ... -discover
|
||||||
|
|
||||||
and open port 9999 on your firewall (or use port mapping, i.e., `-upnp` or `-natpmp`).
|
and open port 9999 on your firewall (or use port mapping, i.e., `-upnp` or `-natpmp`).
|
||||||
|
|
||||||
If you only want to use Tor to reach .onion addresses, but not use it as a proxy
|
If you only want to use Tor to reach .onion addresses, but not use it as a proxy
|
||||||
for normal IPv4/IPv6 communication, use:
|
for normal IPv4/IPv6 communication, use:
|
||||||
|
|
||||||
./dashd -onion=127.0.0.1:9050 -externalip=7zvj7a2imdgkdbg4f2dryd5rgtrn7upivr5eeij4cicjh65pooxeshid.onion -discover
|
./dashd -onion=127.0.0.1:9050 -externalip=7zvj7a2imdgkdbg4f2dryd5rgtrn7upivr5eeij4cicjh65pooxeshid.onion -discover
|
||||||
|
|
||||||
|
|
||||||
## 3.1. List of known Dash Core Tor relays
|
## 3.1. List of known Dash Core Tor relays
|
||||||
|
Loading…
Reference in New Issue
Block a user