ntop : Eigene Anwendung zu Port zuordnen

Erstmal was ist ntop eigentlich.
ntop (network top) ist eine quelloffene und freie Software, mit der Netzwerkverkehr mitgeschnitten und analysiert werden kann.
Quelle : https://de.wikipedia.org/wiki/Ntop

Diese Software kann schön genutzt werden um z.B. auf einem Gateway oder einer Firewall zu monitoren wo der Traffic so hin läuft. Es werden schon ein ganzer Pack Plugins mitgeliefert aber eigene Anwendungen werden nicht erkannt. Ich habe hier eine kleine Anwendung geschrieben die über udp Port 5404 Daten versendet. Jetzt möchte ich natürlich das auch in meinem Gateway angezeigt bekommen um zu beurteilen wieviel Traffic darüber läuft. Das kann man relativ einfach realisieren jedoch hat es mir auch etwas Arbeit gekostet diesen einfachen Weg zu finden ;-)

Erstellt eine Datei in der später die Protokolle hinzugefügt werden.
touch /usr/share/ntopng/httpdocs/protocol-app.txt
Jetzt füge ich meine Anwendung hinzu, das diese auch im Webfrontend nicht mehr unter UNKNOWN läuft.
echo "udp:5404 @MyApp" > /usr/share/ntopng/httpdocs/protocol-app.txt 
dann müssen wir noch dafür sorgen das diese Datei auch beim Start von ntopng gelesen wird dazu editieren wir das configfile unter /etc/ntopng mit dem Befehl.
echo "-p /usr/share/ntopng/httpdocs/protocol-app.txt" >> /etc/ntopng/ntopng.conf
Dann starten wir den Server neu mit dem Befehl
service ntopng restart
Wenn dann bei den Protokollen MyApp steht wurde alles richtig gemacht ;-) ntop beispiel

Mehr Infos :
http://www.ntop.org/ndpi/configuring-ndpi-for-custom-protocol-detection/

Debian 9 : Gateway mit DNS und DHCP

1.) Aufsetzten des Gateways mit DNS und DHCP für das interne Netzwerk
2.) installieren des Debian Grundsystems und aktualisieren auf den aktuellsten Stand
3.) installieren der benötigten Packete für den Gateway
apt install dnsmasq vim resolvconf iptables-persistent
benötigte Einstellungen im Kernel vornehmen.
vi /etc/sysctl.conf
# auskommentieren von 
net.ipv4.ip_forward=1
benötigte Einstellungen in den IP-Tables vornehmen
vi /etc/iptables/rules.v4
das reinkopieren, hier ist gleich der port 22 für ssh geöffnet und die Weiterleitung von Port 80 und 443
auf den internen Server 172.16.0.10 umgesetzt.

enp0s3 und enp0s8 sind meine Netzwerkkarten sollten die bei euch einen anderen Namen tragen
Muss dieser natürlich angepasst werden

*nat
-A POSTROUTING -o enp0s3 -j MASQUERADE
-A PREROUTING -i enp0s3 -p tcp --dport 80 -j DNAT --to 172.16.0.10:80
-A PREROUTING -i enp0s3 -p tcp --dport 443 -j DNAT --to 172.16.0.10:443
COMMIT
# -----------------------------------------------------
*filter
-A INPUT -i lo -j ACCEPT
# wenn angefragt dann erlauben
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# ssh erlauben
-A INPUT -i enp0s3 -p tcp -m tcp --dport 22 -j ACCEPT
# Webserver
-A FORWARD -p tcp -d 172.16.0.10 --dport 80 -j ACCEPT
-A FORWARD -p tcp -d 172.16.0.10 --dport 443 -j ACCEPT
# Alles andere DROP
-A INPUT -i enp0s3 -j DROP
COMMIT
Aktivieren der IPTABLES mit
iptables-restore /etc/iptables/rules.v4
Konfigurieren der Netzwerkschnittstelle ins interne LAN
vi /etc/network/interfaces
das reinkopieren
# internal LAN (int)
allow-hotplug eth1
iface enp0s8 inet static
address 172.16.0.1
broadcast 172.16.0.254
netmask 255.255.255.0
dann kümmern wir uns direkt um die dnsmasq.conf
vi /etc/dnsmasq.conf
Da jedes Netzwerk anders ist kann meine nur als Anregung verstanden werden, für meinen Test habe ich alle Kisten in der Domain ph.lan
# DNS CONFIG
domain-needed
bogus-priv
interface=enp0s8
listen-address=127.0.0.1
listen-address=172.16.0.1
bind-interfaces
domain=ph.lan
local=/ph.lan/
# DNS Weiterleitung
server=8.8.8.8
server=8.8.4.4
filterwin2k
# -------------------------------------------------------------
# DHCP CONFIG
# -------------------------------------------------------------
dhcp-range=lan,172.16.0.2,172.16.0.254,12h
dhcp-option=lan,3,172.16.0.1
dhcp-option=lan,6,172.16.0.1
# FESTE HOSTS
# dhcp-host=[E/A nach dem Muster XX:XX:XX:XX:XX:XX],[HOSTNAME],[IP-ADRESSE],infinite
dhcp-host=08:00:27:cc:69:b0,web-lb,172.16.0.10,infinite
so damit wird uns jetzt nicht selbst verarschen editieren wir noch die Datei /etc/hosts
127.0.0.1       localhost
#127.0.1.1      web-gw.ph.lan   web-gw
172.16.0.1      web-gw.ph.lan   web-gw
# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
wenn wir das nicht machen antwortet auf einem Ping des Gateways immer die 127.0.1.1 die Datei wird auch zur Auflösung der Adressen im Netzwerk hergezogen.

Jetzt passen wir noch die Datei /etc/resolvconf/resolv.conf.d/head an. Hier mein Inhalt.
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 172.16.0.1
search ph.lan
keine Angst die Warnung können wir hier ignorieren, beim start wird die Datei /etc/resolv.conf gebaut, damit man in dieser Datei (etc/resolv.conf) nichts ändert ist diese Warnung da.

Jetzt starten wir mal die Kiste durch
systemctl restart

Wenn hier alles richtig gemacht wurde ist der web-gw jetzt konfiguriert jetzt könnt ihr einen 2. Server aufsetzen der seine Netzwerkkarte nur im internen Netzwerk hat. Alle Rechner/Server bekommen jetzt im internen Lan ihre DHCP / DNS Einstellungen vom Server web-gw, jetzt kann man anfangen das Apache Loadbalancing aufzubauen. Dazu folgt aber ein weiterer Eintrag von mir.

Fritzbox: Benutzeroberfläche aufrufen, wenn IP-Adresse unbekannt ist (Notfall-IP)

Problem:
Ich hatte eine FritzBox, die ich resetten wollte, aber keine IP-Adresse wusste. Einen externen Reset-Button fand ich nicht, außerdem wollte ich die Config einsehen.

Lösung:
Es gibt eine Notfall-IP, über die ist jede FrizBox erreichbar. Dazu müssen einige Vorbereitungen getroffen werden:

1.) Ziehen Sie alle Netzwerkkabel von der FritzBox
2.) Drücken Sie die WLAN-Taste um die WLAN-Funktion abzuschalten.
3.) Verbinden Sie einen Computer über ein Netzwerkkabel mit der FritzBox.
4.) Achten Sie darauf, dass Ihr Computer seine Adresse über DHCP bezieht oder geben Sie Ihm die feste IP 169.254.1.2
4.) Öffnen Sie im Browser die IP-Adresse http://169.254.1.1 (APIPA-Bereich)
5.) Jetzt können sie die FritzBox administrieren - falls diese kennwortgeschützt ist, müssen Sie dieses haben!

Quelle:
FRITZ!Box 7330 Service: Notfall-IP

Event 2019 - Troubleshooting Guide Pool Speicher

Resources for Troubleshooting Windows Event 2019

Event: 2019 - Source: Srv
Description
The server was unable to allocate from the system nonpaged pool because the pool was empty


Hier findet man einige Hilfestellungen und Lösungen für das Problem, da es von vielen Faktoren ausgelöst werden kann:
Resources for Troubleshooting Windows Event 2019

Das Ereignis 2019 kann auch durch den originalen HP TCP/IP-Port hervorgerufen werden. Hier verwendet die spoolsv den ganzen Poolspeicher und es kommt unweigerlich zum Systemausfall bzw. Performance-Einbrüchen. Beschrieben wird dieses Phänomen im Microsoft KB-Aritkle 933999.

Man muß nun die ganzen Drucker auf Standard-TCP/IP-Ports drehen und den HP-Port enfernen. Die vorgehensweise wird in dem genannten KB-Artikel 933999 erläutert.

Link: Article ID: 933999

Event 3019 MRxSmb - kein Zugriff auf Netzwerkfreigaben

Problem:
Man versucht ein Netzlaufwerk zu verbinden und bekommt die verschiedensten Fehlermeldungen. Sowohl mit net use als auch üner Netzlaufwerk verbinden im Explorer. Sie erhalten im Eventlog folgenden Eintrag:

Ereigniskennung: 3019
Quelle: MRxSmb
Typ: Warnung
Beschreibung:
Der Redirectordienst konnte den Verbindungstyp nicht erkennen.


Das System ist ein ungepatchtes Windows XP SP2. Bei XP SP1 und SP3 keine Probleme!

Lösung:
Dieses Problem ist bei Microsoft unter der KB889000 bzw. KB884020 bekannt und für den Fehler gibt es einen Hotfix, da beim SP2 die tcpip.sys geändert wurde.

Hotfix Download Microsoft: Update für Windows XP Service Pack 2 (KB884020)
ACHTUNG: Danach ist ein Reboot nöig!


Hotfix direkt vom Blog herunterladen -->
Update für Windows XP Service Pack 2 (KB884020)
“Das Alzheimer-Gesetz der Programmierung: Wenn du einen von dir vor zwei Wochen geschriebenen Code ansiehst, kommt es dir vor als hättest du ihn noch nie gesehen.”
Dan Hurvitz – Software-Entwickler