HomeLabNextGeneration – ‚arpwatch‘ is a tiny utility you can run in linux to listen on your home network for new devices

root@rpi-iot-jsho-arpwatch:~# apt-get install ssmtp mailutils
root@rpi-iot-jsho-arpwatch:~# vi /etc/ssmtp/ssmtp.conf
#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=josef.schuster@dpsolution.de
# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=smtp.ionos.de:587
# Where will the mail seem to come from?
rewriteDomain=dpsolution.de
# The full hostname
hostname=rpi-iot-jsho-arpwatch
# Use SSL/TLS before starting negotiation
UseTLS=Yes
UseSTARTTLS=Yes
AuthUser=josef.schuster@dpsolution.de
AuthPass=<password>
AuthMethod=LOGIN
# Are users allowed to set their own From: address?
# YES – Allow the user to specify their own From: address
# NO – Use the system generated From: address
FromLineOverride=YES
root@rpi-iot-jsho-arpwatch:~# vi /etc/ssmtp/revaliases
#
# sSMTP aliases
#
# Format: local_account:outgoing_address:mailhub
#
# Example: root:your_login@your.domain:mailhub.your.domain[:port]
# where [:port] is an optional port number that defaults to 25.
root:josef.schuster@dpsolution.de:smtp.ionos.de:587
arpwatch:josef.schuster@dpsolution.de:smtp.ionos.de:587
root@rpi-iot-jsho-arpwatch:~# chfn -f ‚root at myhost‘ root

root@rpi-iot-jsho-arpwatch:~# echo -e ‚Subject: test\n\nTesting ssmtp‘ | sendmail -v josef.schuster@dpsolution.de
[<-] 220 kundenserver.de (mreue107) Nemesis ESMTP Service ready
[->] EHLO rpi-iot-jsho-arpwatch
[<-] 250 STARTTLS
[->] STARTTLS
[<-] 220 OK
[->] EHLO rpi-iot-jsho-arpwatch
[<-] 250 SIZE 141557760
[->] AUTH LOGIN
[<-] 235 Authentication succeeded
[->] MAIL FROM:<josef.schuster@dpsolution.de>
[<-] 250 Requested mail action okay, completed
[->] RCPT TO:<josef.schuster@dpsolution.de>
[<-] 250 OK
[->] DATA
[<-] 354 Start mail input; end with <CRLF>.<CRLF>
[->] Received: by rpi-iot-jsho-arpwatch (sSMTP sendmail emulation); Sun, 20 Apr 2025 19:37:11 +0200
[->] From: „root at myhost“ <josef.schuster@dpsolution.de>
[->] Date: Sun, 20 Apr 2025 19:37:11 +0200
[->] Subject: test
[->]
[->] Testing ssmtp
[->] .
[<-] 250 Requested mail action okay, completed: id=1Mqal4-1ut2W73fk0-00noa4
[->] QUIT
[<-] 221 kundenserver.de Service closing transmission channel

root@rpi-iot-jsho-arpwatch:~#
root@rpi-iot-jsho-arpwatch:~# apt-get install arpwatch

root@rpi-iot-jsho-arpwatch:~# chfn -f ‚arpwatch at myhost‘ arpwatch

root@rpi-iot-jsho-arpwatch:~# vi /etc/arpwatch/arpwatch.conf
eth0 -a -n 192.168.1.0/24 -m josef.schuster@dpsolution.de

root@rpi-iot-jsho-arpwatch:~# systemctl enable arpwatch@eth0
root@rpi-iot-jsho-arpwatch:~# systemctl start arpwatch@eth0
root@rpi-iot-jsho-arpwatch:~# systemctl status arpwatch@eth0
● arpwatch@eth0.service – arpwatch service on interface eth0
Loaded: loaded (/lib/systemd/system/arpwatch@.service; enabled; preset: enabled)
Active: active (running) since Sun 2025-04-20 17:45:36 CEST; 2h 25min ago
Docs: man:arpwatch(8)
Process: 400 ExecStartPre=/usr/bin/touch -a eth0.dat (code=exited, status=0/SUCCESS)
Process: 434 ExecStartPre=/bin/chown $RUNAS eth0.dat (code=exited, status=0/SUCCESS)
Process: 436 ExecStart=/usr/sbin/arpwatch -u $RUNAS -i eth0 -f eth0.dat $ARGS $IFACE_ARGS -F ${PCAP_FILTER} (code=exited, status=0/>
Main PID: 437 (arpwatch)
Tasks: 1 (limit: 395)
CPU: 2.022s
CGroup: /system.slice/system-arpwatch.slice/arpwatch@eth0.service
└─437 /usr/sbin/arpwatch -u arpwatch -i eth0 -f eth0.dat -N -p -F
Apr 20 17:45:33 rpi-iot-jsho-arpwatch systemd[1]: Starting arpwatch@eth0.service – arpwatch service on interface eth0…
Apr 20 17:45:36 rpi-iot-jsho-arpwatch arpwatch[437]: Running as uid=106 gid=111
Apr 20 17:45:36 rpi-iot-jsho-arpwatch arpwatch[437]: listening on eth0
Apr 20 17:45:36 rpi-iot-jsho-arpwatch systemd[1]: Started arpwatch@eth0.service – arpwatch service on interface eth0.
root@rpi-iot-jsho-arpwatch:~#

Leave a Reply

You must be logged in to post a comment.