decehakan
Goto Top

OUTPUT Traffic Linux Server baut Verbindung DNS-NTP-Webserver auf

Hallo Zusammen,
ich betreibe seit grad mal einen Halbjahr ein Linux-Server, lese viel und versuch auch vieles zu verstehen, zum meines Wissenstand würde ich mich nicht gefestigt sehen.
Auf meinem dedicated Linux headless UBUNTU LTS 18.04 habe ich, die ein und ausgehende Verbindung gut abgesichert. Nur die ausgehende logs jagen mir zum Teil Angst ein face-smile.

Für die ausgehende Verbindung habe ich nur HTTP/HTTPS,NTP und DNS erlaubt, für Update/Upgrade/Package des Servers. Mit der Firewall iptables sehe ich ausgehende logs, wo mein Server unteranderem Verbindung zur Cloudfare(Amerika) oder anderen Unbekannten Servern aufbaut, ist das Verhalten bei Server normal, dass der Server sich regelmäßig zum DNS Server/NTP Server/Webserver aufbaut ? Das macht mir leider ein bisschen paranoid. face-smile

hier ein log von vielen.
Jan  8 23:02:17 myserver kernel: [49323.868478] iptables-dropped: IN= OUT=eno1 SRC=myserver.ip DST=50.19.218.16 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=35516 DF PROTO=TCP SPT=36764 DPT=443 WINDOW=64240 RES=0x00 SYN URGP=0

Über netstat wollte ich herausfinden, welche PID(Prozess) den sourceport:36764 steuert, hab nicht dazu gefunden außer listener/open port.

Gibt es ein Weg ( für ubuntu headless server), wie ich herausfinden , welcher Prozess den Sourceport 36764 gesteuert hat ?
Über Ratschläge und Empfehlung würde ich mich riesig freuen.

Viele Grüße

decehakan

Content-Key: 533178

Url: https://administrator.de/contentid/533178

Printed on: April 25, 2024 at 15:04 o'clock

Member: Henere
Henere Jan 10, 2020 at 01:52:53 (UTC)
Goto Top
Servus.
Schmeiss TCPDUMP an und schaue was passiert.
Regelmäßig schaut er nach Updates zB.

Henere
Mitglied: 142232
142232 Jan 10, 2020 updated at 09:31:03 (UTC)
Goto Top
Member: decehakan
decehakan Jan 12, 2020 updated at 14:42:45 (UTC)
Goto Top
Mit netstat/lsof werde ich nicht schlauer, da diese nur listening/open ports/ aufgebaute Verbindung mit der zugehörige PID anzeigen.
Und mit tcpdump kann ich zwar Verbindungen aufzeichnen, aber er zeigt mir nicht die zugehörige PID. Irgendwie fehlt bei den Programm immer etwas.

Also die Sourceport vom Server, die kurzfristig ein dynamischen Port öffnen (portrange 30.000 - 65.000) mit der zugehörige PID kann ich leider mit netstat, lsof oder tcpdump abfangen. Das Problem ist eigentlich, dass die dynamischen Port regelmäßig ändern, wenn Sie ausgehende Verbindung zu einem HTTPS/DNS/NTP aufbauen wollen.

Was kann ich noch machen, oder ist es überhaupt möglich dynamische Port aufzuzeichnen auf Linux.
Mitglied: 142232
142232 Jan 12, 2020 updated at 15:16:17 (UTC)
Goto Top
Mit netstat/lsof werde ich nicht schlauer, da diese nur listening/open ports/ aufgebaute Verbindung mit der zugehörige PID anzeigen.
Blödsinn!! Mal wieder erst mal in ein Forum blöken anstatt erst mal genau hin zu schauen. Mein lsof Befehl zeigt dir alle aufgebauten Verbindungen sogar auch die die einen anderen TCP State haben als "established" haben , an nicht nur die lauschenden Sockets , und der dazugehörige Prozess ist ebenfalls aufgeführt! Du musst also genauer hinschauen bevor du hier sowas als Neuling in Sachen Linux behauptest.

