Disabling Unnecessary Services on Ubuntu via Shell Script
Your Fresh Ubuntu Server is Overweight
You just spun up a fresh Ubuntu box. Feels clean, right? Actually, it's not. Out of the box, Ubuntu is dragging around a ton of dead weight. Background services you didn't ask for. Processes you will absolutely never use. Every single one of them is a potential backdoor. A vulnerability waiting for a script kiddie to trip over. We want a tight, locked-down system. An ubuntu minimal attack surface that leaves nothing exposed. If a service doesn't have a direct, undeniable purpose, it dies today.
Stop Clicking. Start Scripting.
You could manually type the systemctl disable command fifty times. But you value your sanity. Let's build a dedicated disable services script. Bash is your best friend here. It’s fast. It’s entirely repeatable. You write it once, test it, and deploy it across a hundred servers before your coffee gets cold. No clicking through menus. No second-guessing if you remembered to kill the Bluetooth daemon on server number four. Just pure, ruthless efficiency.
Printers? On a Server? Really?
Let's talk about the usual suspects. Take CUPS. The Common Unix Printing System. When was the last time your cloud web server needed to print a PDF? Exactly. Never. Then there's avahi-daemon. Great for finding Apple TVs on a home network. Completely useless and noisy on a production box. Bluetooth? Kill it. ModemManager? Nuke it from orbit. Stripping these out isn't just about security. It's basic bash server optimization. Less RAM used. Fewer CPU cycles wasted on garbage.
The Kill Switch Execution
Writing the loop is dead simple. You feed an array of useless services into a basic bash for-loop. Run a stop and disable command on each one. Throw in a mask command if you want to be completely brutal and prevent anything from ever waking them up again. Execute the script with sudo. Watch the terminal output as it burns through the hit list. Boom. You've just hardened your box in under three seconds. Verify the wreckage with systemctl list-unit-files and grab a beer.