Manchmal kann es praktisch sein, sich vor dem Login die IP-Adresse der Linux-Maschine anzeigen zu lassen, um sich z.B. direkt per ssh zu ihr verbinden und nicht erst umständlich einloggen, ifconfig etc. auszuführen.
Achtung: Dieses ist bei VMs sehr praktisch, die via DHCP immer eine andere IP-Adresse haben, sollte aber bei echten Servern nicht implementiert werden, da so einem Hacker bereits Informationen geliefert werden.
- Erstellen Sie das Verzeichnis:
sudo mkdir -p /etc/issue.net.d
- Erstellen Sie die Datei
/etc/issue.net.d/ip-show.sh
:
sudo nano /etc/issue.net.d/ip-show.sh
Fügen Sie folgenden Inhalt ein:
#!/bin/bash
IP=$(ip -4 addr show | grep -v "127.0.0.1" | grep -oP '(?<=inet\s)\d+(\.\d+){3}' | head -n1)
echo "System IP Address: $IP" > /etc/issue
- Machen Sie das Script ausführbar:
sudo chmod +x /etc/issue.net.d/ip-show.sh
- Erstellen Sie das Verzeichnis für den systemd Service:
sudo mkdir -p /etc/systemd/system/getty@.service.d/
- Erstellen Sie die Datei
/etc/systemd/system/getty@.service.d/show-ip.conf
:
sudo nano /etc/systemd/system/getty@.service.d/show-ip.conf
Mit folgendem Inhalt:
[Service]
ExecStartPre=/etc/issue.net.d/ip-show.sh
- Reload systemd und restart den getty service:
sudo systemctl daemon-reload
sudo systemctl restart getty@tty1.service
Jetzt sollte die IP-Adresse vor dem Login angezeigt werden. Das Script wird beim Start des getty-Services ausgeführt und aktualisiert die /etc/issue
Datei mit der aktuellen IP-Adresse.