tl;dr what are all the ways I can block a website on linux? Debian if it’s relevant.
I want to stop myself using certain sites. Since I’m reasonably techy and can work round all blocks I’ve come up with, I’ve found an effective approach is to apply as many hurdles as possible, so that visiting the website takes effort.
So far I’ve added the site to ublock’s block list, and redirected sites via /etc/hosts. What other options are there?
While I have admin access to the router, I’m not allowed to block sites there.
Therapy of some sorts is probably going to be more effective than making self-blocks, especially if you’re technically competent. I wish you luck with stopping whatever addiction it is.
It can help. A lot of the time I go on Reddit for example starts subconscious. If that doesn’t work the conscious part kicks in and I know I don’t want to visit that craphole so I close the tab again and put the phone aside. Otherwise I see content and keep scrolling.
The real hack is (almost) always social.
Setup a PiHole and add them to the blocklist. Then make the PiHole password stupid long and write it down. Then take the paper, put it in a safe, and put it in the highest shelf in the back of your closet. Recurse safes and passwords as much as needed.
Even better, store the password offsite—safe at a friend’s house, safety deposit box at the bank . . .
And if you don’t have any friends or a bank, put it in a double ziplock, then drop it in a Tupperware of water and freeze it.
well I do hate going into town, so that would work
You could just change your DNS server to get around that though, even without the password.
You’re gonna have better luck changing your habits than you will making a block that you yourself can’t overcome.
Creating hurdles can help lowering the temptation. I totally get OP.
/etc/hosts and set the websites to go to 0.0.0.0 or 127.0.0.1
use the redirector addon to auto redirect somewhere else
You could try behavioral therapy. Doesn’t need to be psychiatrist (but does have to be professional).
Therapy is probably a better option.
Don’t look for a solution that is technical where the problem is mental.
It’s not a solution to a problem, it’s a mitigation option. There is a lot of evidence that it works. Even OP mentioned that it’s effective for them.
Maybe block on your router and save your router password such that you need to jump through several hoops to unlock it, eg password saved in one password manager DB whose master password is in another DB whose password is in another DB, etc. If you have to unlock like 10 password databases to get into your router, you’ll probably give up on whatever bad habit you were trying to do as it’s too much effort.
LeechBlock NG isn’t exactly what your’e looking for but it still may help. Of course, it’ll have no effect if UBO and the DNS already shut everything off.
I use NextDNS and it has feature to block domains. Unfortunately i often unblock it back.
Private DNS service.
DNS level blocking is a massive pain to circumvent. Adguard DNS and NextDNS allow you to do this. Mullvad DNS allows you to block adult websites, gambling sites, and (optionally) social media without creating an account.
Roughly from high level to low level:
- uBlock custom filters
- Make pages unusable or less attractive by wonky per-site browser or extension settings
- IP and DNS blocks on your local machine
- Run a DNS proxy on your local machine and block domains with it
- Host a pihole server on a different machine, make it your DNS server and block domains there
- IP and DNS blocks in your router (if your current one has no option for this, consider buying another, preferably used)
Best apply the methods arbitrarily, so that you get even more confused about how you might restore access to a given website.
Options 5 and 6 may be the only viable ones for locking down certain smartphones or tablets.







