Fix leak of 'fname' introduced by the rewrite of write_random_seed in
[sgt/putty] / doc / errors.but
... / ...
CommitLineData
1\define{versioniderrors} \versionid $Id$
2
3\C{errors} Common \i{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
18\cfg{winhelp-topic}{errors.hostkey.absent}
19
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
33use separate host keys, so when you first use \i{SSH-2} with a server
34you have only used SSH-1 with before, you will see this message
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
41\cfg{winhelp-topic}{errors.hostkey.changed}
42
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-cipher-warning} \q{The first cipher supported by the server is
62... below the configured warning threshold}
63
64This occurs when the SSH server does not offer any ciphers which you
65have configured PuTTY to consider strong enough. By default, PuTTY
66puts up this warning only for \ii{single-DES} and \i{Arcfour} encryption.
67
68See \k{config-ssh-encryption} for more information on this message.
69
70\H{errors-toomanyauth} \q{Server sent disconnect message type 2
71(protocol error): "Too many authentication failures for root"}
72
73This message is produced by an \i{OpenSSH} (or \i{Sun SSH}) server if it
74receives more failed authentication attempts than it is willing to
75tolerate.
76
77This can easily happen if you are using Pageant and have a
78large number of keys loaded into it, since these servers count each
79offer of a public key as an authentication attempt. This can be worked
80around by specifying the key that's required for the authentication in
81the PuTTY configuration (see \k{config-ssh-privkey}); PuTTY will ignore
82any other keys Pageant may have, but will ask Pageant to do the
83authentication, so that you don't have to type your passphrase.
84
85On the server, this can be worked around by disabling public-key
86authentication or (for Sun SSH only) by increasing \c{MaxAuthTries} in
87\c{sshd_config}.
88
89\H{errors-memory} \q{\ii{Out of memory}}
90
91This occurs when PuTTY tries to allocate more memory than the system
92can give it. This \e{may} happen for genuine reasons: if the
93computer really has run out of memory, or if you have configured an
94extremely large number of lines of scrollback in your terminal.
95PuTTY is not able to recover from running out of memory; it will
96terminate immediately after giving this error.
97
98However, this error can also occur when memory is not running out at
99all, because PuTTY receives data in the wrong format. In SSH-2 and
100also in SFTP, the server sends the length of each message before the
101message itself; so PuTTY will receive the length, try to allocate
102space for the message, and then receive the rest of the message. If
103the length PuTTY receives is garbage, it will try to allocate a
104ridiculous amount of memory, and will terminate with an \q{Out of
105memory} error.
106
107This can happen in SSH-2, if PuTTY and the server have not enabled
108encryption in the same way (see \k{faq-outofmem} in the FAQ). Some
109versions of \i{OpenSSH} have a known problem with this: see
110\k{faq-openssh-bad-openssl}.
111
112This can also happen in PSCP or PSFTP, if your \i{login scripts} on the
113server generate output: the client program will be expecting an SFTP
114message starting with a length, and if it receives some text from
115your login scripts instead it will try to interpret them as a
116message length. See \k{faq-outofmem2} for details of this.
117
118\H{errors-internal} \q{\ii{Internal error}}, \q{\ii{Internal fault}},
119\q{\ii{Assertion failed}}
120
121Any error beginning with the word \q{Internal} should \e{never}
122occur. If it does, there is a bug in PuTTY by definition; please see
123\k{feedback} and report it to us.
124
125Similarly, any error message starting with \q{Assertion failed} is a
126bug in PuTTY. Please report it to us, and include the exact text
127from the error message box.
128
129\H{errors-cant-load-key} \q{Unable to use this private key file},
130\q{Couldn't load private key}, \q{Key is of wrong type}
131
132\cfg{winhelp-topic}{errors.cantloadkey}
133
134Various forms of this error are printed in the PuTTY window, or
135written to the PuTTY Event Log (see \k{using-eventlog}) when trying
136public-key authentication, or given by Pageant when trying to load a
137private key.
138
139If you see one of these messages, it often indicates that you've tried
140to load a key of an inappropriate type into PuTTY, Plink, PSCP, PSFTP,
141or Pageant.
142
143You may have specified a key that's inappropriate for the connection
144you're making. The SSH-1 and SSH-2 protocols require different private
145key formats, and a SSH-1 key can't be used for a SSH-2 connection (or
146vice versa).
147
148Alternatively, you may have tried to load an SSH-2 key in a \q{foreign}
149format (OpenSSH or \cw{ssh.com}) directly into one of the PuTTY tools,
150in which case you need to import it into PuTTY's native format
151(\c{*.PPK}) using PuTTYgen - see \k{puttygen-conversions}.
152
153\H{errors-refused} \q{Server refused our public key} or \q{Key
154refused}
155
156Various forms of this error are printed in the PuTTY window, or
157written to the PuTTY Event Log (see \k{using-eventlog}) when trying
158public-key authentication.
159
160If you see one of these messages, it means that PuTTY has sent a
161public key to the server and offered to authenticate with it, and
162the server has refused to accept authentication. This usually means
163that the server is not configured to accept this key to authenticate
164this user.
165
166This is almost certainly not a problem with PuTTY. If you see this
167type of message, the first thing you should do is check your
168\e{server} configuration carefully. Common errors include having
169the wrong permissions or ownership set on the public key or the
170user's home directory on the server. Also, read the PuTTY Event Log;
171the server may have sent diagnostic messages explaining exactly what
172problem it had with your setup.
173
174\K{pubkey-gettingready} has some hints on server-side public key
175setup.
176
177\H{errors-access-denied} \q{Access denied}, \q{Authentication refused}
178
179Various forms of this error are printed in the PuTTY window, or
180written to the PuTTY Event Log (see \k{using-eventlog}) during
181authentication.
182
183If you see one of these messages, it means that the server has refused
184all the forms of authentication PuTTY has tried and it has no further
185ideas.
186
187It may be worth checking the Event Log for diagnostic messages from
188the server giving more detail.
189
190This error can be caused by buggy SSH-1 servers that fail to cope with
191the various strategies we use for camouflaging passwords in transit.
192Upgrade your server, or use the workarounds described in
193\k{config-ssh-bug-ignore1} and possibly \k{config-ssh-bug-plainpw1}.
194
195\H{errors-no-auth} \q{No supported authentication methods available}
196
197This error indicates that PuTTY has run out of ways to authenticate
198you to an SSH server. This may be because PuTTY has TIS or
199keyboard-interactive authentication disabled, in which case
200\k{config-ssh-tis} and \k{config-ssh-ki}.
201
202\H{errors-crc} \q{Incorrect \i{CRC} received on packet} or \q{Incorrect
203\i{MAC} received on packet}
204
205This error occurs when PuTTY decrypts an SSH packet and its checksum
206is not correct. This probably means something has gone wrong in the
207encryption or decryption process. It's difficult to tell from this
208error message whether the problem is in the client, in the server,
209or in between.
210
211In particular, if the network is corrupting data at the TCP level, it
212may only be obvious with cryptographic protocols such as SSH, which
213explicitly check the integrity of the transferred data and complain
214loudly if the checks fail. Corruption of protocols without integrity
215protection (such as HTTP) will manifest in more subtle failures (such
216as misdisplayed text or images in a web browser) which may not be
217noticed.
218
219A known server problem which can cause this error is described in
220\k{faq-openssh-bad-openssl} in the FAQ.
221
222\H{errors-garbled} \q{Incoming packet was garbled on decryption}
223
224This error occurs when PuTTY decrypts an SSH packet and the
225decrypted data makes no sense. This probably means something has
226gone wrong in the encryption or decryption process. It's difficult
227to tell from this error message whether the problem is in the client,
228in the server, or in between.
229
230If you get this error, one thing you could try would be to fiddle with
231the setting of \q{Miscomputes SSH-2 encryption keys} (see
232\k{config-ssh-bug-derivekey2}) or \q{Ignores SSH-2 maximum packet
233size} (see \k{config-ssh-bug-maxpkt2}) on the Bugs panel .
234
235Another known server problem which can cause this error is described
236in \k{faq-openssh-bad-openssl} in the FAQ.
237
238\H{errors-x11-proxy} \q{PuTTY X11 proxy: \e{various errors}}
239
240This family of errors are reported when PuTTY is doing X forwarding.
241They are sent back to the X application running on the SSH server,
242which will usually report the error to the user.
243
244When PuTTY enables X forwarding (see \k{using-x-forwarding}) it
245creates a virtual X display running on the SSH server. This display
246requires authentication to connect to it (this is how PuTTY prevents
247other users on your server machine from connecting through the PuTTY
248proxy to your real X display). PuTTY also sends the server the
249details it needs to enable clients to connect, and the server should
250put this mechanism in place automatically, so your X applications
251should just work.
252
253A common reason why people see one of these messages is because they
254used SSH to log in as one user (let's say \q{fred}), and then used
255the Unix \c{su} command to become another user (typically \q{root}).
256The original user, \q{fred}, has access to the X authentication data
257provided by the SSH server, and can run X applications which are
258forwarded over the SSH connection. However, the second user
259(\q{root}) does not automatically have the authentication data
260passed on to it, so attempting to run an X application as that user
261often fails with this error.
262
263If this happens, \e{it is not a problem with PuTTY}. You need to
264arrange for your X authentication data to be passed from the user
265you logged in as to the user you used \c{su} to become. How you do
266this depends on your particular system; in fact many modern versions
267of \c{su} do it automatically.
268
269\H{errors-connaborted} \q{Network error: Software caused connection
270abort}
271
272This is a generic error produced by the Windows network code when it
273kills an established connection for some reason. For example, it might
274happen if you pull the network cable out of the back of an
275Ethernet-connected computer, or if Windows has any other similar
276reason to believe the entire network has become unreachable.
277
278Windows also generates this error if it has given up on the machine
279at the other end of the connection ever responding to it. If the
280network between your client and server goes down and your client
281then tries to send some data, Windows will make several attempts to
282send the data and will then give up and kill the connection. In
283particular, this can occur even if you didn't type anything, if you
284are using SSH-2 and PuTTY attempts a key re-exchange. (See
285\k{config-ssh-kex-rekey} for more about key re-exchange.)
286
287(It can also occur if you are using keepalives in your connection.
288Other people have reported that keepalives \e{fix} this error for
289them. See \k{config-keepalive} for a discussion of the pros and cons
290of keepalives.)
291
292We are not aware of any reason why this error might occur that would
293represent a bug in PuTTY. The problem is between you, your Windows
294system, your network and the remote system.
295
296\H{errors-connreset} \q{Network error: Connection reset by peer}
297
298This error occurs when the machines at each end of a network
299connection lose track of the state of the connection between them.
300For example, you might see it if your SSH server crashes, and
301manages to reboot fully before you next attempt to send data to it.
302
303However, the most common reason to see this message is if you are
304connecting through a \i{firewall} or a \i{NAT router} which has timed the
305connection out. See \k{faq-idleout} in the FAQ for more details. You
306may be able to improve the situation by using keepalives; see
307\k{config-keepalive} for details on this.
308
309Note that Windows can produce this error in some circumstances without
310seeing a connection reset from the server, for instance if the
311connection to the network is lost.
312
313\H{errors-connrefused} \q{Network error: Connection refused}
314
315This error means that the network connection PuTTY tried to make to
316your server was rejected by the server. Usually this happens because
317the server does not provide the service which PuTTY is trying to
318access.
319
320Check that you are connecting with the correct protocol (SSH, Telnet
321or Rlogin), and check that the port number is correct. If that
322fails, consult the administrator of your server.
323
324\H{errors-conntimedout} \q{Network error: Connection timed out}
325
326This error means that the network connection PuTTY tried to make to
327your server received no response at all from the server. Usually
328this happens because the server machine is completely isolated from
329the network, or because it is turned off.
330
331Check that you have correctly entered the host name or IP address of
332your server machine. If that fails, consult the administrator of
333your server.
334
335\i{Unix} also generates this error when it tries to send data down a
336connection and contact with the server has been completely lost
337during a connection. (There is a delay of minutes before Unix gives
338up on receiving a reply from the server.) This can occur if you type
339things into PuTTY while the network is down, but it can also occur
340if PuTTY decides of its own accord to send data: due to a repeat key
341exchange in SSH-2 (see \k{config-ssh-kex-rekey}) or due to
342keepalives (\k{config-keepalive}).