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: 26

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

CherryProxy
CherryProxy

14 Apr 15

dproxy
dproxy

2 Jun 15

UProxy
UProxy

3 Jun 15

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

hroute
hroute

11 May 15

http-parser
http-parser

20 Feb 15

http-parser
http-parser

12 May 15

Komentarai tproxy

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