I highly recommend using uMatrix[1][2] if you're very privacy-conscious. It's the full-blown everything-at-your-fingertips console.<p>By default, it blocks third-party scripts/cookies/XHRs/frames (with an additional explicit blacklist). You then manually whitelist on a matrix which types of requests from which domains you want to allow. Your preferences are saved.<p>It is a bit annoying the first time you visit any new domain, because you need to go through a bootstrapping whitelist process to make it work. After a while I find I do it almost automatically though.<p>I use it in conjunction with uBlock Origin and Disconnect, and it <i>still</i> catches the vast majority of things. As a nice side-effect, I find I keep pretty up-to-date with new SAAS companies coming out!<p>---<p>[1] <a href="https://chrome.google.com/webstore/detail/umatrix/ogfcmafjalglgifnmanfmnieipoejdcf" rel="nofollow">https://chrome.google.com/webstore/detail/umatrix/ogfcmafjal...</a><p>[2] <a href="https://addons.mozilla.org/en-US/firefox/addon/umatrix/" rel="nofollow">https://addons.mozilla.org/en-US/firefox/addon/umatrix/</a>
Yet again, software freedom fighters got there years ago.<p>Free Software Foundation got there earlier. From publishing <a href="https://www.fsf.org/facebook" rel="nofollow">https://www.fsf.org/facebook</a> published on on Dec 20, 2010. FSF & GNU Project founder Richard Stallman has been rightly objecting to Facebook for years in his talks and on his personal website at <a href="https://stallman.org/facebook.html" rel="nofollow">https://stallman.org/facebook.html</a>.<p>Long-time former FSF lawyer Eben Moglen rightly called Facebook "a monstrous surveillance engine" and pointed out the ugliness of Facebook's endless surveillance (at length in <a href="http://snowdenandthefuture.info/PartIII.html" rel="nofollow">http://snowdenandthefuture.info/PartIII.html</a> but in other places in the same lecture series as well). See <a href="http://snowdenandthefuture.info/" rel="nofollow">http://snowdenandthefuture.info/</a> for the entire series of talks.
I wonder how Facebook devs feel when they read such posts.
Do they feel rejected ? shameful ?
Does their salary really outweigh this collective disapproval
of their peers ?
Pi-Hole [1] is another nice way to filter domains at the DNS level network wide, if you want a wider reaching solution that supports wildcards. Great way to use an extra Pi if you have one sitting around.<p>---<p>[1] <a href="https://pi-hole.net/" rel="nofollow">https://pi-hole.net/</a>
Looks like this is already covered by the "Social" add-on to StevenBlack's hosts:<p><a href="https://github.com/StevenBlack/hosts/blob/master/extensions/social/hosts" rel="nofollow">https://github.com/StevenBlack/hosts/blob/master/extensions/...</a>
Let's put this in global context:<p><pre><code> Adblocking is a non-trivial task, but there are trivial solutions.
1.) Install hosts-gen from http://git.r-36.net/hosts-gen/
% git clone http://git.r-36.net/hosts-gen
% cd hosts-gen
% sudo make install
# Make sure all your custom configuration from your current /etc/hosts is
# preserved in a file in /etc/hosts.d. The files have to begin with a
# number, a minus and then the name.
% sudo hosts-gen
2.) Install the zerohosts script.
# In the above directory.
% sudo cp examples/gethostszero /bin
% sudo chmod 775 /bin/gethostszero
% sudo /bin/gethostszero
% sudo hosts-gen
</code></pre>
Add a cron job, and enjoy your faster and adfree-er internet. Further, you can add your custom (this FB) block to the local files in /etc/hosts.d, which then will be concatenated automatically.<p>[source]: <a href="https://surf.suckless.org/files/adblock-hosts/" rel="nofollow">https://surf.suckless.org/files/adblock-hosts/</a>
This is a good thing to enable, but I think that smartphones contribute exponentially more data to Facebook services than laptops and browsers do. Smartphones give easy access to location, background running services, microphone. Even if you block these permissions to the app, Facebook gets the data from their data providers that use Facebook ads.
I advocate for iptables instead of DNS filtering.<p>Process of enumerating and rejecting facebook IPs :<p>* Query the RAD <a href="http://radb.net/query/" rel="nofollow">http://radb.net/query/</a> , search for AS32934<p>* Enumerate ip ranges by <a href="http://radb.net/query/?advanced_query=1" rel="nofollow">http://radb.net/query/?advanced_query=1</a><p>* Check inverse query by origin, use AS32934<p>* Grep the response route and route6 CIDR ranges<p>* Build a netfilter script with REJECT<p>Gives those scripts for iptables (updated once in a while) :<p>* <a href="https://cdn.rawgit.com/smigniot/mu/ea0f32867907b855063c56ae8dbd7237d35913f1/fbmute/no_facebook_in_ipv4.sh" rel="nofollow">https://cdn.rawgit.com/smigniot/mu/ea0f32867907b855063c56ae8...</a><p>* <a href="https://cdn.rawgit.com/smigniot/mu/ea0f32867907b855063c56ae8dbd7237d35913f1/fbmute/no_facebook_in_ipv6.sh" rel="nofollow">https://cdn.rawgit.com/smigniot/mu/ea0f32867907b855063c56ae8...</a><p>* <a href="https://cdn.rawgit.com/smigniot/mu/ea0f32867907b855063c56ae8dbd7237d35913f1/fbmute/no_facebook_out_ipv4.sh" rel="nofollow">https://cdn.rawgit.com/smigniot/mu/ea0f32867907b855063c56ae8...</a><p>* <a href="https://cdn.rawgit.com/smigniot/mu/ea0f32867907b855063c56ae8dbd7237d35913f1/fbmute/no_facebook_out_ipv6.sh" rel="nofollow">https://cdn.rawgit.com/smigniot/mu/ea0f32867907b855063c56ae8...</a><p>To enable :<p>* iptables -I OUTPUT -j no_facebook_out<p>* iptables -I INPUT -j no_facebook_in<p>* ip6tables -I OUTPUT -j no_facebook_out<p>* ip6tables -I INPUT -j no_facebook_in<p>By design, instagram and connect-with-facebook get muted too.
I don't see <a href="https://messenger.com" rel="nofollow">https://messenger.com</a> or <a href="https://m.me" rel="nofollow">https://m.me</a> (which also leads to messenger)
Its actually quite annoying to block all of facebook. There are a lot of innocuous sites that have at least some small reliability on facebook and blocking all of facebook makes using these sites a tad bit difficult / poor UX.
For anyone who's interested, I also maintain a tracking protection list for Internet Explorer. It's based originally on the Ghostery and Disconnect lists, but I now update it independently. It's designed to be concise and speedy, yet also comprehensive. Note, however, that due to the limitations of tracking protection lists in IE, it can't block everything. You may need to supplement it with a small hosts file. Check it out here: <a href="https://github.com/amtopel/tpl" rel="nofollow">https://github.com/amtopel/tpl</a>
Created a pi-hole friendly blocklist
<a href="https://gist.githubusercontent.com/angad/3db2da1cb50a4432c9ea3cfa2bb249f5/raw/7fd0fddc08dd23ed205ec488fd5068c195662fe0/facebook.txt" rel="nofollow">https://gist.githubusercontent.com/angad/3db2da1cb50a4432c9e...</a>
Someone should start a business for this:<p>Provide people that care about privacy with a public DNS server they can use that auto blocks those domains (and update's its lists). I would pay for it (few dollars a month)<p>Feature suggestion: allow people to add their own entries so I can purposely block reddit or hacker news to reduce distractions.<p>Pretty sure I would set this DNS server on both my phone and desktop.
Can somebody elaborate why this link from 2016 is gaining steam here? Is it because Cambridge Analytica misused FB data? May be I am missing something, do we know if facebook was wittingly complicit?
The whole conversation, without having read into everything here in absolute detail, seem to be very tool oriented. Am I the only one here overwhelmed by the sheer amount of domains involved?
block all of Google's IP addresses: <a href="https://support.google.com/a/answer/60764?hl=en" rel="nofollow">https://support.google.com/a/answer/60764?hl=en</a> (note: your internet (the web) will stop working properly if you do block all of those IPs, which is a big problem)
does this include instagram, messenger, and whatsapp domains too? I'm not sure if these services use their own domains.<p>'fb' itself will eventually be, if it's not already, just a data holding company for these and other acquisitions.
I wish it were that easy. Good start, but Facebook will still:<p>1. Get your data from other websites/apps that you allow<p>2. Get your data through your friends that use Facebook
Why would you block all the domains but still keep your account that you would no longer be able to access? The account is the problem not the domains. You would have to block the domains on every device you use. Just kill the problem at the source and delete your entire surveillance account with facebook.
Similar solution to blocking things at your local recursive DNS resolver, assuming you have a captive pool of devices, let's say in 10.240.0.0/24) in a LAN, all of which are given DHCP addresses and DHCP-assigned DNS resolvers, and you're in control of a bind9 server that's on the same LAN.<p>Not going to prevent people with admin rights on their workstations from using another DNS resolver (or VPN, or whatever), but a fairly low effort solution.<p><a href="https://community.jisc.ac.uk/library/janet-services-documentation/how-block-or-sinkhole-domains-bind" rel="nofollow">https://community.jisc.ac.uk/library/janet-services-document...</a>
There is more coverage of this topic here: <a href="https://news.ycombinator.com/item?id=11791052" rel="nofollow">https://news.ycombinator.com/item?id=11791052</a>
Man, that person put in some effort. That’s a lot of good lists.<p>Scrolling through them it’s really interesting to see the other sites companies own.<p>I always forget WhatsApp is Facebook.
This list presumably updates/moves around often.<p>Is there a service that, say, subscribes to a live list of this domain set (like adblock consumes easylist) and updates my hostfile automatically?<p>If not, that is a piece of software that I would find useful and worth paying for (with the ability to audit the software's ability to phone home about the rest of my hosts file)
I wrote a small tool that translates AdBlock Plus filter lists into hosts file format [1]. It can only translate simple domain-name rules but might be of interest to people in this thread.<p>[1] <a href="https://github.com/wwalexander/hostsblock" rel="nofollow">https://github.com/wwalexander/hostsblock</a>
A lot of commenters mention dnsmasq. I wrote some scripts a while ago to help minimize a dnsmasq config that had been generated from a hosts file. People in this thread might find them useful.<p><a href="https://petedeas.co.uk/dnsmasq/" rel="nofollow">https://petedeas.co.uk/dnsmasq/</a>
I made one of these for Google: <a href="https://github.com/Miserlou/nogoogle" rel="nofollow">https://github.com/Miserlou/nogoogle</a><p>also: <a href="https://github.com/Miserlou/Poop" rel="nofollow">https://github.com/Miserlou/Poop</a>
Minor segue, is there any easy way to Geo-block URLs, both by ccTLDs and by geolocation of IPs from certain countries.<p>I have pi-hole running but it doesn't support that currently, best it does is wildcard but even for that it needs domain and won't do just on the ccTLD.
Nice to see HackerNews create pull requests to make the list more up to date. I hope they get committed.<p><a href="https://github.com/jmdugan/blocklists/pulls" rel="nofollow">https://github.com/jmdugan/blocklists/pulls</a>
Interesting to see several domain names/servers with 'mqtt' referenced. Wondering if Facebook interacts with IoT devices routinely, or perhaps they use MQTT for Messenger message transfers etc.?
I want to share my favorite HOSTS file provider [1] which includes FB addresses.<p>[1]: <a href="http://someonewhocares.org/hosts/" rel="nofollow">http://someonewhocares.org/hosts/</a>
on macOS i use a bash script to get all Facebook ip addresses:<p><pre><code> whois -h whois.radb.net '!gAS32934' | tr ' ' '\n' | awk '!/[[:alpha:]]/' > "/etc/pf.anchors/usr.home.sub/facebook.list"
</code></pre>
and then use a pfctl anchor to block them all<p><pre><code> table <facebook> persist file "/etc/pf.anchors/usr.home.sub/facebook.list"
block drop quick to <facebook></code></pre>
I need something like this that I can install on friend and family's phones/iPads/computers whenever they ask me to fix something for them >:)
It's pathetic that it takes a literal propaganda campaign to make people see the problem with facebook after 10 years, but whatever I'll take it.
I can block domains on my laptop, no problem. But I have not been able to figure out any convenient way to block websites on my Android phone. My Android phone comes with a Chrome browser. Any ideas about how to block websites reliably on an unrooted/jail-not-broken Android phone?
I'd like to mention a problem with blocklists like this that you put into /etc/hosts. I've noticed that many sites trivially evade the blocklist by adding a redirect. I.e., if example.com is blocked, but it redirects to example.ru or example123.com or example.team, then it still works. The spammers and advertisers don't have to change all the existing links to example.com -- they simply need to add a new redirect every few weeks.