FAQ entry on rekeys: Jacob would like to pre-emptively try to avoid
[u/mdw/putty] / doc / errors.but
CommitLineData
39a938f7 1\define{versioniderrors} \versionid $Id$
91f80e36 2
3\C{errors} Common error messages
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
2e85c969 33use separate host keys, so when you first use SSH-2 with a server
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
64all port forwardings you have set up in an SSH session. If you
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
77puts up this warning only for single-DES 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
82(SSH_DISCONNECT_PROTOCOL_ERROR): "Too many authentication failures for root"}
83
84This message is produced by an OpenSSH (or Sun SSH) server if it
85receives more failed authentication attempts than it is willing to
86tolerate. This can easily happen if you are using Pageant and have a
87large number of keys loaded into it. This can be worked around on the
88server by disabling public-key authentication or (for Sun SSH only) by
89increasing \c{MaxAuthTries} in \c{sshd_config}. Neither of these is a
90really satisfactory solution, and we hope to provide a better one in a
91future version of PuTTY.
92
91f80e36 93\H{errors-memory} \q{Out of memory}
94
95This occurs when PuTTY tries to allocate more memory than the system
96can give it. This \e{may} happen for genuine reasons: if the
97computer really has run out of memory, or if you have configured an
98extremely large number of lines of scrollback in your terminal.
99PuTTY is not able to recover from running out of memory; it will
100terminate immediately after giving this error.
101
102However, this error can also occur when memory is not running out at
2e85c969 103all, because PuTTY receives data in the wrong format. In SSH-2 and
91f80e36 104also in SFTP, the server sends the length of each message before the
105message itself; so PuTTY will receive the length, try to allocate
106space for the message, and then receive the rest of the message. If
107the length PuTTY receives is garbage, it will try to allocate a
108ridiculous amount of memory, and will terminate with an \q{Out of
109memory} error.
110
2e85c969 111This can happen in SSH-2, if PuTTY and the server have not enabled
91f80e36 112encryption in the same way (see \k{faq-outofmem} in the FAQ). Some
c7f9fab3 113versions of OpenSSH have a known problem with this: see
91f80e36 114\k{faq-openssh-bad-openssl}.
115
116This can also happen in PSCP or PSFTP, if your login scripts on the
117server generate output: the client program will be expecting an SFTP
118message starting with a length, and if it receives some text from
119your login scripts instead it will try to interpret them as a
120message length. See \k{faq-outofmem2} for details of this.
121
122\H{errors-internal} \q{Internal error}, \q{Internal fault},
123\q{Assertion failed}
124
125Any error beginning with the word \q{Internal} should \e{never}
126occur. If it does, there is a bug in PuTTY by definition; please see
127\k{feedback} and report it to us.
128
129Similarly, any error message starting with \q{Assertion failed} is a
130bug in PuTTY. Please report it to us, and include the exact text
131from the error message box.
132
28339579 133\H{errors-cant-load-key} \q{Unable to use this private key file},
d63af698 134\q{Couldn't load private key}, \q{Key is of wrong type}
135
28339579 136\cfg{winhelp-topic}{errors.cantloadkey}
137
d63af698 138Various forms of this error are printed in the PuTTY window, or
139written to the PuTTY Event Log (see \k{using-eventlog}) when trying
140public-key authentication, or given by Pageant when trying to load a
141private key.
142
143If you see one of these messages, it often indicates that you've tried
144to load a key of an inappropriate type into PuTTY, Plink, PSCP, PSFTP,
145or Pageant.
146
147You may have specified a key that's inappropriate for the connection
148you're making. The SSH-1 and SSH-2 protocols require different private
149key formats, and a SSH-1 key can't be used for a SSH-2 connection (or
150vice versa).
151
152Alternatively, you may have tried to load an SSH-2 key in a \q{foreign}
153format (OpenSSH or \cw{ssh.com}) directly into one of the PuTTY tools,
154in which case you need to import it into PuTTY's native format
155(\c{*.PPK}) using PuTTYgen - see \k{puttygen-conversions}.
156
91f80e36 157\H{errors-refused} \q{Server refused our public key} or \q{Key
158refused}
159
160Various forms of this error are printed in the PuTTY window, or
161written to the PuTTY Event Log (see \k{using-eventlog}) when trying
162public-key authentication.
163
164If you see one of these messages, it means that PuTTY has sent a
165public key to the server and offered to authenticate with it, and
166the server has refused to accept authentication. This usually means
167that the server is not configured to accept this key to authenticate
168this user.
169
170This is almost certainly not a problem with PuTTY. If you see this
171type of message, the first thing you should do is check your
d273e616 172\e{server} configuration carefully. Common errors include having
173the wrong permissions or ownership set on the public key or the
174user's home directory on the server. Also, read the PuTTY Event Log;
91f80e36 175the server may have sent diagnostic messages explaining exactly what
176problem it had with your setup.
177
b42fb837 178\H{errors-access-denied} \q{Access denied}, \q{Authentication refused}
179
180Various forms of this error are printed in the PuTTY window, or
181written to the PuTTY Event Log (see \k{using-eventlog}) during
182authentication.
183
184If you see one of these messages, it means that the server has refused
185all the forms of authentication PuTTY has tried and it has no further
186ideas.
187
188It may be worth checking the Event Log for diagnostic messages from
189the server giving more detail.
190
191This error can be caused by buggy SSH-1 servers that fail to cope with
192the various strategies we use for camouflaging passwords in transit.
193Upgrade your server, or use the workarounds described in
194\k{config-ssh-bug-ignore1} and possibly \k{config-ssh-bug-plainpw1}.
195
91f80e36 196\H{errors-crc} \q{Incorrect CRC received on packet} or \q{Incorrect
197MAC received on packet}
198
199This error occurs when PuTTY decrypts an SSH packet and its checksum
200is not correct. This probably means something has gone wrong in the
201encryption or decryption process. It's difficult to tell from this
d7e526bf 202error message whether the problem is in the client, in the server,
203or in between.
91f80e36 204
205A known server problem which can cause this error is described in
206\k{faq-openssh-bad-openssl} in the FAQ.
207
208\H{errors-garbled} \q{Incoming packet was garbled on decryption}
209
210This error occurs when PuTTY decrypts an SSH packet and the
211decrypted data makes no sense. This probably means something has
212gone wrong in the encryption or decryption process. It's difficult
d54e6946 213to tell from this error message whether the problem is in the client,
214in the server, or in between.
91f80e36 215
07ffa166 216If you get this error, one thing you could try would be to fiddle
2e85c969 217with the setting of \q{Miscomputes SSH-2 encryption keys} on the Bugs
07ffa166 218panel (see \k{config-ssh-bug-derivekey2}).
219
220Another known server problem which can cause this error is described
221in \k{faq-openssh-bad-openssl} in the FAQ.
91f80e36 222
9bb8630a 223\H{errors-x11-proxy} \q{PuTTY X11 proxy: \e{various errors}}
91f80e36 224
9bb8630a 225This family of errors are reported when PuTTY is doing X forwarding.
226They are sent back to the X application running on the SSH server,
227which will usually report the error to the user.
91f80e36 228
229When PuTTY enables X forwarding (see \k{using-x-forwarding}) it
230creates a virtual X display running on the SSH server. This display
231requires authentication to connect to it (this is how PuTTY prevents
232other users on your server machine from connecting through the PuTTY
233proxy to your real X display). PuTTY also sends the server the
234details it needs to enable clients to connect, and the server should
235put this mechanism in place automatically, so your X applications
236should just work.
237
9bb8630a 238A common reason why people see one of these messages is because they
239used SSH to log in as one user (let's say \q{fred}), and then used
240the Unix \c{su} command to become another user (typically \q{root}).
241The original user, \q{fred}, has access to the X authentication data
91f80e36 242provided by the SSH server, and can run X applications which are
243forwarded over the SSH connection. However, the second user
244(\q{root}) does not automatically have the authentication data
245passed on to it, so attempting to run an X application as that user
246often fails with this error.
247
248If this happens, \e{it is not a problem with PuTTY}. You need to
249arrange for your X authentication data to be passed from the user
250you logged in as to the user you used \c{su} to become. How you do
251this depends on your particular system; in fact many modern versions
252of \c{su} do it automatically.
253
254\H{errors-connaborted} \q{Network error: Software caused connection
255abort}
256
19866609 257This is a generic error produced by the Windows network code when it
b0dd1394 258kills an established connection for some reason. For example, it might
19866609 259happen if you pull the network cable out of the back of an
260Ethernet-connected computer, or if Windows has any other similar
261reason to believe the entire network has become unreachable.
91f80e36 262
bb0e31ff 263We are not aware of any reason why this error might occur that would
264represent a bug in PuTTY. The problem is between you, your Windows
265system, your network and the remote system.
91f80e36 266
19866609 267Some people have reported that enabling keepalives (see
268\k{config-keepalive}) fixes this error for them.
269
91f80e36 270\H{errors-connreset} \q{Network error: Connection reset by peer}
271
272This error occurs when the machines at each end of a network
273connection lose track of the state of the connection between them.
274For example, you might see it if your SSH server crashes, and
275manages to reboot fully before you next attempt to send data to it.
276
277However, the most common reason to see this message is if you are
278connecting through a firewall or a NAT router which has timed the
279connection out. See \k{faq-idleout} in the FAQ for more details. You
280may be able to improve the situation by using keepalives; see
281\k{config-keepalive} for details on this.
282
83372d79 283Note that Windows can produce this error in some circumstances without
284seeing a connection reset from the server, for instance if the
285connection to the network is lost.
286
91f80e36 287\H{errors-connrefused} \q{Network error: Connection refused}
288
289This error means that the network connection PuTTY tried to make to
290your server was rejected by the server. Usually this happens because
291the server does not provide the service which PuTTY is trying to
292access.
293
294Check that you are connecting with the correct protocol (SSH, Telnet
295or Rlogin), and check that the port number is correct. If that
296fails, consult the administrator of your server.
bb0e31ff 297
b302c7ab 298\H{errors-conntimedout} \q{Network error: Connection timed out}
bb0e31ff 299
300This error means that the network connection PuTTY tried to make to
301your server received no response at all from the server. Usually
302this happens because the server machine is completely isolated from
303the network, or because it is turned off.
304
305Check that you have correctly entered the host name or IP address of
306your server machine. If that fails, consult the administrator of
307your server.