====== Nützliche Skripte oder kleine Helfer ======
===== SSH login -> IP-Adressen anzeigen =====
Um nach dem Login die auf dem System verfügbaren IP Adressen anzeigen zu lassen muss man, je nach Distribution, eine der Dateien editieren
''~/.bashrc'' ''~/.bash_profile'' ''~/.profile''
nano ~/.bashrc
Einfügen:
echo "----- IP-Adressen dieses Servers -----"
ip -o -4 addr show | awk '{print "IPv4:", $2, $4}'
ip -o -6 addr show | awk '{print "IPv6:", $2, $4}'
echo "--------------------------------------"
===== Für proxmox LXC container =====
Du möchtest das für jeden LXC Container haben?
ACHTUNG! In dieser Variante werden die Adressen für **JEDEN** Benutzer gezeigt, der sich auf der Shell anmeldet.
\\
Das geht so:
#!/bin/bash
read -r -d '' IPINFO_SCRIPT <<'EOF'
#!/bin/bash
# Farben definieren
RED='\033[0;31m'
GREEN='\033[0;32m'
CYAN='\033[1;36m'
NC='\033[0m' # No Color
echo -e "${CYAN}----- IP-Adressen dieses Servers -----${NC}"
ip -o -4 addr show | awk -v green="$GREEN" -v nc="$NC" '{print green "IPv4:" nc, $2, $4}'
ip -o -6 addr show | awk -v red="$RED" -v nc="$NC" '{print red "IPv6:" nc, $2, $4}'
echo -e "${CYAN}--------------------------------------${NC}"
EOF
for CTID in $(pct list | awk '$2=="running" {print $1}'); do
echo "Bearbeite laufenden Container $CTID ..."
TARGET_FILE="/etc/profile.d/ipinfo.sh"
echo "$IPINFO_SCRIPT" | pct exec $CTID -- tee $TARGET_FILE>/dev/null
pct exec $CTID -- chmod +x $TARGET_FILE
echo " Datei $TARGET_FILE angelegt und ausführbar gemacht."
done
echo "Fertig."
Als Skript anlegen, ausführbar machen und ausführen. (auf jedem Proxmox Server einzeln)
Die Ausgabe nach dem Login sieht dann etwa so aus:
** —– IP-Adressen dieses Servers —– ** \\
IPv4: lo 127.0.0.1/8\\
IPv4: eth0 192.168.178.15/24\\
IPv4: docker0 172.17.0.1/16 \\
IPv6: lo ::1/128\\
IPv6: eth0 abcd::1234:efab:5678:cdef/xx \\
** ————————————– **