1PROXYKNIFE(1)                   GNU Proxyknife                   PROXYKNIFE(1)
2
3
4

NAME

6       Proxyknife - The customizable proxy hunter.
7

SYNOPSIS

9       proxyknife [-f configuration file]
10                  [-I mode] [-i file...]
11                  [-m mytype] [-h myhost] [-p myport]
12                  [-u myuser] [-s mypass]
13                  [-o outfile] [-l logfile]
14                  [-d]
15
16       Only the most important options are listed here; see below for the
17       remainder.
18

DESCRIPTION

20       GNU Proxyknife is a customizable multithread proxy hunter. Tt can help
21       users behind strict firewall find suitable free proxies.
22
23       GNU Proxyknife reads proxylist[1] from the file, stdin or the web, then
24       validates the free proxies and prints the good ones. Time intervals and
25       the others which are userful to estimate the speed or capability of
26       every proxy are also printed. The whole processing can be customized by
27       the user, which is different from the other hunters.
28
29       In URL mode, Proxyknife can read a large number of proxies on machines
30       with little memory. Tt works on GNU/Linux, SunOS, OSF1 or more.
31
32       As a proxy hunter, Proxyknife can validate all kinds of proxies with
33       different methods: HTTP proxy with GET or CONNECT method, SOCKS5 proxy
34       with CONNECT command, SOCKS4 proxy with CONNECT command. As a customiz‐
35       able extension, it can check proxies for special purpose, such as find‐
36       ing tunnels for MSN chatting.
37
38       Proxyknife can check proxies via a tunnel. The tunnel can be SOCKS4
39       proxy, SOCKS5 proxy or HTTP proxy, with or without authentication for
40       the latter two. The route from the local machine that proxyknife runs
41       on to checksite is:
42
43               proxyknife -------- (myproxy) ------ testproxy ----- checksite
44
45       Here myproxy is the tunnel, testproxy is the free proxy being checked
46       and checksite is the site used to validate free proxies.
47
48       Proxyknife have many features.  Please see the file FEATURELIST
49       included in this package for details.
50

OPTIONS

