mirror of
				https://github.com/rofl0r/proxychains-ng.git
				synced 2025-11-04 09:06:05 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			175 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			175 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
ProxyChains-NG ver 4.8 README
 | 
						|
=============================
 | 
						|
 | 
						|
  ProxyChains is a UNIX program, that hooks network-related libc functions
 | 
						|
  in DYNAMICALLY LINKED programs via a preloaded DLL (dlsym(), LD_PRELOAD)
 | 
						|
  and redirects the connections through SOCKS4a/5 or HTTP proxies.
 | 
						|
  It supports TCP only (no UDP/ICMP etc).
 | 
						|
 | 
						|
  The way it works is basically a HACK; so it is possible that it doesn't
 | 
						|
  work with your program, especially when it's a script, or starts 
 | 
						|
  numerous processes like background daemons or uses dlopen() to load
 | 
						|
  "modules" (bug in glibc dynlinker).
 | 
						|
  It should work with simple compiled (C/C++) dynamically linked programs
 | 
						|
  though.
 | 
						|
 | 
						|
  If your program doesn't work with proxychains, consider using an 
 | 
						|
  iptables based solution instead; this is much more robust.
 | 
						|
 | 
						|
  Supported Platforms: Linux, BSD, Mac.
 | 
						|
 | 
						|
 | 
						|
*********** ATTENTION ***********
 | 
						|
 | 
						|
  this program can be used to circumvent censorship.
 | 
						|
  doing so can be VERY DANGEROUS in certain countries.
 | 
						|
 | 
						|
  ALWAYS MAKE SURE THAT PROXYCHAINS WORKS AS EXPECTED
 | 
						|
  BEFORE USING IT FOR ANYTHING SERIOUS.
 | 
						|
 | 
						|
  this involves both the program and the proxy that you're going to
 | 
						|
  use.
 | 
						|
 | 
						|
  for example, you can connect to some "what is my ip" service
 | 
						|
  like ifconfig.me to make sure that it's not using your real ip.
 | 
						|
 | 
						|
  ONLY USE PROXYCHAINS IF YOU KNOW WHAT YOU'RE DOING.
 | 
						|
 | 
						|
  THE AUTHORS AND MAINTAINERS OF PROXYCHAINS DO NOT TAKE ANY 
 | 
						|
  RESPONSIBILITY FOR ANY ABUSE OR MISUSE OF THIS SOFTWARE AND 
 | 
						|
  THE RESULTING CONSEQUENCES.
 | 
						|
 | 
						|
*** Installation ***
 | 
						|
 | 
						|
  # needs a working C compiler, preferably gcc
 | 
						|
  ./configure --prefix=/usr --sysconfdir=/etc
 | 
						|
  make
 | 
						|
  [optional] sudo make install
 | 
						|
  [optional] sudo make install-config (installs proxychains.conf)
 | 
						|
 | 
						|
  if you dont install, you can use proxychains from the build directory
 | 
						|
  like this: ./proxychains4 -f src/proxychains.conf telnet google.com 80
 | 
						|
 | 
						|
Changelog:
 | 
						|
----------
 | 
						|
Version 4.8:
 | 
						|
- fix for odd cornercase where getaddrinfo was used with AI_NUMERICHOST
 | 
						|
  to test for a numeric ip instead of resolving it (fixes nmap).
 | 
						|
 | 
						|
Version 4.7:
 | 
						|
- new round_robin chaintype by crass.
 | 
						|
- fix bug with lazy allocation when GCC constructor was not used.
 | 
						|
- new configure flag --fat-binary to create a "fat" binary/library on OS X
 | 
						|
- return EBADF rather than EINTR in close hook. 
 | 
						|
  it's legal for a program to retry close() calls when they receive
 | 
						|
  EINTR, which could cause an infinite loop, as seen in chromium.
 | 
						|
Version 4.6:
 | 
						|
- some cosmetic fixes to Makefile, fix a bug when non-numeric ip was
 | 
						|
  user as proxy server address.
 | 
						|
Version 4.5:
 | 
						|
- hook close() to prevent OpenSSH from messing with internal infrastructure.
 | 
						|
  this caused ssh client to segfault when proxified.
 | 
						|
 | 
						|
Version 4.4:
 | 
						|
- FreeBSD port
 | 
						|
- fixes some installation issues on Debian and Mac.
 | 
						|
 | 
						|
Version 4.3:
 | 
						|
- fixes programs that do dns-lookups in child processes (fork()ed),
 | 
						|
  like irssi. to achieve this, support for compilation without pthreads
 | 
						|
  was sacrified.
 | 
						|
