tproxy

Programinė įranga Screenshot:
tproxy
Programinė detalės:
Versija: 0.5.4
Įkėlimo datą: 12 May 15
Kūrėjas: Benoit Chesneau
Licencija: Nemokamai
Populiarumas: 110

Rating: 3.0/5 (Total Votes: 2)

tproxy yra paprastas TCP maršruto tarpinio (sluoksnis 7) pastatytas ant Geven_t, kuri leidžia jums konfigūruoti įprastą logiką Python, & nbsp;. Tai labai įkvėpė iš tarpinio įrenginio, tačiau turi keletą unikalių, kaip pasirengimo šakutė darbuotojų modelio pasiskolintą Gunicorn ,
Instaliacija:
tproxy reikalingas Python 2.x> = 2.5. Pitonas 3.x parama planuota.
PIP įdiegti gevent
PIP įdiegti tproxy
Norėdami įdiegti iš šaltinio:
Git Git klonas: //github.com/benoitc/tproxy.git
CD tproxy
PIP įdiegti-r requirements.txt
pitonas setup.py įdiegti
Pasitikrink savo diegimą veikia komandinę eilutę:
tproxy pavyzdžiai / transparent.py
Ir eiti http://127.0.0.1:5000, jūs turėtumėte pamatyti "Google" pagrindiniame puslapyje.
Naudojimas:
tproxy -h
Naudojimas: tproxy [options] script_path
Pasirinkimai:
& Nbsp; - Versija Rodyti programos versijos numeris ir išeiti
& Nbsp; -h, help parodyti šią pagalbos pranešimą ir išeiti
& Nbsp; - log-failą = paduoti failą kreiptis į. [-]
& Nbsp; - prisijunkite lygio = LYGIS Rąstinių rezultatų detalumo. [Info]
& Nbsp; - log-config = Failas žurnalo config failą naudoti. [Nėra]
& Nbsp; -n eilutę, --name = STYGINIŲ
& Nbsp; bazė naudoti su setproctitle procesų įvardijimas.
& Nbsp; [Nėra]
& Nbsp ;-D, --daemon Daemonize Gunicorn procesas. [False]
& Nbsp ;-p failą, --pid = Failas Failo pavadinimas naudoti PID failą. [Nėra]
& Nbsp; -u vartotojas, user = Vartotojo Perjungti tarnautojas procesai paleisti kaip šį klientą. [501]
& Nbsp; -g GRUPĖ, --group = GRUPĖ
& Nbsp; Perjungti darbuotojas procesas paleisti kaip šios grupės. [20]
& Nbsp; -m INT, --umask = INT tiek kaukė failų režimu failus parašytų
& Nbsp; Gunicorn. [0]
& Nbsp; -b ADRESAS, --bind = ADRESAS
& Nbsp; lizdas surišti. [127.0.0.1:8000]
& Nbsp; - atsilikimas = INT didžiausias skaičius laukiant jungtis. [2048]
& Nbsp; -w INT, --workers = INT
& Nbsp; darbuotojo proceso tvarkymo prašymų skaičių.
& Nbsp; [1]
& Nbsp; - tarnautojas-jungtys = INT
& Nbsp; didžiausias skaičius vienu metu klientams vienam darbuotojui.
& Nbsp; [1000]
& Nbsp; -t INT, --timeout = INT
& Nbsp; Darbuotojai tylus daugiau nei tai daug sekundes, yra
& Nbsp; žuvo ir iš naujo. [30]
Signalai "
Baigti - grakštus išjungti. Nebepriimti jungtys immediatly
& Nbsp; ir laukti, kol visos jungtys Uždaryti
TERMINAS - Greitas išjungimas. Nebepriimti ir uždarykite visas conections
& Nbsp; po 10s.
INT - Tas pats kaip TERM
HUP - graceful perkrovimas. Atnaujinti visus darbuotojus su nauju kodu
& Nbsp; savo maršruto scenarijų.
USR2 - Modernizuoti tproxy skristi
TTIN - Didinti darbuotojo numerį iš 1
TTOU - Sumažinti darbuotojo numerį iš 1
Pavyzdys maršruto scenarijų "
importo iš naujo
re_host = re.compile ("priimančioji:. S * (*) r n")
klasė CouchDBRouter (objektas):
& Nbsp; # žvilgsnis į maršrutų lentelę ir grąžinti couchdb mazgas naudoti
& Nbsp; Def peržvalgos (savarankiškai, vardas, pavardė):
& Nbsp; "" "kažką daryti" ""
maršrutizatorius = CouchDBRouter ()
# Atlikite turinio žino maršruto remiantis upelio duomenis. Čia,
# Priimančioji antraštės informaciją iš HTTP protokolą yra apdoroti rasti
# Vardą ir peržvalgos rutina yra paleisti ant pavadinimo rasti informacija
# Couchdb mazgas. Jei rungtynės gali būti dar nieko su
# Ryšį. (Padaryti savo couchone serverį ...)
Def Proxy (duomenų):
& Nbsp; atitikmuo = re_host.findall (duomenų)
& Nbsp; jei rungtynes:
& Nbsp; priimančiosios = router.lookup (matches.pop ())
& Nbsp; grąža {"nuotolinio": šeimininkė}
& Nbsp; sugrįžti Nieko
Pavyzdys socks4 Proxy 18 Linijos "
importo lizdas
importo konstrukto
Def Proxy (duomenų):
& Nbsp; jei LEN (duomenų) <9:
& Nbsp; grąža
& Nbsp; komanda = ord (duomenų) [1]
& nbsp; TL uostas = socket.inet_ntoa (duomenys [4: 8]), struct.unpack ("> H", duomenų [2: 4]) [0]
& Nbsp; IDX = data.index (" 0")
& nbsp; UserId = duomenų [8: IDX]
& Nbsp; jei komanda == 1: #connect
& Nbsp; grąža dict (nuotolinis = "% s:% s"% (IP, uosto),
& Nbsp; atsakymas = " 0 x5a 0 0 0 0 0 0",
& Nbsp; duomenys = duomenų [IDX:])
& Nbsp; dar:
& Nbsp; grąža {"arti": " 0 x5b 0 0 0 0 0 0"}
Galioja grąžinimo vertės "
& Nbsp; {"nuotolinio": string arba kortežas} - Styginių yra Host: uostas serverio, kuris bus naudojamas tarpinis serveris.
& Nbsp; {"nuotolinio": Styginių "duomenys": Styginių} - o pats kaip ir anksčiau, tačiau atsiųsti pateiktus duomenis.
& Nbsp; {"nuotolinio": Styginių "duomenys": Styginių ", atsakymas": Styginių} - Tas pats kaip aukščiau, bet atsakyti pateiktus duomenis atgal į kliento
& Nbsp; Nėra - Ar nieko.
& Nbsp; {"arti": Tiesa} - nutraukti ryšį.
& Nbsp; {"arti": Styginių} - nutraukti ryšį nusiuntus eilutę.
Rankenėlės klaidų "
Jūs galite lengvai tvarkyti klaidą pridedant proxy_error funkciją savo scenarijų:
Def proxy_error (klientas, E):
& Nbsp; perdavimas
. Ši funkcija gauti ClientConnection instancijos teismo (turimu ryšiu), kaip pirmuosius argumentus ir klaidos išskyrus antrąjį argumentą

Reikalavimai

  • Pitonas,

Panaši programinė įranga

socket_zmq
socket_zmq

20 Feb 15

Turtle
Turtle

11 May 15

VNCAuthProxy
VNCAuthProxy

15 Apr 15

Squid
Squid

22 Jun 18

Kita programinė įranga kūrėjas Benoit Chesneau

fserve
fserve

11 May 15

Restkit
Restkit

5 Jun 15

http-parser
http-parser

12 May 15

http-parser
http-parser

20 Feb 15

Komentarai tproxy

Komentarai nerastas
Pridėti komentarą
Pasukite ant paveikslėlio!