HTTP isteklerini SOCKS5'e dönüştürün


46

Şu anda TOR ile bazı test çalışmaları yapıyorum ve küçük bir sorunla karşılaştım. Tor'un müşterisi yalnızca SOCKS5 protokolü üzerinden bağlantı almayı destekler, ancak kullandığım uygulamalar yalnızca HTTP Proxy Protokollerini destekler.

Ortaya bir şey koymak mümkün mü? Böylece örneğin gitti.

Programım (Yalnızca HTTP)> SOCKS Dönüştürücüye HTTP> Tor SOCKS5 Sunucu


Proxy'leri desteklemeye gerek kalmadan tüm trafiği Tor üzerinden şeffaf bir şekilde yönlendiren bir işletim sistemi (örn. Tails ve Whonix) kullanabilirsiniz. Bu aynı zamanda DNS sızıntıları ve diğer Tor atlama risklerini de büyük ölçüde azaltır.
CodesInChaos

Yanıtlar:


44

DeleGate bunu, aşağıdaki gibi bir şeyle yapabilir (DeleGate 8080 portundaki HTTP bağlantılarını kabul eder ve 9050 portundaki SOCKS sunucusuna iletir):

delegated -P8080 SERVER=http SOCKS=localhost:9050

@ Dboy1612: Bu kullanım durumu için yetki verilmiş olan deneyimlerinizden bahseder misiniz? Benim de aynı kullanım durumum var.
pradeepchhetri

Harika bir araç. Yeni sürüm (v9.9.9) son zamanlarda piyasaya sürüldü.
kev

1
İndirme VE yükleme sırasında neden bir e-posta adresi gerektirdiği hakkında bir fikrin var mı?
Halil Özgür

2
@pradeepchhetri Bir gününü oynayarak geçirdikten sonra delegate(d), yapılandırma dokümantasyonundaki birçok çelişkili iddiaya rağmen kesinlikle DNS isteklerini sızdırmaya kararlı olduğuna karar verdim. Bu konuda yanıldığımı keşfetmeyi çok isterdim, ama bu konuda karamsarım.
Adam Mackler

Harika çalışıyor
kedi

9

Tor paketinde artık polipo yok, işte resmi tor'dan SSS :

Geçmişte, Tor paketleri, yalnızca Firefox'ta Firefox 6'da düzeltilen bir hatayı gidermek için Privoxy veya Polipo gibi bir HTTP proxy'si içeriyordu. Torbutton, Firefox'un web siteleriyle etkileşimi üzerinde daha iyi bir kontrol sahibi olduğu için sizi daha güvenli kılar.

Tor ile bazı harici uygulamalar kullanmaya çalışıyorsanız, sıfır adım, vidalayabileceğiniz yollar için uyarılar dizisini yeniden okumak olmalıdır. Birinci adım, http proxy yerine Socks proxy'sini kullanmaya çalışmak olmalı - Tor, Windows'ta 9050 numaralı bağlantı noktasında bir Socks proxy'sini çalıştırıyor veya OSX ve Linux için yukarıya bakın .

Bu başarısız olursa, privoxy yüklemek için çekinmeyin . Ancak, bu yaklaşımın acemi kullanıcılar için önerilmediğini lütfen unutmayın. Privoxy, Tor ve Privoxy'nin örnek bir yapılandırmasına sahiptir .


1
Benim için çalıştı tnx!
Hikari

7

Privoxy de kullanabilirsiniz . Bu satırı kendi config.txtdosyasına ekle :

forward-socks5 / 127.0.0.1:9050 .

(Sonundaki küçük noktayı unutma.)

Daha sonra adresindeki HTTP veya HTTPS proxy’ini kullanın. 127.0.0.1:8118


harika ve kolay bir yol. teşekkür ederim. bir cazibe gibi çalışır
iraj jelodari

5

Bir işletim sistemi belirtmediniz. Lütfen gelecekte bunu yapın.


