Portál AbcLinuxu, 24. dubna 2024 04:33


Dotaz: cteni dat z portu

22.8.2006 12:30 Jiri Mares
cteni dat z portu
Přečteno: 130×
Odpovědět | Admin
Dobry den

Potrebuji donutit server, aby poslouchal na nejakem portu a veskera data, ktera na tento port prijdou, aby zapsal do souboru. Nejprve jsem si myslel ze to vyresim pres xinetd, ale ted kdyz to studuju tak si nejsem jisty zda moje uvaha byla spravna. Domnival jsem se, ze donutim xinetd server aby poslouchal na portu a pri prichodu pozadavku na port aby spustil nejaky bash skript, ktery zapise do souboru vse co dostane na vstup, ale nejak se mi to nedari. Lze tohle udelat pres xinetd server? Pripadne existuje nejaka jina cesta jak tohoto dosahnout?

Diky
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Vašek Lorenc avatar 22.8.2006 12:33 Vašek Lorenc | skóre: 27
Rozbalit Rozbalit vše Re: cteni dat z portu
Odpovědět | | Sbalit | Link | Blokovat | Admin
netcat
alespoň to zní jako vhodný úkol právě pro něj..
...včetně majestátného loosa
23.8.2006 00:53 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: cteni dat z portu
Odpovědět | | Sbalit | Link | Blokovat | Admin
A co třeba tohle?
#!/usr/bin/env python
import socket

port = 50007
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('', port))
s.listen(1)
conn, addr = s.accept()

logfile = file('portdata', 'w')
while 1:
    data = conn.recv(1024)
    if not data: break
    logfile.write(data)
conn.close()
logfile.close()
Program poslouchá na portu 50007 a co přijde, to zapíše do souboru. Spojení od více klientů neřeším. A k čemu to bude sloužit?

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.