52       Command-line Exclusive Options
53
54       -V
55       --version
56           Display the version of Proxyknife and exit.
57
58       --help
59           Print all command-line options.
60
61       -f file
62           Use file as startup file. Without this option, proxyknife will try
63           ./proxyknife.conf, then  $HOME/.proxyknife.conf, at last $pre‐
64           fix/etc/proxyknife.conf[3].
65
66       Startup Options
67
68       Anyone of the following options have a keyword form which can be speci‐
69       fied in startup file. In this section, every single option is followed
70       by a keyword.
71
72       If you have duplicate options on command line or settings in startup
73       file, only the first one will be used. Anyway, do not let this happen
74       if possible.
75
76       -d
77       debug
78           Turn on debug output.
79
80           Argument after this option is not required and should be completely
81           omitted on command line. If this option exists, the value will be
82           set to 1 automatically.
83
84           While in startup file, use debug=1 to turn on debug output. debug=0
85           to disable it. The value is 0 by default.
86
87       -t threads
88       threads
89           The number of threads opened at the same time. This should be based
90           on the resource avaliable on your system. The number can't be more
91           than 65535. On the other hand, though nocache header is used, run‐
92           ning proxyknife with less threads may give more accurate result.
93           Default: 50.
94
95       -g user_agent
96       user_agent
97           Identified as browsers or other clients.  Default: User-Agent: MSIE
98           6.0
99
100       -I proxyknifetype
101       proxyknifeintype
102           The mode of input. 0: file mode, 1:url mode.  In file mode, prox‐
103           yknife will regard the value of keyword proxyknifein or the argu‐
104           ment after option -i as filenname; otherwise, in url mode, they are
105           parsed as part of URL.  Now only two sites are available in url
106           mode: proxylist.kmip.net/list.html and youth.bupt.edu.cn/proxy/.
107
108           By default, proxyknife will read file proxylist in current direc‐
109           tory in file mode and fetch proxylist from <http://prox
110           ylist.kmip.net/list.html> in url mode.
111
112           Default: 0
113
114       -i proxyknifein
115       proxyknifein
116           The input filename with full path which proxyknife read proxylist
117           from or the url to the proxylist file. Let it be "-" to read from
118           stdin. In url mode, this value can be proxylist.kmip.net/list.html
119           or youth.bupt.edu.cn/proxy/. I haven't try the other sites. In url
120           mode, proxyknife may connect to the web via myproxy, which is based
121           on the value of mytype.  Default: proxylist or prox‐
122           ylist.kmip.net/list.html
123
124       -m mytype
125       mytype
126           The type of myproxy. If enabled, proxyknife will send all request
127           via it. It should be enabled for lan users after a proxy tunnel.
128           The value can be: 1 (HTTP_CONNECT - HTTP proxy without authentica‐
129           tion), 2 (SOCKS5_CONNECT - SOCKS5 proxy without authentication), 5
130           (SOCKS4_CONNECT - SOCKS4 proxy without authentication), 11
131           (HTTP_CONNECT_AUTH - HTTP proxy with basic authentication), 12
132           (SOCKS5_CONNECT_AUTH - SOCKS5 proxy with username/password authen‐
133           tication), 21 (DIRECT - Disabled, connect to testproxy directly).
134           Default: 21
135
136       -h myhost
137       myhost
138           The IPV4 address or host name of myproxy.  This will be in effect
139           only if mytype !=21 Default: NULL[5]
140
141       -p myport
142       myport
143           The port of myproxy.  This will be used if mytype !=21 Default:
144           NULL
145
146       -u myuser
147       myuser
148           The username for myproxy.  This will be used only if mytype=11 or
149           12.  Default: NULL
150
151       -s  mypass
152       mypass
153           The password for myproxy.  This will be used only if mytype=11 or
154           12.  Default: NULL
155
156       -c checksite
157       checksite
158           The site used to check testproxies.  Default:
159           http://www.google.com:80/webhp?hl=en
160
161       -C checkreqin
162       checkreqin
163           The file including the customized request.  Default: NULL
164
165       -k key
166       key The string that should be found in the response after a successful
167           request to the checksite.  Default: 2006 Google
168
169       -r rcvtimeo
170       rcvtimeo
171           The socket receiving timeout in seconds.  Default: 10
172
173       -n sndtimeo
174       sndtimeo
175           The socket sending timeout in seconds.  Default: 5
176
177       -S myconreplysize
178       myconreplysize
179           The size of buffer used to store the reply after sending CONNECT
180           request for testproxy to myproxy.  This is used for some weird
181           proxies. Please leave it intact if unsure.  Default: 256
182
183       -T testconreplysize
184       testconreplysize
185           The size of buffer used to store the reply after sending CONNECT
186           request for checksite to testproxy. It is only be used when you
187           validate HTTP CONNECT proxies. Just as above, do not change it if
188           unsure.  Default: 256
189
190       -G testtagreplysize
191       testtagreplysize
192           The size of buffer used to store the reply after sending GET
193           request to the checksite.  Proxyknife will try to find the key from
194           this buffer.  Default: 65535
195
196       -H httptestmethod
197       httptestmethod
198           The HTTP  method sent to the testproxy. The possible values are 0
199           (HTTP_GET) and 1 (HTTP_CONNECT) now. If you need a HTTP proxy sup‐
200           porting CONNECT, just set it to 1.  Default: 0
201
202       -5 socks5testmethod
203       socks5testmethod
204           The socks5 command used in the interaction with the testproxy. Only
205           2(SOCKS5_CONNECT) is implemented. You should leave it intact now.
206           Default: 2
207
208       -4 socks4testmethod
209       socks4testmethod
210           The socks4 command used in the interaction with the testproxy. Only
211           5(SOCKS4_CONNECT) is implemented. You should leave it intact now.
212           Default: 5
213
214       -l logfilename
215       logfilename
216           The logfile with full path. If you prefer screen output, use a sin‐
217           gle . (. is just before LF) to leave stderr as it is:
218
219                   proxyknife -l .
220
221           or add this to startup file:
222
223                   logfilename=.
224
225           If you want to see it later:
226
227                   proxyknife -l ./proxyknife.log
228
229           or add this to startup file:
230
231                   logfilename=./proxyknife.log
232
233           Default: proxyknife.log
234
235       -o proxyknifeout
236       proxyknifeout
237           The output file with full path. Proxyknife print result to this
238           file. If you do not specify it, proxyknife will use a file named
239           proxyout in the current directory. If this file do not exists,
240           proxyknife will creat it. Otherwise, it will be overridden.
241           Default: proxyout
242

FILES

244       /etc/proxyknife.conf
245           Default location of the global startup file
246
247       $HOME/.wgetrc
248           User startup file
249
250       ./proxyknife.conf
251           Session startup file
252
253       ./proxylist
254           Default location of the proxylist file
255
256       ./proxyout
257           Default location of the result file
258
259       ./proxyknife.log
260           Default location of the logfile
261

FOOTNOTES

263       1.  The list of free proxies.
264
265       3.  $prefix is the argument passed to the configure script: ./configure
266           --prefix=/some/path. Tt is / by default.
267
268       5.  In this section, NULL means there is no default value for that key‐
269           word.
270

SEE ALSO

272       GNU Info entry for proxyknife.
273

AUTHOR

275       Written by Jia Wang <skyroam@gmail.com>.
276
278       Copyright (c)  2005, 2006, 2007  Jia Wang
279
280       Permission is granted to copy, distribute and/or modify this document
281       under the terms of the GNU Free Documentation License, Version 1.2 or
282       any later version published by the Free Software Foundation; with no
283       Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.  A
284       copy of the license is included in the section entitled "GNU Free Docu‐
285       mentation License".
286
287
288
289GNU Proxyknife 1.7                2007-11-09                     PROXYKNIFE(1)
Impressum