- fixes thread safety for gethostent() calls.
 | 
						|
- improved DNS handling speed, since hostent db is cached.
 | 
						|
 | 
						|
Version 4.2:
 | 
						|
- fixes compilation issues with ubuntu 12.04 toolchain
 | 
						|
- fixes segfault in rare codepath
 | 
						|
 | 
						|
Version 4.1 
 | 
						|
- support for mac os x (all archs)
 | 
						|
- all internal functions are threadsafe when compiled with -DTHREAD_SAFE 
 | 
						|
  (default).
 | 
						|
 | 
						|
Version 4.0
 | 
						|
- replaced dnsresolver script (which required a dynamically linked "dig" 
 | 
						|
  binary to be present) with remote DNS lookup.
 | 
						|
  this speeds up any operation involving DNS, as the old script had to use TCP.
 | 
						|
  additionally it allows to use .onion urls when used with TOR.
 | 
						|
- removed broken autoconf build system with a simple Makefile.
 | 
						|
  there's a ./configure script though for convenience.
 | 
						|
  it also adds support for a config file passed via command line switches/
 | 
						|
  environment variables.
 | 
						|
 | 
						|
Version 3.0
 | 
						|
- support for DNS resolving through proxy 
 | 
						|
  supports SOCKS4, SOCKS5 and HTTP CONNECT proxy servers.
 | 
						|
  Auth-types: socks - "user/pass" , http - "basic".
 | 
						|
 | 
						|
When to use it ?
 | 
						|
1) When the only way to get "outside" from your LAN is through proxy server.
 | 
						|
2) To get out from behind restrictive firewall which filters outgoing ports.
 | 
						|
3) To use two (or more) proxies in chain:
 | 
						|
	like: your_host <--> proxy1 <--> proxy2 <--> target_host
 | 
						|
4) To "proxify" some program with no proxy support built-in (like telnet)
 | 
						|
5) Access intranet from outside via proxy.
 | 
						|
6) To use DNS behind proxy.
 | 
						|
7) To access hidden tor onion services.
 | 
						|
 | 
						|
Some cool features:
 | 
						|
 | 
						|
* This program can mix different proxy types in the same chain
 | 
						|
	like: your_host <-->socks5 <--> http <--> socks4 <--> target_host
 | 
						|
* Different chaining options supported
 | 
						|
	random order from the list ( user defined length of chain ).
 | 
						|
	exact order  (as they appear in the list )
 | 
						|
	dynamic order (smart exclude dead proxies from chain)
 | 
						|
* You can use it with most TCP client applications, possibly even network 
 | 
						|
	scanners, as long as they use standard libc functionality.
 | 
						|
	pcap based scanning does not work.
 | 
						|
* You can use it with servers, like squid, sendmail, or whatever.
 | 
						|
* DNS resolving through proxy.
 | 
						|
 | 
						|
 | 
						|
Configuration:
 | 
						|
--------------
 | 
						|
 | 
						|
proxychains looks for config file in following order:
 | 
						|
1)	file listed in environment variable PROXYCHAINS_CONF_FILE or
 | 
						|
	provided as a -f argument to proxychains script or binary.
 | 
						|
2)	./proxychains.conf
 | 
						|
3)	$(HOME)/.proxychains/proxychains.conf
 | 
						|
4)	$(sysconfdir)/proxychains.conf  **
 | 
						|
 | 
						|
** usually /etc/proxychains.conf
 | 
						|
 | 
						|
Usage Example:
 | 
						|
 | 
						|
	$ proxychains telnet targethost.com
 | 
						|
 | 
						|
in this example it will run telnet through proxy(or chained proxies)
 | 
						|
specified by proxychains.conf
 | 
						|
 | 
						|
Usage Example:
 | 
						|
 | 
						|
      	$ proxychains -f /etc/proxychains-other.conf targethost2.com
 | 
						|
 | 
						|
in this example it will use different configuration file then proxychains.conf 
 | 
						|
to connect to targethost2.com host.
 | 
						|
 | 
						|
Usage Example:
 | 
						|
 | 
						|
	$ proxyresolv targethost.com
 | 
						|
 | 
						|
in this example it will resolve targethost.com through proxy(or chained proxies)
 | 
						|
specified by proxychains.conf
 | 
						|
 | 
						|
Community:
 | 
						|
----------
 | 
						|
#proxychains on irc.freenode.net
 | 
						|
 | 
						|
Donations:
 | 
						|
----------
 | 
						|
bitcoins donations are welcome - please send to this address:
 | 
						|
1C9LBpuy56veBqw5N33sZMoZW8mwCw3tPh
 | 
						|
 |