Apple ID page blocking Linux computers

apple-idNetwork

Apple ID sign-in is not working from Linux OS browser (Chrome, Firefox…tried both with new session cookies cleared, and incognito). I can browse apple.com without issues. I needed to check Apple ID after getting what appears to be a bogus security alert on my iPhone about a FaceTime sign-in on my table.

I've tried to login to Apple ID page from 3 different public IP addresses (cities) and Linux based desktop & laptop computers with latest updates. Login works fine from a Windows computer.

I spoke with Apple Support and they said:

we are only trained on Apple products so we are unable to help you with that.

When they said they could escalate it to one of the engineering teams and get back to me, I offered to give the Chrome and Firefox versions along with the OS information and again I was told:

we are only trained on Apple products. That information will not likely be useful to our team.

I can't imagine telling one of my customers that when questioned about a cross-platform compatible product/service I provide. It's specifically a bad gateway reported by Apple server and only happens when trying to connect from a Linux computer.

enter image description here

This has never been a problem for me in the past. I figure since the error is reported directly from Apple servers, they made a change in their firewall. I'm not sure what else to try with Apple Support. How do you resolve this?

Best Answer

The response from this user post in a related question was helpful. Specifically, apple is blocking the default user-agent string from Chrome and Firefox on Linux (at least Ubuntu based) computers. To confirm this, I did the following.

Change useragent on Chrome:

  1. CTRL + SHIFT + I to open Chrome developer tools.
  2. Click the 3 dots in the bottom right of Chrome developer tools: enter image description here
  3. Go to More tools > Network conditions
  4. Scroll down to User agent and un-check Select automatically
  5. Enter the following string Mozilla/5.0 (Macintosh; U; PPC Mac OS X; fi-fi) AppleWebKit/420+ (KHTML, like Gecko) Safari/419.3
  6. Enter the following in your browser https://appleid.apple.com

Change useragent on Firefox:

  1. Enter about:config in the URL field and press enter (and accept risk warning).
  2. Enter useragent and press enter.
  3. Look for general.useragent.override

    • If you see it, right click it and select Modify and go to step 4.
    • If you don't see it, right click in empty area of page and choose New > String and then enter general.useragent.override as name and go to step 4.
  4. Enter Mozilla/5.0 (Macintosh; U; PPC Mac OS X; fi-fi) AppleWebKit/420+ (KHTML, like Gecko) Safari/419.3 as value
  5. Enter the following in your browser https://appleid.apple.com

Another way to test this in Chrome in Linux is follow steps 1-4 for Chrome useragent change. Next, instead of entering the example string above, select another useragent (Safari - Mac, Chrome - Mac, Chrome - Windows, etc) from the list. All those useragent's allow access to https://appleid.apple.com from Linux.

Chrome on Windows 10 doesn't have a Linux option to choose from, so to test this from Windows, you can enter one of the following strings I pulled from a Linux machine with the latest updates:

Chrome/Linux
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36

Firefox/Linux
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:65.0) Gecko/20100101 Firefox/65.0

In my test this morning from a Windows 10 computer, using those useragent's in Chrome, attempts to https://appleid.apple.com resulted in a 502 bad Gateway. That same test should work from a Mac but I don't have mine with me.

Test from Windows 10: enter image description here

Some information about browser detection.