The problem here is the simple-minded function
amtap.php, which blindly assumes that private range IPs aren't accessible from the internet. This may be true for
localhost (the function checks for IP's starting with 127), but it is not necessarily true for e.g. 10.x.x.x or 192.168.x.x IPs (which it also checks for), because they may be behind a NAT firewall (as mine is, for example). This is perfectly okay by internet standards.
If you know PHP you can just bypass this test by hardcoding
$bIsLocal to false, although that's a very quick and dirty solution. (More elegant might be to get the hostname and look up the public IP, but even that won't work if your web server is hosting virtual domains.)
I made this change and have (apparently) no problem with accessing the AWS information. Of course it might help to know just what file Amazon wants to access so that we can check ourselves (via a browser or wget) if it's accessible.