Home > GTFS, General, PHP, PlayStation3 > Got a PS3? Want Hulu Back? Easy enough…

Got a PS3? Want Hulu Back? Easy enough…

June 29th, 2009

Update Jan 6, 2010: Some users are reporting that they’re getting an error telling them they need to update Flash. I imagine we’re going to have to wait for Sony to update the PS3 firmware with a new Flash version.


Over the weekend Hulu stopped working for PS3 users. How did they block the PS3 users? With the dumbest method they could find. They test the User-Agent string in the HTTP request. Well, luckily, we can use a proxy server and just rewrite it. Windows users may want to look here

1. Install squid (”sudo apt-get install squid” for ubuntu users…. for Windows users, google for: squid windows)

2. Edit squid’s default config (/etc/squid/squid.conf on ubuntu) with these changes (or download my configuration: squid-hulu.conf):

Search for “acl localnet src” and set it to your internal network. You can remove the other localnet definitions if you’re not using them as shown here:

#acl localnet src 10.0.0.0/8
#acl localnet src 172.16.0.0/12
acl localnet src 192.168.0.0/16

Note: For 99.9999% of you, the correct line will be “acl localnet src 192.168.0.0/16″

After the “acl localnet src” line, add this:

acl hulu url_regex -i ^http://.*.hulu.com/.*

Search for “http_access allow localhost” and add “http_access allow localnet” as such:

http_access allow localnet
http_access allow localhost

Add the following two lines pretty much anywhere in the file (the end of the file works just fine):

header_access User-Agent deny hulu
header_replace User-Agent Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729)

3. Start squid (sudo /etc/init.d/squid start)

4. Go to PS3 Internet settings. Do manual configure. Go through the settings as normal (the defaults should be fine) until you get to proxy server. Set it to be your PC’s IP address port 3128.

Your PS3 is now a Windows machine running Firefox (as far as Hulu is concerned) and you can use Hulu again. What a dumb method of restricting access.

UPDATE – Jul 30 2009: To all of you guys out there saying “Why don’t you just use PlayOn or TVersity?” My response is:



from eric to MediaMall Support
date Mon, Jun 29, 2009 at 10:00 AM

I assume you're saying that there's no plan for a Linux version then?

from MediaMall Support to eric
date Mon, Jun 29, 2009 at 10:03 AM

Correct.


That was the response I received. TVersity is quite obviously intertwined with Windows and there is no hope there either. The users that support the invasive DRM (by using it) are responsible for open protocols not being available. If you want to know why DRM is successful, you need only look in the mirror.

UPDATED – Aug 10 2009: As requested in the comments, the instructions now make it so that only hulu will get the header replaced. Also, the comments section has tips and hints for Windows users and squid version 3.0+. See:

Some more Windows Info

Squid 3.0+ Info

