Advanced Security Linux Mint Xfce practical maximum setup

Last updated
Apr 30, 2026
How it's used?
For work or educational use
Operating system
Linux
Other operating system
Linux Mint 22.3 Zena Xfce
On-device encryption
Other full-disk drive encryption software
Log-in security
    • Biometrics (Windows Hello PIN, TouchID, Face, Iris, Fingerprint)
Security updates
Allow security updates and latest features
Update channels
Allow stable updates only
User Access Control
N/A - Linux / Mac / Other operating system
Smart App Control
N/A - Linux / Mac / Other operating system
Network firewall
Enabled
About WiFi router
TP-Link triband with IPv6 disabled and all security features enabled (TP-link home care, SPI-firewall, IP-MAC binding). E-mail log message level is set to critical.
Real-time security
Sticking to safe standards and using Linux sandboxing (AppArmor, Firejail, Flatpak) to contain utilities, accessoires and applications.
Firewall security
Built-in Firewall for Mac/Linux
About custom security
  • Using only official stable repositories from verified publishers and de-installed all unused accessoires and applications.
  • Mildly hardened Linux by disabling P2P, remote access, old TLS versions and enabling ASLR system wide.
  • Enabled and created Firejail profiles with firecfg and stripped Flatpak permissions with flatseal.
  • Added OpenSnitch outbound application firewall to compliment inbound GuFW.
  • Installed logcheck with e-mail warning for security alerts & events
Periodic malware scanners
When I receive files from others I scan them with Virus Total. My half yearly data backups are scanned with Microsoft Defender :cool:
Malware sample testing
I do not participate in malware testing
Environment for malware testing
None
Browser(s) and extensions
Chrome with hardened policies and most site permissions on block with two browsing profiles (work and surfing) both using uBlockOrigin Lite with different rules and filters.
Secure DNS
  1. NextDNS in the Router with OISD and telemetry blocklists enabled (for IOT devices), allowing only common TopLevelDomains to connect.
  2. We use Quad9 as default DNS for our Laptops for problem free malware filters (and bypas router TLD firewall limitation)
  3. In the browser (DOH) I use ControlD free with OISD basic filter (mild and unattended adblocking)
Desktop VPN
Proton VPN free for Linux on-demand (out of home). At home I have very little use for VPN because our IP and IP location are changed regularly :-).
Password manager
Build-in
Maintenance tools
None
File and Photo backup
  • FreeFileSync quick on-demand backups to a partition on my internal SSD to which sandboxed utilities, desktop accessoires and applications have no access to.
  • The half yearly full backup saves to an external USB-SSD which is checked (afterwards) by Microsoft Defender on my wife's laptop (which has triple USB protection).
Subscriptions
    • None
System recovery
TimeShift (to another partition on 1 TB SSD)
Risk factors
    • Browsing to popular websites
    • Working from home
    • Making audio/video calls
    • Opening email attachments
    • Buying from online stores, entering banks card details
    • Logging into my bank account
    • Streaming audio/video content from trusted sites or paid subscriptions
Computer specs
AMD Ryzen 7 (5700U) laptop with 1 TB SSD and 16GB RAM
Notable changes
What I'm looking for?

Looking for maximum feedback.

Yes, but my experience is that it skips static rules like ||example.org$script and only used the cosmetic rules.

Well, obviously your rule is a network rule, not a cosmetic rule.;)
A network rule can only be added using DNR rules.

Although Gorhill does not encourage the extensive use of network rules that may conflict with those of the lists subscribed to in the extension.
 
I see you use Thunderbird.
If you want to try increasing Thunderbird's sandbox level, this is possible.
Some AI will tell you that you can't go beyond a certain level, or, as in my case, they insert threads that I created years ago.
Some AI might even claim that this is not possible or doesn't work.

If, on the other hand, you prefer to leave Thunderbird's level at the default value, in this js you will find how to harden Thunderbird, in a similar way to Firefox:

thunderbird-user.js/user.js at master · HorlogeSkynet/thunderbird-user.js
 
  • Thanks
