wsftp80

120
WS_FTP Pro User’s Guide Software Version 8.0 Ipswitch, Inc.

Upload: erazermanuel

Post on 29-Dec-2015

27 views

Category:

Documents


8 download

DESCRIPTION

wsftp80

TRANSCRIPT

Page 1: wsftp80

WS_FTP Pro

User’s Guide

Software Version 8.0

Ipswitch, Inc.

Page 2: wsftp80

Ipswitch, Inc. Phone: 781-676-5700

10 Maguire Road Suite 220 Fax: 781-676-5710

Lexington, MA 02421-3127 Web: http://www.ipswitch.com

The information in this document is subject to change without notice and should not be construed as a

commitment by Ipswitch, Inc. While every effort has been made to assure the accuracy of the informa-

tion contained herein, Ipswitch, Inc. assumes no responsibility for errors or omissions.

Ipswitch, Inc. assumes no liability for damages resulting from the use of the information contained in

this document.

The software described in this document is furnished under a license and may be used or copied only in

accordance with the terms of that license.

Copyright © 2003 by Ipswitch, Inc. All rights reserved. WS_FTP, the WS_FTP logos, Ipswitch, and

the Ipswitch logo are trademarks of Ipswitch, Inc. Other products or company names are or may be

trademarks or registered trademarks and are the property of their respective companies.

No part of this publication may be reproduced, photocopied, stored on a retrieval system, or transferred

without the expressed prior written consent of Ipswitch, Inc.

Printing History

May 1996 First EditionDecember 1996 Second EditionJuly 1997 Third EditionFebruary 1998 Fourth EditionOctober 1998 Fifth EditionMay 2000 Sixth EditionJune 2001 Seventh EditionMarch 2002 Eighth EditionAugust 2002 Ninth EditionMay 2003 Tenth Edition

Page 3: wsftp80

Table of Contents

Chapter 1: Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1Why FTP? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1How FTP/SFTP Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2SFTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

New in WS_FTP Version 8.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2System Requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2Installing WS_FTP Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Logging Onto an FTP Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Interfaces for Windows 98, 2000, ME, XP and NT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

The Classic Interface of WS_FTP Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5The Explorer Interface of WS_FTP Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

Browser Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6Other Ipswitch WS_FTP Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

WS_FTP Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7WS_FTP Pro Development Kit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Getting Updates and Giving Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8Accessibility. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Chapter 2: Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Making your First Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Transferring a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

WS_FTP Pro Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14Anonymous Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15Assistance Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15Using the Help System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Chapter 3: Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Using Site Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Connect to Remote Host Dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Host Info Dialog of Site Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Organizing Sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Automatic Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Connect to Default Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Open with last local and remote folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Alternate Connecting Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Sites Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Recent Sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21Quick Connect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21Address Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Contents

WS_FTP Proiii

Page 4: wsftp80

iv

Internet Connection Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Passive Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Chapter 4: Transferring Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Ways to Transfer Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Using the Transfer Arrows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Drag and Drop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Copy and Paste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26Batch Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26Using the Transfer Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

Upload Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26Hotdrop Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Transfer Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28Automatic Retry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Resuming a Failed Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Multipart Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Chapter 5: Managing Files and Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Viewing and Navigating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Thumbnails View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32Working with Files and Folders. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Click and Drag for Organization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34Active Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34Changing the File Permissions for UNIX Sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Background Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Chapter 6: Explorer Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39Using the Explorer Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Configuring a Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39Making a Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Transferring Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Chapter 7: WS_FTP Transfer Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41What is the Transfer Manager? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Transfer Manager Dialogs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Transfer Manager Transfers Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Transfer Manager History Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42Request Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Log Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Operation After Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Chapter 8: Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45SSL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

WS_FTP Pro

Contents

Page 5: wsftp80

How to make an SSL connection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47Client Certificate Verification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Generating a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48Importing a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49Selecting a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50Trusted Authorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Adding a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51Exporting a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51Removing a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Non-Trusted Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53How to make an SSH connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53SSL vs. SSH. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54Using a NAT Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

To configure SSL through a NAT Firewall: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Chapter 9: Synchronizing Files and Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55Using the Synchronize Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55Synchronize Dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57Using a Control File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58Exclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

Exclusion Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60Using the Synchronize Utility from the Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Chapter 10: The Find Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63Using the Find Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

Using the Search Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Finding a File When You Are Not Sure of Its Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65Finding a File Modified During a Specific Time Period . . . . . . . . . . . . . . . . . . . . . . . . . 66Finding a File in a Particular Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66Finding a File Smaller Than a Certain Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Chapter 11: Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69Using Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Writing and Debugging Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Executing Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Executing a Script from the Command Prompt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Running a Script from the Scripting Utility. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Chapter 12: Scheduler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Using the Scheduler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

Contents

WS_FTP Prov

Page 6: wsftp80

vi

Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74Adding a Script to the Scheduler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74Updating a Web Site on a Nightly Basis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Chapter 13: Using Firewalls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77Multiple Firewalls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77Firewall Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78Configuring a Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78Using a Configured Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Chapter 14: Using the Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Basic Command Line Syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Site Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Transfer Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82Transfer Destination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

File Transfer Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83Uploading Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83Downloading Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83Renaming Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83Transferring multiple files from the same location. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84Converting File Names to Lower Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84File Transfer Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

Transferring Files and Folders with Spaces in the Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84Enclosing the Command Line in Quotes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85Using the MS-DOS Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

Using a Batch File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85Multiple Folders or Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86Pre-scheduled Transfers (“Automated Transfers”) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86Extras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

Appendix A: FireScript Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89What is a FireScript? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89FireScript Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

The fwsc Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90The Comment Section. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91The Script Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

The Connection Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92The FireScript Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92FireScript Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93String Expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95Function Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96FireScript Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96Switch Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

WS_FTP Pro

Contents

Page 7: wsftp80

Case Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97Examples of Case Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

Continue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99Jumps and Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100Return. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100Autodetect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100SSL Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101FireScript Key Words . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

FireScript reserved words . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102FireScript statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103FireScript intrinsic functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103FireScript intrinsic variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Appendix B: Textual Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105“Blocking call canceled” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105“Connection refused” or “Connection closed by remote” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106“Disk quota exceeded”. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106“File too large to download” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106“Logon failure; Quitting.” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106“MDTM” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106“User access denied” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

Contents

WS_FTP Provii

Page 8: wsftp80

vi

ii

WS_FTP Pro

Contents

Page 9: wsftp80

Chapter 1: Introduction

This chapter offers an introduction to WS_FTP Pro, a brief description of File Transfer Protocols, system requirements, the installation procedure, information about software updates, and instructions for giving feedback to Ipswitch, Inc.

Why FTP?

A vast store of software applications, games, images, and other types of files are available on FTP and SFTP sites all over the world. A site is a computer system (“host”) that uses an Internet protocol called FTP (File Transfer Protocol) or SFTP (Secure File Transfer Protocol.) FTP and SFTP offers fast and accurate transfers of large files or collections of files between computers on the Internet.

Many Web sites on the World Wide Web (which is based on another Internet protocol called HTTP) also provide links to files you can download -- that is, copy to your PC. Especially for large files, WS_FTP Pro will speed up the time it takes to copy such files to your PC. For more information, see “Browser Integration” on page 6.

WS_FTP Pro also allows you to upload files -- that is, copy files from your PC to other computers. For example, you would upload files if you need to place your Web pages on a computer system designated by your ISP (Internet Service Provider), or if you want to store a picture of something you want to sell through an online auction site.

How FTP/SFTP Works

FTP/SFTP uses the client–server model: one computer (the FTP/SFTP Host) runs a server program “serving up” information to other computers. The other computers run client programs requesting information and receiving replies from the server.

Using This Book

The WS_FTP User’s Guide is a resource you should use to familiarize yourself with the different features of WS_FTP Version 8.0.

1IntroductionWS_FTP Pro

Page 10: wsftp80

2

FTP

WS_FTP Pro turns your PC into a client, allowing it to communicate with virtually all types of FTP sites. When your PC is connected to the Internet (via a modem or local area network), WS_FTP Pro can connect to any system that has a valid Internet Address and is running an FTP server program. Once connected to an FTP site, you can copy files to and from your local PC or another FTP site.

SFTP

SFTP is a file transfer protocol that runs over a secure SSH (Secure Shell) client like WS_FTP Pro. It works a lot like FTP, except that all communications and transfers between the client and server are done over a single secure connection.

New in WS_FTP Version 8.0

• Thumbnails browsing option.

• Active Edit system.

• Use of both implicit and explicit SSL.

• Auto-connect to remote sites on application start-up

• Hotdrop shortcuts to remote directories.

• SSL/NAT feature for specifying external IP address and port range for PORT commands.

• Support for ASCII transfers via SFTP.

• SOCKS4 and SOCKS5 Proxy support.

System Requirements

WS_FTP Pro requires the following system resources:

• An Intel Pentium processor

• Windows 98, 2000, ME, NT or XP

• Internet Explorer 4.02 or newer (does not have to be your default browser)

SFTP

You can find more information about SFTP in “Chapter 8: Security” on page 45

User’s Guide

WS_FTP Pro

Page 11: wsftp80

Installing WS_FTP Pro

The installation of WS_FTP Pro is the same for new users, those who are upgrading from a previous version of WS_FTP Pro, and those who are replacing an evaluation version with a purchased version.

To install WS_FTP Pro from a downloaded file:

1 Double-click the file you downloaded. (wsftppec.exe)

2 Follow the directions on your screen.

To install WS_FTP Pro from a CD-ROM:

1 If you already have a previous version of WS_FTP Pro on your system, make sure you are not running the application (either Classic or Explorer).

2 Insert the WS_FTP Pro CD-ROM into a CD-ROM drive.

3 If the CD-ROM does not automatically display a “Welcome” screen, click the Start button and select Run.

4 Enter the CD-ROM drive letter followed by autorun. For example: d:autorun

5 Follow the instructions on your screen.

Please refer to the file named whatsnew.txt or relnotes.txt for information regarding enhancements or changes that may have been made to the software since this manual was printed.

Logging Onto an FTP Site

The FTP process begins when a connection is made between an FTP client and an FTP site. After establishing communication, the client “logs on” with a user ID and password. The user ID and password identify you to the site.

If you are upgrading from a previous version of WS_FTP Pro, or replacing an evaluation version, be sure to install the purchased version in the same location as your previous or evaluation version.

You can install both the Classic and Explorer interfaces and use them interchangeably.

The two interfaces share the FTP site configurations you create in either interface.

3IntroductionWS_FTP Pro

Page 12: wsftp80

4

Most public FTP sites are set up with an “Anonymous” account: when you connect to one of these FTP sites, you need only identify yourself as “Anonymous” and use an e–mail address as a password. Normally, when you log on anonymously, you see a public folder (usually named something like /pub or /apps) containing the information and software that can be downloaded to your PC. (Access to other folders on the site is usually restricted.)

On anonymous FTP sites, look for files called readme, readme.txt, index, or 00index. Many sites use a file like this to provide a catalog of the information available on the site as well as other information about the site, such as a mission statement or operating hours.

In addition, an FTP site administrator can give certain users “accounts” with special permissions. For example, a user with an account may be able to upload, download, delete, and edit files: while an “anonymous” user can usually only download files. To log on to a site on which you have an account, you will need to enter the Host Name, User ID, and Password that the site administrator has assigned to your account.

Interfaces for Windows 98, 2000, ME, XP and NT

WS_FTP Pro provides two user interfaces: the Classic user interface, which runs as a standard Windows application, and the Explorer interface, which has the same look and feel as Windows Explorer.

User’s Guide

WS_FTP Pro

Page 13: wsftp80

The Classic Interface of WS_FTP Pro

The Classic interface is a standard Windows application that looks similar to a two-paned window. When your PC (the “Local System”) connects to an FTP server (the “Remote System”), the WS_FTP Pro Classic interface displays a window with your PC’s files and folders on the left and the FTP site’s files and folders on the right. With the contents of both systems displayed, you can easily locate files on one system and transfer them to a specific folder on the other system.

The Classic interface looks similar to this:

The buttons to the right of each list box provide file and folder operations for that list box.

The Explorer Interface of WS_FTP Pro

The second interface of WS_FTP Pro is the Explorer interface. The Explorer interface uses the same software engine as the Classic interface, but it lets you copy and move files within a system that has the same look and feel as Windows Explorer.

The current folder on the FTP site is shown in this pane.

The current folder on your PC is in this pane.

This list box shows the files and folders in the current folder on the FTP site.

This list box shows the files and folders in the current local folder.

Status bars show a total or selected number of files and their combined size.

5IntroductionWS_FTP Pro

Page 14: wsftp80

6

The WS_FTP Pro Explorer interface looks similar to one of the following:

Browser Integration

