FTPS Instructions
The encryption methods in place for the CLASS FTP service requires a robust FTP client,
which may or may not already be available on your system. The order email should include
information about the URL to use for downloading the ordered files.
For assistance please send an email to: class.help@noaa.gov
To authenticate and download from CLASS via FTPS, there are several methods to choose from:
WinSCP [Windows]
WinSCP is an FTP client available from:
https://winscp.net/eng/download.php
After launching the initial connection window will appear:
Change/set the following options:
- File Protocol: FTP (Encryption will appear)
- Port number: 990 (defaults to TLS/SSL Implicit encryption)
- Encryption: TLS/SSL Explicit encryption (required)
- Host name: Input the URL provided in the email
- User name: Input your user name
- Password: Input your password
Once these parameters are set correctly, click the Login button.
After connecting, navigate to the download folder specified in the order email.
Curl [Linux]:
The curl program is a command line tool that is available for Linux.
It can be installed and used on Windows system, but that is out of scope for this tutorial.
In general, the curl package is available in the Linux repository.
Additional information and documentation can be found at:
http://curl.haxx.se/
The curl program is run from the command line. The general syntax to connect to CLASS include:
To put a file:
curl -v -k ftp://$USER_NAME:$PASSWORD@$URL:990/$FULL_REMOTE_PATH --tlsv1 --ftp-ssl-control --ftp-skip-pasv-ip -T $FULL_LOCAL_PATH
To list the contents:
curl -v -k ftp://$USER_NAME:$PASSWORD@$URL:990/$FULL_REMOTE_PATH --tlsv1 --ftp-ssl-control --ftp-skip-pasv-ip -l
To get a file:
curl -v -k ftp://$USER_NAME:$PASSWORD@$URL:990/$FULL_REMOTE_PATH --tlsv1 --ftp-ssl-control --ftp-skip-pasv-ip -o $FULL_LOCAL_PATH
To use these examples, replace the following:
- $USER_NAME: The account name you use to pick up orders.
- $PASSWORD: Password for the account.
- $FULL_REMOTE_PATH: The remote path on the server.
- $FULL_LOCAL_PATH: The path on the client system.
- $URL: Input the URL provided in the email
The previous method will expose the username and password to anyone who has access to the client system.
A more secure method is to create a
.netrc file with the account credentials.
The
.netrc file should have a format similar to the following:
machine $URL login $USER_NAME password $PASSWORD
Then the curl command would need modified to the following with an additional
-n
to tell it to use the
.netrc file:
curl -k ftp://$URL:990 --tlsv1 --ftp-ssl-control --ftp-skip-pasv-ip -l -n