DEPLOY.rst 2.38 KB
Newer Older
juga's avatar
juga committed
1
2
.. _deploy:

3
Deploying Simple Bandwidth Scanner
Matt Traudt's avatar
Matt Traudt committed
4
=====================================
5

juga's avatar
juga committed
6
To run sbws is needed:
7

juga's avatar
juga committed
8
9
- A machine to run the :term:`scanner`.
- One or more :term:`destination` (s) that serve a large file.
10

juga's avatar
juga committed
11
Both the ``scanner`` and your the ``destination`` (s) should be on fast,
juga's avatar
juga committed
12
well connected machines.
13

14
.. _destinations_requirements:
15

juga's avatar
juga committed
16
destination requirements
17
------------------------------------
18

19
20
21
- A Web server installed and running that supports HTTP GET, HEAD and
  Range (:rfc:`7233`) requests.
  ``Apache`` HTTP Server and ``Nginx`` support them.
22
23
- TLS support to avoid HTTP content caches at the various exit nodes.
- Certificates can be self-signed.
Matt Traudt's avatar
Matt Traudt committed
24
- A large file; at the time of writing, at least 1 GiB in size
25
26
27
28
29
30
31
  It can be created running::

      head -c $((1024*1024*1024)) /dev/urandom > 1GiB

- A fixed IP address or a domain name.
- Bandwidth: at least 12.5MB/s (100 Mbit/s).
- Network traffic: around 12-15GB/day.
32

juga's avatar
juga committed
33
34
35
If possible, use a `Content delivery network`_ (CDN) in order to make the
destination IP closer to the scanner exit.

juga's avatar
juga committed
36
scanner setup
juga's avatar
juga committed
37
----------------------
38

39
40
Install sbws according to `<INSTALL.rst>`_ (in the local directory or Tor
Project Gitlab) or `<INSTALL.html>`_  (local build or Read the Docs).
41

juga's avatar
juga committed
42
43
To run the ``scanner`` it is mandatory to create a configuration file with at
least one ``destination``.
juga's avatar
juga committed
44
It is recommended to set several ``destinations`` so that the ``scanner`` can
45
continue if one fails.
juga's avatar
juga committed
46

juga's avatar
juga committed
47
48
49
50
51
If ``sbws`` is installed from the Debian package, then create the configuration
file in ``/etc/sbws/sbws.ini``.
You can see an example with all the possible options here, note that you don't
need to include all of that and that everything that starts with ``#`` and
``;`` is a comment:
juga's avatar
juga committed
52
53
54
55
56

.. literalinclude:: /examples/sbws.example.ini
    :caption: Example sbws.example.ini

If ``sbws`` is installed from the sources as a non-root user then create the
juga's avatar
juga committed
57
configuration file in ``~/.sbws.ini``.
juga's avatar
juga committed
58
59

More details about the configuration file can be found in
60
61
``./docs/source/man_sbws.ini.rst`` (in the local directory or Tor Project
Gitlab) or `<man_sbws.ini.html>`_  (local build or Read the Docs) or
juga's avatar
juga committed
62
``man sbws.ini`` (system package).
juga's avatar
juga committed
63

64
65
66
See also ``./docs/source/man_sbws.rst`` (in the local directory or Tor Project
Gitlab) or `<man_sbws.html>`_ (local build or Read the Docs) or ``man sbws``
(system package).
juga's avatar
juga committed
67
68

.. _Content delivery network: https://en.wikipedia.org/wiki/Content_delivery_network