tproxy

軟件截圖:
tproxy
軟件詳細信息:
版本: 0.5.4
上傳日期: 12 May 15
許可: 免費
人氣: 26

Rating: 3.0/5 (Total Votes: 2)

tproxy是一個簡單的TCP路由代理(7層)構建在Geven_t,它可以讓您配置常規邏輯在Python 它巨資從代理計算機的啟發,但有一些獨特的,如預叉工人模式借來Gunicorn 。
安裝門:
tproxy需要Python 2.x的> = 2.5。 Python的3​​.x的支持計劃。
PIP安裝GEVENT
PIP安裝tproxy
從源代碼安裝:
混帳混帳克隆://github.com/benoitc/tproxy.git
CD tproxy
PIP安裝-r requirements.txt
蟒蛇setup.py安裝
通過運行命令行測試您的安裝:
tproxy例子/ transparent.py
並繼續http://127.0.0.1:5000,你應該看到谷歌的主頁。
用法:
tproxy -h
用法:tproxy [OPTIONS] script_path
選項:
  - 顯示版本程序的版本號並退出
  -h,--help顯示此幫助信息並退出
  - 日誌文件=文件寫入日誌文件。 [ - ]
  - 日誌級別= LEVEL日誌輸出的粒度。 [信息]
  - 對數=配置文件中的日誌配置文件來使用。 [無]
  -n STRING,--name = STRING
 基地,與setproctitle過程的命名使用。
  [無]
&NBSP ;-D,--daemon以進程的Gunicorn過程。 [虛假]
&NBSP ;-P文件--pid =文件的文件名使用的PID文件。 [無]
  -u USER,--user =用戶切換工作進程,以該用戶身份運行。 [501]
  -g集團,--group =集團
 切換工作進程,因為這組中運行。 [20]
  -m INT,--umask = INT位掩碼的文件模式上寫的文件
  Gunicorn。 [0]
  -b地址,--bind =地址
 套接字進行綁定。 [127.0.0.1:8000]
  - 積壓= INT掛起連接的最大數目。 [2048]
  -w INT,--workers = INT
 工作進程處理的請求數量。
  [1]
  - 工人 - 連接= INT
 人均並發客戶端的最大數量。
  [1000]
  -t INT,--timeout = INT
 工人沉默超過這個多少秒
 殺死並重新啟動。 [30]
信號
QUIT - 正常關機。停止接受連接立刻
 而等到所有的連接關閉
TERM - 快速關機。停止接受並關閉所有conections
  10秒後。
INT - 同TERM
HUP - 優美重裝。刷新所有工人的新代碼
 在你的路由腳本。
USR2 - 升級tproxy對飛
TTIN - 從1提高員工的數量
TTOU - 從1降低工人的數量
路由腳本。例
進口重
re_host = re.compile(“主持人: s *(*) r N”)
類CouchDBRouter(對象):
 #看路由表,並返回一個CouchDB的節點使用
 高清查找(個體經營,名):
 “”“做什麼”“”
路由器= CouchDBRouter()
#執行基於該流數據的內容感知路由。這裡,所述
#從HTTP協議主機的頭信息進行解析,找到
#用戶名和一個查找程序上運行的名稱來找到正確的
#CouchDB的節點。如果不匹配可沒有,做什麼用
#連接。 (使自己couchone服務器...)
高清代理(數據):
 火柴= re_host.findall(數據)
 如果匹配:
 主機= router.lookup(matches.pop())
  {回報“遠程”:主機}
 返回None
示例SOCKS4代理在18行
進口插座
進口結構
高清代理(數據):
&NBSP;如果len(數據)<9:
&NBSP;回報
&NBSP;命令= ORD(數據[1])
&NBSP; IP,端口= socket.inet_ntoa(數據[4:8]),struct.unpack(“> H”時,數據[2:4])[0]
&NBSP; IDX = data.index(“ 0”)
&NBSP;用戶id =數據[8:IDX]
&NBSP;如果命令== 1:#connect
&NBSP;返回的dict(遠程=“%S:%s的”%(IP,端口),
&NBSP;答复=“ 0 X5A 0 0 0 0 0 0”,
&NBSP;數據=數據[IDX:])
&NBSP;否則:
&NBSP; {回報“親密”:“ 0 x5b 0 0 0 0 0 0”}
有效的返回值
&NBSP; {“遙控”:字符串或元組} - 字符串是主機:將被代理服務器的端口。
&NBSP; {“遠程”:字符串,“數據”:字符串} - 同上,但發送給定的數據來代替。
&NBSP; {“遠程”:字符串,“數據”:字符串,“答复”:字符串} - 同上,但給出的數據返回給客戶端回复
&NBSP;無 - 不執行任何操作。
&NBSP; {“親密”:真} - 關閉連接。
&NBSP; {“親密”:字符串} - 關閉發送後的字符串連接。
處理錯誤
您可以通過添加腳本中的proxy_error功能輕鬆地處理錯誤:
高清proxy_error(客戶端,E):
&NBSP;通
此功能得到ClientConnection實例(當前連接)作為第一個參數,並在第二個參數錯誤例外

要求

  • 蟒蛇

類似的軟件

MapProxy
MapProxy

20 Feb 15

fu
fu

14 Apr 15

amms
amms

20 Feb 15

顯影劑的其他軟件 Benoit Chesneau

fserve
fserve

11 May 15

http-parser
http-parser

12 May 15

Couchapp
Couchapp

14 Apr 15

意見 tproxy

評論沒有發現
添加評論
打開圖片!