This is an old revision of the document!

Documentation » Setting up WinSCP »

WinSCP Technical Requirements

Advertisement

Server requirements

Using WinSCP, it is possible to connect to a SSH (Secure Shell) server with SFTP (SSH File Transfer Protocol) or SCP (Secure Copy Protocol) service, mainly to UNIX machines. SFTP is a standard part of SSH2 package. SCP is a standard part of SSH1 package. Both protocols can be run even on the latter SSH version. WinSCP supports both SSH1 and SSH2. For authentication, the user can use username and password or public key (RSA or DSA). Other supported means of authorization include TIS, Cryptocard and Keyboard-interactive.

&screenshot(advanced)

To generate a public key file, use the PuTTYgen application. Also read how to use the Pageant application for public key authentication. (PuTTY’s SSH authentication agent). You can find links to download these programs in the Download section. The installation package of WinSCP already includes these applications.

The user can specify his/her encryption algorithm preferences. Options are: AES (SSH2-only), Blowfish, 3DES and DES (SSH1-only). It is possible to enable compression. A connection can be established through a Proxy (HTTP, SOCKS 4/5 or Telnet).

SFTP requirements

For SFTP, the only requirement beyond the server requirements above is to run SFTP on the server. It is best to run it as a SSH2 subsystem. If you select SFTP-only on the login screen and the SFTP subsystem is not found, WinSCP will try to find the SFTP server in some common directories (/usr/lib/sftp-server, /usr/local/lib/sftp-server, etc.). This way, it is possible to use SFTP even with SS1, which does not support subsystems.

SCP requirements

To transfer files, scp1 is used (it is called from within scp). If only scp2 is allowed on your server, check the Use scp2 with scp1 compatibility option on the SCP tab in the login dialog.

Advertisement

For correct functionality, it is necessary to satisfy a few conditions. The bash shell is recommended for working with WinSCP. If your default shell doesn’t work with WinSCP, you can specify another shell on the SCP tab in the Login dialog. Typing the full path (e.g. /bin/bash) is recommended.

&screenshot(shell)

For its operation, WinSCP needs several commands: alias, cd, chgrp, chmod, chown, echo, groups, ls, mkdir, mv, pwd, scp, rm, ln, unalias and unset. These commands have to be placed in the path and user must have sufficient permissions to execute them. WinSCP expects “standard” behaviour of these commands. You can avoid needing these commands by not using some of WinSCP functions (mkdir, chown, ln, etc.) or by changing some configuration options (alias, groups, unalias and unset).

Just after estabilishing the connection with server, all aliases on the above commands are cleared. This is done to avoid unexpected behaviour (e.g. alias rm to rm -i). If there are no aliases influencing command behaviour, this feature can be disabled on the SCP tab tab in the Login dialog. This setting speeds up the login process.

Another precondition is that the output of all commands is in English. This mostly concerns names of months in directory listings (ls -la). Because of this, WinSCP clears all user variables that govern command output after login. These variables are: LANG, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC, LC_TIME, LC_MESSAGES and LC_ALL. If no such variable is set, it is possible to turn off this feature in the session settings. If command output also reflects some other server settings, it may be necessary to change this before WinSCP can be used.

The last necessary condition is the proper output of ls -la command, which is supposed to include file group name! If the group name is absent, it can be temporarily added using the relevant option on the SCP tab in the Login dialog. The option causes the execution of the command alias ls=“ls -g” on startup. WinSCP will attempt detect support for –full-time switch of the ls command. If the detection causes you problems, disable it on SCP tab in the Login dialog.

Using WinSCP with Restricted Shell Environments

A number of restricted shell enviroments exist for supporting SCP/SFTP only accounts. These systems restrict the user to a small subset of commands needed to manipulate files while denying the ability to execute arbitrary commands. Some of these enviroments create incompatabilities with WinSCP, particularly if using SCP instead of SFTP.

Client Requirements

WinSCP should run on any system running Windows 95 or later.

Last modified: by martin