You can set up WS_FTP Pro so that it automatically handles FTP URLs when you click them in your browser or in an e-mail message. (A URL, Uniform Resource Locator, is an Internet address describing an Internet resource. For example, the Web URL for the Ipswitch web site is http://www.ipswitch.com/; the FTP URL for the FTP site of WS_FTP Pro Patches is ftp://ftp.ipswitch.com.)

WS_FTP Pro handles FTP URLs as follows:

• If the URL is the name of an FTP server, such as ftp.ipswitch.com, WS_FTP Pro “handles” the URL by starting the Classic interface of WS_FTP Pro and connecting to the site.

Files and folders in the current folder

The appearance of the Explorer window is determined by your View menu options.

Explorer interface

Browser Integration is NOT compatible with Netscape 6.

User’s Guide

WS_FTP Pro

Page 15: wsftp80

• If the URL includes the path and name of a file, such as ftp.ipswitch.com/French/ftp605F.txt, WS_FTP Pro attempts to download the file to your PC, and prompts you for a location to save or execute the file.

• If the URL includes the path and name of a folder (and not a file), such as ftp.ipswitch.com/French, WS_FTP Pro “handles” the URL by starting the Classic interface, connecting to the site, and navigating to the folder.

To turn on Browser Integration:

1 Select Browser Integration from the Program Options dialog.

2 If you use Netscape Navigator and want WS_FTP Pro to handle FTP URLs, select the first check box.

3 If you use Microsoft Internet Explorer and want WS_FTP Pro to handle FTP URLs, select the second check box.

4 If you want to be prompted each time you click an FTP URL so you can choose whether or not to use WS_FTP Pro, select Ask before using WS_FTP.

Other Ipswitch WS_FTP Products

WS_FTP Server and the WS_FTP Pro Development Kit can be purchased separately at www.ipswitch.com.

WS_FTP Server

The WS_FTP Server is a full-featured, secure (using SSL) FTP server for Windows NT/2000/XP systems. WS_FTP server lets you create an FTP site that makes files and folders on your PC available to other users. WS_FTP Server offers many features not found in most commercial servers today, including automatic resumption of interrupted transfers.

7IntroductionWS_FTP Pro

Page 16: wsftp80

8

WS_FTP Pro Development Kit

You can develop custom applications using the WS_FTP Pro Development Kit. It lets you create programs to work with WS_FTP Pro for transferring files to or from FTP sites or between FTP sites. The Development Kit lets you create an FTP application without being concerned with the intricacies of network programming.

Getting Updates and Giving Feedback

Ipswitch frequently makes patches and upgrades available on our Web site. For the latest version information, please visit www.ipswitch.com.

To access upgrades on the Ipswitch FTP site (using the Classic interface):

1 In the WS_FTP Pro window, click the Connect button.

2 In the Connect to Remote Host dialog, open the Predefined Sites and Ipswitch folder and select the site named WS_FTP Pro Patches.

3 Click Connect. WS_FTP Pro connects to the WS_FTP Pro folder.

4 Select the desired patch file; the last three digits of the file name indicate the version number. For example, wsftp606.exe is the patch file to update earlier versions to WS_FTP Pro 6.06. Read the accompanying text file (for example, wsftp606.txt) to verify that you have located the correct file.

5 Transfer the patch file and place it in a folder other than your WS_FTP Pro folder or your Windows Temp folder. To update the software, double-click the patch file and follow the instructions.

To access patches on the Ipswitch Web site:

1 In your Web browser, go to: http://www.ipswitch.com

2 Click the Downloads link.

3 Click Software Updates, and then click the link for the product.

4 Save the patch file in a folder other than your WS_FTP Pro folder or your Windows Temp folder.

5 Run the patch file to update the software.

User’s Guide

WS_FTP Pro

Page 17: wsftp80

We welcome your feedback on WS_FTP Pro. Please e–mail any comments and suggestions to [email protected].

Accessibility

WS_FTP Pro is designed for use by all computer users, including those with certain disabilities that make using a mouse impossible. Every operation and feature included in WS_FTP Pro has a shortcut key, or series of keystrokes that allow the user to use their keyboard to execute the command.

The image below shows the WS_FTP Button bar:

Notice that each of the button labels have a letter that is underlined. To access the command performed by the button, hold the Alt key on your keyboard and press the underlined letter on the button you want to use. For example, Alt + C will disconnect you from the current FTP site, and Alt +X will close the program.

9IntroductionWS_FTP Pro

Page 18: wsftp80

10

User’s Guide

WS_FTP Pro

Page 19: wsftp80

Chapter 2: Getting Started

This chapter describes how to get started using WS_FTP Pro. The two main windows of the Classic Interface are described for you, and in the sidebar are step-by-step instructions on the basic functions of WS_FTP Pro.

Making your First Connection

The first time WS_FTP Pro is run, the Classic Interface opens with the Connect to Remote Host dialog displayed.

WS_FTP Pro uses Site Profiles to store information it needs to make a connection to an FTP site. This information includes:

Some sites are set up for you when you install WS_FTP Pro. You can connect to one of these or configure your own.

When you select a configured site, the host information for that site is displayed in the Host Info tab of the Site Options dialog.

Access this dialog by selecting a site and clicking the Edit button.

Make your first connection:

Before you make your first connection, you need to create a site profile for that FTP server.

1. From the Connect to Remote Host dialog, click the Create Site button.

2. In the Name box enter what you want to call the site.

3. In the Create In box, select the folder you want to create the site in.

4. Click Next.

5. In the Host Name or IP address box, enter the internet address for the FTP site you want to connect to.

6. Click Next.

7. Enter the UserID and Password for that site.

8. Click Finish, or click Next to enter optional information about the site (described later in the User’s Guide and in the Online help.)

Your new site profile will now appear in the folder you selected.

9. Click Connect.

When you click connect, the Connection Dialog box disappears and the WS_FTP Pro Classic Interface attempts to make the connection.

How to...

11Getting StartedWS_FTP Pro

Page 20: wsftp80

12

• Hostname/IP Address. Every system (computer) on the Internet has an official host name or an Internet (IP) address. In order to connect to an FTP site, you must find out the official name or address of the site. For example, a system might have a host name of superserv.ipswitch.com and an IP address of 123.124.125.126. In WS_FTP Pro, you can use either the host name or the IP address to specify a particular FTP site.

• User ID. The User ID or user name is given to you by the FTP site administrator or owner when an account is created. For information on how to connect without a User ID, see “Anonymous Connections” on page 15.

• Password. When an account is created, a password is chosen or issued to you. When used with the User ID, it allows you to connect to your FTP account.

• Site Options. There are many options you can set in a Site Profile that controls how WS_FTP Pro makes and maintains connections to an FTP Site. These options are set through the Site Options dialog that can be found by selecting a site and clicking the Edit button on the Connect to Remote Host dialog.

To get started using WS_FTP Pro, you have two choices. You can either connect to one of the sites we have included in the application, or you can create you own Site Profile and use that to connect to the FTP site you identify in the profile.

To connect to a pre-configured site, simply select the site from the Sites list on the Connect to Remote Host dialog and click the Connect button.

To configure your own site, click the Create Site button and follow the directions on the New Site wizard. Once you finish the wizard, you will be able to select your site and click Connect. From then on, your site profile will be there for you to use.

Transferring a File

After making your connection, WS_FTP closes the Connection dialog, leaving the WS_FTP Pro window. The image below shows how the WS_FTP Pro window looks once you have connected to a site.

User’s GuideWS_FTP Pro

Page 21: wsftp80

The following are boxes and window structures that are important in learning how to make an FTP transfer:

Local System. The left pane shows the directory set as your default local directory, and all of the files and folders in it. You can change directories by selecting it from the list, by clicking the Browse (...) button next to the Local System box, or by typing the folder path in the box.

Remote System. The right plane displays the default directory for the FTP site you connect to. You can change directories by selecting it from the list, by clicking the Browse (...) button next to the Remote System box, or by typing the folder path in the box.

Address. The Address bar displays the complete path of the FTP Site you are connected to. If you type this address in manually, the Address bar will record the last ten sites and folders you have connected to.

Transfer Arrows. Click these icons to transfer a file:

Upload Arrow

Download Arrow

13Getting StartedWS_FTP Pro

Page 22: wsftp80

14

WS_FTP Pro Toolbar

Customizing the Toolbar

You can modify the appearance of the toolbar by selecting the Toolbar dialog from the Program Options.

Connect. Click this icon to select or configure a site to connect to, using the Connection Dialog box.

Disconnect. Click this icon to disconnect from a site.

Transfer Manager. Click this icon to display the Transfer Manager. For more information, see “Chapter 7: WS_FTP Transfer Manager” on page 41.

Edit Manager. Click this button to display the Edit Manager for the Active Edit function. For more information, see “Active Edit” on page 34

Batch Mode. Click this icon to place WS_FTP in Batch Mode. In this mode, selected files will be added to the Transfer Manager to be transferred later.

Multipart Mode. Click this icon to put WS_FTP in multipart mode. This is used to split large files into smaller more manageable downloads. For more information, see “Multipart Transfers” on page 29.

Options. Click this icon to access WS_FTP Program Options.

Views. Click this icon to select a view type from the menu. The following is a list of these view types.

Large Icons. Click this icon to change the layout of the list pane to show file names along with large icons associated with the file type.

Small Icons. Click this icon to change the layout of the list pane to show file names along with small icons associated with the file type.

List. Click this icon to change the layout of the list pane to show an ordered list of files in a selected directory.

Details. Click this icon to change the layout of the list pane to show an ordered list of files with the name, size, type, time of last modification, and attributes listed.

Thumbnails. Changes the layout of the list pane to show thumbnails of graphic files and icons of others.

How to...Transfer a file:

Once you have connected to a site, you are ready to transfer a file.

Downloading a File

1. Select the directory you want to download the file to in the Local System list.

2. In the Remote System list, find the file by clicking on the folder it is stored in (unless the file is in the directory you connected to.)

3. Select the file you want to download.

4. Click the download transfer arrow. It is the one that looks similar to: <--

5. When the file is downloaded, it will appear in the Local System list.

Uploading a File

1. Select the directory you want to upload the file to in the Remote System list.

2. In the Local System list, select the file you want to upload.

3. Click the upload transfer arrow. It is the one that looks similar to: -->

4. When the file is uploaded, it will appear in the Remote System list.

User’s GuideWS_FTP Pro

Page 23: wsftp80

Anonymous Connections

To log on to any FTP site, you must identify yourself with a user ID and password. For many FTP sites, you can use the word anonymous as a User ID, and your E-mail address as your password; this is known as an "anonymous login." (All of the Ipswitch preconfigured FTP sites are set up as anonymous logins.)

FTP sites that allow anonymous logins usually exist to provide files that can be downloaded by the general public; anyone on the Internet can log onto the site anonymously and copy files to their PC. This is similar to logging on to a file server as a "guest."

Anonymous logins have access to a vast store of software, games, music, and numerous other resources. However, if you log in anonymously, you usually are not allowed to do more than view public folders and download files. (You are usually unable to view private folders or to upload files.)

Assistance Center

The WS_FTP Pro Assistance Center has been created to help new users get up and running with WS_FTP Pro as quickly as possible, and to give more experienced users quick access to our online support.

The Assistance Center includes:

• Tutorials. Our interactive tutorials are available to anyone with a connection to the internet. The two lessons walk users through how to get connected to an FTP site and how to successfully transfer files.

• Getting Started Guide. This guide offers information on how to get started using WS_FTP Pro, and a tour of the product that points out various functions.

• Common Terms and Definitions. Look here for a list of common terms and phrases used in our documentation.

• Link to our Knowledge Base. You can also directly access the Knowledge Base articles through this link.

15Getting StartedWS_FTP Pro

Page 24: wsftp80

16

Using the Help System

Our Online Help system contains detailed descriptions and directions on how to use each and every function available in WS_FTP Pro. It should be the first place you look if you have any question using the product.

Individual topics are organized into books that relate to a spe-cific function.Some books have other books listed in-side.

Use the Index tab to look up keywords, and use the Search tab to search for words in the body of the topics.

The body of the help topic appears in this pane.

Click on blue words to ‘jump’ to another topic. Click green to access a ‘drop down’ list.

User’s GuideWS_FTP Pro

Page 25: wsftp80

Chapter 3: ConnectionsThis chapter details the different ways users can make FTP connections using WS_FTP Pro.

Using Site Profiles

For most FTP connections, WS_FTP Pro uses site profiles to store information it needs to establish the connection with the Server. These profiles control how WS_FTP Pro connects to the remote server, and how it performs once the connection is made. Site profiles are created and maintained on the Connect to Remote Host dialog.

Connect to Remote Host Dialog

The Connect to Remote Host Dialog is your main starting point in using WS_FTP Pro. From there, you can create and edit site profiles, organize your profiles, and use those profiles to connect to your FTP sites.

The following are descriptions of all of the features on the Connect to Remote Host dialog.

• Assistance Center. When this button is clicked, the Assistance Center window appears. For more information, see “Assistance Center” on page 15.

• Connect. Click this button to connect to the selected site.

Look for more information in the Connecting to an FTP Site section of the Online help.

17ConnectionsWS_FTP Pro

Page 26: wsftp80

18

• Create Site. Click this button to access the Site Profile wizard. Use this wizard to create a new site profile.

• Create Folder. Click this button to access the New Folder wizard.

• Edit. Click this button to edit the selected site profile.

• Delete. This button deletes a selected site or folder.

• Close. Click this button to close the Connect to Remote Host dialog box.

• Help. Click this button to access the WS_FTP Pro Online Help system.

• Configured Sites. This box lists all of your configured sites.

Host Info Dialog of Site Options

After creating a Site Profile through the Site Profile Wizard, you can edit the profile by selecting it and clicking the Edit button. The following is a description of the Host Info dialog of the Site Options dialog. For detailed information on the other dialogs in the Site Options, click the Help button on those dialogs.

• Host Name. Every system (computer) on the Internet has an official host name or an Internet (IP) address. In order to connect to an FTP site, you must know the official name or address of the site. For example, a system might have a host name of superserv.ipswitch.com and an IP address of 123.124.125.126. In WS_FTP Pro, you can use either the host name or the IP address to specify a particular FTP site.

• UserID. If you have an account on the FTP server you are connecting to, enter your user identification name here. For information on connecting to sites you do not have an account on, see“Anonymous Connections” on page 15

When a folder has a + next to it, it means that there may be folders or sites within this folder.

Select a site to connect to that site or to view the host information for that site. To rename a site, right click on the site name, select rename, and type the new name.

User’s GuideWS_FTP Pro

Page 27: wsftp80

• Password. Enter your password for the site you are connecting to.

• Account. Some FTP sites, notably VM/CMS hosts, require an account in order to authenticate the client and provide access to a default directory for the user. For most sites, however, no account is required.

• Anonymous. Select this option if you are making an anonymous connection to the selected site. For information on anonymous connections, see “Anonymous Connections” on page 15.

• Save Password. When you select this option, the password will be saved with the site information. It is recommended that you do not select this option if other people have access to your computer.

• Save Account. Select this option to save the account information entered in the Account box with the site information.

• Comment. Enter any comment you would like to make about the site.

Organizing Sites

With the Organize Sites dialog, you can create, organize, and modify site profiles while connected to an FTP site (you have to disconnect before you can access the Connect to Remote Host dialog).

To access this dialog, select Organize Sites from the Sites menu.

Notice that the buttons here also appear on the Connect to Remote Host dialog.

19ConnectionsWS_FTP Pro

Page 28: wsftp80

20

Automatic Connections

If you have a single site that you connect to over and over again, you can have WS_FTP Pro attempt to make a connection as soon as you start the application. This can be done in one of two ways, using the Auto reconnect option on the General dialog of Program Options.

Connect to Default Site

By setting this option, and choosing a default site profile on the Connect to Remote Host or Organize Sites dialog, you can have WS_FTP Pro connect to that site as soon as you open the application.

Open with last local and remote folders

If you do not want to set up a default site to use every time you open the application, you can select this option to have WS_FTP Pro open the last remote connection to the last remote folder you were in when you exit the application. It will also display the last local folder you were in as well.

If you do not have a remote connection when you close the application, it will not auto reconnect to any site.

Alternate Connecting Methods

WS_FTP Pro offers several ways of connecting to a remote site where you don’t have to use a site profile, or you don’t have to use the Connect to Remote Host dialog. In time, a user may find that they like using these methods better than going through the Connect to Remote Host dialog. Below are descriptions of each of these methods.

Sites Menu

You can connect to your configured sites by selecting the site from the Sites Menu. This menu is available in both the Classic and the Explorer interface.

Setting a default site

To set a default site, right-click on the site profile and select Default Site from the menu.

User’s GuideWS_FTP Pro

Page 29: wsftp80

To change the folders or layout of this list, select Organize Sites and use the Organize Sites dialog.

Recent Sites

On the File menu, you will find the Recent sites submenu. This menu shows the last ten FTP sites you successfully connected to. You can establish a connection by selecting one of the sites from the menu.

Quick Connect

Quick Connect provides a means for you to connect to an FTP site with minimal effort and time; for example, you might use Quick Connect to connect to a site that you want to visit just once.

To use this feature, select Quick Connect from the File menu.

NoteQuick Connect does not work for SSL or SSH connections.

21ConnectionsWS_FTP Pro

Page 30: wsftp80

22

Address Bar

The Address bar of the WS_FTP Pro Classic interface can be used in three ways to connect to an FTP server:

Type the address directly into the Address bar

If you type the address alone, WS_FTP Pro will prompt for a username and password. You can also type the username and password in front of the site address in this format: username:[email protected]:port/path. Example:

robert:[email protected]:21/pub/

You can also enter the username and password in the boxes below the address bar, after entering the ftp address in the address box.

NoteYou can make an SSL or SSH connection by selecting the type of secure connection from the lock icon next to the address box on the address bar. For more information, see “Chapter 8: Security” on page 45

Use the listbox to select a recently visited site

When you connect to a site, a record of that connection will be stored in the listbox. You can connect to that site by selecting the entry. WS_FTP Pro will attempt to make a connection using the same options defined when the site was last visited.

Internet Connection Settings

The following settings can be configured on the Internet Connection dialog of the Program Options (click the Options button on WS_FTP Pro) to have WS_FTP Pro automatically connect to and/or disconnect from the internet when scheduled items are run, or when time consuming tasks are being performed.

• Connect to Local Area Network (LAN). If you connect to the internet via a LAN (or cable modem, DSL, T1, etc.), WS_FTP Pro will automatically set this option and disable all others.

User’s GuideWS_FTP Pro

Page 31: wsftp80

• Connect using a dial-up connection. Select this option to have WS_FTP Pro connect to the internet using a dial-up connection. This is a connection made by your computer using a modem and your telephone lines.

• Select a dial-up connection. If you have multiple dial-up connections configured in your Windows Dial-Up Networking, select the configuration you want WS_FTP Pro to use here.

• Disconnect when application exits. Select this option to have WS_FTP Pro end your connection to the internet when the application is closed. This will end any connection you have made through any means.

• Disconnect only when application establishes connection. Select this option to have WS_FTP Pro end your connection to the internet when the application is closed, only when WS_FTP Pro made the internet connection in the first place.

Passive Mode

Normally, when you connect to an FTP site, the site establishes the data connection to your PC. However, some FTP sites allow passive transfers. This means that your PC establishes the data connection.

By default, passive mode is turned on in WS_FTP Pro; we recommend that you use it for transfers to and from FTP sites that support it. Note that passive mode may be required in the following instances:

• For users on networks behind some types of router-based firewalls

• Users on networks behind a gateway requiring passive transfers

• If transfers are erratic

• If you keep getting failed data channel or blocking call cancelled errors.

23ConnectionsWS_FTP Pro

Page 32: wsftp80

24

User’s GuideWS_FTP Pro
Page 33: wsftp80

Chapter 4: Transferring FilesTransferring means moving or copying files or folders between computers. If you transfer a file from your computer (local system) to an FTP Site (remote system) it is called an upload. If you transfer a file from a remote system to your local system, it is called a download. If you transfer between two remote sites, it is called a site to site transfer.

Ways to Transfer Files

WS_FTP Pro allows you several ways to transfer a file.

Using the Transfer Arrows

Select a file or folder and click the Upload or Download Arrow to transfer it. You can select multiple files by holding down the Ctrl button while selecting.

Drag and Drop

With a file or folder selected, click and hold your left-mouse button and drag the file to where you want it transferred to. You can select multiple files by holding down the Ctrl or Shift button while selecting. As you drag the file, your cursor changes.

When you release the mouse button, WS_FTP Pro attempts to transfer the file to that location.

Upload Arrow

Download Arrow

When your cursor looks like this, you are at a place where you can transfer a file.

When your cursor looks like this, you cannot drop a dragged file there.

Look for more information in the Transferring Files section of the Online help.

Restarting Transfers!

Some FTP Servers allow clients to restart transfers that have failed or been interrupted due to a lost connection, cancellation, or other reason.

For specific directions on this process, see the Transferring Files section of the Online help.

25Transferring FilesWS_FTP Pro

Page 34: wsftp80

26

Copy and Paste

Right-mouse click a file, then select Copy from the pop-up menu. Right-click where you want to transfer the file to, and from the right-mouse menu select Paste. WS_FTP Pro then attempts to make the transfer.

Batch Mode

If you want to transfer multiple files from different sites, you can put WS_FTP Pro in Batch Mode.

While in batch mode, WS_FTP Pro will add a request to the Transfer Manager, to be performed when you choose. If you want to make an immediate transfer while in Batch Mode, without having it go through the queue, select the file and drag it to the destination folder.

Using the Transfer Manager

The WS_FTP Pro Transfer Manager is used to view the progress of transfers, to schedule the transfer of multiple files, and to view logs for individual transfers. For more information, see “Chapter 7: WS_FTP Transfer Manager” on page 41.

Upload Wizard

The Upload Wizard is a utility that allows you to transfer files from your local system to a remote FTP site without using the WS_FTP Pro interface. There are two ways to access the Upload Wizard:

• In Windows Explorer, select the files or folders you want to upload, then right-mouse click on the list. In that list you will see 'Upload using WS_FTP Upload Wizard.' After selecting that option, the Upload Wizard appears with the files already added to the upload list.

Confirming Overwrites

Most sites allow you to overwrite or replace a file without giving you any kind of visual warning. Through WS_FTP Pro, you can set it up so that a dialog box is displayed to warn you that you are about to overwrite a file.

For specific directions on this feature, see the Transferring Files section of the Online help.

User’s GuideWS_FTP Pro

Page 35: wsftp80

• Select WS_FTP Upload Wizard from your Windows Start menu. This will open the Wizard ready for you to add the files you want to upload.

After the files are added to the Upload wizard, you will be asked to select a remote folder or enter a remote URL. This is where the files are uploaded to.

Hotdrop Folder

Hotdrops are shortcuts to remote directories that you can create anywhere on your local system. They appear as files with the extension .fhf.

If you click on the file, WS_FTP Pro launches and automatically connects to the site and navigates to the local and remote folders that you identify when you set up the hotdrop.

You can also drag files and folders to the icon and drop them. The files and folders will then be automatically uploaded to that site. The Transfer Manager appears to show the progress of the transfers.

Using Hotdrops

Hotdrops are excellent ways for you to quickly upload files without having to launch WS_FTP Pro. If you are updating a web site, think about placing a Hotdrop in your production folder. When you update a file, just drag it on the Hotdrop icon and it will be transferred to your site.

27Transferring FilesWS_FTP Pro

Page 36: wsftp80

28

Transfer Modes

There are three modes that WS_FTP Pro uses to transfer a file. Depending on the type of file, you may have to select this mode before you attempt to transfer a file.

These modes are called ASCII, Binary, or Auto. The following chart shows the icon that should be chosen for the described type of file.

Ascii Mode

A file that is text, HTML, postscript, other ASCII format (.txt, .html, .htm, .cgi), or EBCDIC should be transferred in ASCII mode. If you transfer a binary file in ASCII mode, you will not get the entire file.

Binary Mode

A file that is a bitmap, an executable, or compressed (.bmp, .jpg, .exe, .zip) should be transferred in binary mode. (Binary mode should also be used if there is no file extension or the file extension is not registered.) This is the default mode.

Auto Mode

If you turn on Auto mode, WS_FTP Pro checks to see if the file has an extension that is listed on the Extensions tab of the Options dialog. If so, ASCII mode is used; if not, binary mode is used.

Transfer Mode

User’s GuideWS_FTP Pro

Page 37: wsftp80

Automatic Retry

If the initial attempt to transfer a file fails, WS_FTP Pro can automatically retry the attempt a set number of times.

To set the Automatic retry:

1 From WS_FTP Pro, click the Options button.

2 Select the Transfers dialog.

3 In the Number of retries for failed transfers box, enter the number of times you want WS_FTP Pro to retry the transfer (0-99.)

Resuming a Failed Transfer

WS_FTP Pro can automatically resume interrupted transfers or transfer attempts when the application is started, if the WS_FTP Pro application is terminated while:

It is in the process of transferring a file or if it is still on the Transfer list (on the Transfer Manager) as a failed transfer.

To set this option:

1 From WS_FTP Pro, click the Options button.

2 Select the Transfers dialog.

3 Select the Automatically resume transfers when application starts option.

4 Click OK.

Multipart Transfers

When in Multipart mode, WS_FTP Pro will split large files into smaller and download all sections with different, yet concurrent, connections. This will decrease the amount of time it takes to download large individual files.

29Transferring FilesWS_FTP Pro

Page 38: wsftp80

30

The number of connections made is determined by the number of additional connections specified in the Site Profile, as well as the number of connections allowed by the server and the Number of parts used on multi-part transfers option on the Transfers dialog of Program Options.

The Transfer Manager will display the file, the number of segments that the file has been divided into, and the status of the transfer of each of the segments. When each of the segments are complete, the Transfer Manager will show the status of the re-combining of the files, if that process takes longer than 2 seconds.

If there are no segments listed under the file being transferred, than the file is not large enough to be divided.

Note: Multipart does not work with SSH connections or with uploads.

To use Multipart mode, click the Multipart mode button on the WS_FTP Pro toolbar.

User’s GuideWS_FTP Pro

Page 39: wsftp80

Chapter 5: Managing Files and Folders

This chapter deals with using WS_FTP Pro to manage files and folders on both local and remote systems. Managing files and folders includes:

• Viewing and navigating

• Working with files and folders

Viewing and Navigating

WS_FTP provides many tools and techniques for viewing and navigating files and folders.

This section points out various structures on the WS_FTP Pro window that allow you to view files and folders, and to navigate both local and remote systems.

The Address bar displays the complete path to the FTP site directory you are currently connected to.

The left side of the WS_FTP Pro window shows your local system, and where on that system you are. The Local Directory listing displays everything that is visible in the folder identified in the Local System box.

Look for more information in the Viewing and Navigating section of the Online help.

Local System

Display Icon

Up one Level

Remote System

Address Bar

Remote Directory

Local Directory

Refresh ButtonsChange Directory Button

31Managing Files and FoldersWS_FTP Pro

Page 40: wsftp80

32

Click the folder next to the local system box to select a new folder on your local system.

The right side of the WS_FTP Pro window shows the Remote System (FTP site) you are connected to. The Remote Directory listing displays everything that is visible in the folder identified in the Remote System box.

The way these listings look can be changed by the Display Icons, and can be refreshed (to make sure you are looking at the most up-to-date list of files and folders) by clicking the Refresh button next to the directory list box.

Click the ChgDir (Change Directory) button to type in a folder or local drive you want to navigate to.

Thumbnails View

The thumbnails view lets you navigate remote folders with graphics displayed in smaller images called thumbnails. With this, you can see what is on the remote folder without having to remember the filename.

To use this view, select Thumbnails from the View menu.

There are two options on the Program Options: Display dialog that are important to this feature:

• Download images from remote server to create thumbnails. Select this option to have WS_FTP Pro download all images to create a thumbnails database for the remote server. If this option is cleared, WS_FTP Pro will only obtain thumbnails if the remote server already has a database.

• Synchronize remote thumbnails databases. Select this option to have WS_FTP Pro upload the thumbnails database to the server once it has been created locally. Any further changes to the image list will be updated in both the local and remote thumbnail databases.

Working with Files and Folders

WS_FTP Pro gives you a variety of features that make it quick and easy to organize, manipulate, and delete files and folders.

Look for more information in the Working with files and folders section of the Online help.

User’s GuideWS_FTP Pro

Page 41: wsftp80

The graphic below points out key features used during these tasks.

The Command buttons are very important to managing your files. You can change the order of the buttons, and which buttons appear using the Program Options: Command Bar dialog. The following is a description of the buttons that pertain to this section:

ChDir - Change Directory. The ChDir command offers one way for you to change to a directory on the current system.

MkDir - Make Directory. The Make Directory command allows you to create a folder/directory on your PC or on the FTP site if possible. (Not all FTP sites allow you to create folders; you must have an account on the site and "create" permissions.) When you select this command, you are prompted for a folder name that is valid for the current system.

View. The View command allows you to view a file. If you select a filename on an FTP site and then click View, the file is transferred to a temporary folder and is opened in the default text viewer.

Edit. The Edit feature allows you to edit remote files quickly and without having to actively transfer them first.

Append. The Append command allows you to select one or more files on the source system and transfer those files to the destination system, appending them to a destination file. (The source system is where the files are coming from.)

Files

Command buttons (Command Bars)

33Managing Files and FoldersWS_FTP Pro

Page 42: wsftp80

34

Execute. The Execute command allows you to open an application on a remote server. When you select this command, WS_FTP Pro downloads the file to a temp directory and runs the application associated with the file. If there is no association available, the user will be prompted with the ‘Open With’ dialog.

Rename. Use Rename to change the name of a selected file or folder.

Delete. The Delete command allows you to delete a file or folder on your PC or on the current FTP site, if you have the appropriate permissions. Remote files do NOT go to the Windows Recycle Bin.

DirInfo - Directory Information. The Directory Info command opens a text document that displays information about the current directory. This document opens in the default Text Viewer (as specified on the General tab of Program Options). WS_FTP displays as much information as the FTP site delivers. Depending on the site, for each file or folder within the current directory, the following information may be shown: size, type, permission, creation date, date last modified, and name.

Click and Drag for Organization

You can organize your files by clicking on the files and dragging them to the folder you want to move them to. This is not an FTP transfer when you move the file from one folder to another on the same system.

Active Edit

The active edit feature allows you to edit remote files quickly and without having to actively transfer them first. When you select a file and click Edit, the file will be opened in the application that it is associated with. If you want the file to be associated with an application other than the default application, you have to configure it on the Active Edit dialog.

User’s GuideWS_FTP Pro

Page 43: wsftp80

To configure an extension for active edit:

1 From the Program Options, select the Active Edit dialog.

2 Click Add to add a new entry, or select one from the list and click Edit. The Active Edit Properties dialog appears.

3 Enter the extension or extensions separated by commas.

4 In the Editor box, select or enter the path to the application that you want to open the file in.

5 Click OK. The extensions appear on the list.

35Managing Files and FoldersWS_FTP Pro

Page 44: wsftp80

36

Changing the File Permissions for UNIX Sites

You can change permissions for a file or folder on a UNIX FTP site, provided you have permission.

1 Select the file or folder and select Properties from the right-mouse menu,

2 Select the desired options by clicking the appropriate check boxes.

3 Click the OK button.

Background Information

The table below shows how WS_FTP Pro check box options correspond to the possible values for Owner, Group, and Other as viewed in the ten-position value in the first column of a directory list for a UNIX site.

In the directory list, the first position indicates whether the item is a file (-, s, S, or t) or directory (d), while positions two through ten show the permissions for Owner, Group, and Other.

If you attempt to change permissions, check the message area or the log to see if you were successful.

Selected options in WS_FTP Pro

Permissions in directory list

none ---Execute --xWrite -w-Write, Execute -wxRead r--Read, Execute r-xRead, Write rw-Read, Write, Execute rwx

User’s GuideWS_FTP Pro

Page 45: wsftp80

For example, find drwxr-x--x in the directory list. This expression is comprised of four parts:

d rwx r-x --xFirst position indicates whether item is a file (-,s,S, or t) or directory (d)

Positions 2-4indicateOwner

permissions:read, write,

execute.

Positions 5-7 indicate Group permissions:

read and execute.

Positions 8-10 indicate Other permissions: execute only.

37Managing Files and FoldersWS_FTP Pro

Page 46: wsftp80

38

User’s GuideWS_FTP Pro
Page 47: wsftp80

Chapter 6: Explorer InterfaceThis chapter explains some of the differences in how the Explorer interface works as opposed to the Classic interface of WS_FTP Pro.

Overview

The following graphic points out key features in the Explorer Interface that make it different from the Classic Interface. The graphic represents the appearance of the interface after you make a successful connection to an FTP server.

Using the Explorer Interface

The following describes how to get started using the Explorer Interface.

Configuring a Site

Before making a connection, you must either select a preconfigured site, or configure a new site. To configure a new site:

Display button changes the way the files are displayed.

This pane displays the remote directory when connected to an FTP site, or local files when a local folder is selected.

The site icon changes when connected.

Site Icon

Site folders. The + means that there are configured sites in the folder.

The status bar displays the current state of the interface.

My Computer. Select this item to view your local system and mapped drives.

Look for more detailed information in the Online Help. Most sections are applicable to the Explorer Interface.

39Explorer InterfaceWS_FTP Pro

Page 48: wsftp80

40

1 Select the folder you want the site configured in.

2 Click the New Site icon on the toolbar.

3 Follow the directions on the dialog to create a new site.

4 Click Finish once you have gone through the process.

Once you click Finish, the site will be added to the folder.

Making a Connection

Once you have a site configured, you can connect to the site. To do this, all you have to do is click on the site name in the left-pane. If the settings are correct, and the FTP site is accepting connections, the right-pane will display the remote directory once connected.

NoteThe Explorer interface allows multiple connections to remote servers at the same time.

Transferring Files

Transferring files in the Explorer Interface is very much like the drag-and-drop feature of the Classic interface. To transfer a file:

1 Connect to a site.

2 Move to the directory that holds the file you want to upload, or to the directory in which you want to place a downloaded file.

3 Select the file or folder you want to transfer (You can select multiple files by holding down the Ctrl key while you click on a file.) Files to be uploaded can be selected from the desktop or from the mapped drives in the Explorer Interface (above the sites list).

4 With the file(s) selected, drag them to where you want them transferred to. If you are uploading them, drag them to your remote directory on the FTP site. If you are downloading the files, drag them to your desktop or to the directory you want them in.

User’s GuideWS_FTP Pro

Page 49: wsftp80

Chapter 7: WS_FTP Transfer ManagerThis chapter includes the following topics:

• What is the Transfer Manager?

• Transfer Manager Dialogs.

What is the Transfer Manager?

The WS_FTP Pro Transfer Manager is the module of WS_FTP Pro that performs transfers. It is also useful to users as a tool that lets them view the progress of transfers, to schedule the transfer of multiple files, and to view logs for individual transfers.

Transfer Manager Dialogs

The following sections describe each of the dialogs and tabs that are encountered while using the Transfer Manager.

Transfer Manager Transfers Tab

The Transfer Manager dialog displays a list of all pending, paused, and failed transfers. To access this dialog from either WS_FTP Pro interface: From the View menu, select Transfer Manager.

• Source. The path and name of the file or folder that is to be transferred.

• Status. The current status of the listed item.

• Transferred. The number of bytes transferred.

• Rate (KB/S). The number of Kilobytes being transferred per second.

• Size. The actual size of the file in bytes.

• Time Left. The estimated time left until the transfer is complete.

Use the Batch Mode.

You can use the Batch Mode to add requests to the Transfer Manager (Classic Interface only.)

Batch mode (Classic Interface only)

1 Connect to an FTP server.

2 Click the Batch Mode button.

3 Select a file or files and click the transfer arrow. The file will be placed in the FTP Transfer Manager.

4 Once you have added all of the files to the ‘batch,’ click the Batch Mode button to take WS_FTP Pro out of batch mode.

5 In the Transfer Manager, select the requests you want to execute. Hold down the Ctrl key to select multiple requests.

6 Once you take the client out of batch mode, it will execute the transfers.

How to...

Start Button Pause Button

41WS_FTP Transfer ManagerWS_FTP Pro

Page 50: wsftp80

42

Transfer Manager History Tab

The History tab of the Transfer Manager displays a list of successful transfers. This list can be sorted by clicking on the column headers.

• Transfer Arrow. The arrow on the far left side of the item identifies what type of transfer was performed. An up arrow means upload, a down for download, and a left-right arrow is for site to site transfers.

• Date. This is the date and time the transfer was completed.

• Source. This is the site profile that was used to connect to the source.

• Source Path. The path on the source directory from the root to the transferred item.

• Source File Name. The name of the source file that was transferred.

• Destination. The site profile and folder that was used to connect to the destination.

• Destination Path. The path on the destination directory from the root to where the transferred item was placed.

• Destination File Name. The name of the file after it has been transferred.

• Size. The number of bytes transferred.

Executing a file

Once a file is successfully transferred, you can select it and choose Execute from the History menu. If it is a download, the destination file will be opened in its associated application. If it is an upload, the source file will be opened.

How to...Pause a transfer

To pause an active transfer from the Transfer Manager:

1 Select the entry.

2 From the Transfers menu, select Pause.

You can also click the Pause button next to the status column.

How to...Remove an itemTo remove an item from the Transfer Manager:

1 Select the file you want removed.

2 From the Transfers menu, select Delete.

User’s GuideWS_FTP Pro

Page 51: wsftp80

Clearing the History

You can remove items from the history list by selecting them and choosing Delete from the History menu.

You can remove all items by selecting Clear All from the History menu.

Request Properties

You can double click any item on the Transfer Manager dialog to view the Request Properties dialog for that item.

The following information appears on the File Properties dialog.

• Elapsed Time. The amount of time that has passed since the transfer began.

• Contains. Number of files and folders contained in the request. (Only displayed when a folder is selected)

• Transferred Bytes. The number of bytes transferred.

• Transfer Rate. The number of Kilobytes being transferred per second.

• Transfer Mode. The mode the file was transferred in.

• Attempts. Number of times the application tried to make the transfer.

• Operation. The type of transfer being performed. Either Upload or Download.

• Status. The current status code of the listed item.

• Source. The path name of the source of the transfer.

• Destination. The path name of the destination of the transfer.

How to...Schedule a transferTo schedule a transfer from the Transfer Manager:

1 Select a request, file, or folder.

2 From the Transfers menu, select Schedule.

3 In the Schedule Item Properties dialog, the date, time, and frequency of the transfer.

4 Click OK to add the item to Scheduler.

43WS_FTP Transfer ManagerWS_FTP Pro

Page 52: wsftp80

44

Log Window

To view the log for an item, select the item, then from the View menu, select Log.

The log window will contain all actions that have been initiated for the selected transfer request, including pause and resume.

Refer to Appendix B for descriptions of error messages that may appear in the log.

Operation After Transfers

The Operations After Transfers submenu can be found on both the Transfers and History menus. This submenu allows you to select the following operations.

Exit Application. After the application finishes all active or scheduled transfer requests, WS_FTP Pro will close itself.

Shutdown Computer. After the application finishes all active or scheduled transfer requests, WS_FTP Pro will attempt to shut the computer down.

User’s GuideWS_FTP Pro

Page 53: wsftp80

Chapter 8: Security

This chapter describes the two security protocols found in WS_FTP Pro: SSL and SSH. It also explains how to configure WS_FTP Pro to use these protocols to make secure connections.

SSL

SSL (Secure Socket Layer) is a protocol for encrypting and decrypting data sent across direct internet connections. When a client makes an SSL connection with a server, all data sent to and from that server is encoded with a complex mathematical algorithm that makes it extremely difficult to decode anything that is intercepted.

The following is a step by step illustration of how SSL works.

Step 1. The client makes the initial connection with the server and requests that an SSL connection be made. If Implicit SSL is used, the initial connection will be encrypted. If Explicit is used, the initial contact will be ‘in the clear.’

Step 2. If the server is properly configured, the server will send to the client its certificate and public key.

Step 3. The client compares the certificate from the server to a trusted authorities database. If the certificate is listed there, it means the client trusts the server and will move to step 4. If the certificate is not listed there, the user must add the certificate to the trusted authorities database before going to step 4.

45SSL UtilityWS_FTP Pro

Page 54: wsftp80

46

Step 4. The client uses that public key to encrypt a session key and sends the session key to the server. If the server asks for the client’s certificate in Step 2, the client must send it at this point.

Step 5. If the server is set up to receive certificates, it compares the certificate it received with those listed in its trusted authorities database and either accepts or rejects the connection.

If the connection is rejected, a fail message is sent to the cli-ent. If the connection is accepted, or if the server is not set up to receive certificates, it decodes the session key from the cli-ent with its own private key and sends a success message back to the client, thereby opening a secure data channel.

The key to understanding how SSL works is in understanding the parts that make SSL itself work. The following is a list of these parts and the role each plays.

Client. In this case, the client is WS_FTP Pro.

Certificate. The Certificate file holds the identification information of the client or server. This file is used during connection negotiations to identify the parties involved. In some cases, the client’s certificate must be signed by the server’s certificate in order to open an SSL connection. Certificate files have the .crt ending.

Session Key. The session key is what both the client and the server use to encrypt data. It is created by the client.

Public Key. The public key is the device with which the client encrypts a session key. It does not exist as a file, but is a by-product of the creation of a certificate and private key. Data encrypted with a public key can only be decrypted by the private key that made it.

Private Key. The private key decrypts the client’s session key that is encrypted by a public key. The private key file has the .key ending. Private keys should NEVER be distributed to anyone.

Certificate Signing Request. A certificate signing request is generated each time a certificate is created. This file is used when you need to have your certificate signed. Once the Certificate Signing Request file is signed, a new certificate is made and can be used to replace the unsigned certificate.

User’s Guide

WS_FTP Pro

Page 55: wsftp80

How to make an SSL connection

To make an SSL connection with a server configured for SSL.

1 Create a site profile and select either FTP/Implicit SSL or FTP/SSL (AUTH SSL) when asked for the server type.

2 After you click Connect, WS_FTP Pro tells the server that you want to make an SSL connection. The server then transmits to you an identifying certificate, letting the client know who the server is. If that certificate is already listed in your Trusted Authority database, the connection is made.

3 If that certificate is not listed as a trusted authority, the Non-Trusted Authority dialog box appears.

4 Select the option you need and click OK. If the server does not require a certificate to be returned, the secure connection will be established. All data transmitted between you and the server will be encrypted.

If the server you are attempting to make a connection to asks WS_FTP Pro to send back a certificate, follow the direction for Client Certificate Verification.

Client Certificate Verification

If the server you are attempting to make a connection to requires your client to send an identifying certificate back to the server, you must:

1 Configure the site and select either FTP/Implicit SSL or FTP/SSL (AUTH SSL) when asked for the server type.

2 Create a certificate. Refer to the section “Generating a Certificate” on page 48 for more information.

3 Send the Certificate Signing Request file to your server administrator.

4 Once the server administrator signs the Certificate Signing Request, it will be sent back to you.

5 When you receive the file, follow the directions for “Selecting a Certificate” on page 50, selecting the new certificate to go in the Certificate box.

6 Connect to the server.

47SSL UtilityWS_FTP Pro

Page 56: wsftp80

48

Generating a Certificate

To create an SSL certificate:

1 From the Program Options, select Client Certificates.

2 Click Create. The Create Client SSL Certificate wizard appears.

3 Enter a name in the Certificate box. This will be the name of the certificate that is generated by WS_FTP Pro.

4 Select a date you want the certificate to expire.

5 Enter and then reenter a pass phrase for this certificate. The pass phrase is used to encrypt the private key.

NoteIt is important to remember this pass phrase. The pass phrase can be any combination of words, symbols, spaces, or numbers.

6 Click Next to continue.

7 Enter information in all of the Certificate Information boxes:

City/Town. City or town where you are located. (Ex. Augusta)

State/Province. State or Province where you are located. (Ex. Georgia)

Organization. Company or individual user name.

User’s Guide

WS_FTP Pro

Page 57: wsftp80

Common Name. This can be either the name of the person creating the certificate or the fully qualified domain name of the server associated with the host.

E-mail. E-mail address of the person the certificate belongs to.

Unit. Name of organizational unit. (Ex. Research and Development)

Country. The country you are in. This must be a valid two letter country code. (Ex. US)

8 After all of the boxes are filled in correctly, click Next to continue. If all of the boxes are not filled in, you cannot continue.

9 Review the information on the last dialog and click Finish to create the certificate.

If you are creating a certificate to be used by WS_FTP Pro, you should send the certificate signing request (by E-mail) to your server administrator. If they require it, they will sign the certificate and return it to you. Once you receive the certificate, you must import it into your certificate database.

Importing a Certificate

To use a certificate sent to you, or one you have generated by WS_FTP Server, you must import the certificate into your certificate database.

To import a certificate

1 On the Program Options: Client Certificates dialog, click the Import button. The Import Certificate wizard appears.

2 Click the Browse (...) button to select the certificate file.

3 Click Next.

4 Click the Browse (...) button to select the private key file for that certificate.

5 Click Next.

6 Enter the pass phrase that was used to create that certificate.

7 Click Next.

49SSL UtilityWS_FTP Pro

Page 58: wsftp80

50

8 Enter the name that you want to use to identify the certificate on your certificate list.

9 Click Next.

10 Review the information on the final dialog and click Finish to add the certificate to the list.

Selecting a Certificate

Certificates are used on the site level, meaning that you must select a certificate for each site profile that you create (you can use the same certificate for all of your sites if you wish.)

Certificates are selected on the Site Options: SSL dialog by choosing the certificate name from the Client certificate pull-down list. The pull-down list displays all certificates in the Program Options: Client Certificate dialog.

Trusted Authorities

The Trusted Authorities dialog stores a list of certificate names that are trusted by the user.

User’s Guide

WS_FTP Pro

Page 59: wsftp80

Certificate Display:

Issued To. Who the certificate was issued to.

Issued By. Who the certificate was signed by.

Expires. Date on which the certificate expires.

Adding a Certificate

To add a certificate to the database:

1 Click the Import button and select the path and file name for the certificate. The Add Certificate? dialog box appears.

2 Review the information on that dialog box and click Yes to add the certificate to the database.

Exporting a Certificate

To export a certificate from the Trusted Authorities database:

1 Select the certificate you want to copy out of your database.

51SSL UtilityWS_FTP Pro

Page 60: wsftp80

52

2 Click the Export button.

Select the folder you want to copy the certificate to and enter the name you want to save the certificate file as.

3 Click OK.

Removing a Certificate

To remove a certificate:

1 Select the certificate to be removed.

2 Click Remove.

3 A warning appears advising you to export the certificate before you remove it. Removing the certificate deletes the certificate file.

4 Click OK to remove the certificate.

Non-Trusted Certificate

When you connect to a server using the SSL connection option, that server sends you a certificate. If that certificate is not listed on the Trusted Authority tab, or if it was not signed by a certificate on this list, this dialog box appears.

Certificate Information:

Issued To. Name of the person or company who the certificate belongs to.

Issued By. Name of the person or company who signed the certificate.

User’s Guide

WS_FTP Pro

Page 61: wsftp80

Active From. The date on which this certificate was activated.

Expires On. The date the displayed certificate will no longer be a valid certificate.

Options

Allow this connection only. If this option is selected, the connection will be made, but WS_FTP Pro will still not recognize the certificate as a trusted authority. The next time you attempt to connect to this server, this dialog box appears once again.

Trust this certificate. If this option is selected, the connection will be made and the certificate will be added to the trusted authority database in the Trusted Authority tab, so future connections can be made without you being prompted.

Do not allow this connection. If this option is selected, the connection will be terminated.

SSH

SSH (Secure Shell) is a security protocol that allows you to make a secure connection to a server that has the SSH and SFTP (Secure File Transfer Protocol) protocols installed. Where FTP servers usually ‘listen’ on port 21 for connection, SSH servers use port 22.

Where explicit SSL attempts to make a connection with unencrypted channels, SSH encrypts all communications to and from the client and server. When an SSH connection is made, SFTP is the protocol that is used to perform all tasks on that single secure connection.

How to make an SSH connection

Making an SSH connection requires little additional configuration to new or your existing site profiles.

When creating a new site profile through the New Site Wizard, simply change the Server Type to SFTP/SSH when prompted by the wizard.

If editing an existing site profile:

1 Select the site from the configured sites list.

2 Click the Edit button.

53SSL UtilityWS_FTP Pro

Page 62: wsftp80

54

3 Click the Advanced tab.

4 In the Server type pull-down, select SFTP/SSH.

5 Click OK.

When you use that profile to make a connection, the client will automatically attempt to make an SSH connection on port 22 of that server.

SSL vs. SSH

With both SSL and SSH, it is up to the administrator of the server you are trying to make a connection with to tell you which server type is being run at that address. If you do not know, and attempt to make an SSL connection or an insecure connection to an SSH server, the connection will fail, even if you change the port to 22 in the Site Profile.

Using a NAT Firewall

When using a NAT (Network Address Translation) firewall, you may encounter problems when trying to use SSL encryption. To fix this, you should configure WS_FTP Pro and the firewall to allow incoming connections to your PC. Pro needs to tell the server to connect to the external IP address, and the firewall should forward these incoming connections to your PC. You should also limit the number of ports that the firewall opens for these connections. In many cases, this will allow you to use SSL through a NAT firewall.

To configure SSL through a NAT Firewall:

1 From the Program Options, select the SSL dialog.

2 Select the Force PORT IP Address option.

3 Enter the IP Address of the client’s NAT firewall.

4 Select the Limit Port Range option.

5 Enter the Minimum and Maximum port range.

6 Click OK.

User’s Guide

WS_FTP Pro

Page 63: wsftp80

Chapter 9: Synchronizing Files and Folders

The WS_FTP Synchronize Utility lets you synchronize (or “mirror”) directory structures between your system and a remote FTP server with minimal intervention.

It lets you keep remote sites up-to-date by automatically uploading files which have changed while deleting files that have been removed from the master directory. This is especially useful for quickly and efficiently updating Web sites.

This chapter gives an overview of the Synchronize Utility and some examples of how you might use it. For detailed instructions on using the Synchronize Utility, start the Synchronize Utility and use its online Help.

Using the Synchronize Utility

Start the Synchronize Utility by doing one of the following:

• From the Tools menu, select Synchronize....

• Click the Windows Start button and select Programs -> WS_FTP Pro -> WS_FTP Pro Synchronize Utility.

Synchronize Dialog

This is the main dialog of the WS_FTP Pro Synchronize utility. When using this dialog, you are creating a control file that will be used to perform the synchronization of the locations that you identify.

The following are the features found on this dialog:

• Locations. The locations section is where you identify the directories that you want to synchronize. Click the Browse (...) button to choose the directory for Location 1 and Location 2. Location 1 can be local or remote. Location 2 must be a remote directory.

• Top level only. Select this option to have the locations synchronized on the top level only. All subdirectories will be ignored.

55The Synchronize UtilityWS_FTP Pro

Page 64: wsftp80

56

• Show files/folders that won't be transferred. Select this option to have Sync display files with the No Action action code in the Compare dialog.

• Visual compare only (no transfer). Select this option to have Sync populate the Compare dialog without executing the synchronize job. Once you are on the Compare dialog, you can make changes to what tasks the job will perform.

• Show FTP conversation in log. Select this option to show the FTP conversation in the generated log file, as well as the log pane on the Compare dialog.

• Modes. Select the mode you want Sync to operate in.

• Synchronize Location 1 --> Location 2. This mode updates Location 2 so that it matches the directory structure of Location 1.

• Synchronize Location 1 <-- Location 2. This mode updates Location 1 so that it matches the directory structure of Location 2.

• Synchronize both Location 1 <--> Location 2. This mode makes each location match the other by copying the newest versions of Location 1 files to Location 2 and by copying the newest versions of Location 2 files to Location 1.

• Customized mode. Allows you to set the actions you want the utility to perform when files are found with a specific status.

• Status and Actions. This section is to be used when you have chosen the Customized mode. The Status is the current state of the comparison, and the Action is what WS_FTP Pro Synchronize will do when it finds an item with that status.

• Only on Loc1. The file is only found in Location 1.

• Newer on Loc1. The file found in Location 1 is newer than the file found in Location 2.

• Same on both. The file found is the same in both locations.

• Newer on Loc2. The file found in Location 2 is newer than the file found in Location 1.

• Only on Loc2. The file is only found in Location 2.

User’s Guide

WS_FTP Pro

Page 65: wsftp80

• Exclusions. See “Exclusion Examples” on page 60 for more information.

• Buttons. The buttons control the various functions of the utility.

• Open. Click this button to open a control file.

• Save. Click this button to save your current settings as a control file.

• Schedule. Click this button to schedule the sync job through WS_FTP Scheduler.

• Execute. Click this button to execute the sync job. If the Visual compare only (no transfer) option is selected, the Compare dialog will show what is going to happen, but no transfers will be made.

• Exit. Click this button to close the application.

Example

The following is an example of how you might use the WS_FTPSynchronize Utility.

When you click the Execute button, the control file named ipswitch.ctl (the name is displayed in the title bar for the dialogue) is executed according to the parameters set on the WS_FTP Synchronize Utility screen:

• Synchronize makes a connection with the FTP site defined in the Location 2 box and logs on with the information stored on the site profile.

57The Synchronize UtilityWS_FTP Pro

Page 66: wsftp80

58

• Once the connection is made, the program navigates to the ‘/ipswitch’ directory on the FTP site and the ‘C:\WS_FTP Pro’ directory on your local system as defined in the Location 1 box.

• According to the options selected, Location 1 is to be updated with all files found in Location 2.

• If you want to schedule this task to run on a regular basis, or at a certain time of day, click the Schedule button. The Schedule Item Properties dialog appears. Use this dialog to set the time, date, and frequency of the synchronize job. For more information on using the WS_FTP Scheduler, see “Using the Scheduler” on page 73.

• Since the Visual compare only option is selected, the transfers will not be executed, but the Compare dialog will appear comparing the two locations, and displaying potential actions to be taken by the utility. You can change the actions to be performed on this dialog, then click Execute to start the process.

Using a Control File

WS_FTP Pro Synchronize uses 'control files' to store configuration options and settings for your synchronize jobs. This saves you from having to go through setting up a job each time you want to run it.

User’s Guide

WS_FTP Pro

Page 67: wsftp80

To create a control file:

1 Choose a directory for both Location 1 and Location 2. You can type in a local directory in either box, or click the Browse (...) button to choose a remote site from a site profile, or a local folder. Click the Local tab on the Folder Selection dialog to choose a local folder.

2 Select the options you want to use.

3 Select the mode you want to execute.

4 Review the Status and Actions that will perform and make any adjustments you need to make. If you make an adjustment, your status will be changed to Customized.

5 Identify any Exclusions you may have.

6 Click Save to save the control file.

You will now be able to use that control file anytime you use Sync.

Exclusions

With the Exclusion system, you can enter a file name, file extension, or search string to have WS_FTP Synchronize ignore any files that match the string. Wildcards (* and ?) can be used for unknown file names or several files of a similar name or type.

To add an exclusion

1 Click the Add button in the Exclusions section of the dialog. The Exclusion dialog appears.

2 In the Exclusion dialog, enter what you want to exclude in the Rules box. If you are using the Absolute location type, you can click the Browse (...) button to select the file or folder.

3 In the Type box, select what type of item you want to apply the exclusion to:

• Apply to files. If you want to apply the exclusion to files only.

• Apply to folders. If you want to apply the exclusion to folders only.

• Apply to both. If you want to apply the exclusion to both files and folders.

59The Synchronize UtilityWS_FTP Pro

Page 68: wsftp80

60

• Absolute location. If you want to apply the exclusion to a specific file or folder in a specific location.

4 Click OK to add the exclusion to the list.

Exclusion Examples

Here are a few examples of exclusions, followed by an explanation of each.

Absolute file exclusions

Exclusion rule: /mydir/*.exeType: Absolute location

This will exclude all .exe files in the mydir remote directory, but the path is taken from the root of the remote system.

Exclusion rule: c:\mydir\*.exeType: Absolute location

This will exclude all .exe files in the c:\mydir local directory.

Exclusion rule: /mydir/nextdir/myfil?.*Type: Absolute location

This will exclude any file beginning with myfil with one arbitrary character and any extension in the directory /mydir/nextdir.

Absolute directory exclusion

Exclusion rule: /m?dirType: Absolute location

This will exclude all directories that match the mask m?dir, but the path is taken from the root of the file system. The ? is a substitute for any single character.

Exclusion rule: c:\m?dirType: Absolute location

This will exclude all directories on the c: drive that match the mask m?dir. The ? is a substitute for any single character.

User’s Guide

WS_FTP Pro

Page 69: wsftp80

Relative directory exclusions

Exclusion rule: mydirType: Apply to folders

This will exclude any directory named mydir anywhere in the file system.

Exclusion rule: m*irType: Apply to folders

This will exclude any directory that matches the mask m*ir from anywhere in the file system. The * means that the name can have any number and value of character in between the "m" and the "ir."

Relative file exclusion

Exclusion rule: mydir\*.exeType: Apply to files

This will exclude any .exe files in any directory named mydir anywhere in the file system.

Relative file/folder exclusion

Exclusion rule: ~*Type: Apply to both

This will exclude any file or folder starting with the ~ character, anywhere in the file system.

Using the Synchronize Utility from the Command Line

The Synchronize Utility has been designed to be a command line utility that can be scheduled and run unattended. To do this, you must first use the user interface to set up and test a control file for the synchronization task.

Once this has been done, you can run the Synchronize Utility directly from the command line by using the following syntax:

ftpsync controlfile.ctl

61The Synchronize UtilityWS_FTP Pro

Page 70: wsftp80

62

You can also add this command to a batch file and schedule it using WS_FTP Pro Scheduler. For more information on using command line batch files, see “Using a Batch File” on page 85. For more information on using the WS_FTP Scheduler, see “Using the Scheduler” on page 73.

User’s Guide

WS_FTP Pro

Page 71: wsftp80

Chapter 10: The Find Utility

The WS_FTP Find Utility lets you search an FTP site for files that match your criteria, and then transfer the found files to your PC. This is especially useful for anyone who is looking for one particular file on a large, complex FTP site.

This chapter gives an overview of the Find Utility and some examples of how you might use it. For detailed instructions on using the Find Utility, start the Find Utility and use its online Help.

Using the Find Utility

To find a file on an FTP site:

1 Start the Find Utility by doing one of the following:

• From the Tools menu, select Find.

• Click the Windows Start button and select Programs -> WS_FTP Pro -> WS_FTP Find Utility.

2 Use the Look in list box to select a site previously searched or click the Browse button to specify the site to which you will connect and search. You can also type in a host name or FTP URL.

3 Enter your search criteria. You can search by name, date modified, size, or any combination of the three.

4 Click Find Now. The Find Utility connects to the FTP site and searches according to your criteria.

63The Find UtilityWS_FTP Pro

Page 72: wsftp80

64

For example, if you search the Ipswitch FTP site for a file named filelist.txt, the following results are displayed.

Using the Search Results

Once you locate a file on an FTP site, you can:

• Transfer it.

• Schedule it for transfer at a later time, by selecting Send to Scheduler from the right-mouse menu.

To transfer a file:

1 In the dialog box above, select the file you want to transfer, and select Transfer from the right-mouse menu. A browse window appears.

2 Select the folder to which you want to download the file.

The search found this file.

User’s Guide

WS_FTP Pro

Page 73: wsftp80

Examples

The following are examples of different types of searches.

Finding a File When You Are Not Sure of Its Name

The graphic below shows how to search for a file when you are not sure of the correct full name. In this case, the name begins with ws_f, but the rest of the name is unknown. The * at the end is a “wildcard” that takes the place of the missing characters. When this search is run, the Find Utility locates every file on the site that begins with ws_f.

The results of the search are shown below.

Search text

65The Find UtilityWS_FTP Pro

Page 74: wsftp80

66

You can also use wildcard characters (* and ?) at the beginning of a name if you are unsure about the beginning characters. For example, searching for *.exe returns all files ending with the .exe file extension.

Finding a File Modified During a Specific Time Period

To search for a file modified during a specific time period, click the Date Modified tab and set the options you need. In the example below, the WS_FTP Find Utility will search for all files modified between April 10, 2001 and April 20, 2001.

Finding a File in a Particular Folder

If you know the name of the folder in which the file you are looking for is stored, you can narrow your search by having the Find Utility look only in that folder.

User’s Guide

WS_FTP Pro

Page 75: wsftp80

To locate a particular folder:

1 Click the Browse button next to the Look In field to connect to the selected site and display a list of the available folders.

2 Select the folder that you want to search.

3 Click OK. The Look In box is filled in with the path of the selected folder.

4 Click Find Now to search through the files in that folder.

Finding a File Smaller Than a Certain Size

If you want to limit the size of the files found in a given search, enter the FTP site and file name on the Name & Location tab, then click the Advanced tab.

In the Size is box, you can select At least or At Most then enter the file size in kilobytes in the KB box.

67The Find UtilityWS_FTP Pro

Page 76: wsftp80

68

User’s Guide

WS_FTP Pro

Page 77: wsftp80

Chapter 11: Scripting

The WS_FTP Scripting Utility allows you to group any number of file transfer tasks into a script that can be executed with one action. This can be especially useful for file transfers that you do repeatedly.

This chapter gives an overview of the Scripting Utility and some examples of how you might use it. For detailed instructions on using the Scripting Utility, start the Scripting Utility and use its online Help.

Using scripts, you can:

• Connect to FTP sites

• Upload or download files

• Set the transfer mode

• Make, delete, and rename folders

• Delete and rename files

• Execute a DOS command

Scripts can also have some limited flow control. They can:

• Check for the success or failure of the previous command

• Jump to another point in the script if either success or failure is detected

Suppose you post weekly reports on your company’s FTP server for your co-workers in other cities to download. Let’s assume you place the current week’s reports in a folder named Current. You could create a script that:

• Changes the name of last week’s Current folder to Prior.

• Creates a new folder named Current.

• Uploads your current weekly reports to the Current folder.

You can also create scripts for downloads that you do repeatedly.

69The Scripting UtilityWS_FTP Pro

Page 78: wsftp80

70

Using Scripting

Start the Scripting Utility by doing one of the following:

• From the Tools menu, select Script.

• Click the Windows Start button and select Programs -> WS_FTP Pro -> WS_FTP Pro Scripting Utility.

Writing and Debugging Scripts

To write and/or debug a script, start the Scripting Utility.

The Script Editor/Debugger window appears.

An MS-DOS window is automatically opened behind the Editor/Debugger window to show you the output of SHELL commands.

Executing Scripts

You can execute scripts from either the Command Prompt or from the Scripting Utility itself.

Executing a Script from the Command Prompt

Go to the Command Prompt and type ftpscrpt followed by the appropriate command line parameters. For example:

ftpscrpt -f script1.scp

There are other parameters you can use with the ftpscrpt command. For detailed information, go to the Scripting Utility online Help and see “Executing Scripts.”

To be able to run a script from any location on your hard disk, we recommend that you place the Scripting Utility folder in the Path statement in your Autoexec.bat file – if you are running Windows 98, Windows ME, and Windows XP. If you’re using Windows NT or Windows 2000, add the WS_FTP Pro folder to the path variable in the System Environment.

User’s Guide

WS_FTP Pro

Page 79: wsftp80

Running a Script from the Scripting Utility

To run a script from the Scripting Utility, start the utility, open the script, and click Go.

Example

In the following example, the script:

1 Turns on the Trace command to send detailed information to the transfertrace.txt file.

2 Creates a log called transferlog.txt in the C:\ directory.

3 Logs onto the server with the user name sdavis.

4 Logs onto the server with the password fourthandgoal.

5 Connects to the FTP server ftp.mywebprovider.com.

6 Changes the remote directory to /user/sdavis/images.

7 Changes the local directory to C:\My Documents\My Pictures

8 If the MGET is successful, the script executes the FILEDELETE label.

9 If the MGET fails, the script executes the DISCONNECT label.

10 All files ending in .jpg are copied from the remote directory to the local directory.

11 This line identifies the FILEDELETE label.

12 All files ending in .jpg are deleted from the /user/sdavis/images remote folder.

13 This line identifies the DISCONNECT label.

14 Disconnects from the FTP server.

71The Scripting UtilityWS_FTP Pro

Page 80: wsftp80

72

User’s Guide

WS_FTP Pro

Page 81: wsftp80

Chapter 12: Scheduler

The WS_FTP Pro Scheduler lets you create FTP tasks or “jobs” for transfers that you need to perform repeatedly or manually at a particular time. Each task can consist of any number of uploads and downloads of files and folders.

This chapter gives an overview of the Scheduler and some examples of how you might use it. For detailed instructions on using the Scheduler, start the Scheduler and use its online Help.

Using the Scheduler

To access the Scheduler window, do one of the following:

• Select WS_FTP Scheduler from the Tools menu in the WS_FTP Pro Classic interface.

• Click the Windows Start button and select Programs -> WS_FTP Pro -> WS_FTP Pro Scheduler.

Once you are in the Scheduler window, you are ready to set up a file transfer task. You can:

• Add a pre-existing script to run at a particular time. (For more information on creating scripts, see “Chapter 11: Scripting” on page 69.)

• Drag and drop a file from the WS_FTP Pro Classic or Explorer Interface to the Scheduler window to create an upload task.

• Create a new transfer/custom task.

• Modify or delete tasks.

The WS_FTP Pro Scheduler will run the task at the time you schedule it to run, or you can make the task run on demand by using the Run Now option.

73SchedulerWS_FTP Pro

Page 82: wsftp80

74

Examples

The following are examples of how you might use the WS_FTP Scheduler.

Adding a Script to the Scheduler

To add a script to the scheduler:

1 From the File menu, select New > Custom.

A Schedule Item Properties dialog appears.

2 In the Start Date and End Date boxes, set the dates for when you want this recurring task to begin and when you want it to end.

3 In the Start Time box, enter the time of day you want the task to be run.

4 In the Executable box, enter the full path to the ftpscript.exe application.

5 In the Command box, enter -f followed by the full path to the script you want WS_FTP Scheduler to run. If the path contains spaces, put quotation marks around the path.

6 If you are on an NT or Windows 2000 or XP workstation, you must enter your NT/2000 user login and password in the boxes provided.

NoteIf you are on a domain, include the domain name in the User Login box. Example: IPSWITCH_D\userid

User’s Guide

WS_FTP Pro

Page 83: wsftp80

7 Select the frequency of the recurring transfer in the Schedule Frequency area.

8 Click OK to add this task to the scheduler.

Updating a Web Site on a Nightly Basis

If you have a Web site you would like to update every night, without having to manually upload all of the files you have recently changed, you can set up a scheduled task to have it run as frequently as you like.

Scheduling items:

1 Select the files in WS_FTP Pro and select Send to Scheduler from the right-mouse menu.

You can select multiple files or folders by holding the Ctrl key and clicking the name.

The Schedule Item Properties dialog appears.

2 In the Start Date and End Date boxes, set the dates for when you want this recurring task to begin and when you want it to end.

3 In the Start Time box, enter the time of day you want the task to be run.

4 The Executable, Command, and Task Name boxes are filled in for you. (Note that in the Command box, there is a .tmp file identified. This file tells the application which files to download and where to transfer them to and from.)

5 If you are on an NT, Windows 2000 or XP workstation, you must enter your NT, 2000, XP user login and password in the boxes provided.

6 Select the frequency of the recurring transfer in the Schedule Frequency area.

7 Click OK to add this task to the scheduler.

75SchedulerWS_FTP Pro

Page 84: wsftp80

76

User’s Guide

WS_FTP Pro

Page 85: wsftp80

Chapter 13: Using Firewalls

Some organizations separate their local networks from the rest of the Internet by installing a firewall or “gateway.” A firewall is a system or software which is configured to prevent particular types of access or information from entering the network. Most firewalls block the flow into the local area network, but allow individuals to access most resources outside of the network.

WS_FTP Pro lets you enter information about a particular firewall into a firewall configuration, which you can then use when connecting to a particular FTP site from behind that firewall. You can configure the firewall once, and then assign that firewall configuration to those sites that require it.

With the FireScript editor, you can edit firewall scripts to work the way you want them to work. For more information, see “Appendix A: FireScript Editor” on page 89.

Multiple Firewalls

There are several reasons you might want to create more than one firewall configuration. If you use a laptop computer in different locations that have different firewalls, you will want to set up a firewall configuration for each location, so you can switch to the appropriate firewall configuration when you are in each location.

Another reason you might want to set up multiple firewall configurations is that your network could have more than one router configured as a firewall. In this case, you would assign a different firewall configuration to an FTP site depending on which part of the network you are working from.

Furthermore, you might have a number of trusted sites (for example, FTP sites owned by your company) for which you would use a different firewall (or no firewall).

77Using FirewallsWS_FTP Pro

Page 86: wsftp80

78

Firewall Types

The following table lists all conventional firewall types and the information about each that you will need to procure and enter into WS_FTP Pro.

Configuring a Firewall

To enter firewall information, you will need to get data about your firewall from your network administrator. For more information, see Firewall Types above.

To configure a firewall:

1 Click the Options button.

2 Select the Firewall dialog.

3 Click the New button.

4 Follow the directions on the New Firewall wizard.

5 When you click Finish, the firewall will be added to the Configured Firewalls list.

Type of Firewall Information you need to enter in WS_FTP Pro

Proxy OPEN Host Name (or Address)

SITE hostname Host Name (or Address), User Name (ID)

Transparent User Name (ID), Password

USER after logon Host Name (or Address), User Name (ID), Password

USER fireID@remoteHost Host Name (or Address), User Name (ID), Password

USER remoteID@fireID@remoteHost

Host Name (or Address), User Name (ID), Password

USER remoteID@remoteHost fireID

Host Name (or Address), User Name (ID), Password

USER with no logon Host Name (or Address)

SOCKS4 and SOCKS5 Host Name (or Address), User Name (ID), Password

For some router-based firewalls, you will want to use passive mode, in which the data connections are established by the FTP client (WS_FTP Pro) rather than by the FTP site.

User’s GuideWS_FTP Pro

Page 87: wsftp80

You can now assign the firewall configuration to the site, as described in Using a Configured Firewall below.

Using a Configured Firewall

Once you have configured a firewall, you can then apply the firewall configuration to an FTP site.

On the Connect to Remote Host dialog:

1 Select a site.

2 Click the Edit button.

3 Select the Advanced dialog.

4 In the Firewall box, select a firewall configuration.

79Using FirewallsWS_FTP Pro

Page 88: wsftp80

80

User’s GuideWS_FTP Pro
Page 89: wsftp80

Chapter 14: Using the Command Line

You can use the command line from the MS-DOS prompt to run the WS_FTP Pro Classic interface.

When you use the command line, you are actually running a subset of the functionality of the Classic interface. Using the command line, you can:

• Upload and download files

• Specify ASCII or binary transfer mode

• Convert file names to lowercase when uploading

• Set up pre-scheduled transfers

• Create batch files that will handle multiple commands

Basic Command Line Syntax

The following illustrates the correct command line syntax, broken down by argument type.

(command name: wsftppro) (source) (destination)

Written out, a command using this format would look like this:

wsftppro -s local:c:\tartan.bmp -d robert!border:/pub/tartan.bmp

The section below shows the breakdown of that command into the parts illustrated above. The command name wsftppro must always be placed in the beginning of the command.

Site Information

wsftppro -s local:c:\tartan.bmp -d robert!border:/pub/tartan.bmp

If you use a configured site from the command line, WS_FTP Pro uses the User ID, Password, and Account Name you saved in the site configuration. To do this, place the site folder and site profile in front of the remote directory (this can be either the source or the destination). The site folder and site profile has to be separated by the ! symbol. In the example above, we use the border site profile stored in the robert folder.

If you have saved a password with the site, WS_FTP logs you on using the saved password. If you have not saved a password with the site, you will receive the regular password prompt, unless you use the -u and -w arguments.

So you can use the command line from any location on your hard disk, we recommend that you place the WS_FTP Pro folder in the Path statement in your Autoexec.bat file, if you are running Windows 98, 2000, ME, or XP. If you are using Windows NT, add the WS_FTP Pro folder to the path variable in the System Environment. Otherwise, change to your WS_FTP Pro folder when you use the commands.

81Using the Command LineWS_FTP Pro

Page 90: wsftp80

82

For example:

wsftppro -u username -w password -s robert!border:/pub/tartan.bmp -d local:c:\armstrong\

If you have saved an account name in the site configuration, the command line logs you on using the saved account name. If you have not saved an account name, you can use the -c argument to specify the account name when you enter the command line. For example:

wsftppro -c account -s robert!border:/pub/tartan.bmp -d local:c:\armstrong\

If you do not use a configured site profile, you must put the IP address, URL, or host name in the source or destination argument to connect to that site. See the Transfer Source and Transfer Destination sections for examples of command line commands that use this.

Transfer Source

wsftppro -s local:c:\tartan.bmp -d robert!border:/pub/tartan.bmp

The transfer source argument begins with the -s argument, followed by the label for the source, and the path to the item or items being transferred. If the source of the transfer is your local system, the source label is local. If you are doing a download, the source label is either the site folder!site name or the IP address, FTP URL, or Host name of the FTP site. For example:

wsftppro -s robert!border:/pub/tartan.bmp -d local:c:\tartan.bmp

or

wsftppro -s ftp://username:[email protected]/pub/tartan.bmp -d local:c:\armstrong\

or

wsftppro -u username -p password -s 156.21.50.78:/pub/tartan.bmp -d local:c:\

Transfer Destination

wsftppro -s local:c:\tartan.bmp -d robert!border:/pub/tartan.bmp

The transfer destination argument begins with the -d argument, followed by the label for the destination, and the path to where item or items are being transferred to. If the destination is your local system, the destination label is local. If you are doing an upload, the destination label is either the site folder!site name (as in the example above) or the IP address, FTP URL, or Host name of the FTP site. For example:

User’s Guide

WS_FTP Pro

Page 91: wsftp80

wsftppro -s local:c:\tartan.bmp -d ftp://username:[email protected]/pub/tartan.bmp

or

wsftppro -s local:c:\tartan.bmp -u username -w password -d 156.21.50.78:/pub/

tartan.bmp

File Transfer Options

Uploading Files

To upload a file, use the basic command syntax with the file or files you want to upload identified in the source argument. For example; if you want to copy the file tartan.bmp from the armstrong folder on your C: drive and place it in the /pub/ folder on the site identified in the border site profile use:

wsftppro -s local:c:\armstrong\tartan.bmp -d robert!border:/pub/tartan.bmp

or,

wsftppro -s local:c:\armstrong\tartan.bmp -d robert!border:/pub/

Notice that the second option omits the file name from the destination location. You can do this when you want the transferred file to have the same name as it does in the source location. However, note that you must enter the trailing slash after the destination folder in order for this to work.

Downloading Files

Use the same command syntax as described above for downloading files, except that, the source of the transfer is the remote system instead of your local system.

wsftppro -s robert!border:/pub/tartan.bmp -d local:c:\armstrong\tartan.bmp

In the example above, we are connecting to the remote system using the border site profile and downloading the tartan.bmp file to the armstrong folder on our C: drive.

Renaming Files

To rename a file during the upload, enter a new file name after the destination folder. For example, to upload the Tag.doc file and rename it NewTag.doc on the FTP site, type:

wsftppro -s local:c:\sports\Tag.doc -d robert!border:/pub/drop/NewTag.doc

83Using the Command LineWS_FTP Pro

Page 92: wsftp80

84

Transferring multiple files from the same location

If all the files you want to transfer are in the same folder, you can use the wildcard characters, * and ?, in the file name. For example, if you want to upload all of the files in C:\Sports\ use:

wsftppro -s local:c:\sports\*.* -d robert!border:/pub/drop/

Or, to transfer all .doc files in the same folder, enter (at the MS-DOS prompt or in a batch file):

wsftppro -s local:c:\sports\*.doc -d robert!border:/pub/drop/

To transfer multiple files not in the same folder, see “Multiple Folders or Commands” on page 86.

Converting File Names to Lower Case

When uploading files, you can have WS_FTP Pro convert file names to lower case by adding the -lower argument at the end of the command line. For example, if the file you want to transfer is named Tag.doc, WS_FTP Pro can upload it as tag.doc by using:

wsftppro -s local:c:\sports\Tag.doc -d robert!border:/pub/drop/ -lower

File Transfer Modes

You can transfer files in binary mode or in ASCII mode. We recommend using binary mode to transfer all files unless you know the file contains only text, then you are able to use ASCII mode.

To specify the transfer mode, you use the -binary or -ascii argument at the end of the command string.

When you do not specify the transfer mode in the command line, WS_FTP Pro transfers the file in whatever file transfer mode is the default in the WS_FTP Pro Classic interface. Therefore, if you plan on using the command line more than just occasionally, set the Startup Transfer Mode to Auto Detect.

Transferring Files and Folders with Spaces in the Name

If you are transferring a file whose name has spaces in it, you have two options. You can enclose that portion of the command line in quotes, or use the MS-DOS name of the file (as shown in the Dir listing you get from the MS-DOS prompt.)

User’s Guide

WS_FTP Pro

Page 93: wsftp80

Enclosing the Command Line in Quotes

If the file you want to transfer is named my tartan.bmp, use:

wsftppro -s "local:c:\armstrong\my tartan.bmp" -d "robert!border:/pub/my tartan.bmp"

Using the MS-DOS Name

If the file you want to transfer is named my tartan.bmp in Windows 95, but appears as my~1.doc when you use the Dir command at the MS-DOS prompt, you can use the MS-DOS file name to transfer the file. To do this (using the first example in this chapter), enter (at the MS-DOS prompt or in a batch file):

wsftppro -s local:c:\armstrong\my~1.bmp -d robert!border:/pub/my~1.bmp

Using a Batch File

Instead of typing the command at the MS-DOS prompt, you may find it more expedient to enter the command line into a batch file (a text file with the file extension .bat). This makes it easier to correct mistakes and to run the same command again.

You run the command by invoking the .bat file at the MS-DOS prompt, double-clicking the icon for the .bat file from within Windows, or running the .bat file from another application (such as WS_FTP Pro Scheduler).

Here is a batch file (for the example at the beginning of this chapter) as viewed from a Windows text editor:

When you run the batch file named tartan.bat, WS_FTP Pro uploads the tartan.bmp file to the border FTP site.

Note that using a batch file involves placing the command name wsftppro at the beginning of each line in the file. Since each instance of the command name starts the WS_FTP Pro application (and connects to the FTP site), you would only use a batch file to work with one command at a time. If, on the other hand, you want to issue a group of commands, follow the procedure in “Multiple Folders or Commands” on page 86.

Remember that if a file name has a space in it, you must enclose that entire argument in quotes.

You cannot run 2 batch files at the same time.

85Using the Command LineWS_FTP Pro

Page 94: wsftp80

86

Multiple Folders or Commands

To transfer files to or from multiple source or destination folders, or to issue multiple commands, use the -m argument followed by the name of a text file that contains the commands. To transfer files from several locations on the hard disk described in the first example in this chapter, enter (at the MS-DOS prompt or in a batch file) something like:

wsftppro -m xferall.txt

where the content of xferall.txt (as viewed in Windows Notepad) is:

Note that:

• The command name wsftppro must not appear in the text file

• Each line of text must contain only one command line.

• Each command line can contain any of the arguments described in this chapter.

• If a file or folder name has a space in it, you must enclose that entire argument in quotes.

Pre-scheduled Transfers (“Automated Transfers”)

You can use the command line to schedule transfers that you want to run automatically. To do this, you create a batch file as described above, and then run the batch file using WS_FTP Scheduler. For more information, see “Chapter 12: Scheduler” on page 73.

When you use the command line to perform a pre-scheduled transfer, you may use the -quiet parameter to prevent WS_FTP Pro from displaying a message box if an error occurs. This is particularly useful for avoiding a situation in which WS_FTP Pro might otherwise prompt for user input, such as clicking the OK button in an error message. This way, you can pre-schedule transfers to run automatically when you’re not at your computer. (When you return to the computer, you can always check the log file to see if there were any problems.)

User’s Guide

WS_FTP Pro

Page 95: wsftp80

To use the examples shown previously, you could do a pre-scheduled transfer by creating the following batch file:

as well as the following text file:

Then, you could have the Scheduler run the auto10.bat file at 10:00 PM each night.

Remember that if a file name has a space in it, you must enclose that entire argument in quotes.

Extras

Here are a few more arguments and uses of the command line that some users have found helpful. These are listed below.

To have WS_FTP Pro display a dialog box that prompts you for the command line, type: wsftppro -ask

To launch the WS_FTP Pro Classic interface and default to the site configuration for the border site: wsftppro -p robert!border

To prevent WS_FTP Pro from displaying error messages, use the -quiet argument. This is useful if you want to do automated transfers when no one is around to respond to a message. An example:

wsftppro -s local:c:\armstrong\tartan.bmp -d robert!border:/pub/tartan.bmp -quiet

87Using the Command LineWS_FTP Pro

Page 96: wsftp80

88

Summary

Here is a list of all arguments you can use in the command line.

Arguments (alphabetical)

When to use Important restrictions

-ascii Use -ascii when transferring text files.

-binary Use -binary when transferring non-text files such as executable programs, word processing documents, and so on.

-c account Use -c to work with sites that require an account for the user to log in, or to access partitions. account is the name of your account on the FTP site.

-d path_and_filename

Use -d to indicate the destination path and desired file name of the file you want to upload or download.

You must specify one of the following:-d local:-d folder!profile-d ip address:-d ftp://address

-lower Use -lower to have WS_FTP Pro con-vert file names to lower case letters when you transfer from your PC to an FTP site.

If you use the -lower argument, it must be at the very end of the command.

-m text_file Use -m to do transfers that involve multi-ple source locations, multiple destina-tions, or multiple commands. text_file is the name of the file that contains the com-mands.

-quiet Use -quiet to prevent WS_FTP Pro from displaying message boxes.

-s path_and_filename

Use -s to indicate the source path and file name of the file you want to upload or download.

-u userID Use -u to use sign on using the userID.

-w password Use -w to identify password as the pass-word to use to connect to the ftp site.

User’s Guide

WS_FTP Pro

Page 97: wsftp80

Appendix A: FireScript Editor

This appendix describes the purpose and syntax of the FireScript language and how it used to make an FTP connection through a firewall.

What is a FireScript?

A FireScript allows you to customize the sequence of commands and responses used to log in to an FTP server. This customization may be necessary if your FTP server requires any non-standard commands to be issued before or after logging in, or if certain types of firewalls are between the client and the server.

FireScripts are written in a custom FireScript language, developed specifically for use by WS_FTP Pro. FireScripts can perform the same functions that WS_FTP Pro uses internally to connect to a host or firewall type. FireScripts, however, let you determine if and when these functions are used. In particular, the FireScript determines when to autodetect the host type, and when to go secure with an SSL connection. The script can choose whether or not to try the XAUTH command, and also whether it is necessary to log in to a user account after sending the user ID and password.

FireScript Components

A FireScript is broken into three sections: fwsc, comment and script. As in a Windows ini file, the name of the section appears alone on a line, in square brackets, followed by the rest of the section.

The fwsc section is internally structured with name=value pairs in the same manner as a Windows ini section. It contains identifying information about the script, and indicates what variables will be required by the script.

The comment section is free-form text intended for human readers. It is ignored by the script executable.

The script section contains the scripts executable portion and conforms to the FireScript syntax.

89FireScript EditorWS_FTP Pro

Page 98: wsftp80

90

Below is an example FireScript demonstrating this layout.

[fwsc]

author=Ipswitchconnectto=firewall

… other values not shown would typically include 'required=' and 'version='

[comment]

This is an example script that connects to an FTP proxy. It is incomplete because many of the commands required to connect have been deleted for clarity. The main purpose is to demonstrate the organization of the FireScript into three sections.

[script]send ("OPEN %HostAddress") {}tryssl;send (“USER %HostUserId”){

case (300..399) :

continue ;case any :

return (false) ;}

… most of script not shown due to the size.

label success;gossl;return (true);

The fwsc Section

The fwsc section lets you specify information about the script in a manner similar to a Windows ini file. Most of the parameters are present for informational purposes. This includes the author and version fields. A few of the parameters are used by the script executive in determining whether or not to show the login dialog, and which IP address to use.

User’s Guide

WS_FTP Pro

Page 99: wsftp80

The parser recognizes and stores values for the following parameters:

Unrecognized parameters are ignored.

The Comment Section

Use the comment section to describe the actions of the FireScript. The FireScript code should be well described, so it will be easier to understand and update later. The FireScript executive ignores the comment section.

You can also insert comments in the script section by using the ‘//’ comment delimiter as in C++ and Java. Any text on a line following the ‘//’ sequence is ignored by the parser.

The Script Section

The script section consists of a sequence of statements that send commands to the firewall or to the FTP server. Some of these statements have results, or trigger responses from the firewall or FTP server. There is a simple control structure that allows the script to take different paths of execution, based on these results or responses.

fwsc Parameters

Parameter Meaning and Values

author Informational only. Author of the FireScript.

version Informational only. Version number of the script file.

verdate Informational only. Date on which this version was updated.

required A comma delimited list of fields that must be present for the FireScript to execute. The login dialog is displayed if all required fields are not present, and the Connect button is disabled until all required fields have been filled in.

preask A comma delimited list of fields that are not required but which, if not present, will cause the login dialog to be displayed.

connectto ‘firewall’ or ‘host’. This parameter tells WS_FTP Pro which IP address to use when establishing the connection.

91FireScript EditorWS_FTP Pro

Page 100: wsftp80

92

The Connection Sequence

A request for connection to an FTP site comes from user actions in either the Classic or Explorer interface, or by one of the WS_FTP Pro utilities such as Find or Synchronize. Sometimes, additional connections are requested by the Transfer Manager to resume or to speed up transfers. All connections are created by the CreateConnection function in the WS_FTP Pro API.

The connection sequence consists of two stages.

• Stage 1: Establish the connection with either the firewall or the FTP server.

• Stage 2: Send commands to log in and authorize the connected user. It is during this stage that the commands in a FireScript are executed.

The first stage works the same whether WS_FTP Pro is using a FireScript or using one of its internal firewall types. Before executing the script, WS_FTP Pro checks the fwsc section for the list of fields marked as required and preask. If any are missing, it displays the login dialog. If the user fills in all required information and presses Connect, WS_FTP Pro then checks the connectto field. Depending on this field, it will either establish a connection to the firewall's IP address and port, or to the FTP server's IP address and port. If this field is not present, WS_FTP Pro defaults to the IP address of the firewall, if present.

After the connection is established successfully, and a valid socket is opened, WS_FTP Pro calls the FireScript executive to execute the FireScript. If the FireScript logs in correctly and returns success, the CreateConnection function returns the authorized connection to the caller.

The FireScript Language

The FireScript language contains a limited version of elements you may be familiar with if you have written scripts or programs in other languages. It uses variables, declarations, and statements to perform actions and direct program flow. Each of these elements is described in the following sections.

User’s Guide

WS_FTP Pro

Page 101: wsftp80

Syntactically, FireScript statements are terminated by semicolons. They may therefore extend across multiple lines, and you can have multiple statements on a line. A string however, may not span lines. The final closing quote must appear on the same line of source code as the opening quote. For example, the code below is valid:

contains(lastreply,"Welcome to my cool FTP site");

but the following is not:

contains ( lastreply, "Welcome to my cool FTP site" );

FireScript Variables

Firescripts work with the login information provided by WS_FTP Pro. This includes at least the user IDs and passwords, the IP address and port of the FTP server, and sometimes the IP address and port of the firewall. These fields are often read from a site profile, an FTP URL, or from the command line. As described before, if some of the required information is missing, the connect sequence presents the login dialog so that the user can enter it interactively. The script executive stores this information in a set of intrinsic variables before beginning execution. In addition there are intrinsic variables that contain the results of the last command issued. These are set by the script executive after such statements are executed.

The syntax for using a variable depends on the statement or expression in which it is used. Below is a list of all the intrinsic variables:

FireScript Intrinsic Variables

Variable Meaning and Usage

FwUserId The user's user ID on the firewall. Some firewalls require users to log in to the firewall before allowing other connections to be made through the firewall.

93FireScript EditorWS_FTP Pro

Page 102: wsftp80

94

FireScripts neither need nor use user-defined variables, so there are no variable declarations. Also, since the FireScript cannot directly set the value of one of the intrinsic variables, there is no need for any assignment statements.

FwPassword The user's password on the firewall. Required if the user must log in to the firewall.

FwAccount Account on the firewall. Required if the user must specify an account on the firewall. Practically unheard of but included in case required.

FwAddress The IP address of the firewall. Required if the user must connect to the firewall, and have the firewall in turn connect to the FTP server and act as proxy.

HostUserId The user's ID on the FTP server. Almost always required. Specify ‘anonymous’ if the user does not have a user ID on the server.

HostPassword The user's password on the FTP server. Almost always required in conjunction with a user ID. Use your email address as the password when using ‘anonymous’ for the user ID.

HostAccount The user's account on the FTP server. To access certain information in some operating systems, FTP servers on those systems require an account to be sent after successful login with user ID and password.

HostAddress The IP address of the host. The script executive may connect directly to this address, or will send the address to a firewall that will act as a proxy.

LastFtpCode The 3-digit, numeric code of the last response received from the FTP server or firewall. For example, after a successful login, the LastFtpCode would be 230.

LastReply The text of the last response from the server. e.g. "230 user logged in"

User’s Guide

WS_FTP Pro

Page 103: wsftp80

String Expansion

Some of the commands and functions in the FireScript language take strings as arguments. To these you may either pass a string variable or a string literal surrounded by double quotes, e.g. “This is a string.” To put a double quote inside a string, preface it with the percent sign ‘%’. The percent sign ‘%’ is used as an escape character to embed variables and quote characters in strings.

The sequence %% is replaced by a single %. The sequence %" is replaced by ".% followed by the name of a variable is replaced by the value of the variable.

For example, the script statement below:

send ("OPEN %HostAddress")

If HostAddress is equal to “ftp.ipswitch.com” when this script is invoked, the command will be expanded to:

send ("OPEN ftp.ipswitch.com")

the expression,

contains (lastreply, "%% full")

will be expanded at runtime to:

contains(lastreply "% full")

and the statement

send ("SITE SETLOG %"f:\log files\access.log%" -clear")

the expanded string sent will be:

SITE SETLOG "f:\log files\access.log" -clear

Passing a string variable is equivalent to, but faster than passing a string literal that expands the variable.

Example:

isempty(FwPassword)

is equivalent to but faster than

isempty("%FwPassword")

95FireScript EditorWS_FTP Pro

Page 104: wsftp80

96

Function Expressions

Currently the FireScript language does not allow full-blown expressions. It does include two function expressions with some boolean operators for evaluating the state of variables. They are contains and isempty. The boolean operators supported are not and and.

The contains function takes two strings and returns true if the second string is found in the first. The search is case sensitive. Both strings are expanded first.

The isempty function takes a string and returns true if there are any characters in the string. You can use it to test if a value was specified for one of the intrinsic variables.

The not boolean operator reverses the value returned by the function expression.

Example:

If the HostAccount variable contains the value ‘usr987i’isempty (HostAccount) will return false butnot isempty(HostAccount) will evaluate to true.

The and boolean operator requires all specified conditions to be true.

Example, If the HostAccount variable contains a value such as ‘usr987I’The last reply from the server is "230 User logged in, please send account"

then the following expression will evaluate to true:

case (200..299) and not isempty(HostAccount) and contains(lastreply, "ACCOUNT") :

FireScript Statements

The FireScript language includes several types of statements. Statements cause actions to be taken, or direct the flow of execution of the script. The following sections describe the types of statements.

User’s Guide

WS_FTP Pro

Page 105: wsftp80

Switch Statements

The send statement and the xauth statement are called switching statements, because they imply an immediate switch statement based on the server response. The switch statement contains case statements very similar to Java and C++ case statements, except the conditions are not constants checked against a single expression.

A switching statement such as send and xauth is always immediately followed by a set of case statements between curly braces { <case statements> }. The set of case statements may be empty, in which case there is nothing between the curly braces, but the braces must be present.

Example of Switch Statement:

send ("USER %FwUserId") {}

The send statement takes a single argument, the string to be sent to the server. The string is expanded before it is sent. The maximum legal length for the expanded string is about 512 bytes, the maximum length of an FTP line. The send command then waits on a response from the server and evaluates the response against the conditions in each of the enclosed case statements.

The xauth statement takes no arguments. It examines the welcome banner for an xauth invitation supplied by WS_FTP server. If it is not connected to WS_FTP server or cannot find the invitation, xauth does nothing, and the case statements are not evaluated. If it does find the invitation, it encodes the user ID and password and sends the xauth command to the server. It then waits on the response and evaluates it against the case statements just as the send command does.

Case Statements

Case statements are enclosed in switching statements. A case statement lists a set of conditions that the server response must satisfy for the case to be activated.

The list of conditions is followed by a colon ‘:’.

Case statements are processed in the order in which they are listed until the first match is found.

97FireScript EditorWS_FTP Pro

Page 106: wsftp80

98

Once a match is found for the conditions in a case statement, then the nested statements are executed.

A case condition may be a list of FTP codes and code ranges, a function expression, or one of the special cases, any and timeout.

If a case includes a list of ftp codes/ranges, the list must appear first, followed by any function expressions. The list is comma separated and enclosed in parentheses. Each item in the list must either be a single 3-digit code, or a range specified by two 3-digit codes separated by a double period ‘..’. The range is inclusive and it is recommended that the lower bound be specified first.

The special cases any and timeout must appear by themselves.

Examples of Case Statements

The following case condition will match if the returned ftp code is either 226 or 231.

case (226, 231) :

The following case conditions will match if the returned ftp code is either 226 or 231, or between 250 and 299 inclusive. So 250 itself will match, as well as 251, 252 etc. up to 299

case (226, 231, 250..299) :

The following case conditions will match if the returned ftp code is in the 300s and the returned string contains the text “email address”.

case (300..399) and contains(lastreply, "email address") :

The following case conditions will match if the returned ftp code is 500 or greater and the returned string contains the specified error message

case (500..999) and contains(lastreply, "user %HostUserId cannot login.") :

If a case contains more than one condition they must be separated by and. The and operator specifies that all the listed conditions must be satisfied. So in the previous example, the ftpcode must be between 500 and 599 AND the last reply must also contain the specified string. Both must be true. If either is false, the case will not match.

User’s Guide

WS_FTP Pro

Page 107: wsftp80

The not operator reverses the result of a function. We may for example want to make sure that the last response does not contain a certain string. For example:

case (500..599) and not contains(lastreply, "server is busy") :

There is no or operator. The same logic may be applied by using multiple case statements.

The following case condition will match if the send command timed out.

case timeout :

Case any is the catch all case, and if present should be the last case in the enclosing list. If it is followed by other case statements they will never be evaluated.

For example, the following case condition will always match.

case any:

If case statements overlap and two case statements would match the response, then the first one encountered will be executed.

Example:

case (200..299) and contains(lastreply, "please send user account") :...case (200..299) :...

If the case with the contains function appeared after the one without it, it would never get evaluated.

Continue

Unlike C and C++, execution inside a case statement does not fall through to the next case statement. Only the statements listed under the activated case are executed. Then execution continues at the next statement after the enclosing switching statement. The continue statement jumps to the statement following the enclosing switching statement. It does the same thing as a break, inside of a C/C++ switch statement, except it is not absolutely necessary.

Switching statements may not be nested. That is, neither a send statement nor an xauth statement may appear inside a case statement.

99FireScript EditorWS_FTP Pro

Page 108: wsftp80

100

Jumps and Labels

A jump statement transfers execution to another part of the script. The jump destination must be defined by a label that also appears in the script. The Ipswitch example FireScripts use jumps to different code sequences from inside case statements, so the code that gets executed depends on which case was activated.

A label declaration consists of the word label, followed by the name of the label and a semicolon.

A jump statement consists of the word jump, followed by the name of the jump destination, and a semicolon.

A label may not appear inside a case statement. You can't jump into a case statement.

Return

The return statement acts like a function in that it takes a single parameter, either true or false to indicate success or failure. It terminates script execution and returns to the caller. If it returns true, the connection is assumed to be logged in and authorized. If it returns false, the caller may either try again or abandon the connection.

Autodetect

The autodetect statement examines the last reply from the server to help determine the host type of the FTP server to which it is connected. Autodetect expects to examine the welcome banner so the statement should be placed immediately after the welcome banner is returned. Here are two example banners returned from two popular FTP servers. Autodetect would detect the first as being a Microsoft NT server, and the second as being an Ipswitch WS_FTP server.

220 tstsrvnt Microsoft FTP Service (Version 3.0).220 tstsrvws X2 WS_FTP Server 1.0.5 (1737223651)

User’s Guide

WS_FTP Pro

Page 109: wsftp80

If connection was made directly to the host FTP server and the welcome banner was already returned before the script begins execution, then autodetect should be the first statement in the script. If the connection was made to the firewall and the welcome banner from the host ftp server becomes available later in the script, the autodetect statement should be placed at that point. If the firewall swallows or replaces the welcome banner from the ftp host, or for some other reason, the ftp client never sees the welcome banner, then leave out the autodetect statement. WS_FTP Pro will try to determine the host type after the script executes.

Autodetect does nothing if the host type in the site profile is set to anything other than ‘Auto Detect.’ The autodetect statement has no return value and does not change the flow of the script.

SSL Statements

The tryssl and gossl commands attempt to open a secure channel with the server via SSL. The difference between them is that if gossl fails, the script will terminate and return false, while if tryssl fails, the script will continue. The commands can appear more than once in the program. If a secure connection was not requested, or has already been established, the commands will do nothing. If the commands fail to go secure, they will display a message box to the user, asking the user if she wishes to continue in the clear, try again for SSL later in the sequence, or abandon the connection. If the user chooses to continue in the clear, future calls to tryssl or gossl will do nothing.

When the script completes, the script executive checks the SSL status of the connection to make sure that a request for a secure connection was honored. In the site profile, if the user selected Use SSL, then the script executive will issue a warning to the user if the connection is not secure. At this point, the user may abandon the connection. This warning is issued if a secure connection was attempted and the user chose to continue in the clear.

The placement of the attempts to open an SSL channel can be very important, depending on the type of firewall through which the script is connecting.

101FireScript EditorWS_FTP Pro

Page 110: wsftp80

102

FireScript Key Words

Below is a complete list of all the keywords used and understood by the language. You may not use these words as label names.

FireScript reserved words

The following words are reserved for future versions of the language and the parser. You should not use these words to name your labels.

gossl tryssl autodetect

send xauth case

continue and not

any timeout return

jump label true

false

switch if for

next while loop

break function int

bool string var

password or

User’s Guide

WS_FTP Pro

Page 111: wsftp80

FireScript statements

FireScript intrinsic functions

FireScript intrinsic variables

gossl tryssl autodetect

send xauth jump

return continue

contains isempty

FwUserId FwPassword FwAccount

FwAddress HostUserId HostPassword

HostAccount HostAddress LastFtpCode

LastReply

103FireScript EditorWS_FTP Pro

Page 112: wsftp80

104

User’s Guide

WS_FTP Pro

Page 113: wsftp80

Appendix B: Textual Error Messages

This Appendix lists common textual error messages. Each error message is followed by an explanation of the error, and some possible workarounds or solutions, if any exist.

Some of these error messages are returned by the FTP protocol and will appear in the WS_FTP log, preceded by a three-digit reply code.

Others of these textual error messages may appear in dialog boxes generated by WS_FTP Pro or your operating system.

For more information, see the KnowledgeBase on the Ipswitch web site, www.ipswitch.com.

“Blocking call canceled”

There are several possible causes for this problem. Try these tests in the order shown:

1 Disconnect from the FTP site if you are currently connected to it. Then turn on passive mode. After you have done this, try reconnecting to the site.

2 If you still receive this error message, set the network timeout for the site to 120 in the Classic interface:

• If you are connected to a site, select Disconnect from the File menu.

• Select Connect from the File menu to view the Connect to Remote Host dialog list.

• In the Configured Sites list, select the site.

• Click the Edit button.

• Select the Advanced dialog.

• Enter 120 or higher for the Network Timeout.

3 If you still receive this error after making the above changes, try the command line FTP (not the WS_FTP Command Line) and see if you can connect and how long it takes. Once you know how long it takes to connect, enter this time into the Network Timeout setting on the Advanced dialog of the site properties as described above.

4 If you still cannot connect please contact the FTP server administrator for assistance.

Textual Error Messages 105WS_FTP Pro

Page 114: wsftp80

106

“Connection refused” or “Connection closed by remote”

Either the host is not running an FTP server program, or else the FTP site is accepting connections only from certain clients, or there is a conflict within your network. See page 105 and follow steps 3 and 4.

“Disk quota exceeded”

The disk quota is not determined by WS_FTP Pro; it exists on the FTP site. You can either delete some files on the site to make room for your upload (if you have permission) or get more space from the site administrator.

“File too large to download”

This message is coming from the FTP site that you are connected to. This site has a limit on how large a file you can download.

“Logon failure; Quitting.”

The FTP site is not recognizing or accepting your user ID and/or password. Contact the FTP site administrator to verify that you are using the correct User ID and password.

“MDTM”

The current FTP site does not support Month-Day-Time-Marking; this means that after the file was uploaded, WS_FTP attempted to preserve the date and time, but the FTP site does not support this feature. However, the files will transfer correctly. Note that this is not a fatal error, even though it displays in red.

You can disable this option by selecting Preserve filetime on upload (MDTM support required) on Site Properties: Session.

User’s Guide

WS_FTP Pro

Page 115: wsftp80

“User access denied”

The error “530 user access denied” indicates that you are not properly logged on to the server. Make sure the information on the Host Info dialog of site properties is correct. Common problems are spaces, case sensitive entries, or incorrect user name or password. If you are unsure whether or not you are using the correct user name and password, contact the FTP site administrator.

Most FTP sites support anonymous logins where you do not have to have an actual account on the FTP site in order to download files; the user ID is the word Anonymous and the password is your e-mail address. To test this, try connecting to the Ipswitch FTP site (ftp.ipswitch.com) using the user ID “Anonymous.”

If you do have to have an actual account on the FTP server, for example, a server where you place your web pages, then you will need to obtain a user ID and password from the server administrator and enter them in the host information tab.

Textual Error Messages 107WS_FTP Pro

Page 116: wsftp80

108

User’s Guide

WS_FTP Pro

Page 117: wsftp80

Index

Numerics“530 user access denied” 107

AAccessibility 9accounts on FTP sites 4active edit 34Anonymous Connections 15anonymous FTP 4Ascii 28ASCII files 28attributes for UNIX files 36Auto 28Auto reconnect 20autoexec.bat 81Automatic Connections 20automating file transfers 86

Bbatch files 85Batch Mode 26Binary 28bitmaps 28“Blocking call canceled” error

105

Ccgi files 28chmod (command) 36Classic interface (defined) 5client-server 1command line 81command prompt 70, 81“Connection refused” error 106

Ddata connection 78

dates and timescriteria for finding files

and folders 66Default Site 20“Disk quota exceeded” error

106download 25download (defined) 1Drag and Drop 25

EEditor/Debugger window 70e-mail address 4error messages 87, 105exe files 28executable files 28Explorer Interface 39Explorer interface (defined) 5

Ffile name as criteria for finding

files 65file names with spaces 84file size as criteria for finding

files 67“File too large to download”

error 106files

ASCII 28compressed, transferring

28executables, transferring

28htm 28html 28postscript 28

Find Utility 63finding files and folders 63FireScript 89firewall types 78firewalls 77

router-based 78

FTP (File Transfer Protocol)client (defined) 1server (defined) 1

FTP (File Transfer Protocol) (defined) 1

FTP sitesaccounts on 4viewing contents of 5

FTP URL (defined) 6

Ggateways 77Getting Started 11

HHelp System 16hierarchical folders. See

foldersHotdrop Folder 27Hotdrops 27htm files 28html files 28HTTP 1

Iinstalling WS_FTP Pro 3interfaces of WS_FTP Pro 4Ipswitch, Inc.

getting software updates 8giving feedback 8web site 8

Jjpg files 28

Llocal area network 2Local System (defined) 5logging on 3, 4“Logon failure. Quitting.” 106

Index 109WS_FTP Pro

Page 118: wsftp80

110

MMDTM error 106messages

suppressing with the command line 87

messages, error 105Microsoft Internet Explorer 7mirroring files and folders 55modem 2modes for UNIX files 36Month-Day-Time-Marking

106MS-DOS prompt 81

Nname of file as criteria for

finding files 65names (file) with spaces 84Netscape Navigator 7New Features in version 7.0 2

OOnline Help 16

PPassive Transfers 23passive transfers 78patches 8permissions for UNIX files 36postscript files 28pre-scheduled transfers 86Proxy OPEN (firewall) 78public folder 4

Qqueuing transfer tasks 73, 86Queuing Utility 73

RRemote System (defined) 5

Request Properties 43router-based firewalls 78

Sscheduling transfers 75, 86scripting 69

example 71Scripting Utility 69scripts, writing and debugging

70server

See also FTP siteserver (defined) 1SITE hostname (firewall) 78site. See FTP sitessize of file as criteria for

finding file 67software patches 8spaces in file names

transferring with command line 84

SSLgenerating a certificate 48selecting a certificate 50trusted authorities 50

adding a certificate 51exporting a certificate

51removing a certificate

52SSL (definition) 45

certificate 46certificate signing request

46client 46private key 46public key 46session key 46

startuptransfer mode 31

suppressing error messagesusing the command line 87

Synchronize Utility 55

synchronizing files and folders 55

system requirements 2

Ttext files 28Thumbnails 32time. See dates and timesTransfer Arrows 13Transfer Manager 41Transfer Manager Dialogs 41Transfer Manager Log

Window 44Transfer Modes 28transfer modes

defined 31startup 31

transferring files See also downloading,

uploadingASCII 28binary 28compressed 28HTML 28images 28jpg 28photographs 28pictures 28postscript 28scheduling 86text 28with spaces, using

command line 84zipped 28

Transparent (firewall) 78

UUNIX 36UNIX FTP sites 36upgrades 8upload 25upload (defined) 1

WS_FTP ProIndex

Page 119: wsftp80

Upload Wizard 26URL (defined) 6“User access denied” 107USER fireID@remoteHost

(firewall) 78user interfaces of WS_FTP Pro

4USER remoteID @remoteHost

fireID (firewall) 78USER remoteID@fireID

@remoteHost (firewall) 78USER with no logon (firewall)

78Utility

Find 63Queuing 73Scripting 69Synchronize 55

Vviewing

files and folders 5

WWeb browser integration 6wildcard characters for finding

files and folders 65World Wide Web 1WS_FTP Find Utility 63WS_FTP Pro Development Kit

8WS_FTP Pro Toolbar 14WS_FTP Queuing Utility 73WS_FTP Scripting Utility 69WS_FTP Server 7WS_FTP Synchronize Utility

55

Zzip files

transferring 28

Index 111WS_FTP Pro

Page 120: wsftp80

112

WS_FTP Pro

Index