When using cURL or Wget to access data over HTTP from a web server configured for Earthdata Login authentication.
- Make sure you have authorized the application from which you are downloading data (see How To Pre-authorize an application). The application website should also have instructions on how to do this.
- Configure your username and password for authentication using a .netrc file
> cd ~
> touch .netrc
> echo "machine urs.earthdata.nasa.gov login <uid> password <password>" > .netrc
> chmod 0600 .netrc
<uid>is your Earthdata Login username and
<password>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.
- Create a cookie file. This will be used to persist sessions across individual cURL/Wget calls, making it more efficient.
> cd ~
> touch .urs_cookies
- Download your data.
> curl -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
Note that you may supply additional options to control the output location.