Supported and tested on distros:
- CentOS 7/8, Fedora 35
- Debian 11, Ubuntu 20
Blocky is a DNS proxy and ad-blocker for the local network written in Go.
Official repository:
- https://github.com/0xERR0R/blocky.git
- Official installation manual
installer.sh
it is a bash script for install Blocky to:
- Blocky will installs as systemctl unit service to
/opt/blocky
catalog as default. - After install Blocky works under regular
blockyuser
user.
Note: All features tested. deployed and using on CentOS 7/8, Fedora 35, Debian 11, Ubuntu 20
- Install from scratch to rpm based distros
- Steb-by-step installer
- Automate installer (CentOS/Fedora)
- Detect and download latest
blocky
release from official repo - Install under simple user
- New user creation
- Allow to user using privileged ports (aka 53) without sudo
- Allow to user start, stop, enable, disable
blocky
service - Create
systemctl
unit service - Generate simple
config.yml
- Reinstall
blocky
- Uninstall
blocky
- Backup
blocky
- Install additional software (optionally for CentOS/Fedora):
- Cloudflared
- Cerbot
- Nginx
- Add restarter script
After install Blocky you can use sync feature to download or upload config to remote server over ssh connection with sync.sh
.
In first run sync.sh
will ask:
- Remote server IP
- Remote server port
- Remote server ssh user name
Then will try copy ssh key to remote server with ssh-copy-id
, after that you can run script again and sync.sh
will copy cinfig.yml
from remote server to local /opt/blocky
folder.
You can also configure the scheduler with crontab (as example):
*/30 * * * * /bin/bash /home/blockyusr/sync.sh
Additionally you can install Prometheus stack to you own CentOS 8 server:
- Prometheus
- Node Exporter
- Grafana
See more info on this repository:
You can define DNS servers list and will test response speed with statistics - average, min, max response time:
TODO add diff compare procedure fro syncing