Reactions: LinuxFan58
I see you use Thunderbird.
If you want to try increasing Thunderbird's sandbox level, this is possible.
Some AI will tell you that you can't go beyond a certain level, or, as in my case, they insert threads that I created years ago.
Some AI might even claim that this is not possible or doesn't work.

If, on the other hand, you prefer to leave Thunderbird's level at the default value, in this js you will find how to harden Thunderbird, in a similar way to Firefox:

thunderbird-user.js/user.js at master · HorlogeSkynet/thunderbird-user.js
Thanks I am on holiday until the 26th without laptop, but will certainly look into it. May I PM you when I have questions?
 
Last edited:
Nice and secure configuration you have there. Btw, is the built-in password manager KeepassXC or something else?
 
  • Thanks
Reactions: LinuxFan58
I am currently on holiday and found out that Google has something called Apps Script which you can use to automate stuff like auto deleting mail in Gmail.

I forward all my ISP email to my (2nd) Gmail account and excluded this Gmail account in my unified (search folder) inbox in Thunderbird to automatically check it on virus by Google.

Until now I manually deleted all those emails in my (second) Gmail account (only setup for this purpose), but will write a script when back from holiday.
 
I replaced ControlD with Cloudflare Zero Trust free plan (thanks @rashmi for posting).

Reason was that I am running out of 300.000 queries limit, when I am doing a lot of research when developing new courses for the business university I am working for (teaching my old profession for fun as pensionado). I am impressed with the granular control and option ot add a (unique) warning or explanation sentence for each policy (y)
 
Last edited:
The website permission settings of my surfing profile :)

1766838840708.png
 
Last edited:
  • Like
Reactions: Sampei.Nihira
Removed Avira because Cloudflare with Zero Trust performed surprisingly well when trying some random malware and phishing links.

Using uBol in both work and surfing profile. In work profile I only have custom Cosemetic and DNR-rules for some bookmarked websites. For surfing I use uBol only to reduce the attack surface (together with the tight website permissions should increase security).

____________ posting scrambles the indentation ___________
---
#
# Upgrade HTTP to HTTPS when available
#
priority: 40
action:
type: upgradeScheme
condition:
urlFilter: http://
---
#
# Block scripts of unsafe HTTP connections
#
priority: 30
action:
type: block
condition:
urlFilter: http://
resourceTypes:
- script
---
#
# Block protocols that are normally not needed for casual internet surfing
#
priority: 30
action:
type: block
condition:
urlFilter: magnet://
---
priority: 20
action:
type: block
condition:
urlFilter: telnet://
---
priority: 30
action:
type: block
condition:
urlFilter: slack://
---
priority: 30
action:
type: block
condition:
urlFilter: org-protocol://
---
priority: 30
action:
type: block
condition:
urlFilter: vscode://
---
priority: 30
action:
type: block
condition:
urlFilter: apt://
---
priority: 30
action:
type: block
condition:
urlFilter: irc://
---
priority: 30
action:
type: block
condition:
urlFilter: git://
---
#
# Block resources mis-used for tracking or posing a security risk
#
priority: 20
action:
type: block
condition:
resourceTypes:
- csp_report
- ping
- object
- webbundle
---
#
# Block links containing executable Linux formats
#
priority: 20
action:
type: block
condition:
regexFilter: /.*\.(appimage|bin|deb|elf|py|pyc|pyo|pyd|pyw|pyi|pyz|ipynb|sh|rpm|run)\b/
---
#
# Block request outside EU-zone and 5 eyes countries
#
priority: 10
action:
type: block
condition:
excludedRequestDomains:
- com
- edu
- io
- net
- org
- EU
- AT
- BE
- BG
- HR
- CY
- CZ
- DK
- EE
- FI
- FR
- DE
- GR
- HU
- IE
- IT
- LV
- LT
- LU
- MT
- NL
- PL
- PT
- RO
- SK
- SI
- ES
- SE
- NO
- CH
- IS
- LI
- GB
- UK
- CA
- US
- AU
- NZ
---
 