eric GTFS, General, PHP, PlayStation3 , , ,

  1. September 17th, 2009 at 00:10 | #1

    @Varius
    Nope. There’s nothing else that needs to be changed. You shouldn’t have to change the X-Forwarded-For header either.

    I just confirmed that it’s still working as expected.

  2. John
    September 22nd, 2009 at 23:02 | #2

    Thanks!! Works great and your instructions were so easy to follow!

  3. Dan
    October 4th, 2009 at 13:19 | #3

    If I set up this proxy server, what happens when my computer is off? Will the PS3 still have internet access without the squid proxy available?

  4. October 15th, 2009 at 14:15 | #4

    thanks for the instructions, very helpful and life is good again!

  5. pistol
    October 17th, 2009 at 12:57 | #5

    I’m not too tech savy. Do I download and do all of that stuff directly through the ps3 or am I supposed to use my laptop? When I tried to dowload the squid program through my ps3 it asked for a storage device so I had to plug in my external hard drive to the ps3. Am I doing this wrong?

  6. October 21st, 2009 at 13:05 | #6

    @pistol
    These are instructions for setting up a proxy server on your PC so all requests from your PS3 are routed through your PC. The proxy server then “fixes” the user-agent. It may require a bit of knowledge of networking, so if you’re not that familiar with it, you may want to bite the bullet and pay for PlayOn which is probably a lot easier.

  7. October 22nd, 2009 at 09:35 | #7

    I already have a linux server in my home network so setting this up using your instructions was fast and easy.

    Thanks, for the well written write up!

  8. Shawn
    November 12th, 2009 at 14:15 | #8

    I tried setting this up yesterday on my ubuntu server, but squid doesn’t seem to be routing anything. The squid software runs without errors, so I’m not even sure how to search for the problem/solution. :^/

  9. Anonymous
    November 15th, 2009 at 13:14 | #9

    Thanks! This works great!

  10. Anonymous
    November 19th, 2009 at 22:04 | #10

    Does it work for macs too???

  11. JJ
    November 20th, 2009 at 15:54 | #11

    That is outstanding! Thanks. How would I go about adding tvguide.com to the script?

  12. Jer
    November 30th, 2009 at 18:54 | #12

    Much like Shawn, I’m not getting anywhere either. My squid access.log is empty, I disabled my firewall to see if that was it and still no go. Active Connections isn’t showing anything, so it’s like the PS3 isn’t even getting to the Ubuntu server.

  13. Sri
    December 6th, 2009 at 02:49 | #13

    I was able to get this running on a mac. Thanks. I have one problem though – PS3 hangs every time I use full screen. Does anybody know how to fix that?

  14. flintster
    December 13th, 2009 at 00:23 | #14

    Does anyone know if there is a way to use Polipo for this? I have that running on my dns323 nas and would be very nice to use that rather than keeping the pc running.

  15. Levi8than
    December 15th, 2009 at 16:03 | #15

    This solution works well enough. Many people out there already have a router running an open platform such as tomato. There must be a way to do the header replacement directly on the tomato router. I’m going to dig into it. Speak up if you have a suggestion on how to do this.

  16. dchamp
    December 19th, 2009 at 01:04 | #16

    I think Hulu may be on to this trick… set it up, and the first video I tried to view said it was unavailable, the second one went back to the same message that it wasn’t available for my platform.

    Is the squid proxy work-around still working for others?

  17. dhink
    December 30th, 2009 at 02:41 | #17

    I was able to get this to work in about 30 minutes for about $250.00 and some spare parts with Ubuntu… I just took the default settings and it worked quickly. Run the connectivity tests but it should work..

    Chris

  18. Mike
    January 5th, 2010 at 21:40 | #18

    This looks awesome, and I setup my squid proxy to do exactly this. Unfortunately, it’s not working. I can confirm my PS3 is going through my squid proxy, and instead of getting the normal “Sorry Your Platform Is Not Supported” message, I now get an error saying “You are trying to install Adobe Flash Player on an unsupported operating system..”.

    Does Hulu suddenly require a newer version of Flash, or am I missing something?

    Thanks,
    Mike

  19. adamruef
    January 5th, 2010 at 22:47 | #19

    I get the same result, and if I use refresh (F5), I get the message “Sorry, the video … unavailable….”

    Adam

    @Mike

  20. BradC
    January 6th, 2010 at 05:31 | #20

    I’m getting the same results as you Mike. Squid was working, but as of yesterday I get a gray box stating that I’m trying “to install Adobe Flash Player on an unsupported operating system….” I’ve tried changing agent strings to potentially a HW/SW platform that doesn’t support the version of Adobe they want to force an upgrade of, but no luck yet.

  21. Tony
    January 7th, 2010 at 22:42 | #21

    You rock.
    Hulu upgraded flash, but sling hasn’t yet :-)

  22. January 8th, 2010 at 00:19 | #22

    I can confirm this trick works on Leopard. you can run squid in the background on your Mac as well. Do “sudo port install squid” in Terminal and then do a “sudo launchctl load -w /Library/LaunchDaemons/org.macports.Squid.plist” as suggested to launch squid as superuser when the computer starts. Then restart and… voila…

    Oh, and same results as everybody on the hulu flash issue recently. (Sling.com does seem to work though, even for Hulu vidos.)

  23. AK
    January 11th, 2010 at 22:21 | #23

    The squid workaround is definitely broken now. Both sling and hulu give the “You are trying to install Adobe Flash Player on an unsupported operating system..”.

Comment pages
  1. June 29th, 2009 at 16:02 | #1
  2. July 1st, 2009 at 23:53 | #2
  3. August 6th, 2009 at 21:14 | #3
  4. August 10th, 2009 at 01:53 | #4
  5. September 22nd, 2009 at 23:37 | #5