Most companies I’ve worked at where employees had a Microsoft work computers. They were under heavy control, even with admin privileges. I was wondering, for a corporate environment, how employees’Linux desktops could be kept under control in a similar way. What would be an open source or Linux based alternative to the following:
- policy control
- Software Center with software allow lists
- controlled OS updates
- zscaler
- software detection tool to detect what’s been installed and determine if any unallowed software is present
- antivirus
- VPN
I can think of a few things, like a company having it’s own software repos, or using an atomic distribution. There’s already open source VPN solutions if course. But for everything else I don’t really know what could be used or what setup we could have.
In no particular order;
This is fine and dandy on a personal pc, but in a work environment you are now being actively targeted by malicious actors if your company is a good target.
Constantly.
So once you are in that zone you do need some fast acting reactive tools that keep watch for viruses.
Didn’t say it was the only way, just the best way. Most effective attacks are still against humans, not computers.
You can restrict what gets installed by running your own repos and locking the machines to only use those (either give employees accounts with no sudo access, or have monitoring that alerts when repo configs are changed).
For anti-malware, I don’t think there are very many agents available to the public that work well on Linux, but they do exist inside big companies that use Linux for their employee environments. For forensics and incident response there is GRR, which has Linux support.
Canonical may have some offering in this space, but I’m not familiar with their products.
The best methods to detect and prevent attacks on your endpoints are EDR software that are linked to your corporate router like FortiEDR, which supports Windows, Mac, Linux, and even some VDI like Citrix.
deleted by creator
To get rid of Viruses, simply clean out all executable attachments in mails, mailcow and other solutions support that.
You can also mount /home nonexecutable, which means everything you can run needs to be on the system. Without that, “control over what is installed” is worthless. You could literally download any package, export the binary and run it from anywhere.
To run untrusted software, you can use a server that uses something like KASM. It is image-based, accessed through the browser, suppports uploading files and viewing lots of stuff. You can also run antivirus there, but as shown in this video antivirus is often simply tricked by encoding and re-encoding the scripts into something like Base64.
Antivirus really is flawed. You need to control the origins of code, and run all untrusted code in immutable VMs.
deleted by creator
The correct way to call bash scripts is through bash, e.g.
bash badware.sh
Excel sheets can be used without macros, i.e. executable code. Macros can be disabled in Libreoffice afaik, and this is likely possible via some sort of policy.
These are great things to try out and I want to experiment with it when I have time. For example not sure if policies work with flatpak, as users could be able to change them.
Antivirus is a joke, for sure you could run it, but it just doesnt work. It would be just there for the compliance, while you simply dont run any code, not even trusted code, that doesnt come from trusted repos like Fedora, Ubuntu or flathub-verified
You know, it only now occurs to me that - in 20 years of setting up fairly complicated spreadsheets (for everything from finance to asset management) - I’ve never used a macro.
I honestly don’t know why you would, since per-cell functions update automatically. I certainly can’t imagine why it would need to make system calls. Whole thing seems like a massive security issue with no benefit.
Yes but insurance compliance necessitates AV
If you dont even have a way of running untrusted code on your production environment, how the heck is that worse than badness enumerating AV?
Insurances…
Even if you assume that the software you run will never have exploitable security issues, AV can also keep you from spreading infected files e.g. through forwarded mails.
See above. There are tools for mail servers to strip and sandbox all executable attachements.
MSOffice btw doesnt allow macros anymore afaik
If the user is even slightly knowledgeable, they can’t all protection systems using
sudo
. That’s a big no-no if you want top-notch security. Source - I have broken my corporate’s Linux-specific protection mechanisms.I’m not 100% sure I’m getting what you were trying to say in that first sentence, but you realize that not all users have sudo privileges, and if your company left you with sudo that was a mistake, correct?
I meant that if a company wants to maintain the highest levels of security, the user should never be given access to sudo. If a certain workflow requires sudo, the workflow needs to be changed, or it needs to be done in a sanitized environment, or the user needs to be highly trusted.
Use NixOS if you want to use use strictly pre-installed software.