we're able to show a working OpenWrt v18.06.1 on ZyXEL P-2812HNU-F1, with active Tor 0.3.4.8-1 (sept 2018).
Router does not have an DNS active (WAN, LAN nor WLAN) and still all clients can work on internet behind Tor


(Need also a build from scratch, to see any differences -like ubifs images are missing?- ie. git clone ...)
Packages installed in firmware:
Code: Select all
adblock - 3.5.4-2
atm-esi - 2.5.2-5
base-files - 192-r7258-5eb055306f
block-mount - 2018-04-16-e2436836-1
blockd - 2018-04-16-e2436836-1
br2684ctl - 2.5.2-5
bspatch - 4.3-1
busybox - 1.28.3-4
collectd - 5.8.0-5
collectd-mod-cpu - 5.8.0-5
collectd-mod-interface - 5.8.0-5
collectd-mod-iwinfo - 5.8.0-5
collectd-mod-load - 5.8.0-5
collectd-mod-memory - 5.8.0-5
collectd-mod-network - 5.8.0-5
collectd-mod-rrdtool - 5.8.0-5
dnsmasq - 2.80test3-1
dosfstools - 4.1-1
dropbear - 2017.75-5
dsl-vrx200-firmware-xdsl-a - 05.08.01.08.01.06_05.08.00.0B.01.01_osc-1
dsl-vrx200-firmware-xdsl-a-patch - 05.08.01.08.01.06_05.08.00.0B.01.01_osc-1
dsl-vrx200-firmware-xdsl-b - 05.08.01.08.01.06_05.08.00.0B.01.01_osc-1
dsl-vrx200-firmware-xdsl-b-patch - 05.08.01.08.01.06_05.08.00.0B.01.01_osc-1
e2fsprogs - 1.44.1-1
ethtool - 4.15-1
firewall - 2018-07-26-aa8846bb-1
fstools - 2018-04-16-e2436836-1
fwtool - 1
hostapd-common - 2018-04-09-fa617ee6-5
htop - 2.2.0-1
htpdate - 1.1.1-2
ip6tables - 1.6.2-1
iptables - 1.6.2-1
iw - 4.14-1
iwinfo - 2018-07-24-94b1366d-1
jshn - 2018-07-25-c83a84af-1
jsonfilter - 2018-02-04-c7e938d6-1
kernel - 4.9.120-1-3d3673d52047eb80321ec292e4a9796c
kmod-atm - 4.9.120-1
kmod-cfg80211 - 4.9.120+2017-11-01-9
kmod-crypto-aead - 4.9.120-1
kmod-crypto-crc32c - 4.9.120-1
kmod-crypto-hash - 4.9.120-1
kmod-crypto-manager - 4.9.120-1
kmod-crypto-null - 4.9.120-1
kmod-crypto-pcompress - 4.9.120-1
kmod-eeprom-93cx6 - 4.9.120-1
kmod-fs-autofs4 - 4.9.120-1
kmod-fs-ext4 - 4.9.120-1
kmod-fs-vfat - 4.9.120-1
kmod-gpio-button-hotplug - 4.9.120-2
kmod-input-core - 4.9.120-1
kmod-ip6tables - 4.9.120-1
kmod-ipt-conntrack - 4.9.120-1
kmod-ipt-core - 4.9.120-1
kmod-ipt-nat - 4.9.120-1
kmod-leds-gpio - 4.9.120-1
kmod-lib-crc-ccitt - 4.9.120-1
kmod-lib-crc-itu-t - 4.9.120-1
kmod-lib-crc16 - 4.9.120-1
kmod-ltq-atm-vr9 - 4.9.120-2
kmod-ltq-deu-vr9 - 4.9.120-1
kmod-ltq-ifxos - 4.9.120+1.5.19-4
kmod-ltq-ptm-vr9 - 4.9.120-1
kmod-ltq-vdsl-vr9 - 4.9.120+4.17.18.6-3
kmod-ltq-vdsl-vr9-mei - 4.9.120+1.5.17.6-4
kmod-mac80211 - 4.9.120+2017-11-01-9
kmod-nf-conntrack - 4.9.120-1
kmod-nf-conntrack6 - 4.9.120-1
kmod-nf-ipt - 4.9.120-1
kmod-nf-ipt6 - 4.9.120-1
kmod-nf-nat - 4.9.120-1
kmod-nf-reject - 4.9.120-1
kmod-nf-reject6 - 4.9.120-1
kmod-nls-base - 4.9.120-1
kmod-nls-cp437 - 4.9.120-1
kmod-nls-iso8859-1 - 4.9.120-1
kmod-nls-utf8 - 4.9.120-1
kmod-ppp - 4.9.120-1
kmod-pppoa - 4.9.120-1
kmod-pppoe - 4.9.120-1
kmod-pppox - 4.9.120-1
kmod-rt2800-lib - 4.9.120+2017-11-01-9
kmod-rt2800-mmio - 4.9.120+2017-11-01-9
kmod-rt2800-pci - 4.9.120+2017-11-01-9
kmod-rt2x00-lib - 4.9.120+2017-11-01-9
kmod-rt2x00-mmio - 4.9.120+2017-11-01-9
kmod-rt2x00-pci - 4.9.120+2017-11-01-9
kmod-scsi-core - 4.9.120-1
kmod-slhc - 4.9.120-1
kmod-sound-core - 4.9.120-1
kmod-usb-audio - 4.9.120-1
kmod-usb-core - 4.9.120-1
kmod-usb-dwc2 - 4.9.120-1
kmod-usb-ehci - 4.9.120-1
kmod-usb-ledtrig-usbport - 4.9.120-1
kmod-usb-printer - 4.9.120-1
kmod-usb-storage - 4.9.120-1
kmod-usb-storage-extras - 4.9.120-1
kmod-usb-storage-uas - 4.9.120-1
kmod-usb2 - 4.9.120-1
libblkid - 2.32-2
libblobmsg-json - 2018-07-25-c83a84af-1
libbz2 - 1.0.6-3
libc - 1.1.19-1
libcap - 2.25-2
libcomerr - 1.44.1-1
libevent2 - 2.0.22-1
libext2fs - 1.44.1-1
libgcc - 7.3.0-1
libip4tc - 1.6.2-1
libip6tc - 1.6.2-1
libiwinfo - 2018-07-24-94b1366d-1
libiwinfo-lua - 2018-07-24-94b1366d-1
libjson-c - 0.12.1-1
libjson-script - 2018-07-25-c83a84af-1
libkmod - 20-1
libltdl - 2.4.6-1
liblua - 5.1.5-1
liblucihttp - 2018-05-18-cb119ded-1
liblucihttp-lua - 2018-05-18-cb119ded-1
libmbedtls - 2.12.0-1
libmount - 2.32-2
libncurses - 6.1-1
libnl-tiny - 0.1-5
libopenssl - 1.0.2p-1
libpcre - 8.41-2
libpthread - 1.1.19-1
librrd1 - 1.0.50-2
librt - 1.1.19-1
libsmartcols - 2.32-2
libss - 1.44.1-1
libubox - 2018-07-25-c83a84af-1
libubus - 2018-07-26-40e0931e-1
libubus-lua - 2018-07-26-40e0931e-1
libuci - 2018-08-11-4c8b4d6e-1
libuci-lua - 2018-08-11-4c8b4d6e-1
libuclient - 2018-08-03-ae1c656f-1
libusb-1.0 - 1.0.22-1
libustream-openssl - 2018-05-22-5322f9db-1
libuuid - 2.32-2
libxtables - 1.6.2-1
linux-atm - 2.5.2-5
logd - 2018-02-14-128bc35f-2
ltq-vdsl-app - 4.17.18.6-2
lua - 5.1.5-1
luci - git-18.228.31946-f64b152-1
luci-app-adblock - git-18.228.31946-f64b152-1
luci-app-commands - git-18.228.31946-f64b152-1
luci-app-firewall - git-18.228.31946-f64b152-1
luci-app-openvpn - git-18.228.31946-f64b152-1
luci-app-p910nd - git-18.228.31946-f64b152-1
luci-app-privoxy - 1.0.6-2
luci-app-statistics - git-18.228.31946-f64b152-1
luci-base - git-18.228.31946-f64b152-1
luci-lib-ip - git-18.228.31946-f64b152-1
luci-lib-jsonc - git-18.228.31946-f64b152-1
luci-lib-nixio - git-18.228.31946-f64b152-1
luci-mod-admin-full - git-18.228.31946-f64b152-1
luci-proto-ipv6 - git-18.228.31946-f64b152-1
luci-proto-ppp - git-18.228.31946-f64b152-1
luci-ssl-openssl - git-18.228.31946-f64b152-1
luci-theme-bootstrap - git-18.228.31946-f64b152-1
mount-utils - 2.32-2
mtd - 23
nano - 2.9.8-1
netifd - 2018-07-30-a0a1e52e-1
openssl-util - 1.0.2p-1
openwrt-keyring - 2018-05-18-103a32e9-1
opkg - 2017-12-07-3b417b9f-2
p910nd - 0.97-5
pciutils - 3.5.6-1
ppp - 2.4.7-12
ppp-mod-pppoa - 2.4.7-12
ppp-mod-pppoe - 2.4.7-12
privoxy - 3.0.26-4
procd - 2018-03-28-dfb68f85-1
px5g-mbedtls - 6
rpcd - 2018-08-16-41333abe-1
rpcd-mod-rrdns - 20170710
rrdtool1 - 1.0.50-2
rt2800-pci-firmware - 2017-09-06-a61ac5cf-1
spi-tools - 1-cc6a41fdcec60610703ba6db488c621c64952898
swconfig - 11
terminfo - 6.1-1
tor - 0.3.4.8-1
tor-gencert - 0.3.4.8-1
tor-geoip - 0.3.4.8-1
tor-resolve - 0.3.4.8-1
ubi-utils - 2.0.2-1
ubox - 2018-02-14-128bc35f-2
ubus - 2018-07-26-40e0931e-1
ubusd - 2018-07-26-40e0931e-1
uci - 2018-08-11-4c8b4d6e-1
uclient-fetch - 2018-08-03-ae1c656f-1
uhttpd - 2018-06-26-796d42bc-1
uhttpd-mod-ubus - 2018-06-26-796d42bc-1
usbutils - 007-7
usign - 2015-07-04-ef641914-1
wireless-regdb - 2017-10-20-4343d359
wireless-tools - 29-5
wpad-mini - 2018-04-09-fa617ee6-5
zlib - 1.2.11-2
Code: Select all
# cat /var/log/tor/notices.log
Oct 30 01:25:15.000 [notice] Tor 0.3.4.8 (git-da95b91355248ad8) opening new log file.
Oct 30 01:25:15.319 [notice] Tor 0.3.4.8 (git-da95b91355248ad8) running on Linux with Libevent 2.0.22-stable, OpenSSL 1.0.2p, Zlib 1.2.11, Liblzma N/A, and Libzstd N/A.
Oct 30 01:25:15.320 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning
Oct 30 01:25:15.328 [notice] Read configuration file "/etc/tor/torrc".
Oct 30 01:25:15.433 [notice] Scheduler type KIST has been enabled.
Oct 30 01:25:15.434 [notice] You configured a non-loopback address 'xxx.yyy.zzz.1:9050' for SocksPort. This allows everybody on your local network to use your machine as a proxy. Make sure this is what you wanted.
Oct 30 01:25:15.434 [notice] Opening Socks listener on xxx.yyy.zzz.1:9050
Oct 30 01:25:15.435 [notice] Opening DNS listener on 127.0.0.1:9053
Oct 30 01:25:15.435 [notice] Opening Transparent pf/netfilter listener on 127.0.0.1:9040
Oct 30 01:25:15.000 [notice] Parsing GEOIP IPv4 file /usr/share/tor/geoip.
Oct 30 01:25:25.000 [notice] Parsing GEOIP IPv6 file /usr/share/tor/geoip6.
Oct 30 01:25:40.000 [notice] Bootstrapped 0%: Starting
Oct 30 01:25:40.000 [notice] Starting with guard context "default"
Oct 30 01:25:40.000 [notice] Bootstrapped 5%: Connecting to directory server
Oct 30 01:25:41.000 [notice] Bootstrapped 10%: Finishing handshake with directory server
Oct 30 01:25:41.000 [notice] Bootstrapped 15%: Establishing an encrypted directory connection
Oct 30 01:25:41.000 [notice] Bootstrapped 20%: Asking for networkstatus consensus
Oct 30 01:25:41.000 [notice] Bootstrapped 25%: Loading networkstatus consensus
Oct 30 01:25:57.000 [notice] I learned some more directory information, but not enough to build a circuit: We have no usable consensus.
Oct 30 01:25:57.000 [notice] Bootstrapped 40%: Loading authority key certs
Oct 30 01:26:15.000 [notice] The current consensus has no exit nodes. Tor can only build internal paths, such as paths to onion services.
Oct 30 01:26:15.000 [notice] Bootstrapped 45%: Asking for relay descriptors for internal paths
Oct 30 01:26:15.000 [notice] I learned some more directory information, but not enough to build a circuit: We need more microdescriptors: we have 0/6331, and can only build 0% of likely paths. (We have 0% of guards bw, 0% of midpoint bw, and 100% of end bw (no exits in consensus) = 0% of path bw.)
Oct 30 01:26:16.000 [notice] Bootstrapped 50%: Loading relay descriptors for internal paths
Oct 30 01:26:19.000 [notice] The current consensus contains exit nodes. Tor can build exit and internal paths.
Oct 30 01:26:28.000 [notice] Bootstrapped 55%: Loading relay descriptors
Oct 30 01:26:31.000 [notice] Bootstrapped 61%: Loading relay descriptors
Oct 30 01:26:33.000 [notice] Bootstrapped 66%: Loading relay descriptors
Oct 30 01:26:35.000 [notice] Bootstrapped 72%: Loading relay descriptors
Oct 30 01:26:37.000 [notice] Bootstrapped 78%: Loading relay descriptors
Oct 30 01:26:39.000 [notice] Bootstrapped 80%: Connecting to the Tor network
Oct 30 01:26:40.000 [notice] Bootstrapped 90%: Establishing a Tor circuit
Oct 30 01:26:42.000 [notice] Tor has successfully opened a circuit. Looks like client functionality is working.
Oct 30 01:26:42.000 [notice] Bootstrapped 100%: Done
1. Disable in System / Startup: (don't uninstall these!)
- sysfixtime
- htpdate , it starts too early during boot-proces, therefor it's started manually in /etc/rc.local & Tor is delayed in next step.
- dsl_control (it's their, but we're not able to test this)
- sysntpd
Code: Select all
START=96
STOP=96
Reboot the router afterwards & check in CLI folder /etc/rc.d/,m see that Tor has 2 starting items: S50tor & S96Tor. Remove S50tor & reboot again!
If there are also 2 K..Tor items, one can/must(?) be removed, its about Kill the job during shutdown / restart of the router.
3. Adjust / add next rule in /etc/rc.local (just before 'exit 0'):
Code: Select all
htpdate -t -s 147.75.44.153 139.59.209.225 104.18.58.123
4. Adjust Privoxy startup (Services / Privoxy WEB proxy / System / Boot delay) into 5 seconds instead of 10!
Afterwards check active time on router! As well as timing in Tor logs (System / Custom Commands / Tor -full- log) and system & kernel logs.
Timing is in this case the issue, 1st router gets actual time from htpdate.
- Privoxy will start, but has no issues with current time set or not.
- Next Tor should start, and all log items should have the current, correct time.
Now should everything work from power-on device.
Let's test this...
To do:
- LED activity change on Tor active or not?
- Update command in GUI?
- System adjustments, like System / Startup settings being saved in Flash operations / Backup, Generate archive ? (what's dis-, enabled). Also during build proces? Or re-flash job!
- TorRouter website from darkweb also?
- Check if OpenWrt ubifs-images can be made, or why not?
Solved:
- Network / Firewall / Port Forwards GUI works much better behind Tor.
Furthermore good work OpenWrt!
All looks very pretty.
DG.