Make it clearer that `psftp -b' doesn't return to the interactive
[u/mdw/putty] / doc / errors.but
CommitLineData
39a938f7 1\define{versioniderrors} \versionid $Id$
91f80e36 2
421406a4 3\C{errors} Common \i{error messages}
91f80e36 4
5This chapter lists a number of common error messages which PuTTY and
6its associated tools can produce, and explains what they mean in
7more detail.
8
9We do not attempt to list \e{all} error messages here: there are
10many which should never occur, and some which should be
11self-explanatory. If you get an error message which is not listed in
12this chapter and which you don't understand, report it to us as a
13bug (see \k{feedback}) and we will add documentation for it.
14
15\H{errors-hostkey-absent} \q{The server's host key is not cached in
16the registry}
17
5321c0c6 18\cfg{winhelp-topic}{errors.hostkey.absent}
19
91f80e36 20This error message occurs when PuTTY connects to a new SSH server.
21Every server identifies itself by means of a host key; once PuTTY
22knows the host key for a server, it will be able to detect if a
23malicious attacker redirects your connection to another machine.
24
25If you see this message, it means that PuTTY has not seen this host
26key before, and has no way of knowing whether it is correct or not.
27You should attempt to verify the host key by other means, such as
28asking the machine's administrator.
29
30If you see this message and you know that your installation of PuTTY
31\e{has} connected to the same server before, it may have been
32recently upgraded to SSH protocol version 2. SSH protocols 1 and 2
421406a4 33use separate host keys, so when you first use \i{SSH-2} with a server
2e85c969 34you have only used SSH-1 with before, you will see this message
91f80e36 35again. You should verify the correctness of the key as before.
36
37See \k{gs-hostkey} for more information on host keys.
38
39\H{errors-hostkey-wrong} \q{WARNING - POTENTIAL SECURITY BREACH!}
40
5321c0c6 41\cfg{winhelp-topic}{errors.hostkey.changed}
42
91f80e36 43This message, followed by \q{The server's host key does not match
44the one PuTTY has cached in the registry}, means that PuTTY has
45connected to the SSH server before, knows what its host key
46\e{should} be, but has found a different one.
47
48This may mean that a malicious attacker has replaced your server
49with a different one, or has redirected your network connection to
50their own machine. On the other hand, it may simply mean that the
51administrator of your server has accidentally changed the key while
52upgrading the SSH software; this \e{shouldn't} happen but it is
53unfortunately possible.
54
55You should contact your server's administrator and see whether they
56expect the host key to have changed. If so, verify the new host key
57in the same way as you would if it was new.
58
59See \k{gs-hostkey} for more information on host keys.
60
61\H{errors-portfwd-space} \q{Out of space for port forwardings}
62
63PuTTY has a fixed-size buffer which it uses to store the details of
421406a4 64all \i{port forwardings} you have set up in an SSH session. If you
91f80e36 65specify too many port forwardings on the PuTTY or Plink command line
66and this buffer becomes full, you will see this error message.
67
68We need to fix this (fixed-size buffers are almost always a mistake)
69but we haven't got round to it. If you actually have trouble with
70this, let us know and we'll move it up our priority list.
71
72\H{errors-cipher-warning} \q{The first cipher supported by the server is
73... below the configured warning threshold}
74
75This occurs when the SSH server does not offer any ciphers which you
83372d79 76have configured PuTTY to consider strong enough. By default, PuTTY
a2add208 77puts up this warning only for \ii{single-DES} and \i{Arcfour} encryption.
91f80e36 78
79See \k{config-ssh-encryption} for more information on this message.
80
d47748c7 81\H{errors-toomanyauth} \q{Server sent disconnect message type 2
94cd7c3a 82(protocol error): "Too many authentication failures for root"}
d47748c7 83
421406a4 84This message is produced by an \i{OpenSSH} (or \i{Sun SSH}) server if it
d47748c7 85receives more failed authentication attempts than it is willing to
94cd7c3a 86tolerate.
87
88This can easily happen if you are using Pageant and have a
89large number of keys loaded into it, since these servers count each
90offer of a public key as an authentication attempt. This can be worked
91around by specifying the key that's required for the authentication in
53b567c2 92the PuTTY configuration (see \k{config-ssh-privkey}); PuTTY will ignore
94cd7c3a 93any other keys Pageant may have, but will ask Pageant to do the
94authentication, so that you don't have to type your passphrase.
95
96On the server, this can be worked around by disabling public-key
97authentication or (for Sun SSH only) by increasing \c{MaxAuthTries} in
98\c{sshd_config}.
d47748c7 99
421406a4 100\H{errors-memory} \q{\ii{Out of memory}}
91f80e36 101
102This occurs when PuTTY tries to allocate more memory than the system
103can give it. This \e{may} happen for genuine reasons: if the
104computer really has run out of memory, or if you have configured an
105extremely large number of lines of scrollback in your terminal.
106PuTTY is not able to recover from running out of memory; it will
107terminate immediately after giving this error.
108
109However, this error can also occur when memory is not running out at
2e85c969 110all, because PuTTY receives data in the wrong format. In SSH-2 and
91f80e36 111also in SFTP, the server sends the length of each message before the
112message itself; so PuTTY will receive the length, try to allocate
113space for the message, and then receive the rest of the message. If
114the length PuTTY receives is garbage, it will try to allocate a
115ridiculous amount of memory, and will terminate with an \q{Out of
116memory} error.
117
2e85c969 118This can happen in SSH-2, if PuTTY and the server have not enabled
91f80e36 119encryption in the same way (see \k{faq-outofmem} in the FAQ). Some
421406a4 120versions of \i{OpenSSH} have a known problem with this: see
91f80e36 121\k{faq-openssh-bad-openssl}.
122
421406a4 123This can also happen in PSCP or PSFTP, if your \i{login scripts} on the
91f80e36 124server generate output: the client program will be expecting an SFTP
125message starting with a length, and if it receives some text from
126your login scripts instead it will try to interpret them as a
127message length. See \k{faq-outofmem2} for details of this.
128
421406a4 129\H{errors-internal} \q{\ii{Internal error}}, \q{\ii{Internal fault}},
130\q{\ii{Assertion failed}}
91f80e36 131
132Any error beginning with the word \q{Internal} should \e{never}
133occur. If it does, there is a bug in PuTTY by definition; please see
134\k{feedback} and report it to us.
135
136Similarly, any error message starting with \q{Assertion failed} is a
137bug in PuTTY. Please report it to us, and include the exact text
138from the error message box.
139
28339579 140\H{errors-cant-load-key} \q{Unable to use this private key file},
d63af698 141\q{Couldn't load private key}, \q{Key is of wrong type}
142
28339579 143\cfg{winhelp-topic}{errors.cantloadkey}
144
d63af698 145Various forms of this error are printed in the PuTTY window, or
146written to the PuTTY Event Log (see \k{using-eventlog}) when trying
147public-key authentication, or given by Pageant when trying to load a
148private key.
149
150If you see one of these messages, it often indicates that you've tried
151to load a key of an inappropriate type into PuTTY, Plink, PSCP, PSFTP,
152or Pageant.
153
154You may have specified a key that's inappropriate for the connection
155you're making. The SSH-1 and SSH-2 protocols require different private
156key formats, and a SSH-1 key can't be used for a SSH-2 connection (or
157vice versa).
158
159Alternatively, you may have tried to load an SSH-2 key in a \q{foreign}
160format (OpenSSH or \cw{ssh.com}) directly into one of the PuTTY tools,
161in which case you need to import it into PuTTY's native format
162(\c{*.PPK}) using PuTTYgen - see \k{puttygen-conversions}.
163
91f80e36 164\H{errors-refused} \q{Server refused our public key} or \q{Key
165refused}
166
167Various forms of this error are printed in the PuTTY window, or
168written to the PuTTY Event Log (see \k{using-eventlog}) when trying
169public-key authentication.
170
171If you see one of these messages, it means that PuTTY has sent a
172public key to the server and offered to authenticate with it, and
173the server has refused to accept authentication. This usually means
174that the server is not configured to accept this key to authenticate
175this user.
176
177This is almost certainly not a problem with PuTTY. If you see this
178type of message, the first thing you should do is check your
d273e616 179\e{server} configuration carefully. Common errors include having
180the wrong permissions or ownership set on the public key or the
181user's home directory on the server. Also, read the PuTTY Event Log;
91f80e36 182the server may have sent diagnostic messages explaining exactly what
183problem it had with your setup.
184
b42fb837 185\H{errors-access-denied} \q{Access denied}, \q{Authentication refused}
186
187Various forms of this error are printed in the PuTTY window, or
188written to the PuTTY Event Log (see \k{using-eventlog}) during
189authentication.
190
191If you see one of these messages, it means that the server has refused
192all the forms of authentication PuTTY has tried and it has no further
193ideas.
194
195It may be worth checking the Event Log for diagnostic messages from
196the server giving more detail.
197
198This error can be caused by buggy SSH-1 servers that fail to cope with
199the various strategies we use for camouflaging passwords in transit.
200Upgrade your server, or use the workarounds described in
201\k{config-ssh-bug-ignore1} and possibly \k{config-ssh-bug-plainpw1}.
202
421406a4 203\H{errors-crc} \q{Incorrect \i{CRC} received on packet} or \q{Incorrect
91f80e36 204MAC received on packet}
205
206This error occurs when PuTTY decrypts an SSH packet and its checksum
207is not correct. This probably means something has gone wrong in the
208encryption or decryption process. It's difficult to tell from this
d7e526bf 209error message whether the problem is in the client, in the server,
210or in between.
91f80e36 211
212A known server problem which can cause this error is described in
213\k{faq-openssh-bad-openssl} in the FAQ.
214
215\H{errors-garbled} \q{Incoming packet was garbled on decryption}
216
217This error occurs when PuTTY decrypts an SSH packet and the
218decrypted data makes no sense. This probably means something has
219gone wrong in the encryption or decryption process. It's difficult
d54e6946 220to tell from this error message whether the problem is in the client,
221in the server, or in between.
91f80e36 222
07ffa166 223If you get this error, one thing you could try would be to fiddle
2e85c969 224with the setting of \q{Miscomputes SSH-2 encryption keys} on the Bugs
07ffa166 225panel (see \k{config-ssh-bug-derivekey2}).
226
227Another known server problem which can cause this error is described
228in \k{faq-openssh-bad-openssl} in the FAQ.
91f80e36 229
9bb8630a 230\H{errors-x11-proxy} \q{PuTTY X11 proxy: \e{various errors}}
91f80e36 231
9bb8630a 232This family of errors are reported when PuTTY is doing X forwarding.
233They are sent back to the X application running on the SSH server,
234which will usually report the error to the user.
91f80e36 235
236When PuTTY enables X forwarding (see \k{using-x-forwarding}) it
237creates a virtual X display running on the SSH server. This display
238requires authentication to connect to it (this is how PuTTY prevents
239other users on your server machine from connecting through the PuTTY
240proxy to your real X display). PuTTY also sends the server the
241details it needs to enable clients to connect, and the server should
242put this mechanism in place automatically, so your X applications
243should just work.
244
9bb8630a 245A common reason why people see one of these messages is because they
246used SSH to log in as one user (let's say \q{fred}), and then used
247the Unix \c{su} command to become another user (typically \q{root}).
248The original user, \q{fred}, has access to the X authentication data
91f80e36 249provided by the SSH server, and can run X applications which are
250forwarded over the SSH connection. However, the second user
251(\q{root}) does not automatically have the authentication data
252passed on to it, so attempting to run an X application as that user
253often fails with this error.
254
255If this happens, \e{it is not a problem with PuTTY}. You need to
256arrange for your X authentication data to be passed from the user
257you logged in as to the user you used \c{su} to become. How you do
258this depends on your particular system; in fact many modern versions
259of \c{su} do it automatically.
260
261\H{errors-connaborted} \q{Network error: Software caused connection
262abort}
263
19866609 264This is a generic error produced by the Windows network code when it
b0dd1394 265kills an established connection for some reason. For example, it might
19866609 266happen if you pull the network cable out of the back of an
267Ethernet-connected computer, or if Windows has any other similar
268reason to believe the entire network has become unreachable.
91f80e36 269
aace4aeb 270Windows also generates this error if it has given up on the machine
271at the other end of the connection ever responding to it. If the
272network between your client and server goes down and your client
273then tries to send some data, Windows will make several attempts to
274send the data and will then give up and kill the connection. In
275particular, this can occur even if you didn't type anything, if you
276are using SSH-2 and PuTTY attempts a key re-exchange. (See
277\k{config-ssh-kex-rekey} for more about key re-exchange.)
278
279(It can also occur if you are using keepalives in your connection.
280Other people have reported that keepalives \e{fix} this error for
281them. See \k{config-keepalive} for a discussion of the pros and cons
282of keepalives.)
283
bb0e31ff 284We are not aware of any reason why this error might occur that would
285represent a bug in PuTTY. The problem is between you, your Windows
286system, your network and the remote system.
91f80e36 287
288\H{errors-connreset} \q{Network error: Connection reset by peer}
289
290This error occurs when the machines at each end of a network
291connection lose track of the state of the connection between them.
292For example, you might see it if your SSH server crashes, and
293manages to reboot fully before you next attempt to send data to it.
294
295However, the most common reason to see this message is if you are
421406a4 296connecting through a \i{firewall} or a \i{NAT router} which has timed the
91f80e36 297connection out. See \k{faq-idleout} in the FAQ for more details. You
298may be able to improve the situation by using keepalives; see
299\k{config-keepalive} for details on this.
300
83372d79 301Note that Windows can produce this error in some circumstances without
302seeing a connection reset from the server, for instance if the
303connection to the network is lost.
304
91f80e36 305\H{errors-connrefused} \q{Network error: Connection refused}
306
307This error means that the network connection PuTTY tried to make to
308your server was rejected by the server. Usually this happens because
309the server does not provide the service which PuTTY is trying to
310access.
311
312Check that you are connecting with the correct protocol (SSH, Telnet
313or Rlogin), and check that the port number is correct. If that
314fails, consult the administrator of your server.
bb0e31ff 315
b302c7ab 316\H{errors-conntimedout} \q{Network error: Connection timed out}
bb0e31ff 317
318This error means that the network connection PuTTY tried to make to
319your server received no response at all from the server. Usually
320this happens because the server machine is completely isolated from
321the network, or because it is turned off.
322
323Check that you have correctly entered the host name or IP address of
324your server machine. If that fails, consult the administrator of
325your server.
aace4aeb 326
421406a4 327\i{Unix} also generates this error when it tries to send data down a
aace4aeb 328connection and contact with the server has been completely lost
329during a connection. (There is a delay of minutes before Unix gives
330up on receiving a reply from the server.) This can occur if you type
331things into PuTTY while the network is down, but it can also occur
332if PuTTY decides of its own accord to send data: due to a repeat key
333exchange in SSH-2 (see \k{config-ssh-kex-rekey}) or due to
334keepalives (\k{config-keepalive}).