diff options
Diffstat (limited to 'PROTOCOL')
-rw-r--r-- | PROTOCOL | 45 |
1 files changed, 31 insertions, 14 deletions
@@ -12,7 +12,9 @@ are individually implemented as extensions described below. | |||
12 | The protocol used by OpenSSH's ssh-agent is described in the file | 12 | The protocol used by OpenSSH's ssh-agent is described in the file |
13 | PROTOCOL.agent | 13 | PROTOCOL.agent |
14 | 14 | ||
15 | 1. transport: Protocol 2 MAC algorithm "umac-64@openssh.com" | 15 | 1. Transport protocol changes |
16 | |||
17 | 1.1. transport: Protocol 2 MAC algorithm "umac-64@openssh.com" | ||
16 | 18 | ||
17 | This is a new transport-layer MAC method using the UMAC algorithm | 19 | This is a new transport-layer MAC method using the UMAC algorithm |
18 | (rfc4418). This method is identical to the "umac-64" method documented | 20 | (rfc4418). This method is identical to the "umac-64" method documented |
@@ -20,7 +22,7 @@ in: | |||
20 | 22 | ||
21 | http://www.openssh.com/txt/draft-miller-secsh-umac-01.txt | 23 | http://www.openssh.com/txt/draft-miller-secsh-umac-01.txt |
22 | 24 | ||
23 | 2. transport: Protocol 2 compression algorithm "zlib@openssh.com" | 25 | 1.2. transport: Protocol 2 compression algorithm "zlib@openssh.com" |
24 | 26 | ||
25 | This transport-layer compression method uses the zlib compression | 27 | This transport-layer compression method uses the zlib compression |
26 | algorithm (identical to the "zlib" method in rfc4253), but delays the | 28 | algorithm (identical to the "zlib" method in rfc4253), but delays the |
@@ -31,14 +33,27 @@ The method is documented in: | |||
31 | 33 | ||
32 | http://www.openssh.com/txt/draft-miller-secsh-compression-delayed-00.txt | 34 | http://www.openssh.com/txt/draft-miller-secsh-compression-delayed-00.txt |
33 | 35 | ||
34 | 3. transport: New public key algorithms "ssh-rsa-cert-v00@openssh.com" and | 36 | 1.3. transport: New public key algorithms "ssh-rsa-cert-v00@openssh.com", |
35 | "ssh-dsa-cert-v00@openssh.com" | 37 | "ssh-dsa-cert-v00@openssh.com", |
38 | "ecdsa-sha2-nistp256-cert-v01@openssh.com", | ||
39 | "ecdsa-sha2-nistp384-cert-v01@openssh.com" and | ||
40 | "ecdsa-sha2-nistp521-cert-v01@openssh.com" | ||
36 | 41 | ||
37 | OpenSSH introduces two new public key algorithms to support certificate | 42 | OpenSSH introduces new public key algorithms to support certificate |
38 | authentication for users and hostkeys. These methods are documented in | 43 | authentication for users and hostkeys. These methods are documented in |
39 | the file PROTOCOL.certkeys | 44 | the file PROTOCOL.certkeys |
40 | 45 | ||
41 | 4. connection: Channel write close extension "eow@openssh.com" | 46 | 1.4. transport: Elliptic Curve cryptography |
47 | |||
48 | OpenSSH supports ECC key exchange and public key authentication as | ||
49 | specified in RFC5656. Only the ecdsa-sha2-nistp256, ecdsa-sha2-nistp384 | ||
50 | and ecdsa-sha2-nistp521 curves over GF(p) are supported. Elliptic | ||
51 | curve points encoded using point compression are NOT accepted or | ||
52 | generated. | ||
53 | |||
54 | 2. Connection protocol changes | ||
55 | |||
56 | 2.1. connection: Channel write close extension "eow@openssh.com" | ||
42 | 57 | ||
43 | The SSH connection protocol (rfc4254) provides the SSH_MSG_CHANNEL_EOF | 58 | The SSH connection protocol (rfc4254) provides the SSH_MSG_CHANNEL_EOF |
44 | message to allow an endpoint to signal its peer that it will send no | 59 | message to allow an endpoint to signal its peer that it will send no |
@@ -77,8 +92,8 @@ message is only sent to OpenSSH peers (identified by banner). | |||
77 | Other SSH implementations may be whitelisted to receive this message | 92 | Other SSH implementations may be whitelisted to receive this message |
78 | upon request. | 93 | upon request. |
79 | 94 | ||
80 | 5. connection: disallow additional sessions extension | 95 | 2.2. connection: disallow additional sessions extension |
81 | "no-more-sessions@openssh.com" | 96 | "no-more-sessions@openssh.com" |
82 | 97 | ||
83 | Most SSH connections will only ever request a single session, but a | 98 | Most SSH connections will only ever request a single session, but a |
84 | attacker may abuse a running ssh client to surreptitiously open | 99 | attacker may abuse a running ssh client to surreptitiously open |
@@ -105,7 +120,7 @@ of this message, the no-more-sessions request is only sent to OpenSSH | |||
105 | servers (identified by banner). Other SSH implementations may be | 120 | servers (identified by banner). Other SSH implementations may be |
106 | whitelisted to receive this message upon request. | 121 | whitelisted to receive this message upon request. |
107 | 122 | ||
108 | 6. connection: Tunnel forward extension "tun@openssh.com" | 123 | 2.3. connection: Tunnel forward extension "tun@openssh.com" |
109 | 124 | ||
110 | OpenSSH supports layer 2 and layer 3 tunnelling via the "tun@openssh.com" | 125 | OpenSSH supports layer 2 and layer 3 tunnelling via the "tun@openssh.com" |
111 | channel type. This channel type supports forwarding of network packets | 126 | channel type. This channel type supports forwarding of network packets |
@@ -166,7 +181,9 @@ The contents of the "data" field for layer 2 packets is: | |||
166 | The "frame" field contains an IEEE 802.3 Ethernet frame, including | 181 | The "frame" field contains an IEEE 802.3 Ethernet frame, including |
167 | header. | 182 | header. |
168 | 183 | ||
169 | 7. sftp: Reversal of arguments to SSH_FXP_SYMLINK | 184 | 3. SFTP protocol changes |
185 | |||
186 | 3.1. sftp: Reversal of arguments to SSH_FXP_SYMLINK | ||
170 | 187 | ||
171 | When OpenSSH's sftp-server was implemented, the order of the arguments | 188 | When OpenSSH's sftp-server was implemented, the order of the arguments |
172 | to the SSH_FXP_SYMLINK method was inadvertently reversed. Unfortunately, | 189 | to the SSH_FXP_SYMLINK method was inadvertently reversed. Unfortunately, |
@@ -179,7 +196,7 @@ SSH_FXP_SYMLINK as follows: | |||
179 | string targetpath | 196 | string targetpath |
180 | string linkpath | 197 | string linkpath |
181 | 198 | ||
182 | 8. sftp: Server extension announcement in SSH_FXP_VERSION | 199 | 3.2. sftp: Server extension announcement in SSH_FXP_VERSION |
183 | 200 | ||
184 | OpenSSH's sftp-server lists the extensions it supports using the | 201 | OpenSSH's sftp-server lists the extensions it supports using the |
185 | standard extension announcement mechanism in the SSH_FXP_VERSION server | 202 | standard extension announcement mechanism in the SSH_FXP_VERSION server |
@@ -200,7 +217,7 @@ ever changed in an incompatible way. The server MAY advertise the same | |||
200 | extension with multiple versions (though this is unlikely). Clients MUST | 217 | extension with multiple versions (though this is unlikely). Clients MUST |
201 | check the version number before attempting to use the extension. | 218 | check the version number before attempting to use the extension. |
202 | 219 | ||
203 | 9. sftp: Extension request "posix-rename@openssh.com" | 220 | 3.3. sftp: Extension request "posix-rename@openssh.com" |
204 | 221 | ||
205 | This operation provides a rename operation with POSIX semantics, which | 222 | This operation provides a rename operation with POSIX semantics, which |
206 | are different to those provided by the standard SSH_FXP_RENAME in | 223 | are different to those provided by the standard SSH_FXP_RENAME in |
@@ -217,7 +234,7 @@ rename(oldpath, newpath) and will respond with a SSH_FXP_STATUS message. | |||
217 | This extension is advertised in the SSH_FXP_VERSION hello with version | 234 | This extension is advertised in the SSH_FXP_VERSION hello with version |
218 | "1". | 235 | "1". |
219 | 236 | ||
220 | 10. sftp: Extension requests "statvfs@openssh.com" and | 237 | 3.4. sftp: Extension requests "statvfs@openssh.com" and |
221 | "fstatvfs@openssh.com" | 238 | "fstatvfs@openssh.com" |
222 | 239 | ||
223 | These requests correspond to the statvfs and fstatvfs POSIX system | 240 | These requests correspond to the statvfs and fstatvfs POSIX system |
@@ -258,4 +275,4 @@ The values of the f_flag bitmask are as follows: | |||
258 | Both the "statvfs@openssh.com" and "fstatvfs@openssh.com" extensions are | 275 | Both the "statvfs@openssh.com" and "fstatvfs@openssh.com" extensions are |
259 | advertised in the SSH_FXP_VERSION hello with version "2". | 276 | advertised in the SSH_FXP_VERSION hello with version "2". |
260 | 277 | ||
261 | $OpenBSD: PROTOCOL,v 1.15 2010/02/26 20:29:54 djm Exp $ | 278 | $OpenBSD: PROTOCOL,v 1.16 2010/08/31 11:54:45 djm Exp $ |