Bu cevap, Tor projesi tarafından barındırılan Vidalia paketine dahil olan ve bu nedenle muhtemelen Windows tarafından önerilen Polipo'yu önerir. Polipo ayrıca * nix versiyonuna sahiptir (ve aslında * nix için tasarlanmıştır), bu yüzden nasıl kurulacağına dair talimatlar ekledim - aşağıdaki ikinci bölüme bakınız. Önemliyse, oldukça hafif bir çözümdür.


pencereler

Vidalia paketini indirin. Vidalia GUI ve Polipo adında bir program ve Tor ile birlikte. Paketteki Polipo, varsayılan olarak 9050 numaralı bağlantı noktasındaki Tor SOCKS proxy'si üzerinden yönlendiren, 8118 numaralı bağlantı noktasında bir HTTP proxy çalıştırır.

Gelişmiş kurulum

Polipo'yu Vidalia paketi olmadan manuel olarak yapılandırmak da mümkündür.

Alındığı http://www.pps.jussieu.fr/~jch/software/polipo/tor.html

Ayrıca indirmeniz gereken ikili dosyaları sağlarlar.

Yapılandırma

Polipo, Polipo'nun düz bir metin dosyası olan yapılandırma dosyasında bir dizi yapılandırma değişkeni ayarlayarak yapılandırılır. Polipo'ya tor kullanmasını ve alınan disk sayfalarını önbelleğe almamasını söylemek için, yapılandırma dosyanıza aşağıdaki satırları eklemek isteyeceksiniz:

socksParentProxy = localhost:9050
diskCacheRoot=""

Kendinizi tarayıcı açıklarından korumak için yerel yapılandırma arayüzünü devre dışı bırakmak isteyeceksiniz:

disableLocalInterface=true

Çalıştırılıyor

Polipo'yu çalıştırırken, Polipo'nun komut satırında -c bayrağını kullanarak, yapılandırma dosyasının yerini belirtmelisiniz:

> polipo.exe -c "/Program Files/Polipo/config.txt"

Windows altında bile, dosya adı için Unix sözdizimini kullanmanız gerektiğini (eğik çizgiler kullanarak) ve kullanmak için bir aygıt (“sürücü”) belirtemeyeceğinizi unutmayın.

Polipo varsayılan dinleme portu 8123'tür.

Vidalia paketindeki varsayılan yapılandırma bu cevabın en altında bulunur.


* nix

Linux (Linux), Unix, BSD, OS X, NT (Windows) tabanlı olmayan en büyük modern (2012) işletim sistemlerini içerir.

Bir kez daha, http://www.pps.jussieu.fr/~jch/software/polipo/tor.html adresinden alınmıştır.

Kullandığınız depodan bir paket indirin. Google burada yardımcı olabilir. Alternatif olarak, doğrudan bir ikili dosya indirilebilir.

Yapılandırma

Polipo, Polipo'nun konfigürasyon dosyasında , hangisi ~/.polipoveya /etc/polipo/confighangisi varsa, birkaç konfigürasyon değişkeni ayarlayarak konfigüre edilir . Polipo'ya tor kullanmasını ve alınan disk sayfalarını önbelleğe almamasını söylemek için, yapılandırma dosyanıza aşağıdaki satırları eklemek isteyeceksiniz:

socksParentProxy = localhost:9050
diskCacheRoot=""

Kendinizi tarayıcı açıklarından korumak için yerel yapılandırma arayüzünü devre dışı bırakmak isteyeceksiniz:

disableLocalInterface=true

Yapılandırma dosyası için farklı bir konum belirlemek istiyorsanız, bunu polipo'nun komut satırındaki -c bayrağını kullanarak belirleyebilirsiniz.

Polipo'yu dağıtım tarafından sağlanan bir ikili dosyadan yüklediyseniz, muhtemelen ~ / .polipo'yu hesaba katmayacağınızı unutmayın - / etc / polipo / config düzenlemelisiniz.

