Iran Blocks VPN Ports 134
First time accepted submitter Parham90 writes "After the Iranian post-election events that led to massive riots and break-outs through the world, the Iranian government started blocking all social websites, including Facebook, Youtube, Orkut, MySpace and Twitter. The Iranians, however, started using VPN (virtual private network) connections to bypass censorship. Since Thursday, September 30, 2011, all VPN ports have however been blocked, in the first attempt to start what the Iranian government calls the 'National Internet.'"
This is why... (Score:2)
I run my VPN server on port 80.
Re: (Score:3)
You're absolutely right - in theory. In practice, not so much. I addressed this point below:
http://yro.slashdot.org/comments.pl?sid=2463106&cid=37625236 [slashdot.org]
Re: (Score:2)
Let the stegano/cryptography arms race commence. Sorry, Iran, but the Church-Turing thesis guarantees you're not going to win this one.
Re:This is why... (Score:4, Informative)
Re: (Score:2)
He's assuming that Iran is doing seriously deep packet inspection on everything. Which in theory is a good assumption, but in practice rarely happens.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Some people do this in hardware now with no performance impact (DPI is traditionally very processor intensive). They don't look at things in term of TCP anymore, but by application. You can block, say, Facebook and Twitter but allow RMTPT (Flash video streaming over HTTP). And you can easily block any traffic on port 80 that you don't recognize as HTTP. This exists because people used to do protocol tunneling to circumvent traditional firewalls (HTTP in DNS over UDP for example). Modern DPI devices are desi
Re: (Score:2)
Re: (Score:2)
All 65k+ of them? (Score:2)
Re:All 65k+ of them? (Score:4, Informative)
They could theoretically block everything but 80 and MITM any SSL connections (or did that cert get removed from IE yet?) to check those too, to prevent VPN connections that mimic HTTPS connections (real thing) and VPNs running over port 80 using deep-packet inspection. They'd also have to check for VPN over DNS (also, real thing). Short of this it's impossible to block VPNs.
Even then, you could run a VPN over a steganographic connection. In practice I find port 80 is the best - it's never failed me so far. 443 is a good option too, in fact a better option in theory, but keep in mind that a few mobile internet providers in 3rd world countries block 443.
Re: (Score:2)
Um...how is this any different? The only real difference between encrypted and unencrypted connections as far as an intercepting party is concerned is that one makes sense while the other looks like garbage. If you wrote an AJAX app that used PKI to do encryption at the application layer there would only be slight technical differences in the traffic going through that firewalls could easily be modified to pick up on.
Re: (Score:3, Insightful)
You don't just need to circumvent the block. You need to circumvent a block in a way that the authorities can't detect.
Re:All 65k+ of them? (Score:5, Informative)
Hell, I once saw a VPN that rewrote its traffic to use ICMP messages and other nefarious means of communication in order to transmit packets.
It'd probably look odd if you KNEW to look at that individual's connection but the chances of finding *every* way that encrypted data can be slipped into another datastream are incredibly minimal.
Hell, VPN-over-HTTP-proxy is very common.
Re: (Score:3)
Re: (Score:2)
Re: (Score:2)
Re: (Score:1)
Thank goodness for ipv6. Now you can run all services on port 80 and just assign a different ip address for each one!
Re: (Score:2)
They could theoretically block everything but 80 and MITM any SSL connections (or did that cert get removed from IE yet?) to check those too, to prevent VPN connections that mimic HTTPS connections (real thing) and VPNs running over port 80 using deep-packet inspection. They'd also have to check for VPN over DNS (also, real thing). Short of this it's impossible to block VPNs.
How about putting the entire nation's network behind a giant proxy, configured to disallow streams? that would effectively block everything but http..
Re: (Score:2)
I don't see how that would help, there are VPNs that can mimic HTTP/HTTPS...I've even run one like that over a GPRS connection which doesn't allow streams by its very nature.
Re: (Score:2)
if paranoid such exchanges could be coded in the form of words rather than hex data, it would be slower to process but almost impossible for a network monitor to find or filter without breaking all internet access
Re: (Score:2)
A number of VPNs these days use HTTPS (443). It's called SSL VPN and you can get access points from the usual vendors (Cisco, Sonicwall, etc). They're all the rage these days as they start up as normal HTTPS connections (and you
Re: (Score:1)
Re: (Score:2)
True, depends how many data centers the government is willing to build...
Re: (Score:1)
Comment removed (Score:3)
Re: (Score:2)
I don't think Egypt swapped anything, to be honest with you. The Army always ran the show. They were content to let Mubarak be the frontman, but ultimately it wasn't street protests that knocked Mubarak down, it was the Army saying "Well, you're of no use to us anymore."
The subject is the article I'm responding to (Score:3)
"The Net interprets censorship as damage and routes around it." -- John Gilmore
They will just move to using other ports.
Re: (Score:1)
Censorship interprets the net as damage and routes around it.
Re: (Score:2)
Re: (Score:1)
Changing ports does nothing if they use deep packet inspection.
Re: (Score:2)
In Soviet China, The censors interpret internets as damage and wall around it. -- me
All ports? (Score:2)
This sounds like nonsense. There are VPN providers on non-standard ports. If you have your own server and a spare IP, you can even use some netfilter rewrite magic to allow connection on ANY port of that IP which is helpful in a lot of situations.
Use OpenVPN (Score:5, Interesting)
OpenVPN can use any port and is not detected as regular VPN communication, and can thus bypass firewalls that blocks VPN communication.
Re: (Score:2)
+1 for OpenVPN
Re: (Score:2, Informative)
OpenVPN can use any port and is not detected as regular VPN communication, and can thus bypass firewalls that blocks VPN communication.
OpenVPN has not functioned properly in Iran for a while now, on any port. The same goes for Syria.
Re: (Score:2)
OpenVPN can use any port and is not detected as regular VPN communication, and can thus bypass firewalls that blocks VPN communication.
How is OpenVPN not detected as regular VPN communication?
Does it have its own signatures and patterns which are detectable?
Re: (Score:2)
OpenVPN has a mode that can mimic HTTPS, but even then it isn't foolproof.
Re:Use OpenVPN (Score:5, Informative)
OpenVPN can use any port and is not detected as regular VPN communication, and can thus bypass firewalls that blocks VPN communication.
OpenVPN was blocked even in 2010. No protocol (UDP or TCP) and port combination worked. Both normal and static key configuration were detected and blocked.
tcpdump showed a short packet exchange between the client and the server, and after that the connection completely died. Subsequent tries on the same protocol and port were completely blocked too (probably blacklisted).
Even so, I find it weird that OpenVPN was blocked while PPTP was allowed. Maybe they had/have a way of attacking PPTP ?
What worked back then and might still work is SSH (including tunneling). With access to a server outside Iran and a bit of imagination many things can be done with SSH tunneling.
Re: (Score:1)
Re: (Score:2)
I would have thought this would work pretty well:
1) Install squid on the server in a non-oppressive country
2) ssh user@server -L 3128:localhost:3128
3) Configure the system proxy settings to use localhost on port 3128
Also, there is a (relatively new) VPN feature in OpenSSH. Look at the -w option.
Re: (Score:2)
you can also use ssh to provide a generic SOCKS proxy:
ssh -D 1234 some.host.example.com
then just tell your apps to use a SOCKS proxy of localhost, port 1234
There are plenty of SOCKS wrappers for apps that don't have SOCKS code built in.
Re: (Score:1)
You can actually run a proper VPN with ssh and not just tunnel individual ports:
https://help.ubuntu.com/community/SSH_VPN [ubuntu.com]
This creates a point-to-point layer 2 or 3 tunnel between 2 hosts. This is great for proxying TCP, UDP, ethernet frames...
Re: (Score:1)
With OpenVPN permutate the data with a random IV and CBC XOR derived from a secret key you agree with website (via an independant channel). This will remove markers easily identifiable from the observable stream during the connection/handshake process before payload data is conveyed.
Put an agreed about of fixed or variable length random data on the front of the TCP connection data (just after connect) send in random chunk sizes with random time delays, if using variable length random data this can be encod
Re: (Score:2)
Re: (Score:2)
L2TP, PPTP, IPSEC.
Re: (Score:2)
This isn't about ports. I'm not sure how it suddenly became about ports (poor writeup?).
Iran uses packet inspection. They're getting good at it. They took down Tor for a little while before those guys found a work around. A lot VPNs don't work in Iran. Lots of things don't work. Simple work arounds like port numbers don't work.
In other words, when your country is a theocratic dictatorship, bad things happen. Considering how Iran is also a police state, there's little to no chance of anything stopping this
Information can't be blocked (Score:3)
Governments have tried that since the 15th-16th century, and failed every time.
Re: (Score:1)
Except for North Korea, of course.
Re: (Score:3)
Define "failed". USSR, for example, was quite successful at it for most of its existence. Oh sure, there was a leak here and there, but it had to run against a massive government propaganda campaign. End result is that most citizens were quite convinced that things are much better for them than they were in practice.
It's somehow done (Score:4, Interesting)
Re: (Score:2)
Since I live in Iran, I can vouch for it being true. The government-run media claims that the "PPTP" (and some other) protocols have been blocked, although I'm not sure how this works. I, for sure, can't access the VPN connections I used to be able to access. So I'm going to find a friend outside of Iran and ask them to start a VPN connection on port 80; just to see if they are feeding people another lie or not. :-)
Probably shouldn't post this kind of thing over an unencrypted connection.
>_>
<_<
>_>
Re: (Score:3, Insightful)
Re: (Score:2)
Re: (Score:3, Informative)
Re: (Score:2, Insightful)
More power to the people of Iran. You make the Internets proud.
But, still, please be careful.
As Mr. Universe would say... (Score:2)
Re: (Score:2)
change to port 80 and 443 (Score:1)
Re: (Score:2)
Run your VPN over port 80 and 443 let them block those as well. They may as well just switch it all off at the mains and be done with it.
Well, as other posters have pointed out, Iran is using Deep Packet Inspection, so they don't care about port numbers, just about the type of data that's being sent. I'm kind of surprised that according to some posters, they aren't blocking ssh.
Wrong Info (Score:4, Informative)
Re: (Score:1)
Re: (Score:1)
Re: (Score:1)
Blocked all vpn ports? (Score:2)
Ummm, so does that mean they shut down their internet entirely? Port 80 is simple enough to use or even daresay a little perl script using email, yeah the latency sucks, but still works. Getting past port blocking is pretty simple.
Hmmm, sending traffic through stenography via email attachments would be interesting. Wonder how long it would take to code that up.
Re: (Score:2)
Re: (Score:2)
All that deep packet inspection means is that you have to create another protocol to transfer information that they are either unfamiliar with or that they classify as something else.
Re: (Score:2)
Not sure how translating everything into shorthand would help much, I'm sure the Iranians have a few people around who can read it.
Steganography might be fun to try, though ;)
censorship (Score:1)
Gosh... wouldn't it be simpler if they just cut off everyone's fingers so they couldn't type... and cut out their tongues so the couldn't talk. Oh and poke out their eyes so they can't see sign languate... oh and rip off their ears so they can't hear... and... ... or how about they realise that talk and speech is inevitable and trying to censor it only makes yourself unpopular and your demise as ruler more likely.
Re: (Score:2)
Now, now. Sharia law does not condone any of those...unless the sentence dutifully made by a registered mullah, imam, or any other anal retentive neurotic nostalgic for the good old days of medieval torture.
Re: (Score:1)
Re: (Score:1)
Even if they had no fingers you'd still need to poke their eyes out so that they can't read what others in other countries have written/typed.
Admittedly it would be hard to navigate the web or turn pages in a book without any fingers.
Amazing that '1984' arrived in unexpected places (Score:2)
https tunnels? (Score:2)
Re: (Score:2)
Re: (Score:1)
Re: (Score:2)
From a NOC perspective (Score:5, Informative)
Unencrypted VPN traffic is incredibly easy to flag anyway, and even the handshake of popular encrypted VPN tunnels has a pattern that's predictable enough to be quite effective. I don't need to point out that ALL ports are affected. Switching to another port is basically useless in this context.
All this DPI doesn't require huge CPU processing power, as one would naively expect; since it (currently) happens only at the beginning of a session (yes, including UDP). And that is currently the Achilles' heel of this filter: if you initiate a "harmless" (as in allowed-by-policy) connection, and switch to encryption a couple of 10k packets later, you slip right through the firewall. Try it. If it doesn't work, they've upgraded to a new release and had to invest heavily in additional routers.
Re: (Score:2)
mod parent up. i guess, as an earlier poster mentioned, we need steganographic vpns. openVPN feature request? Thought these were interesting:
STEGAN0GRAPHY APPLIED 0N NETW0RK SESSi0NS AND NEiGHB0URH00D
http://www.s0ftpj.org/bfi/dev/en/BFi12-dev-10-en [s0ftpj.org]
what about iodine (Score:3)
Iodine [code.kryo.se] is IP over DNS. Since it is actually the DNS protocol (and not just using the DNS ports), it might not be susceptible to Deep Packet Inspection. However, it could presumably still be detected.
Steganography? (Score:2)
Looks like it's time for a VPN that uses stego. Sure, it might slow the connection down quite a bit, but if it's the difference between no access and (ideally almost undetectable) access, it'll have to do.
Do they inspect pigeons? (Score:1)
Shooting themselves in the foot, they do. (Score:1)
Tunnel over Skype Chat? (Score:2)
I know Skype isn't open source, but I also know that Skype is good at getting through all sorts of blocks, and I know that Skype works in Iran. Since Skype text chats can be automated with their development API couldn't you Base 64 encode packets and send them via Skype to an endpoint outside the country?
I guess this would work with pretty much any text based chat application that is successful at getting out of , even SMS.
change the port ! (Score:1)
Re:It's time to invade. (Score:4, Insightful)
The problem is its actually the minority that wants freedom. Seriously.
Iran's rural population is huge, and its made up of what basically amount to Muslim rednecks. They're the morons who keep assholes in power, and they probably all support this idea.
Re: (Score:3)
The problem is its actually the minority that wants freedom. Seriously.
America and Iran have more in common than they'd like to admit.
Definition of "freedom" (Score:3, Insightful)
To many, it means the freedom to worship Allah without being offended by anybody.
For example, that Mohammed cartoon violated their freedom. Seeking to have it suppressed did not violate the author's freedom, since freedom of speech is defined within the framework of what is acceptable to Allah.
Re: (Score:3, Insightful)
Re: (Score:2)
Sharia law must be wiped from the planet
How do you kill an idea?
Re: (Score:2)
Then kill them all. Fuck them. It's the 21st century. Time for them to fuck off. The world has bigger problems to deal with. Time these fucktards were stopped from holding the rest of us up.
I almost split my spleen laughing at this. You, my friend, are a parody of yourself.
Re: (Score:2)
And you're going to enlist to help fight as well, no? Oh wait it's just another basement armchair general blustering about starting wars but too chickenshit to actually do any of the fighting.