Beispiel hier , ganz unten eine aufgebaute aktive SSH Session (nix nur listening!)

screenshot_20200112-160623__01
Member: decehakan
decehakan Jan 12, 2020 at 15:25:06 (UTC)
Goto Top
Zitat von @142232:

Mit netstat/lsof werde ich nicht schlauer, da diese nur listening/open ports/ aufgebaute Verbindung mit der zugehörige PID anzeigen.
Blödsinn!! Mal wieder erst mal in ein Forum blöken anstatt erst mal genau hin zu schauen. Mein lsof Befehl zeigt dir alle aufgebauten Verbindungen sogar auch die die einen anderen TCP State haben als "established" haben , an nicht nur die lauschenden Sockets , und der dazugehörige Prozess ist ebenfalls aufgeführt! Du musst also genauer hinschauen bevor du hier sowas als Neuling in Sachen Linux behauptest.

Beispiel hier , ganz unten eine aufgebaute aktive SSH Session (nix nur listening!)

du solltest am besten nochmal mein Text durchlesen, und erstmal das Problem verstehen.

Nochmals für dich, lese bitte nochmal einmal meine Antwort und ruhig bitte.

Ich rede hier vom Serverports die kurzfristig eine Verbindung aufbauen und nach updates etc abfragen und genau diese dynamische Ports, sobald Sie ihre Zwecke erfüllen, schließen diese Ports. Anscheinend hast du viel weniger Kenntniss und Erfahrung in Linux als ich face-smile.
Mitglied: 142232
142232 Jan 12, 2020 updated at 15:42:13 (UTC)
Goto Top
Zitat von @decehakan:

du solltest am besten nochmal mein Text durchlesen, und erstmal das Problem verstehen.
Habe ich!
Nochmals für dich, lese bitte nochmal einmal meine Antwort und ruhig bitte.
Alles ganz klar und einfach, du willst es anscheinend nicht verstehen.
Ich rede hier vom Serverports die kurzfristig eine Verbindung aufbauen und nach updates etc abfragen und genau diese dynamische Ports, sobald Sie ihre Zwecke erfüllen, schließen diese Ports.

Und genau das zeigt dir das oben auch an, siehst du oben ja. Das ist die Ausgabe eines Servers der selbst eine SSH Session aufgebaut hat. Das SRC Ports dynamisch sind ist bekannt macht hier aber keinerlei Unterschied!
Wenn der Server eine Verbindung aufbaut wird diese auch dort mit lsof gelistet, mehr braucht man also nicht.

Anscheinend hast du viel weniger Kenntniss und Erfahrung in Linux als ich face-smile.
Ja klar, Trolle wie dich mögen wir hier ganz besonders. So eine Aussage disqualifiziert dich als Newbie schon von selbst.
Dann muss ich mein LPIC3 wohl in Timbuktu erworben haben face-big-smile. Leute gibt's ...
Lies das Manual lsof und du wirst merken dass es genau das ist was du dafür brauchst.
Member: decehakan
decehakan Jan 12, 2020 at 16:21:12 (UTC)
Goto Top
du versteht das immer noch nicht :D .

Ich helfe dir mal auf die Sprünge, das Problem zu verstehen, anscheinend fehlt die hier die Erfahrung. Ein package zu installieren und über eine englische Guide zu lesen, wie man das benutzt ist keine Kunst. Wissen, Erfahrung und know how ist entscheidend.

Also netstat/lsof zeigen die dynamischen Port an, jaa aber: nur die aufgebaut sind oder offene Port.

ABER JETZT KOMMT (Hier 3 mal lesen serial): dynamische Ports die kurzfristig geöffnet sind ( kurzfristig geöffnet bedeutet für dich = der Port schließt auch sofort), zeigt er mir nicht an ! Ist ja auch logisch.

Ich mach dir nochmal ein Praxisbeispiel aus einem dropped log, manche lernen mit einem Praxisbeispiel besser newbie ;):

