When using cURL or Wget to access data over HTTP from a web server configured for Earthdata Login authentication.
> cd ~
> touch .netrc
> echo "machine urs.earthdata.nasa.gov login uid_goes_here password password_goes_here" > .netrc
> chmod 0600 .netrc
uid_goes_here
is your Earthdata Login username and password_goes_here is your Earthdata Login password. Note that some password characters can cause problems. A backslash or space anywhere in your password will need to be escaped with an additional backslash. Similarly, if you use a '#' as the first character of your password, it will also need to be escaped with a preceding backslash. Depending on your environment, the use of double-quotes " may be turned into "smart-quotes" automatically. We recommend turning this feature off. Some users have found that the double quotes are not supported by their systems. Some users have found that the > is aliased to >> on some machines. This will append the text instead of overwrite the text. We recommend checking your ~/.netrc file to ensure it only has one line. > echo "machine urs.earthdata.nasa.gov login some_user password ABCdef123!" > .netrc
> cd ~
> touch .urs_cookies
> curl -O -b ~/.urs_cookies -c ~/.urs_cookies -L -n http://server/path
> wget --load-cookies ~/.urs_cookies --save-cookies ~/.urs_cookies --keep-session-cookies http://server/path
If you have multiple files and are on a UNIX-based system, you can use this bash script to download multiple files once you confirm that step 4 works:
#!/bin/sh fetch_urls() { while read -r line; do curl -b ~/.urs_cookies -c ~/.urs_cookies -L -n -f -Og $line && echo || exit_with_error "Command failed with error. Please retrieve the data manually." done; } fetch_urls <<'EDSCEOF' # Insert URLS here EDSCEOF |
See our guide to Troubleshooting wget
Also the OpenSSL version should be at least 1.0.1. in order to handshake correctly with our systems.
If you're using a Windows machine, we have seen weird errors with the implementations of curl in certain Windows terminal emulators. Please try to use a native Bash terminal on a Linux or Mac machine
If you encounter a "too many redirects" when accessing an EDL-enabled site, make sure you entirely delete any "cookies" file you or your tool may be using, as the cookie data may be corrupted or stale.