The web is a dangerous place. While modern browser security architecture protects against many threats, security vulnerabilities are found and fixed every day. Through security exploits, malicious websites can read user data and execute arbitrary code on the user’s machine.
But there are more mundane threats. Ads and trackers invade our privacy, track us across sites and send our browsing history to tech oligarchs. On many sites, cookie notices, popups, “AI chatbots” and “accessibility overlays” get in the way of reading the actual content. Megabytes of third-party content slow down the loading performance. The execution of third-party scripts keeps the processor busy and drains the battery.
Threat modeling
There are many approaches to safe and private browsing depending on the threats and attacks you need to protect yourself against.
One extreme is an unmodified Chrome or Edge browser. It shows all ads, loads all trackers, allows cross-site cookies, incorporates GenAI chatbots, downloads gigabytes of GenAI models without consent. Such a browser provides no protection against privacy threats and annoyances. Au contraire, Google and Microsoft take part in the advertising and surveillance industrial complex and actively exploit Chrome and Edge users.
The other extreme would be a constrained browser like Tor on a constrained operating system like Tails. This is recommended for people who are targeted by state-sponsored hackers or who have censored internet access.
The level of privacy and security depends on your requirements and tasks. In this post, I describe the setup on my work laptop. The main goal is to browse the web quickly, efficiently and safely without ads, trackers and tracking cookies. Note that the company I work for uses Google Workspace, so some protections are tailored to meet this requirement.
Main browser: A restricted Firefox
My main browser is a restricted Firefox that blocks questionable content and risky technologies on all sites except for a few known sites.
- Enhanced Tracking Protection is enabled. In addition, I use the essential browser extension uBlock Origin with numerous filter lists activated.
- All cookies are blocked by default. This breaks many websites, especially those based on Next.js. Persistent cookies are allowed on sites where I need to stay logged in. Session cookies are allowed on frequently visited sites that do not require login but break when cookies are disabled.
-
The official Multi-Account Containers extension isolates cookies and storage data into separate containers. When browsing the web using the default container, I never log into a site. For logging into a site, I switch to a dedicated logged-in container.
Some sites that require a login are opened automatically in such a container. This containerization breaks the connection between random websites and central data silos like Google. It also separates pseudonymous use from logged-in use. For example, I’m not logged in when making a Google search, but I open a logged-in container to access Google Mail, Drive, Meet etc.
Alternative: Lax Chromium browsers
When I need to browse many untrusted sites that require cookies, for example online shops (derogatory), my restricted Firefox won’t work. Also, some websites do not support Firefox properly; they are built for the monopolistic Chrome browser and other Chromium-based browsers. Last but not least, Firefox is noticeably slower than other browser engines.
These situations call for a less strict Chromium-based browser.
Vivaldi
Vivaldi is a decent Chromium-based browser from people who have been working on web browsers for decades. Part of their brand is the commitment to web standards and an open web.
Vivaldi has historical roots in the Opera browser. Its UI and features still remind me of Opera’s heyday. (I was a big fan of Opera before the company went downhill and was sold to Chinese billionaire investors.)
Vivaldi has a built-in blocker for ads and trackers, but I have uBlock Origin installed as well. In contrast to Google Chrome, Vivaldi still supports “Manifest V2” extensions. This means the classic, fully-featured uBlock Origin still works in Vivaldi. In Chrome, only the reduced, less powerful uBlock Origin Lite works.
Since I use Vivaldi only for sites that do not work properly in Firefox, I delete all browsing data frequently. I’m usually not logged into any site, except for my bookmarking tool.
Ungoogled Chromium
Vivaldi is pretty fast due to the Chromium base, but the custom UI is noticeably slower than a bare-bones Chromium. For raw performance and an experience closer to Chrome, I use Ungoogled Chromium. It walks and talks like Chrome, but without Google services and privacy-intruding features.
Operating Ungoogled Chromium on MacOS requires manual setup, technical expertise and a tolerance for frustration. You can install it via Homebrew, the popular package manager, but you need a launchd job (comparable to a cron job on Unix/Linux) to install security updates promptly.
Ungoogled Chromium has cut ties with the Chrome Web Store, the official Google Chrome extension repository, as well. Therefore, you first need to add the extension chromium-web-store to unlock auto-updating extensions from the Chrome Web Store. The team improved this workflow a bit (thank you), but it’s still tedious and confusing.
Android setup
On my Android smartphone, I use a browser setup very similar to my laptop’s.
A restricted Firefox with uBlock Origin is also my main mobile browser. Firefox is the only browser on Android that supports extensions, particularly powerful content blockers like uBlock Origin. Unfortunately, the performance gap between Firefox and Chromium-based browsers is even more noticeable on mobile devices, which have a fraction of desktop processing power.
uBlock Origin has a nice feature that cancels the download of media files that exceed a certain size: Block media elements larger than X KB. This is immensely useful when I’m on a metered mobile data connection. The feature effectively disables large images on websites, making them accessible on slow connections. You can still tap on an image placeholder to load the image.
Vivaldi is my alternative browser on Android as well. Like the desktop browser, the mobile version has a built-in tracker and ad blocker. This is not as powerful or comprehensive as uBlock Origin, but it’s based on a set of filter lists also used by uBlock Origin.