pixelserv-tls is a tiny bespoke HTTP/1.1 webserver with HTTPS and SNI support. It acts on behalf of hundreds of thousands of advert/tracker servers and responds to all requests with nothing to speed up web browsing.
pixelserv-tls supports TLSv1.0, TLSv1.2 and TLSv1.3 and thus could operate with a wide range of browsers and client devices. Server certificates for any given advert/tracker domains are generated automatically on first use and saved to disk.
pixelserv-tls can log access and HTTP/1.1 POST contents to syslog. So it is also a useful tool to inspect and expose 'wrongly blocked' domains as well as 'rogue' domains invading user privacy.
Build from source
This works on all Linux distributions and Linux-like environments such Homebrew for macOS and Cygwin for Windows.
autoreconf -i
./configure
make install
Install on Entware
Binary packages are distributed by Entware. Beta version binaries during development are distributed from this GitHub repository.
Pre-built binaries
opkg install pixelserv-tls
Install on Arch Linux
A package is available from Arch User Repository (AUR). This package works on all Arch Linux derived distributions such as Manjaro, Antergos and Chakra.
yay
Pre-built binaries using yay -S pixelserv-tls
Build from source package
git clone https://aur.archlinux.org/pixelserv-tls.git
cd pixelserv-tls
makepkg -si
Install on EdgeRouter X
See this installation guide. Or simply:
Pre-built binary
sudo -i
cd /tmp
curl -O https://raw.githubusercontent.com/kvic-z/goodies-edgemax/master/pixelserv-tls_2.2.1-1_mipsel.deb
dpkg -i pixelserv-tls_2.2.1-1_mipsel.deb
The binary is built for and tested on EdgeOS v1.x. It's not tested on EdgeOS v2.x and most likely it won't be compatible.
Install on Homebrew (macOS) and Linuxbrew
brew install https://kazoo.ga/pixelserv-tls/pixelserv-tls.rb
Install as a Docker container
See https://hub.docker.com/r/imthai/pixelserv-tls
Install on Raspberry Pi
Binary packages are available from this Github. Should work on all Raspberry Pi's running Raspbian (Debian 10). For installation issues, you may refer to this tracker.
Pre-built binary
sudo -i
cd /tmp
curl -O https://raw.githubusercontent.com/jumpsmm7/pixelserv-tls_2.4_armhf.deb/master/pixelserv-tls_2.4_armhf.deb
dpkg -i pixelserv-tls_2.4_armhf.deb
and follow the on-screen instructions.
Launch pixelserv-tls
pixelserv-tls <listening ip>
Check out the man page for customization and command line options.
Notes
Announcements are made through kazoo.ga/pixelserv-tls. A discussion thread is also available on SNBforums.