ssh » Revisions »

Differences

This shows you the differences between the selected revisions of the page.

ssh 2004-12-15 ssh 2023-06-05 (current)
Line 1: Line 1:
====== Understanding SSH ====== ====== Understanding SSH ======
 +SSH is a cryptographically protected remote login protocol that replaces insecure telnet and rlogin protocols. It provides strong protection against password sniffing and third party session monitoring, better protecting your authentication credentials
 +and privacy. In addition, %%SSH%% offers additional authentication methods that are considered more secure than passwords, such as [[public_key|public key authentication]] and extensive
 +protection against spoofing.
 +
 +The %%SSH%% employs a public key cryptography that uses [[ssh_keys|two keys pairs, for host and user]].
 +
 +===== [[authentication]] Authentication in SSH =====
 +SSH servers offer the client a selection of authentication
 +methods. The server advertises what it supports, and the client
 +attempts to authenticate over each method that it can support.
 +Generally, the client will choose methods that are the least intrusive
 +to the user, if they are available. In most cases, the client provides
 +the option to choose which methods can be used. In WinSCP, you can configure this on //[[ui_login_authentication|SSH > Authentication page]]// of Advanced Site Settings dialog.
 +
 +The actual order of authentication methods is as follows: [[ui_login_authentication#gssapi|GSSAPI]], [[public key]] (using [[ui_pageant|Pageant]]), public key (using [[ui_login_authentication|configured file]]), keyboard-interactive, password.
 +
 +===== [[verifying_host_key]] Verifying the Host Key =====
 +To prevent [[wp>Man-in-the-middle_attack|man-in-the-middle attacks]], each SSH server has a unique identifying code, called a host key. These keys prevent a server from forging another server's key. If you connect to a server for the first time or if the server presets a different key than previously, WinSCP will prompt you to [[ssh_verifying_the_host_key|verify the key]].
 +
 +===== Encryption in SSH =====
 +SSH clients and servers can use a number of encryption methods.
 +Most widely used encryption methods in SSH are AES and
 +Blowfish. By default, %%AES%% is used if supported by the server. While %%AES%% is
 +considered to be highly secure, %%AES%% encryption requires substantial processor overhead. Blowfish is also considered
 +secure, but with less computational overhead, it's also theoretically
 +easier to perform a brute-force attack. Depending on your security and
 +performance requirements, you may wish to configure WinSCP to prefer
 +the %%Blowfish%% algorithm. %%3DES%% and %%DES%% are used with %%SSH-1%% servers. %%DES%%
 +is widely regarded as insecure, as the resources to perform an
 +exhaustive brute-force attack have been well within the realm of
 +commercial feasibility for some time.
 +
 +===== SSH Protocols =====
 +Two major versions of the SSH protocol exist, SSH-2 and SSH-1. Most %%SSH%% servers nowadays allow modern and secure %%SSH-2%% only, which is also WinSCP's default.
 +
 +===== [[compression]] Compression =====
 +SSH supports data stream compression between the client
 +and the server. On slow links, this may increase throughput, while in faster connections the added CPU overhead may actually result in
 +slower transfers, particularly depending on the data type you're transferring. Large text files may still benefit significantly, while
 +binaries may transfer more slowly. You may want to
 +experiment to find what works best in your situation. Compression may
 +also improve security slightly, in part by rendering known cyphertext
 +attacks more difficult and by providing less data for
 +cryptanalysis.
 +
 +===== Supported Algorithms =====
 +
 +See list of [[ssh_algorithms|supported SSH algorithms]].

Last modified: by martin