Çalıştırılıyor

Polipo'yu dağıtım tarafından sağlanan bir paketten yüklediyseniz, Polipo muhtemelen zaten çalışıyordur; yeniden başlatmanız gerekecek, böylece yeni yapılandırmasını hesaba katacaktır. Aksi takdirde, ücretsiz bir terminal penceresi alın ve şunu yazın:

$ polipo

Polipo'nun yapılandırma dosyası için standart olmayan bir konum kullanıyorsanız, komut satırında belirtin, örneğin:

$ polipo -c "/Program Files/Polipo/config.txt"

Polipo varsayılan dinleme portu 8123'tür.

Vidalia paketindeki varsayılan yapılandırma bu cevabın en altında bulunur.


Varsayılan Polipo config (Vidalia paketi)

Bu benim Windows için Vidalia paketindeki varsayılan Polipo yapılandırmam. Görünüşünden, * nix'te de çalışması gerekiyor - söyleyebileceğim kadarıyla hiçbir platform yok. Evet, bir IPv4 yapılandırmasıdır.

### $Id$
#
### Basic configuration
### *******************

# Uncomment one of these if you want to allow remote clients to
# connect:

# proxyAddress = "::0"        # both IPv4 and IPv6
# proxyAddress = "0.0.0.0"    # IPv4 only

proxyAddress = "127.0.0.1"
proxyPort = 8118

# If you do that, you'll want to restrict the set of hosts allowed to
# connect:

# allowedClients = "127.0.0.1, 134.157.168.57"
# allowedClients = "127.0.0.1, 134.157.168.0/24"

allowedClients = 127.0.0.1
allowedPorts = 1-65535

# Uncomment this if you want your Polipo to identify itself by
# something else than the host name:

proxyName = "localhost"

# Uncomment this if there's only one user using this instance of Polipo:

cacheIsShared = false

# Uncomment this if you want to use a parent proxy:

# parentProxy = "squid.example.org:3128"

# Uncomment this if you want to use a parent SOCKS proxy:

socksParentProxy = "localhost:9050"
socksProxyType = socks5


### Memory
### ******

# Uncomment this if you want Polipo to use a ridiculously small amount
# of memory (a hundred C-64 worth or so):

# chunkHighMark = 819200
# objectHighMark = 128

# Uncomment this if you've got plenty of memory:

# chunkHighMark = 50331648
# objectHighMark = 16384

chunkHighMark = 33554432

### On-disk data
### ************

# Uncomment this if you want to disable the on-disk cache:

diskCacheRoot = ""

# Uncomment this if you want to put the on-disk cache in a
# non-standard location:

# diskCacheRoot = "~/.polipo-cache/"

# Uncomment this if you want to disable the local web server:

localDocumentRoot = ""

# Uncomment this if you want to enable the pages under /polipo/index?
# and /polipo/servers?.  This is a serious privacy leak if your proxy
# is shared.

# disableIndexing = false
# disableServersList = false

disableLocalInterface = true
disableConfiguration = true

### Domain Name System
### ******************

# Uncomment this if you want to contact IPv4 hosts only (and make DNS
# queries somewhat faster):
#
# dnsQueryIPv6 = no

# Uncomment this if you want Polipo to prefer IPv4 to IPv6 for
# double-stack hosts:
#
# dnsQueryIPv6 = reluctantly

# Uncomment this to disable Polipo's DNS resolver and use the system's
# default resolver instead.  If you do that, Polipo will freeze during
# every DNS query:

dnsUseGethostbyname = yes


### HTTP
### ****

# Uncomment this if you want to enable detection of proxy loops.
# This will cause your hostname (or whatever you put into proxyName
# above) to be included in every request:

disableVia = true

# Uncomment this if you want to slightly reduce the amount of
# information that you leak about yourself:

# censoredHeaders = from, accept-language
# censorReferer = maybe

censoredHeaders = from,accept-language,x-pad,link
censorReferer = maybe

# Uncomment this if you're paranoid.  This will break a lot of sites,
# though:

# censoredHeaders = set-cookie, cookie, cookie2, from, accept-language
# censorReferer = true

# Uncomment this if you want to use Poor Man's Multiplexing; increase
# the sizes if you're on a fast line.  They should each amount to a few
# seconds' worth of transfer; if pmmSize is small, you'll want
# pmmFirstSize to be larger.

# Note that PMM is somewhat unreliable.

# pmmFirstSize = 16384
# pmmSize = 8192

# Uncomment this if your user-agent does something reasonable with
# Warning headers (most don't):

# relaxTransparency = maybe

# Uncomment this if you never want to revalidate instances for which
# data is available (this is not a good idea):

# relaxTransparency = yes

# Uncomment this if you have no network:

# proxyOffline = yes

# Uncomment this if you want to avoid revalidating instances with a
# Vary header (this is not a good idea):

# mindlesslyCacheVary = true

# Suggestions from Incognito configuration
maxConnectionAge = 5m
maxConnectionRequests = 120
serverMaxSlots = 8
serverSlots = 2
tunnelAllowedPorts = 1-65535

Mac OS X 10.6'da polipo kullanıyorum. Bazen POST istekleri yaparken bazı problemler var gibi görünüyor. Resmi polipo sitesi burada ve burada .
Siu Ching Pong -Asuka Kenji-

Ayrıca Windows'ta 3 proxy kullanıyorum. SSH tünelimi (SOCKS5), SOCKS'ü desteklemeyen programlar için bir HTTP proxy'sine dönüştürmek için kullanıyorum. 3 proxy, Ruslar tarafından geliştirilmiştir. Açık kaynaklı. Resmi site burada ve SourceForge projesi burada (resmi site kadar güncel değil).
Siu Ching Pong - Asuka Kenji -

2

Fiddler ayrıca http isteğinden bir çorap tünel isteğine dönüşüm sağlar.

Bunu bazı Windows Güncellemelerini çorap bağlantısıyla (Amazon EC2 ve Putty aracılığıyla) zorlamak için yaptım.

Bu sayfadan https://groups.google.com/forum/#!topic/httpfiddler/6m2xEe0fRmw

Fiddler'da, aşağıdakileri ekleyebileceğiniz bir "FiddlerScript" sekmesi vardır:

X-OverrideGatewayBayrağı kullanarak, socks=> Fiddler'in yukarı akış sunucusuyla konuşurken SOCKS v4a protokolünü kullanması gerektiğini belirtmek için öneki kullanın.

Örneğin, TOR yükleyicisi Polipo adlı 9150 numaralı bağlantı noktasında SOCKS proxy kullanarak TOR ağına bir giriş noktası kurar. Test.example.com'a OnBeforeRequestherhangi bir isteği TOR ağı üzerinden yönlendirmek için FiddlerScript'in yöntemine aşağıdakini ekleyebilirsiniz :

    if (oSession.HostnameIs("test.example.com")) {
      oSession["x-OverrideGateway"] = "socks=127.0.0.1:9150";    
  }

Bunun yerine tüm trafiği SOCKS üzerinden göndermeyi tercih ederseniz, X-OverrideGatewaybayrağı her Oturum için koşulsuz olarak ayarlayabilirsiniz .


0

WinGate de bunu yapabilir. WWW proxy’nizdeki Bağlantı sekmesini kontrol edin; akış yukarı SOCKS4, SOCKS4a veya HTTP proxy’yi seçebilirsiniz.

WinGate ayrıca 10 eşzamanlı kullanıcı için ücretsiz lisansa sahiptir.

WWW Proxy Bağlantısı sekmesi

Yasal Uyarı: WinGate'in yazarı olan Qbik için çalışıyorum

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.