Jan 10 18:36:05  [45471.040115] iptables-dropped: IN= OUT=eno1 SRC=meine DST=79.124.78.101 LEN=76 TOS=0x10 PREC=0x00 TTL=64 ID=33178 DF PROTO=UDP SPT=49716 DPT=123 LEN=56

Hier am 10 Jan hat mein Server über den SPT 49716 eine Verbindung zu einem NTP-Server aufgebaut.
Jetzt möchte ich wissen welcher Prozess PID den SPT 49716 benutzt hat, nur als neugier.

lsof -i oder netstat -nlp geben keine Info, DENN dieser Port wurde kurzfristig geöffnet, vielleicht nur eine Sekunde lang.

Jetzt kannst du rockie (anfänger) sagen: was wenn du zu richtigen Zeitpunkt lsof -i -P , ja dann bekomme ich den PID raus.

Ich werde dir dann kontern und sagen rockie (anfänger): die Wahrscheinlichkeit von 24 h, die richtige Sekunde zu finden ist 1 /24*36000~ fast 0

Jetzt du verstehen du profi ;), ich hoffe du konntest aus dem Thread etwas zu Netzwerk mit Linux mehr lernen ;)
Mitglied: 142232
Solution 142232 Jan 12, 2020 updated at 17:08:15 (UTC)
Goto Top
Ich werde dir dann kontern und sagen rockie (anfänger): die Wahrscheinlichkeit von 24 h, die richtige Sekunde zu finden ist 1 /24*36000~ fast 0
Tja wenn man hier schon die Befehle falsch hier rauskopiert ...deswegen der Repeat-Parameter im Beispiel waren es zwar 2 Sekunden, aber das kannst du ja anpassen oder mit watch arbeiten. Das kannst du beliebig verkleinern und dann z.B. mit einem nachgeschalteten grep die passenden Einträge ausfiltern. Das Ganze als Daemon unbeobachtet mit Log laufen lassen, fertig. Bisschen selbst mitdenken sollte man hier ja eigentlich erwarten können.

Auf den "Rockie" (Hast wohl zu viel Filmchen geschaut ...du meinst wohl Rookie ) / Profi Quatsch gehe ich jetzt nicht mehr ein das ist Kindergarten-Krams und gehört nicht in ein Admin-Forum.

Alternativ kannst du das natürlich auch mit Audit-Regeln erfassen und loggen lassen. Mit auditctl /ausearch
https://linux.die.net/man/8/auditctl
https://linux.die.net/man/8/ausearch
https://serverfault.com/questions/666482/how-to-find-out-pid-of-the-proc ...
Member: decehakan
decehakan Jan 12, 2020 updated at 17:42:11 (UTC)
Goto Top
@142232: er zeichnet aber dennoch nicht auf, ich müsste alle Sekunden nachschauen, wann welche port welche PID benutzt hat, ist zwar eine Lösung, aber müsste daran arbeiten und die logs speichern. ich werd es mal mit logs modifizieren.
Weil es doch eine Lösung ist, zwar keine elegante, hast du mein Problem gelöst ;)

audithctl und ausearch ist glaub ich die Lösung, müsste mich da reinlesen.
Member: Henere
Henere Jan 12, 2020 at 17:29:39 (UTC)
Goto Top
Port 123 NTP.
soll der im Millisekundenrhytmus nach der Zeit fragen ?
Member: decehakan
decehakan Jan 12, 2020 at 17:38:46 (UTC)
Goto Top
@Henere:

macht ja kein Sinn, das muss aufgezeichnet werden. Glaube ausearch auditctl ist die Lösung.
Member: Henere
Henere Jan 12, 2020 at 18:59:44 (UTC)
Goto Top
Was muss aufgezeichnet werden ?
Wenn ein Dienst einen highport öffnet um auf einen dedizierten Server per NTP nach der Zeit zu fragen ?
Es gibt Leute, die loggen sich zu Tode.....
Member: decehakan
decehakan Jan 12, 2020 at 20:30:30 (UTC)
Goto Top
Genau