Differences
This shows you the differences between the selected revisions of the page.
requirements 2005-09-02 | requirements 2024-11-22 (current) | ||
Line 2: | Line 2: | ||
===== Server Requirements ===== | ===== Server Requirements ===== | ||
- | Using WinSCP, it is possible to connect to a [[SSH]] (Secure Shell) server with [[protocols#sftp|SFTP]] (SSH File Transfer Protocol) or [[protocols#scp|SCP]] (Secure Copy Protocol) service, mainly to UNIX machines. SFTP is a standard part of SSH-2 package. SCP is a standard part of SSH-1 package. Both protocols can be run even on the latter SSH version. WinSCP supports both SSH-1 and SSH-2. For authentication, the user can use user name and password or [[public key]] (RSA or DSA). Other supported means of authorization include TIS, Cryptocard and Keyboard-interactive. | + | Using WinSCP, you can connect to an [[SSH]] (Secure Shell) server with [[SFTP]] (SSH File Transfer Protocol) or [[SCP]] (Secure Copy Protocol) service, to an [[FTP]] (File Transfer Protocol) server, HTTP server with WebDAV service or store system with [[S3]] protocol support. |
- | &screenshotpict(login_ssh) | + | SFTP is a standard file transfer protocol supported by most SSH servers. SCP is legacy protocol, supported mostly by OpenSSH and some other servers. For authentication, you can use user name and password or [[public key]]. Other authorization types include Keyboard-interactive, and Kerberos. |
- | The user can specify his/her encryption algorithm preferences. Options are: AES (SSH-2-only), Blowfish, 3DES and DES (SSH-1-only). It is possible to enable compression. A connection can be established through a Proxy (HTTP, SOCKS 4/5 or Telnet). | + | For FTP, both the basic unencrypted variant and [[ftps|FTPS]] are supported. Compressed transfers (Zlib) are not supported. |
+ | |||
+ | For WebDAV, both the basic unencrypted variant and WebDAVS are supported. Compressed transfers (Zlib) are not supported. | ||
===== [[sftp]] SFTP Requirements ===== | ===== [[sftp]] 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 SSH-2 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 SSH-1, which does not support subsystems. | + | For SFTP, the only requirement beyond the server requirements above is to run SFTP on the server. Most SSH servers include SFTP server. |
===== [[scp]] SCP Requirements ===== | ===== [[scp]] SCP Requirements ===== | ||
- | To transfer files, ''scp1'' is used (it is called from within ''scp''). If only ''scp2'' is allowed on your server, check the //[[ui_login_scp#other_options|Use scp2 with scp1 compatibility]]// option on the [[ui_login_scp|SCP tab]] in the Login dialog. | + | As the SCP protocol implements file transfers only, WinSCP must use other means to implement the additional functionality (like directory listing). WinSCP uses Unix-like shell commands to do that. This in turn means that when using the SCP protocol, it can connect to servers that run Unix-like or its emulation only. |
- | 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 make WinSCP use [[ui_login_scp#shell|other shell]]. | + | To transfer files, ''scp1'' is used (it is called from within ''scp''). If only ''scp2'' is allowed on your server, check the //[[ui_login_scp#other_options|Use scp2 with scp1 compatibility]]// option on the //[[ui_login_scp|SCP/Shell page]]// on the Advanced Site Settings dialog. |
- | 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''). | + | For correct functionality, you must do the following. The ''bash'' shell is recommended for working with WinSCP. If your default shell doesn't work with WinSCP, you can make WinSCP use [[ui_login_scp#shell|other shell]]. |
- | Just after establishing the connection with server, all [[ui_login_scp#other_options|aliases on the above commands are cleared]]. This is done to avoid unexpected behaviour. | + | For its operation, WinSCP needs several commands: ''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 the user must have sufficient permissions to execute them. WinSCP expects "standard" behavior of these commands. You can avoid needing these commands by not using some of the WinSCP functions (''mkdir'', ''chown'', ''ln'', etc.) or by changing some configuration options (''groups'', ''unalias'' and ''unset''). |
- | 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 [[ui_login_scp#other_options|clears all user variables that govern command output]] after login. If command output also reflects some other server settings, it may be necessary to change this before WinSCP can be used. | + | Just after establishing the connection with a server, all [[ui_login_scp#other_options|aliases on the above commands are cleared]]. This helps avoid unexpected behavior. |
- | 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 //[[ui_login_scp#directory_listing|Alias LS to display group name]]// option on the //SCP tab// in the Login dialog. WinSCP will attempt detect support for ''%%--full-time%%'' switch of the ''ls'' command. If the detection causes you problems, you can [[ui_login_scp#directory_listing|disable]] it. | + | Another precondition is that the output of all commands be in English. This mostly concerns names of months in directory listings (''ls -la''). Because of this, WinSCP [[ui_login_scp#other_options|clears all user variables that govern command output]] after login. If command output also reflects some other server settings, it may be necessary to change this before WinSCP can be used. |
- | ===== Using WinSCP with Restricted Shell Environments ===== | + | The last necessary condition is the proper output of the ''ls -la'' command, particularly the standard number and ordering of the columns. If the default output does not satisfy the needs of WinSCP you can use //[[ui_login_scp#directory_listing|Listing command]]// option on the //SCP/Shell page// on the Advanced Site Settings dialog to modify it. |
+ | |||
+ | WinSCP will attempt detect support for the ''%%--full-time%%'' switch of the ''ls'' command. If the detection causes you problems, you can [[ui_login_scp#directory_listing|disable]] it. | ||
+ | |||
+ | ===== [[restricted_shell]] Using WinSCP with Restricted Shell Environments ===== | ||
A number of restricted shell environments exist for supporting | A number of restricted shell environments exist for supporting | ||
- | SCP/SFTP only accounts. These systems restrict the user to a small | + | SFTP/SCP only accounts. These systems restrict an user to a small |
- | subset of commands needed to manipulate files while denying the | + | subset of commands needed to manipulate files, while denying an |
ability to execute arbitrary commands. Some of these environments | ability to execute arbitrary commands. Some of these environments | ||
- | create incompatibilities with WinSCP, particularly if using SCP | + | create incompatibilities with WinSCP, particularly if using %%SCP%%. |
- | instead of SFTP. | + | |
+ | ===== [[remote_environment]] Effect of Remote User Environment on WinSCP Sessions ===== | ||
+ | Most shells nowadays offer options to make the user experience better. Unfortunately many of these options make the shell incompatible with WinSCP. | ||
+ | |||
+ | This mainly affects the SCP protocol. An example is colorized output from the ''ls'' command that includes ANSI color sequences which WinSCP cannot parse. | ||
+ | |||
+ | Also, the SFTP protocol can be affected. A typical example is where some message is | ||
+ | printed from a start-up script. WinSCP (and any other SFTP client) will attempt to parse the message as an SFTP packet, which will obviously fail. | ||
+ | |||
+ | You should configure your start-up scripts to conform to non-interactive sessions (like WinSCP). Some shells call different profile/start-up scripts for interactive and non-interactive sessions. You can also use some environment variables, such as ''TERM'' to distinguish interactive and non-interactive sessions. | ||
+ | |||
+ | ===== [[client]] Client Requirements ===== | ||
+ | WinSCP runs on Microsoft Windows XP SP2/Windows Server 2003 SP1 and newer, up to Windows 11 and Windows Server 2022. //The latest beta version// runs on Windows 7/2008 and newer only. &beta WinSCP runs both on client and server editions of Microsoft Windows. We know of no reason why WinSCP should not continue to work on future versions of Microsoft Windows. | ||
+ | |||
+ | The application //installer// does not run on Windows 7 without SP1/2008 R2 without SP1 and older. If you need to use WinSCP on an older version of Windows, use //Portable executables// download. | ||
- | ===== Configuring WinSCP Sessions ===== | + | While there is 32-bit version of WinSCP available only, it runs on 64-bit editions of Microsoft Windows. |
- | Most shells nowadays offer options to make user experience better. Unfortunately many of these options makes the shell incompatible with WinSCP. | + | |
- | This mostly affects SCP protocol. Example is colorized output on ''ls'' command that puts ANSI color sequences to the command output that WinSCP cannot parse. | + | On Windows Server, WinSCP runs both in "Server with Desktop Experience" ("Server with a GUI") and "Server Core" installation options.· |
- | Also SFTP protocol can be affected. Typical example is printing some message from start-up scripts. WinSCP (and any other SFTP client) will attempt to parse the message as SFTP packet, which obviously fails. | + | WinSCP also runs on [[https://www.winehq.org/|Wine]]. See [[https://appdb.winehq.org/objectManager.php?sClass=application&iId=1285|WinSCP entry on Wine AppDB]]. |
- | You should configure your start-up scripts to conform to non-interactive sessions (like WinSCP). Some shells calls different profile/start-up scripts for interactive and non-interactive sessions. You can use also some environment variables, like ''TERM'' to distinguish interactive and non-interactive sessions. | + | WinSCP requires 40–100 MB of free disk space. |
- | ===== Client Requirements ===== | + | We take care to make WinSCP an ==accessible== application, particularly to visually impaired people. WinSCP can be used on systems with screen readers. |
- | WinSCP should run on any system running Windows 95 or later. | + |