this post was submitted on 08 Apr 2024
169 points (95.7% liked)

Linux

54035 readers
1385 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
 

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.

(page 2) 35 comments
sorted by: hot top controversial new old
[–] [email protected] 9 points 1 year ago

policy control

It's not exactly the same, but you could use puppet to enforce configuration

Software Center with software allow lists

You can setup a custom repository with only approved software and then set that as the only one that the system is configured to retrieve packages from. This can also be controlled via puppet.

controlled OS updates

Same as the previous point. Upgrades are installed from the repos.

zscaler

I don't know what that is/does, and their website isn't helping.

software detection tool to detect what's been installed and determine if any unallowed software is present

I'm pretty sure carbon black app control has a linux version.

antivirus

There are a number of different antivirus solutions for linux. A quick search will give you a bunch of lists. I'm not personally familiar with any of the options, but I don't imagine it will be difficult to find one that will work for your use case.

[–] [email protected] 43 points 1 year ago* (last edited 1 year ago) (6 children)

If you want to deploy Linux in an enterprise scenario properly, the only real option is using RHEL. Red Hat has a product called Satellite which allows for centralized managing of RHEL installs. This includes patch management, security policy monitoring and provisioning. You can also use something like Red Hat IdM to do user management like in AD. It is also basically your only choice if you have to comply with something like HIPAA. For AV you can use something like Sophos if you absolutely need it https://support.sophos.com/support/s/article/KB-000038296?language=en_US .

[–] [email protected] 6 points 1 year ago

@[email protected] this is RHEL's business. Probably take a look at their documentation how they do it. Probably Fedora and OpenSuse are kind of downstream from that so they might know how to do so without getting paid service involved, but if you're looking to do this for your company: Redhat is where to look.

Anti Commercial AI thingyCC BY-NC-SA 4.0

load more comments (5 replies)
[–] [email protected] 3 points 1 year ago

I was looking for what you said a few years ago out of curiosity before and remember looking into something called Shibboleth. I didn't looked into it in details but it seems to cover identity and policy management. Not sure about the rest of the features you need though.

[–] [email protected] 20 points 1 year ago (6 children)

In no particular order;

  • Detecting "installed" software is iffy. Linux can have all kinds of things running on it that aren't "installed" as-such (same as Windows with portable EXEs, Linux has AppImage/etc). Excepting things like that, you can detect installed apps through the package managers (apt/pkg/yum/snap/etc).
  • OS updates in Debian-likes and Redhat-likes are controllable out of the box, but I'm not familiar with a way to prevent a user from doing them (other than denying them root access, which might make it hard for them to use the system, depending on what they need to do).
  • I've had a lot of good results with OpenVPN.
  • lol antivirus. Not saying Linux doesn't get viruses, or that there arent antiviruses for Linux, but the best way to avoid getting them is still to just avoiding stupid shit. Best thing I can offer is that if you have some kind of centralized storage, check that for compromised files frequently, and keep excellent backups. And make sure your firewalls and ACLs don't suck.
[–] [email protected] 25 points 1 year ago (2 children)

but the best way to avoid getting them is still to just avoiding stupid shit.

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.

[–] [email protected] 0 points 1 year ago (1 children)

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).

So once you are in that zone you do need some fast acting reactive tools that keep watch for viruses.

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.

load more comments (1 replies)
[–] [email protected] 6 points 1 year ago

Didn't say it was the only way, just the best way. Most effective attacks are still against humans, not computers.

load more comments (4 replies)
[–] [email protected] 2 points 1 year ago
[–] [email protected] 28 points 1 year ago (1 children)

There's Zscaler for Linux. We're using it in our corpo.

You have to run your software mirror no matter what. Even if it's a proxy mirror where you don't actually store most of the packages.

SELinux/AppArmor for more granular access policies.

SSSD connects local auth with AD.

You should look into what your vendor has on offer, e.g. Landscape if you're on Ubuntu.

As others have said config-as-code would probably be part of the equation too.

[–] [email protected] 8 points 1 year ago (2 children)

Zscaler is corporate spyware. As far as I know, it can log all connections, even ones that don't go through the Zscaler nodes. It can also act as MITM proxy.

I'm doubtful about whether it's (or at least many configurations of it) are legal in EU.

[–] [email protected] 8 points 1 year ago (1 children)

I hate zscaler. At my company it's set up so that it proxies all traffic through it and comes with its own CA certificates, which breaks a lot of things - I can't install pip packages for python, I can't clone/work with git repos if they're on https only. We are used to temporarily disable it to do these things because corporate won't change the policies.

[–] [email protected] 7 points 1 year ago

Sounds like it's used as a MITM proxy and logs all website URLs you visit. If you live in EU that's probably illegal.

load more comments (1 replies)
[–] [email protected] 4 points 1 year ago* (last edited 1 year ago)

One thing to take a look at for central account control, sudo rules and a few other things. Is freeipa/rhel idm.

[–] [email protected] 15 points 1 year ago (1 children)

Linux noob here... But aren't there user types? Like admin with install permissions and user type without ? Doesn't that take care of most of your questions?

[–] [email protected] 15 points 1 year ago (1 children)

Not really. I want users with some admin privileges. As someone pointed out, a properly configured sudoers file can allow that with sudo.

[–] [email protected] 17 points 1 year ago (2 children)

Most of this would probably be handled by the regular unix permissions and things like sudo access for commands that are needed. You can specify exactly what commands people can run using sudo. You can also make groups so that you can have people that can run certain commands in those groups. As far as default permissions to run files, that would be handled by your path and execute permissions. Same with umask settings. I worked at a large company and to my delight and a lot of windows users dismay, they forced us to have linux laptops for our particular jobs. I loved it, but a lot of people just weren't happy. I found that I could do everything much easier when I had native tools for working with other unix based machines right there on my desktop.

load more comments (2 replies)
[–] [email protected] 25 points 1 year ago (2 children)

There's a lot of universities using Linux on their pc labs, I guess you can look up how they admin their systems to compare. When I was in college, I had a programming class (R language for actuarial sciences) and the computer had some restrictions, like we couldn't save anything locally so we had to plug a pendrive to save our scripts and we couldn't install any library not installed by default.

load more comments (2 replies)
[–] [email protected] 9 points 1 year ago (2 children)

Antivirus would probably be clamav.

As for policy, selinux would be my first Google.

Software allow lists I’m only going to mention system wide since stopping user space installs or chroots would be your software detection tool that I would be clueless on. System wide I’d look at sudo where you can control exactly what root level commands different users/groups can run.

[–] [email protected] 2 points 1 year ago

Nod32 offers a commercial antivirus for that scenario as well. The consumer variant has been discontinued.

[–] [email protected] 8 points 1 year ago

If you don't want the user to install software, you can mount any user writable partitions noexec. That will not stop them from running scripts though.

[–] [email protected] 35 points 1 year ago (1 children)

Have a look at manage engine software

[–] [email protected] 12 points 1 year ago

Well that's exactly the kind of thing I was looking for!

load more comments
view more: ‹ prev next ›