Last edited by a moderator:
  • Applause
Reactions: Sampei.Nihira
@LinuxFan58

It is interesting to note that your rule in uBoL that blocks Beacon (object) does not intercept JavaScript, does not intercept browser APIs, and does not intercept sendBeacon.
The navigator.sendBeacon() API is blocked by one of my rules that you are familiar with.
It allows data to be sent in the background even when the user leaves the page, without blocking loading and without being easily intercepted.
It is one of the preferred APIs for modern tracking.
Even though the percentage of website breakage, especially for payments, is high.

I chose it for greater Beacon coverage.
Let me show you the results of the rule's prevention as processed by ChatGPT 5.2:

1.png

;)
 
Last edited:
Okay I admit, could not do anything today because trains were cancelled due to excessive weather conditions (snow and storm Goretti). So I cancelled the meeting and started playing with Cloudflare. Wanted to increase privacy a little so I reduced the logs to block only and enabled removing sensitive information (free plan has fixed retention period). Watched another episode of Gangs of London and filled my time with the absolute summon of useless activity by changing ...

1776437829298.png

The use of setting your own blockpage is that you can add a custom reason per policy (reden: website website staat op de zwarte lijst van websites die schadelijke software verspreiden). I changed the background colour (because my wife found the default to much in your face)
 
Last edited:
Because of @Andy Ful malware filter testing (y) and @Sampei.Nihira adfilter optimization testing(y), I added two extensions:
  • Work profile: Avira Safe browsing with anti-tracking enabled. The mild anti-tracking compliments nicely with the mild advertisement blocking of Cloudflare. Also Avira's URL filtering provides best results when testing malware, phishing and fake shopping links in combination with Cloudflare and Google Safe Browsing.
  • Surfing profile: Privacy Badger in learning mode (l know it can be misused, but it has never occurred in the wild) to compliment Brave's adblocking. This combo resulted in the lowest third-party exposure after a day of surfing.
Security and privacy wise I should be okay with Avira Safe Browsing and Privacy Badger extensions (one is bound to strict German privacy regulations and the other is developed by the Electronic Frontier Foundation).

Setup finalized :unsure:
 
Last edited:
  • Like
Reactions: Sampei.Nihira
Because of @Andy Ful malware filter testing (y) and @Sampei.Nihira adfilter optimization testing(y), I added two extensions:
  • Work profile: Avira Safe browsing with anti-tracking enabled. The mild anti-tracking compliments nicely with the mild advertisement blocking of Cloudflare. Also Avira's URL filtering provides best results when testing malware, phishing and fake shopping links in combination with Cloudflare and Google Safe Browsing.
  • Surfing profile: Privacy Badger in learning mode (l know it can be misused, but it has never occurred in the wild) to compliment Brave's adblocking. This combo resulted in the lowest third-party exposure after a day of surfing.
Security and privacy wise I should be okay with Avira Safe Browsing and Privacy Badger extensions (one is bound to strict German privacy regulations and the other is developed by the Electronic Frontier Foundation).

Setup finalized :unsure:

Get this:

1.png


Could you get more?
Maybe, I don't have any experience with Brave's built-in adblock.

I would block 1p script on all websites outside your TLDs in your aggressive profile.

You would also get 3p script blocked at the same time.
Almost certainly 3p frames too.

+ Privacy/security without adding extensions.

However, I have some doubts about this aspect (frame) in PB.
It would be better to ask the AI.

I would leave PB in your moderate profile.

If you're interested in trying it, I'll write down the simple rules, which I'm sure you can write yourself.;)
 
Last edited:
Brave in Aggressive mode also blocks first party. I use PB in learning because it shows third-party exposure also. When those 3P are useless (from user experience perspective) connections I block them in PB. Until now I only added 1 domain.

I used uBol only allowing some trusted TLD's but the number of blocks were zero. Same with your rules in AG you pm-ed.

With my surfing behavior Brave Shields seem to do very well. This is why I want to know what the actual 3P exposure is.