1. # proxychains.conf VER 4.x
  2. #
  3. # HTTP, SOCKS4a, SOCKS5 tunneling proxifier with DNS.
  4. # The option below identifies how the ProxyList is treated.
  5. # only one option should be uncommented at time,
  6. # otherwise the last appearing option will be accepted
  7. #
  8. dynamic_chain
  9. #
  10. # Dynamic - Each connection will be done via chained proxies
  11. # all proxies chained in the order as they appear in the list
  12. # at least one proxy must be online to play in chain
  13. # (dead proxies are skipped)
  14. # otherwise EINTR is returned to the app
  15. #
  16. strict_chain
  17. #
  18. # Strict - Each connection will be done via chained proxies
  19. # all proxies chained in the order as they appear in the list
  20. # all proxies must be online to play in chain
  21. # otherwise EINTR is returned to the app
  22. #
  23. #round_robin_chain
  24. #
  25. # Round Robin - Each connection will be done via chained proxies
  26. # of chain_len length
  27. # all proxies chained in the order as they appear in the list
  28. # at least one proxy must be online to play in chain
  29. # (dead proxies are skipped).
  30. # the start of the current proxy chain is the proxy after the last
  31. # proxy in the previously invoked proxy chain.
  32. # if the end of the proxy chain is reached while looking for proxies
  33. # start at the beginning again.
  34. # otherwise EINTR is returned to the app
  35. # These semantics are not guaranteed in a multithreaded environment.
  36. #
  37. #random_chain
  38. #
  39. # Random - Each connection will be done via random proxy
  40. # (or proxy chain, see chain_len) from the list.
  41. # this option is good to test your IDS :)
  42. # Make sense only if random_chain or round_robin_chain
  43. #chain_len = 2
  44. # Quiet mode (no output from library)
  45. #quiet_mode
  46. ## Proxy DNS requests - no leak for DNS data
  47. # (disable all of the 3 items below to not proxy your DNS requests)
  48. # method 1. this uses the proxychains4 style method to do remote dns:
  49. # a thread is spawned that serves DNS requests and hands down an ip
  50. # assigned from an internal list (via remote_dns_subnet).
  51. # this is the easiest (setup-wise) and fastest method, however on
  52. # systems with buggy libcs and very complex software like webbrowsers
  53. # this might not work and/or cause crashes.
  54. proxy_dns
  55. # method 2. use the old proxyresolv script to proxy DNS requests
  56. # in proxychains 3.1 style. requires `proxyresolv` in $PATH
  57. # plus a dynamically linked `dig` binary.
  58. # this is a lot slower than `proxy_dns`, doesn't support .onion URLs,
  59. # but might be more compatible with complex software like webbrowsers.
  60. #proxy_dns_old
  61. # method 3. use proxychains4-daemon process to serve remote DNS requests.
  62. # this is similar to the threaded `proxy_dns` method, however it requires
  63. # that proxychains4-daemon is already running on the specified address.
  64. # on the plus side it doesn't do malloc/threads so it should be quite
  65. # compatible with complex, async-unsafe software.
  66. # note that if you don't start proxychains4-daemon before using this,
  67. # the process will simply hang.
  68. #proxy_dns_daemon 127.0.0.1:1053
  69. # set the class A subnet number to use for the internal remote DNS mapping
  70. # we use the reserved 224.x.x.x range by default,
  71. # if the proxified app does a DNS request, we will return an IP from that range.
  72. # on further accesses to this ip we will send the saved DNS name to the proxy.
  73. # in case some control-freak app checks the returned ip, and denies to
  74. # connect, you can use another subnet, e.g. 10.x.x.x or 127.x.x.x.
  75. # of course you should make sure that the proxified app does not need
  76. # *real* access to this subnet.
  77. # i.e. dont use the same subnet then in the localnet section
  78. #remote_dns_subnet 127
  79. #remote_dns_subnet 10
  80. remote_dns_subnet 224
  81. # Some timeouts in milliseconds
  82. tcp_read_time_out 15000
  83. tcp_connect_time_out 8000
  84. ### Examples for localnet exclusion
  85. ## localnet ranges will *not* use a proxy to connect.
  86. ## note that localnet works only when plain IP addresses are passed to the app,
  87. ## the hostname resolves via /etc/hosts, or proxy_dns is disabled or proxy_dns_old used.
  88. ## Exclude connections to 192.168.1.0/24 with port 80
  89. # localnet 192.168.1.0:80/255.255.255.0
  90. ## Exclude connections to 192.168.100.0/24
  91. # localnet 192.168.100.0/255.255.255.0
  92. ## Exclude connections to ANYwhere with port 80
  93. # localnet 0.0.0.0:80/0.0.0.0
  94. # localnet [::]:80/0
  95. ## RFC6890 Loopback address range
  96. ## if you enable this, you have to make sure remote_dns_subnet is not 127
  97. ## you'll need to enable it if you want to use an application that
  98. ## connects to localhost.
  99. # localnet 127.0.0.0/255.0.0.0
  100. # localnet ::1/128
  101. ## RFC1918 Private Address Ranges
  102. # localnet 10.0.0.0/255.0.0.0
  103. # localnet 172.16.0.0/255.240.0.0
  104. # localnet 192.168.0.0/255.255.0.0
  105. ### Examples for dnat
  106. ## Trying to proxy connections to destinations which are dnatted,
  107. ## will result in proxying connections to the new given destinations.
  108. ## Whenever I connect to 1.1.1.1 on port 1234 actually connect to 1.1.1.2 on port 443
  109. # dnat 1.1.1.1:1234 1.1.1.2:443
  110. ## Whenever I connect to 1.1.1.1 on port 443 actually connect to 1.1.1.2 on port 443
  111. ## (no need to write :443 again)
  112. # dnat 1.1.1.2:443 1.1.1.2
  113. ## No matter what port I connect to on 1.1.1.1 port actually connect to 1.1.1.2 on port 443
  114. # dnat 1.1.1.1 1.1.1.2:443
  115. ## Always, instead of connecting to 1.1.1.1, connect to 1.1.1.2
  116. # dnat 1.1.1.1 1.1.1.2
  117. # ProxyList format
  118. # type ip port [user pass]
  119. # (values separated by 'tab' or 'blank')
  120. #
  121. # only numeric ipv4 addresses are valid
  122. #
  123. #
  124. # Examples:
  125. #
  126. # socks5 192.168.67.78 1080 lamer secret
  127. # http 192.168.89.3 8080 justu hidden
  128. # socks4 192.168.1.49 1080
  129. # http 192.168.39.93 8080
  130. #
  131. #
  132. # proxy types: http, socks4, socks5, raw
  133. # * raw: The traffic is simply forwarded to the proxy without modification.
  134. # ( auth types supported: "basic"-http "user/pass"-socks )
  135. #
  136. [ProxyList]
  137. # add proxy here ...
  138. # meanwile
  139. # defaults set to "tor"
  140. socks5 127.0.0.1 12334