Tor provides a SOCKS proxy by default.
Whatever you've configured to use Tor is trying to use it as an HTTP proxy which is a different kind of proxy protocol.
Tor (at least as of 0.3.2.x) can provide an HTTPTunnelPort which provides an HTTP CONNECT proxy interface. If the application is capable of using an HTTP connect proxy (instead of a transparent HTTP ...
Currently the only safe web browser to use with Tor is Tor Browser. Tor Browser is based on Firefox but incorporates changes which are necessary to protect against profiling attacks. Many of the modifications which are needed are performed by the Torbutton Firefox add-on but other changes have to be made at the code level.
It would be nice if Chrome was an ...
The main problem seems the port you are using. According to your command you're using port 9150 which is used by Tor Browser Bundle. If the bundle is closed, this port is not open.
In the default configuration Tor uses port 9050 as SocksPort:
curl --socks5-hostname 127.0.0.1:9050 https://www.torproject.org/
curl -x socks5h://127.0.0.1:9050/ https://...
Moreover, you should use torsocks - built-in utility for working with Tor Network.
It is designed to prevent any leakage! Please, read the man page.
root@localhost:/# torsocks curl XXXXXXXXXXXXXXX.onion
Otherwise, if you are trying to resolve .onion name to IPv6, you are able to use tor-resolve utility, it is built-in too:
This is a known bug in Vidalia (soon to be replaced by Tor Launcher). When you modify some settings in Vidalia it writes an incorrect SocksPort in the torrc file (9050) which will break the proxy between Tor and Tor Browser (Proxy server is refusing connection).
You can fix this by navigating to your Tor browser folder then open Data/Tor/torrc with notepad ...
What is happening is that Tor is returning the SOCKS error code SOCKS5_TTL_EXPIRED (0x06) as a result of a stream being closed for reason END_STREAM_REASON_TIMEOUT. There are many potential reasons why this might be happening but to find out which stream is timing out, and why, you should try enabling logging at level INFO.
Most likely, the circuit you are ...
Yes. Tor acts as a filter in a way, encrypting and pumping into the tor network any communications sent through its proxy port of 127.0.0.1:9150. Any browser using this port correctly will have its connection torified, and check.torproject.org will show a green onion if the browser is configured correctly.
Warning: Tor will only torify connections sent to ...
One technique is to firewall your computer off so it can only communicate through Tor, and then use the application, watching your firewall logs.
Set up a Tor bridge on another host in your network/on the internet.
Boot your client/testing machine from a LiveCD.
Install Tor on your client, have it point to the bridge.
Use a firewall such as shorewall or ...
Proxy SwitchySharp supports SOCKS.
Here's an article on How to browse the web anonymously with Google Chrome in Linux that covers configuration in detail.
Note that there are some security holes when using this method to browse via Tor in Chrome, including but possibly/probably not limited to:
By default your DNS lookups will leak.
To avoid this you must ...
As @cacahuatl said you can use that switch, if you want it to be permanent go to /etc/tor/torrc (This is the path for tor config file in Ubuntu and Debian), open it with your favorite text editor and add HTTPTunnelPort 9080 at the end of the file, reset tor service with this command:
sudo service tor restart
and you're done.
I've just tested this in a CrunchBang 11 x64 VM. It should work in Ubuntu and the rest of the Debian family. First install Wireshark, by opening a terminal and running these commands:
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install wireshark
To configure wireshark to allow a non-root user to sniff packets, run
You can try out commenting all SocksPorts and ControlPorts, then setting SocksPort 0 and ControlPort 0 in torrc. When Tor is able to connect, then there is a chance, although it requires programming skills. Socks is just an interface for browsers (TBB's Firefox) to communicate with Tor. If you (or pay someone) could teach Tor and Firefox to communicate using ...
Unfortunately, neither method is completely foolproof.
With SOCKS, the application may implement socks proxy support in a way that leaks DNS requests; you need to verify that the program delegates DNS lookups to the proxy (i.e. Tor), rather than handling its own DNS requests.
With a HTTP proxy, the some proxies may insert headers that could be used to ...
This isn't a good idea.
TCPCrypt is, and I can't stress this enough, absolute trash.
It provides no protection against an active MITM attacker, it's not authenticated.
The remote party too must support TCPCrypt, otherwise it won't work.
Any remote party could just use TLS or an onion service and gain greater protection than that offered by TCPCrypt.
As logforme noted the OP also opened a thread on tor-talk. I summarize the answer here:
The SocksPort is closed using the settings noted in the question. Furthermore the OP set a DROP rule in his packet filter.
However there was a special botnet active. The Rotpoi$on net targets Tor relays. Kent Backman maintains a FAQ on Rotpoi$on and writes:
When it ...
You're almost there, you're replacing socket.socket with socks.socket, so far so good.
However upon assignment of variable s, you're not properly instantiating the replacement class, and therefore later during the connect call, your code results in the unbound method type error.
In your original code, s gets assigned a class instance, and in your updated ...
This works for me:
socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, "127.0.0.1", 9050, True)
s = socks.socksocket()
So, that's just initializing s differently, via s = socks.socksocket().
With socks, connect() also takes a hostname. This ...
If I use Tor browser bundle for windows, other browsers are not automatically torified, so, to torify other browsers, you will have to use ADVTor: http://sourceforge.net/projects/advtor/
there is an option to run specific application through ADVtor software.
Maybe it is different in linux, but as far as I know, here are some explanations: https://trac....
You can run a single Tor daemon, but configure it to open multiple SocksPort (and/or TransPort & DNSPort) listeners. Applications that connect to different listener ports will use isolated circuits if your Tor version is 0.2.4 or higher.
The general consensus about guard nodes seems to be that the Tor client daemon already selects too many, and a ...
This option is for setting the proxy port Tor uses. When you start the Tor Browser Bundle an instance of Tor will also be started. This is what you see listening on Port 9150 and where by default the Tor Browser would connect.
What service is running on port 9956?
If you start another instance of Tor on port 9956, you really don't need to.
If you have ...
What does Tor Browser test for that fails when using a different / non-local Tor as the client?
With the default settings, Tor Browser:
Starts its own instance of Tor when you first open the browser
Asks the browser what proxy settings have been set in the TorButton Preferences menu
Asks the instance of Tor that the browser started what SOCKS proxy address ...
I think a physical device would be what you are looking for. Something like what the P.O.R.T.A.L. project hopes to accomplish.
These guys go over their ideas/philosophy and why this is a good thing in this Youtube video: DEF CON 22 - Ryan Lackey & Marc Rogers & theGrugq - Masquerade
Their github: https://github.com/grugq/portal
Unfortunately, I ...
The control port is used for controlling Tor, usually via other software like Arm.
The Socks port is the port running as a SOCKS5 proxy. This is the one you want to use. Please note that Tor is not an HTTP proxy, so your script will need to be configured to use a SOCKS5 proxy.
Just download and run TOR Browser. It will open a socks proxy in your system. You can check the port in browser settings:
You just need to set a proxy for your java socket:
InetSocketAddress HiddenerProxyAddress = new InetSocketAddress("127.0.0.1", 9150);
Proxy HiddenProxy = new Proxy(Proxy.Type.SOCKS, HiddenerProxyAddress);
Socket underlying = new Socket(...
The easiest way to define them is through use of environment variables, e.g. start Tor Browser with the command, e.g.:
env TOR_SOCKS_PORT=9170 TOR_CONTROL_PORT=9071 ./Browser/start-tor-browser
or by setting them in your default profile, e.g. creating a file called /etc/profile.d/z-torbrowser.sh containing the lines: