2019-02-08 13:04:15 +00:00
|
|
|
# Requirements
|
2017-02-26 20:44:39 +00:00
|
|
|
|
2019-02-08 13:02:21 +00:00
|
|
|
EOTK requires Tor 0.3.5.7+
|
|
|
|
|
2019-02-08 13:04:15 +00:00
|
|
|
EOTK requires recent `nginx` (1.15.8+) with the following modules/features enabled:
|
2017-02-26 20:44:39 +00:00
|
|
|
|
2017-02-26 21:22:07 +00:00
|
|
|
* `headers_more`
|
|
|
|
* `ngx_http_substitutions_filter_module`
|
|
|
|
* `http_sub`
|
|
|
|
* `http_ssl`
|
2019-02-08 13:02:21 +00:00
|
|
|
* Lua and/or LuaJIT (ideally from OpenResty)
|
|
|
|
|
|
|
|
# After the Installation
|
|
|
|
|
2019-07-04 10:36:02 +00:00
|
|
|
Once you have installed EOTK (below) and configured and tested it
|
2019-02-08 13:02:21 +00:00
|
|
|
for your project, run:
|
|
|
|
|
|
|
|
* `eotk make-scripts`
|
|
|
|
|
2019-07-04 10:36:02 +00:00
|
|
|
This will create two files:
|
2019-02-08 13:02:21 +00:00
|
|
|
|
|
|
|
* `eotk-init.sh` - for installing on your system as a startup script
|
|
|
|
* `eotk-housekeeping.sh` - for cronjob log rotation and other cleanup work
|
|
|
|
|
2019-07-04 10:36:02 +00:00
|
|
|
Please read the individual files for installation instructions;
|
2019-02-08 13:04:15 +00:00
|
|
|
local setup is intended to be pretty simple.
|
2017-02-26 21:22:07 +00:00
|
|
|
|
2019-02-08 13:02:21 +00:00
|
|
|
# Per-Platform Installations
|
2017-02-27 10:52:39 +00:00
|
|
|
|
2019-07-04 10:36:02 +00:00
|
|
|
Where you don't have Tor, NGINX or OnionBalance,
|
2019-02-08 13:02:21 +00:00
|
|
|
or much other stuff currently installed:
|
2017-02-27 10:52:39 +00:00
|
|
|
|
2019-01-21 14:06:13 +00:00
|
|
|
## macOS Mojave (prebuilt via homebrew)
|
2017-02-27 10:52:39 +00:00
|
|
|
|
|
|
|
* install Homebrew: http://brew.sh
|
|
|
|
* `git clone https://github.com/alecmuffett/eotk.git`
|
|
|
|
* `cd eotk`
|
2019-01-21 14:06:13 +00:00
|
|
|
* `./opt.d/install-everything-on-macos.sh`
|
2017-02-27 10:52:39 +00:00
|
|
|
|
2019-07-04 10:36:02 +00:00
|
|
|
## Ubuntu 18.04LTS (prebuilt via tor and canonical)
|
|
|
|
|
|
|
|
Install a base Ubuntu 18.04LTS server image (or better) and then do:
|
2017-02-27 10:52:39 +00:00
|
|
|
|
|
|
|
* `git clone https://github.com/alecmuffett/eotk.git`
|
|
|
|
* `cd eotk`
|
2019-07-04 10:36:02 +00:00
|
|
|
* `./opt.d/install-everything-on-ubuntu-18.04.sh`
|
|
|
|
|
|
|
|
You can then do:
|
|
|
|
|
|
|
|
* `./eotk config demo.d/wikipedia.tconf`
|
|
|
|
* `./eotk start wikipedia`
|
2017-02-27 10:52:39 +00:00
|
|
|
|
2017-12-08 14:55:07 +00:00
|
|
|
## Raspbian (manual builds)
|
2017-02-26 21:22:07 +00:00
|
|
|
|
2017-03-04 15:48:55 +00:00
|
|
|
Serially, this takes about 1h45m on a PiZero, or about 30m on a Pi3b.
|
|
|
|
These figures should improve when recent Tor updates sediment into Raspbian.
|
2017-03-04 13:24:47 +00:00
|
|
|
|
2019-02-08 13:02:21 +00:00
|
|
|
Scripts are supplied for stretch
|
2017-12-08 14:55:07 +00:00
|
|
|
|
2017-03-04 13:24:47 +00:00
|
|
|
* `sudo apt-get install -y git`
|
2017-02-27 10:52:39 +00:00
|
|
|
* `git clone https://github.com/alecmuffett/eotk.git`
|
|
|
|
* `cd eotk`
|
2019-02-08 13:02:21 +00:00
|
|
|
* `./opt.d/build-nginx-on-raspbian-stretch.sh`
|
|
|
|
* `./opt.d/build-tor-on-raspbian-stretch.sh`
|
|
|
|
* `./opt.d/install-onionbalance-on-raspbian-stretch.sh`
|
2017-02-27 10:52:39 +00:00
|
|
|
|
|
|
|
# Piecemeal Installation Notes
|
|
|
|
|
|
|
|
You only need this section if you have to do installation in bits
|
|
|
|
because pre-existing software:
|
|
|
|
|
|
|
|
## Ubuntu Tor Installation
|
2017-02-26 20:44:39 +00:00
|
|
|
|
|
|
|
In a browser elsewhere, retreive the instructions for installing Tor
|
|
|
|
from https://www.torproject.org/docs/debian.html.en
|
|
|
|
|
|
|
|
* Set the menu options for:
|
|
|
|
* run *Ubuntu Xenial Xerus*
|
|
|
|
* and want *Tor*
|
|
|
|
* and version *stable*
|
|
|
|
* and read what is now on the page.
|
|
|
|
* Configure the APT repositories for Tor
|
|
|
|
* I recommend that you add the tor repositories into a new file
|
|
|
|
* Use: `/etc/apt/sources.list.d/tor.list` or similar
|
2019-02-08 13:06:25 +00:00
|
|
|
* Follow the instructions given:
|
|
|
|
* Do the documented `gpg` thing
|
|
|
|
* Do the documented `apt update` thing
|
|
|
|
* Do the documented `tor` installation thing
|
2017-02-26 20:44:39 +00:00
|
|
|
|
2017-02-27 10:52:39 +00:00
|
|
|
## Ubuntu NGINX Installation
|
2017-02-26 20:44:39 +00:00
|
|
|
|
2017-02-26 21:22:07 +00:00
|
|
|
Through `apt-get`; logfiles are tweaked to be writable by admin users.
|
2017-02-26 20:44:39 +00:00
|
|
|
|
|
|
|
* `sudo apt-get install nginx-extras`
|
|
|
|
* `sudo find /var/log/nginx/ -type f -perm -0200 -print0 | sudo xargs -0 chmod g+w`
|
|
|
|
|
2017-02-27 10:52:39 +00:00
|
|
|
## Ubuntu OnionBalance Installation
|
2017-02-26 20:44:39 +00:00
|
|
|
|
2017-02-26 21:22:07 +00:00
|
|
|
Through `apt-get` and `pip`; using `pip` tends to mangle permissions,
|
|
|
|
hence the find/xargs-chmod commands.
|
2017-02-26 20:44:39 +00:00
|
|
|
|
|
|
|
* `sudo apt-get install socat python-pip`
|
|
|
|
* `sudo pip install onionbalance`
|
|
|
|
* `sudo find /usr/local/bin /usr/local/lib -perm -0400 -print0 | sudo xargs -0 chmod a+r`
|
|
|
|
* `sudo find /usr/local/bin /usr/local/lib -perm -0100 -print0 | sudo xargs -0 chmod a+x`
|