Detecting intruders with a Raspberry Pi IDS
Smoke Alarm

An intrusion detection system was once considered too complicated and too expensive for a home network, but nowadays you can use a Raspberry Pi and the Suricata IDS for real-time notice of an incoming attack.
An intrusion detection system (IDS) works like a smoke detector. It detects a risk, issues a warning, but does not take any further steps to prevent the attack. A full-blown intrusion prevention system (IPS), on the other hand, can take additional steps to stop the attack. However, an IPS is much more elaborate (and often expensive), and it is often overkill for a small home network. For many users on small networks, the notification is the most important part, and an IDS can deliver that notification for far less trouble and a smaller learning curve.
An IDS takes a deep look at the IP packets passing through. If the analyzed content appears suspicious, the system alerts the user. The IDS references a database populated with known attack patterns to decide whether or not a packet contains a possible attack. This makes it similar to a virus scanner, which examines data and compares the data against known patterns.
An IDS is part of the standard equipment at any data center today. At a modern data center, a fast appliance fields data streams from all servers via a multi-gigabit network interface card and reports its discoveries to the network operations team. This might sound like an expensive solution, but the technology can just as easily be applied to home networks. This article describes how to set up a simple Raspberry Pi or comparable single-board system to act as an IDS. The downsized IDS receives a copy of the incoming packets from the router. You'll need a router that is capable of capturing and forwarding incoming packets to the Rasp Pi for monitoring purposes. Some routers might include this feature directly. In other cases, you can set up forwarding on the router if it comes with Bash scripting support. The examples in this article are based on a Fritz!Box 7583 router.
[...]
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

News
-
Linux Hits an Important Milestone
If you pay attention to the news in the Linux-sphere, you've probably heard that the open source operating system recently crashed through a ceiling no one thought possible.
-
Plasma Bigscreen Returns
A developer discovered that the Plasma Bigscreen feature had been sitting untouched, so he decided to do something about it.
-
CachyOS Now Lets Users Choose Their Shell
Imagine getting the opportunity to select which shell you want during the installation of your favorite Linux distribution. That's now a thing.
-
Wayland 1.24 Released with Fixes and New Features
Wayland continues to move forward, while X11 slowly vanishes into the shadows, and the latest release includes plenty of improvements.
-
Bugs Found in sudo
Two critical flaws allow users to gain access to root privileges.
-
Fedora Continues 32-Bit Support
In a move that should come as a relief to some portions of the Linux community, Fedora will continue supporting 32-bit architecture.
-
Linux Kernel 6.17 Drops bcachefs
After a clash over some late fixes and disagreements between bcachefs's lead developer and Linus Torvalds, bachefs is out.
-
ONLYOFFICE v9 Embraces AI
Like nearly all office suites on the market (except LibreOffice), ONLYOFFICE has decided to go the AI route.
-
Two Local Privilege Escalation Flaws Discovered in Linux
Qualys researchers have discovered two local privilege escalation vulnerabilities that allow hackers to gain root privileges on major Linux distributions.
-
New TUXEDO InfinityBook Pro Powered by AMD Ryzen AI 300
The TUXEDO InfinityBook Pro 14 Gen10 offers serious power that is ready for your business, development, or entertainment needs.