Differences
This shows you the differences between the selected revisions of the page.
ui_login_proxy 2022-04-07 | ui_login_proxy 2023-05-24 (current) | ||
Line 17: | Line 17: | ||
Selecting //SOCKS4// or //SOCKS5// allows you to proxy your connections through a SOCKS server. | Selecting //SOCKS4// or //SOCKS5// allows you to proxy your connections through a SOCKS server. | ||
- | Many firewalls implement a less formal type of proxy in which a user can make a Telnet connection directly to the firewall machine and enter a command such as ''connect myhost.com 22'' to connect through to an external host. Selecting //Telnet// allows you to tell WinSCP to use this type of proxy. This type of proxy is not supported for [[FTP]], [[WebDAV]] and [[S3]] protocols. | + | Many firewalls implement a less formal type of proxy in which a user can make a Telnet or TCP connection directly to the firewall machine and enter a command such as ''connect myhost.com 22'' to connect through to an external host. Selecting //Telnet// allows you to tell WinSCP to use this type of proxy, with the [[#command|precise command specified]]. This type of proxy is not supported for [[FTP]], [[WebDAV]] and [[S3]] protocols. |
Selecting //Local// allows you to specify an arbitrary command on the local machine to act as a proxy. When the session is started, instead of creating a TCP connection, WinSCP runs the specified command, and uses its standard input and output streams. This type of proxy is not supported for [[FTP]], [[WebDAV]] and [[S3]] protocols. | Selecting //Local// allows you to specify an arbitrary command on the local machine to act as a proxy. When the session is started, instead of creating a TCP connection, WinSCP runs the specified command, and uses its standard input and output streams. This type of proxy is not supported for [[FTP]], [[WebDAV]] and [[S3]] protocols. | ||
Line 28: | Line 28: | ||
===== [[username_password]] Username and Password ===== | ===== [[username_password]] Username and Password ===== | ||
- | If your proxy requires authentication, you can enter a username and a password in the //Username// and //Password// boxes. | + | You can enter a username and a password in the //User name// and //Password// boxes, which will be used if your proxy requires authentication. |
+ | |||
+ | If WinSCP discovers that it needs a proxy username or password and you have not specified one here, WinSCP will prompt for it interactively in the terminal window. | ||
Authentication is not fully supported for all forms of proxy: | Authentication is not fully supported for all forms of proxy: | ||
* Username and password authentication is supported for HTTP proxies and SOCKS5 proxies. | * Username and password authentication is supported for HTTP proxies and SOCKS5 proxies. | ||
* With SOCKS5, authentication is via CHAP if the proxy supports it, otherwise the password is sent to the proxy in plain text. | * With SOCKS5, authentication is via CHAP if the proxy supports it, otherwise the password is sent to the proxy in plain text. | ||
- | * With HTTP proxying, authentication is via "HTTP Digest" if possible //(in the latest beta release only)//, &beta or "HTTP Basic". In the latter case, the password is sent to the proxy in plain text. | + | * With HTTP proxying, authentication is via "HTTP Digest" if possible, or "HTTP Basic". In the latter case, the password is sent to the proxy in plain text. |
- | * SOCKS4 can use the //Username// field, but does not support passwords. | + | * SOCKS4 can use the //User name// field, but does not support passwords. |
- | * You can specify a way to include a username and password in the //Telnet/Local// proxy command. \\ If WinSCP discovers that it needs a proxy username or password and you have not specified one in the configuration, it will [[ui_authenticate|prompt for it interactively]]. &beta_feature | + | * You can specify a way to include a username and password in the //Telnet/Local// proxy command. \\ If you do so, and don't also specify the actual username and/or password in the configuration, WinSCP will [[ui_authenticate#proxy|interactively prompt for them]]. |
* Most FTP proxy methods do require authentication. | * Most FTP proxy methods do require authentication. | ||
===== [[command]] Telnet/Local Proxy Command ===== | ===== [[command]] Telnet/Local Proxy Command ===== | ||
- | If you are using the //Telnet// proxy type, the usual command required by the firewall's Telnet server is ''connect'', followed by a host name and a port number. If your proxy needs a different command, you can enter an alternative here. | + | If you are using the //Telnet// proxy type, the usual command required by the firewall's Telnet server is ''connect'', followed by a host name and a port number. If your proxy needs a different command, you can enter an alternative in the //Telnet command// box. |
- | If you are using the //Local// proxy type, the local command to run is specified here. | + | If you are using the //Local// proxy type, the local command to run is specified in the //Local Proxy Command//. |
In this string, you can use ''\n'' to represent a new-line, ''\r'' to represent a carriage return, ''\t'' to represent a tab character, and ''\x'' followed by two hex digits to represent any other character. ''\\'' is used to encode the \ character itself. | In this string, you can use ''\n'' to represent a new-line, ''\r'' to represent a carriage return, ''\t'' to represent a tab character, and ''\x'' followed by two hex digits to represent any other character. ''\\'' is used to encode the \ character itself. | ||
- | Also, the special strings ''%host'' and ''%port'' will be replaced by the host name and port number you want to connect to. The strings ''%user'' and ''%pass'' will be replaced by the proxy username and password you specify. To get a literal % sign, enter ''<nowiki>%%</nowiki>''. | + | Also, the special strings ''%host'' and ''%port'' will be replaced by the host name and port number you want to connect to. The strings ''%user'' and ''%pass'' will be replaced by the proxy username and password (which, if not specified in the configuration, will be prompted for). To get a literal ''%'' sign, enter ''<nowiki>%%</nowiki>''. |
If a Telnet proxy server prompts for a username and password before commands can be sent, you can use a command such as: | If a Telnet proxy server prompts for a username and password before commands can be sent, you can use a command such as: | ||
Line 51: | Line 53: | ||
%user\n%pass\nconnect %host %port\n | %user\n%pass\nconnect %host %port\n | ||
- | This will send your username and password as the first two lines to the proxy, followed by a command to connect to the desired host and port. Note that if you do not include the ''%user'' or ''%pass'' tokens in the Telnet command, then the //Username// and //Password// configuration fields will be ignored. | + | This will send your username and password as the first two lines to the proxy, followed by a command to connect to the desired host and port. Note that if you do not include the ''%user'' or ''%pass'' tokens in the //Telnet command//, then anything specified in //Username// and //Password// configuration fields will be ignored. |
You can use PuTTY ''plink'' as local proxy command to implement [[guide_tunnel#tunnel_two|two hop tunnel]]. | You can use PuTTY ''plink'' as local proxy command to implement [[guide_tunnel#tunnel_two|two hop tunnel]]. |