Add the `can we run under win3.1' question to the FAQ.
[u/mdw/putty] / doc / faq.but
1 \versionid $Id: faq.but,v 1.15 2001/12/16 15:30:03 simon Exp $
2
3 \A{faq} PuTTY FAQ
4
5 This FAQ is published on the PuTTY web site, and also provided as an
6 appendix in the manual.
7
8 \H{faq-support} Features supported in PuTTY
9
10 In general, if you want to know if PuTTY supports a particular
11 feature, you should look for it on the
12 \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/}{PuTTY web site}.
13 In particular:
14
15 \b try the
16 \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/changes.html}{changes
17 page}, and see if you can find the feature on there. If a feature is
18 listed there, it's been implemented. If it's listed as a change made
19 \e{since} the latest version, it should be available in the
20 development snapshots, in which case testing will be very welcome.
21
22 \b try the
23 \W{http://www.chiark.greenend.org.uk/~sgtatham/putty/wishlist.html}{Wishlist
24 page}, and see if you can find the feature there. If it's on there,
25 it probably \e{hasn't} been implemented.
26
27 \S{faq-ssh2}{Question} Does PuTTY support SSH v2?
28
29 Yes. SSH v2 support has been available in PuTTY since version 0.50.
30 However, currently the \e{default} SSH protocol is v1; to select SSH
31 v2 if your server supports both, go to the SSH panel and change the
32 \e{Preferred SSH protocol version} option.
33
34 Public key authentication (both RSA and DSA) in SSH v2 has been
35 added since version 0.51.
36
37 \S{faq-ssh2-keyfmt}{Question} Does PuTTY support reading OpenSSH or
38 \cw{ssh.com} SSHv2 private key files?
39
40 Not at present. OpenSSH and \cw{ssh.com} have totally different
41 formats for private key files, and neither one is particularly
42 pleasant, so PuTTY has its own. We do plan to write a converter at
43 some stage.
44
45 \S{faq-ssh1}{Question} Does PuTTY support SSH v1?
46
47 Yes. SSH 1 support has always been available in PuTTY.
48
49 \S{faq-localecho}{Question} Does PuTTY support local echo?
50
51 Yes.
52
53 In version 0.51 and before, local echo cannot be separated from
54 local line editing (where you type a line of text locally, and it is
55 not sent to the server until you press Return, so you have the
56 chance to edit it and correct mistakes \e{before} the server sees
57 it). The two features can be enabled and disabled from the Terminal
58 panel, using the checkbox marked \q{Use local terminal line
59 discipline}. Note that due to a bug in those versions of PuTTY,
60 changing this feature in mid-session will have no effect; you have
61 to enable it \e{before} you open the connection.
62
63 In later versions, local echo and local line editing are separate
64 options, and by default PuTTY will try to determine automatically
65 whether to enable them or not, based on which protocol you have
66 selected and also based on hints from the server. If you have a
67 problem with PuTTY's default choice, you can force each option to be
68 enabled or disabled as you choose. The controls are in the Terminal
69 panel, in the section marked \q{Line discipline options}.
70
71 \S{faq-disksettings}{Question} Does PuTTY support storing its
72 settings in a disk file?
73
74 Not at present, although \k{config-file} in the documentation gives
75 a method of achieving the same effect.
76
77 \S{faq-fullscreen}{Question} Does PuTTY support full-screen mode,
78 like a DOS box?
79
80 Not in the 0.51 release, but it has been added since then.
81
82 \S{faq-password-remember}{Question} Does PuTTY have the ability to
83 remember my password so I don't have to type it every time?
84
85 No, it doesn't.
86
87 Remembering your password is a bad plan for obvious security
88 reasons: anyone who gains access to your machine while you're away
89 from your desk can find out the remembered password, and use it,
90 abuse it or change it.
91
92 In addition, it's not even \e{possible} for PuTTY to automatically
93 send your password in a Telnet session, because Telnet doesn't give
94 the client software any indication of which part of the login
95 process is the password prompt. PuTTY would have to guess, by
96 looking for words like \q{password} in the session data; and if your
97 login program is written in something other than English, this won't
98 work.
99
100 In SSH, remembering your password would be possible in theory, but
101 there doesn't seem to be much point since SSH supports public key
102 authentication, which is more flexible and more secure. See
103 \k{pubkey} in the documentation for a full discussion of public key
104 authentication.
105
106 \S{faq-hostkeys}{Question} Is there an option to turn off the
107 annoying host key prompts?
108
109 No, there isn't. And there won't be. Even if you write it yourself
110 and send us the patch, we won't accept it.
111
112 Those annoying host key prompts are the \e{whole point} of SSH.
113 Without them, all the cryptographic technology SSH uses to secure
114 your session is doing nothing more than making an attacker's job
115 slightly harder; instead of sitting between you and the server with
116 a packet sniffer, the attacker must actually subvert a router and
117 start modifying the packets going back and forth. But that's not all
118 that much harder than just sniffing; and without host key checking,
119 it will go completely undetected by client or server.
120
121 Host key checking is your guarantee that the encryption you put on
122 your data at the client end is the \e{same} encryption taken off the
123 data at the server end; it's your guarantee that it hasn't been
124 removed and replaced somewhere on the way. Host key checking makes
125 the attacker's job \e{astronomically} hard, compared to packet
126 sniffing, and even compared to subverting a router. Instead of
127 applying a little intelligence and keeping an eye on Bugtraq, the
128 attacker must now perform a brute-force attack against at least one
129 military-strength cipher. That insignificant host key prompt really
130 does make \e{that} much difference.
131
132 If you're having a specific problem with host key checking - perhaps
133 you want an automated batch job to make use of PSCP or Plink, and
134 the interactive host key prompt is hanging the batch process - then
135 the right way to fix it is to add the correct host key to the
136 Registry in advance. That way, you retain the \e{important} feature
137 of host key checking: the right key will be accepted and the wrong
138 ones will not. Adding an option to turn host key checking off
139 completely is the wrong solution and we will not do it.
140
141 \S{faq-server}{Question} Will you write an SSH server for the PuTTY
142 suite, to go with the client?
143
144 No. The only reason we might want to would be if we could easily
145 re-use existing code and significantly cut down the effort. We don't
146 believe this is the case; there just isn't enough common ground
147 between an SSH client and server to make it worthwhile.
148
149 If someone else wants to use bits of PuTTY in the process of writing
150 a Windows SSH server, they'd be perfectly welcome to of course, but
151 I really can't see it being a lot less effort for us to do that than
152 it would be for us to write a server from the ground up. We don't
153 have time, and we don't have motivation. The code is available if
154 anyone else wants to try it.
155
156 \H{faq-ports} Ports to other operating systems
157
158 The eventual goal is for PuTTY to be a multi-platform program, able
159 to run on at least Windows, MacOS and Unix. Whether this will
160 actually ever happen I have no idea, but it is the plan. A Mac port
161 has been started, but is only half-finished and currently not moving
162 very fast.
163
164 Porting will become easier once PuTTY has a generalised porting
165 layer, drawing a clear line between platform-dependent and
166 platform-independent code. The general intention is for this porting
167 layer to evolve naturally as part of the process of doing the first
168 port. One particularly nasty part of this will be separating the
169 many configuration options into platform-dependent and
170 platform-independent ones; for example, the options controlling when
171 the Windows System menu appears will be pretty much meaningless
172 under X11 or perhaps other windowing systems, whereas Telnet Passive
173 Mode is universal and shouldn't need to be specified once for each
174 platform.
175
176 \S{faq-wince}{Question} Will there be a port to Windows CE?
177
178 Probably not in the particularly near future. Despite sharing large
179 parts of the Windows API, in practice WinCE doesn't appear to be
180 significantly easier to port to than a totally different operating
181 system.
182
183 However, PuTTY on portable devices would clearly be a useful thing,
184 so in the long term I hope there will be a WinCE port.
185
186 \S{faq-win31}{Question} Is there a port to Windows 3.1?
187
188 PuTTY is a 32-bit application from the ground up, so it won't run on
189 Windows 3.1 as a native 16-bit program; and it would be \e{very}
190 hard to port it to do so, because of Windows 3.1's vile memory
191 allocation mechanisms.
192
193 However, it is possible in theory to compile the existing PuTTY
194 source in such a way that it will run under Win32s (an extension to
195 Windows 3.1 to let you run 32-bit programs). In order to do this
196 you'll need the right kind of C compiler - modern versions of Visual
197 C at least have stopped being backwards compatible to Win32s. Also,
198 the last time we tried this it didn't work very well.
199
200 If you're interested in running PuTTY under Windows 3.1, help and
201 testing in this area would be very welcome!
202
203 \S{faq-mac-port}{Question} Will there be a port to the Mac?
204
205 A Mac port was started once and is half-finished, but development
206 has been static for some time and the main PuTTY code has moved on,
207 so it's not clear how quickly development would resume even if
208 developer effort were available.
209
210 \S{faq-unix}{Question} Will there be a port to Unix?
211
212 I hope so, if only so that I can have an \cw{xterm}-like program
213 that supports exactly the same terminal emulation as PuTTY. If and
214 when we do do a Unix port, it will have a local-terminal back end so
215 it can be used like an \cw{xterm}, rather than only being usable as
216 a network utility.
217
218 \S{faq-epoc}{Question} Will there be a port to EPOC?
219
220 I hope so, but given that ports aren't really progressing very fast
221 even on systems the developers \e{do} already know how to program
222 for, it might be a long time before any of us get round to learning
223 a new system and doing the port for that.
224
225 \H{faq-embedding} Embedding PuTTY in other programs
226
227 \S{faq-dll}{Question} Is the SSH or Telnet code available as a DLL?
228
229 No, it isn't. It would take a reasonable amount of rewriting for
230 this to be possible, and since the PuTTY project itself doesn't
231 believe in DLLs (they make installation more error-prone) none of us
232 has taken the time to do it.
233
234 Most of the code cleanup work would be a good thing to happen in
235 general, so if anyone feels like helping, we wouldn't say no.
236
237 \S{faq-vb}{Question} Is the SSH or Telnet code available as a Visual
238 Basic component?
239
240 No, it isn't. None of the PuTTY team uses Visual Basic, and none of
241 us has any particular need to make SSH connections from a Visual
242 Basic application. In addition, all the preliminary work to turn it
243 into a DLL would be necessary first; and furthermore, we don't even
244 know how to write VB components.
245
246 If someone offers to do some of this work for us, we might consider
247 it, but unless that happens I can't see VB integration being
248 anywhere other than the very bottom of our priority list.
249
250 \S{faq-ipc}{Question} How can I use PuTTY to make an SSH connection
251 from within another program?
252
253 Probably your best bet is to use Plink, the command-line connection
254 tool. If you can start Plink as a second Windows process, and
255 arrange for your primary process to be able to send data to the
256 Plink process, and receive data from it, through pipes, then you
257 should be able to make SSH connections from your program.
258
259 This is what CVS for Windows does, for example.
260
261 \H{faq-details} Details of PuTTY's operation
262
263 \S{faq-term}{Question} What terminal type does PuTTY use?
264
265 For most purposes, PuTTY can be considered to be an \cw{xterm}
266 terminal, although full support for some of \cw{xterm}'s features,
267 such as passing mouse actions to the server-side program, is not
268 present in the 0.51 release (but has been added since).
269
270 PuTTY also supports some terminal control sequences not supported by
271 the real \cw{xterm}: notably the Linux console sequences that
272 reconfigure the colour palette, and the title bar control sequences
273 used by \cw{DECterm} (which are different from the \cw{xterm} ones;
274 PuTTY supports both).
275
276 By default, PuTTY announces its terminal type to the server as
277 \c{xterm}. If you have a problem with this, you can reconfigure it
278 to say something else; \c{vt220} might help if you have trouble.
279
280 \S{faq-settings}{Question} Where does PuTTY store its data?
281
282 PuTTY stores most of its data (saved sessions, SSH host keys) in the
283 Registry. The precise location is
284
285 \c HKEY_CURRENT_USER\Software\SimonTatham\PuTTY
286
287 and within that area, saved sessions are stored under \c{Sessions}
288 while host keys are stored under \c{SshHostKeys}.
289
290 PuTTY also requires a random number seed file, to improve the
291 unpredictability of randomly chosen data needed as part of the SSH
292 cryptography. This is stored by default in your Windows home
293 directory (\c{%HOMEDRIVE%\\%HOMEPATH%}), or in the actual Windows
294 directory (such as \c{C:\\WINDOWS}) if the home directory doesn't
295 exist, for example if you're using Win95. If you want to change the
296 location of the random number seed file, you can put your chosen
297 pathname in the Registry, at
298
299 \c HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\RandSeedFile
300
301 \H{faq-howto} HOWTO questions
302
303 \S{faq-startmax}{Question} How can I make PuTTY start up maximised?
304
305 Create a Windows shortcut to start PuTTY from, and set it as \q{Run
306 Maximized}.
307
308 \S{faq-startsess}{Question} How can I create a Windows shortcut to
309 start a particular saved session directly?
310
311 To run a PuTTY session saved under the name \q{\cw{mysession}},
312 create a Windows shortcut that invokes PuTTY with a command line
313 like
314
315 \c \path\name\to\putty.exe @mysession
316
317 \S{faq-startssh}{Question} How can I start an SSH session straight
318 from the command line?
319
320 Use the command line \c{putty -ssh host.name}. Alternatively, create
321 a saved session that specifies the SSH protocol, and start the saved
322 session as shown in \k{faq-startsess}.
323
324 \S{faq-cutpaste}{Question} How do I copy and paste between PuTTY and
325 other Windows applications?
326
327 Copy and paste works similarly to the X Window System. You use the
328 left mouse button to select text in the PuTTY window. The act of
329 selection \e{automatically} copies the text to the clipboard: there
330 is no need to press Ctrl-Ins or Ctrl-C or anything else. In fact,
331 pressing Ctrl-C will send a Ctrl-C character to the other end of
332 your connection (just like it does the rest of the time), which may
333 have unpleasant effects. The \e{only} thing you need to do, to copy
334 text to the clipboard, is to select it.
335
336 To paste the clipboard contents into a PuTTY window, by default you
337 click the right mouse button. If you have a three-button mouse and
338 are used to X applications, you can configure pasting to be done by
339 the middle button instead, but this is not the default because most
340 Windows users don't have a middle button at all.
341
342 You can also paste by pressing Shift-Ins.
343
344 \S{faq-tunnels}{Question} How do I use X forwarding and port
345 forwarding? I can't find the Tunnels panel.
346
347 If you're looking in the 0.51 release or earlier, the Tunnels panel
348 isn't there. It was added in the development snapshots after 0.51,
349 and releases 0.52 and onwards will contain it.
350
351 \S{faq-options}{Question} How do I use all PuTTY's features (public
352 keys, port forwarding, SSH v2, etc.) in PSCP, PSFTP and Plink?
353
354 The command-line tools are currently rather short of command line
355 options to enable this sort of thing. However, you can use most of
356 PuTTY's features if you create a PuTTY saved session, and then use
357 the name of the saved session on the command line in place of a
358 hostname. This works for PSCP, PSFTP and Plink (but don't expect
359 port forwarding in the file transfer applications!).
360
361 \S{faq-pscp}{Question} How do I use PSCP.EXE? When I double-click it
362 gives me a command prompt window which then closes instantly.
363
364 PSCP is a command-line application, not a GUI application. If you
365 run it without arguments, it will simply print a help message and
366 terminate.
367
368 To use PSCP properly, run it from a Command Prompt window. See
369 \k{pscp} in the documentation for more details.
370
371 \S{faq-pscp-spaces}{Question} How do I use PSCP to copy a file whose
372 name has spaces in?
373
374 If PSCP is using the traditional SCP protocol, this is confusing. If
375 you're specifying a file at the local end, you just use one set of
376 quotes as you would normally do:
377
378 \c pscp "local filename with spaces" user@host:
379 \c pscp user@host:myfile "local filename with spaces"
380
381 But if the filename you're specifying is on the \e{remote} side, you
382 have to use backslashes and two sets of quotes:
383
384 \c pscp user@host:"\"remote filename with spaces\"" local_filename
385 \c pscp local_filename user@host:"\"remote filename with spaces\""
386
387 Worse still, in a remote-to-local copy you have to specify the local
388 file name explicitly, otherwise PSCP will complain that they don't
389 match (unless you specified the \c{-unsafe} option). The following
390 command will give an error message:
391
392 \c c:\>pscp user@host:"\"oo er\"" .
393 \c warning: remote host tried to write to a file called 'oo er'
394 \c when we requested a file called '"oo er"'.
395
396 Instead, you need to specify the local file name in full:
397
398 \c c:\>pscp user@host:"\"oo er\"" "oo er"
399
400 If PSCP is using the newer SFTP protocol, none of this is a problem,
401 and all filenames with spaces in are specified using a single pair
402 of quotes in the obvious way:
403
404 \c pscp "local file" user@host:
405 \c pscp user@host:"remote file" .
406
407 \H{faq-trouble} Troubleshooting
408
409 \S{faq-incorrect-mac}{Question} Why do I see \q{Incorrect MAC
410 received on packet}?
411
412 This is due to a bug in old SSH 2 servers distributed by
413 \cw{ssh.com}. Version 2.3.0 and below of their SSH 2 server
414 constructs Message Authentication Codes in the wrong way, and
415 expects the client to construct them in the same wrong way. PuTTY
416 constructs the MACs correctly by default, and hence these old
417 servers will fail to work with it.
418
419 If you are using PuTTY version 0.51 or below, go to the SSH panel
420 and check the box labelled \q{Imitate SSH 2 MAC bug}. This will
421 cause PuTTY to construct its MACs in the same incorrect manner as
422 the buggy servers, so it will be able to work with them.
423
424 Since version 0.51, PuTTY has been enhanced to detect buggy servers
425 automatically (when they announce their version) and enable the
426 workaround without the user needing to ask. Therefore you \e{should}
427 never have to use this option again after 0.52, but it is still
428 provided just in case another buggy server shows up.
429
430 In this context MAC stands for Message Authentication Code. It's a
431 cryptographic term, and it has nothing at all to do with Ethernet
432 MAC (Media Access Control) addresses.
433
434 \S{faq-colours}{Question} I clicked on a colour in the Colours
435 panel, and the colour didn't change in my terminal.
436
437 That isn't how you're supposed to use the Colours panel.
438
439 During the course of a session, PuTTY potentially uses \e{all} the
440 colours listed in the Colours panel. It's not a question of using
441 only one of them and you choosing which one; PuTTY will use them
442 \e{all}. The purpose of the Colours panel is to let you adjust the
443 appearance of all the colours. So to change the colour of the
444 cursor, for example, you would select \q{Cursor Colour}, press the
445 \q{Modify} button, and select a new colour from the dialog box that
446 appeared. Similarly, if you want your session to appear in green,
447 you should select \q{Default Foreground} and press \q{Modify}.
448 Clicking on \q{ANSI Green} won't turn your session green; it will
449 only allow you to adjust the \e{shade} of green used when PuTTY is
450 instructed by the server to display green text.
451
452 \S{faq-winsock2}{Question} Plink on Windows 95 says it can't find
453 \cw{WS2_32.DLL}.
454
455 Plink requires the extended Windows network library, WinSock version
456 2. This is installed as standard on Windows 98 and above, and on
457 Windows NT, and even on later versions of Windows 95; but early
458 Win95 installations don't have it.
459
460 In order to use Plink on these systems, you will need to download
461 the
462 \W{http://www.microsoft.com/windows95/downloads/contents/wuadmintools/s_wunetworkingtools/w95sockets2/}{WinSock 2 upgrade}:
463
464 \c http://www.microsoft.com/windows95/downloads/contents/wuadmintools/
465 \c s_wunetworkingtools/w95sockets2/
466
467 \S{faq-rekey}{Question} My PuTTY sessions close after an hour and
468 tell me \q{Server failed host key check}.
469
470 This is a bug in all versions of PuTTY up to and including 0.51. SSH
471 v2 servers from \cw{ssh.com} will require the key exchange to be
472 repeated one hour after the start of the connection, and PuTTY will
473 get this wrong.
474
475 The bug has been fixed since version 0.51, so upgrading to a later
476 version or snapshot should solve the problem.
477
478 \S{faq-outofmem}{Question} After trying to establish an SSH 2
479 connection, PuTTY says \q{Out of memory} and dies.
480
481 If this happens just while the connection is starting up, this often
482 indicates that for some reason the client and server have failed to
483 establish a session encryption key. Somehow, they have performed
484 calculations that should have given each of them the same key, but
485 have ended up with different keys; so data encrypted by one and
486 decrypted by the other looks like random garbage.
487
488 This causes an \q{out of memory} error because the first encrypted
489 data PuTTY expects to see is the length of an SSH message. Normally
490 this will be something well under 100 bytes. If the decryption has
491 failed, PuTTY will see a completely random length in the region of
492 two \e{gigabytes}, and will try to allocate enough memory to store
493 this non-existent message. This will immediately lead to it thinking
494 it doesn't have enough memory, and panicking.
495
496 If this happens to you, it is quite likely to still be a PuTTY bug
497 and you should report it (although it might be a bug in your SSH
498 server instead); but it doesn't necessarily mean you've actually run
499 out of memory.
500
501 \S{faq-bce}{Question} When I run full-colour applications, I see
502 areas of black space where colour ought to be.
503
504 You almost certainly need to enable the \q{Use background colour to
505 erase screen} setting in the Terminal panel. Note that if you do
506 this in mid-session, it won't take effect until you reset the
507 terminal (see \k{faq-resetterm}).
508
509 \S{faq-resetterm}{Question} When I change some terminal settings,
510 nothing happens.
511
512 Some of the terminal options (notably Auto Wrap and
513 background-colour screen erase) actually represent the \e{default}
514 setting, rather than the currently active setting. The server can
515 send sequences that modify these options in mid-session, but when
516 the terminal is reset (by server action, or by you choosing \q{Reset
517 Terminal} from the System menu) the defaults are restored.
518
519 If you want to change one of these options in the middle of a
520 session, you will find that the change does not immediately take
521 effect. It will only take effect once you reset the terminal.
522
523 \S{faq-altgr}{Question} I can't type characters that require the
524 AltGr key.
525
526 In PuTTY version 0.51, the AltGr key was broken. The bug has been
527 fixed since then.
528
529 \S{faq-idleout}{Question} My PuTTY sessions unexpectedly close after
530 they are idle for a while.
531
532 Some types of firewall, and almost any router doing Network Address
533 Translation (NAT, also known as IP masquerading), will forget about
534 a connection through them if the connection does nothing for too
535 long. This will cause the connection to be rudely cut off when
536 contact is resumed.
537
538 You can try to combat this by telling PuTTY to send \e{keepalives}:
539 packets of data which have no effect on the actual session, but
540 which reassure the router or firewall that the network connection is
541 still active and worth remembering about.
542
543 Keepalives don't solve everything, unfortunately; although they
544 cause greater robustness against this sort of router, they can also
545 cause a \e{loss} of robustness against network dropouts. See
546 \k{config-keepalive} in the documentation for more discussion of
547 this.
548
549 \S{faq-timeout}{Question} PuTTY's network connections time out too
550 quickly when network connectivity is temporarily lost.
551
552 This is a Windows problem, not a PuTTY problem. The timeout value
553 can't be set on per application or per session basis. To increase
554 the TCP timeout globally, you need to tinker with the Registry.
555
556 On Windows 95, 98 or ME, the registry key you need to change is
557
558 \c HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\
559 \c MSTCP\MaxDataRetries
560
561 (it must be of type DWORD in Win95, or String in Win98/ME).
562
563 On Windows NT or 2000, the registry key is
564
565 \c HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\
566 \c Parameters\TcpMaxDataRetransmissions
567
568 and it must be of type DWORD.
569
570 Set the key's value to something like 10. This will cause Windows to
571 try harder to keep connections alive instead of abandoning them.
572
573 \S{faq-puttyputty}{Question} When I \cw{cat} a binary file, I get
574 `PuTTYPuTTYPuTTY' on my command line.
575
576 Don't do that, then.
577
578 This is designed behaviour; when PuTTY receives the character
579 Control-E from the remote server, it interprets it as a request to
580 identify itself, and so it sends back the string \q{\cw{PuTTY}} as
581 if that string had been entered at the keyboard. Control-E should
582 only be sent by programs that are prepared to deal with the
583 response. Writing a binary file to your terminal is likely to output
584 many Control-E characters, and cause this behaviour. Don't do it.
585 It's a bad plan.
586
587 To mitigate the effects, you could configure the answerback string
588 to be empty (see \k{config-answerback}); but writing binary files to
589 your terminal is likely to cause various other unpleasant behaviour,
590 so this is only a small remedy.
591
592 \S{faq-wintitle}{Question} When I \cw{cat} a binary file, my window
593 title changes to a nonsense string.
594
595 Don't do that, then.
596
597 It is designed behaviour that PuTTY should have the ability to
598 adjust the window title on instructions from the server. Normally
599 the control sequence that does this should only be sent
600 deliberately, by programs that know what they are doing and intend
601 to put meaningful text in the window title. Writing a binary file to
602 your terminal runs the risk of sending the same control sequence by
603 accident, and cause unexpected changes in the window title. Don't do
604 it.
605
606 \S{faq-password-fails}{Question} My keyboard stops working once
607 PuTTY displays the password prompt.
608
609 No, it doesn't. PuTTY just doesn't display the password you type, so
610 that someone looking at your screen can't see what it is.
611
612 Unlike the Windows login prompts, PuTTY doesn't display the password
613 as a row of asterisks either. This is so that someone looking at
614 your screen can't even tell how \e{long} your password is, which
615 might be valuable information.
616
617 \H{faq-secure} Security questions
618
619 \S{faq-publicpc}{Question} Is it safe for me to download PuTTY and
620 use it on a public PC?
621
622 It depends on whether you trust that PC. If you don't trust the
623 public PC, don't use PuTTY on it, and don't use any other software
624 you plan to type passwords into either. It might be watching your
625 keystrokes, or it might tamper with the PuTTY binary you download.
626 There is \e{no} program safe enough that you can run it on an
627 actively malicious PC and get away with typing passwords into it.
628
629 If you do trust the PC, then it's probably OK to use PuTTY on it
630 (but if you don't trust the network, then the PuTTY download might
631 be tampered with, so it would be better to carry PuTTY with you on a
632 floppy).
633
634 \S{faq-cleanup}{Question} What does PuTTY leave on a system? How can
635 I clean up after it?
636
637 PuTTY will leave some Registry entries, and a random seed file, on
638 the PC (see \k{faq-settings}). If you are using PuTTY on a public
639 PC, or somebody else's PC, you might want to clean these up when you
640 leave. You can do that automatically, by running the command
641 \c{putty -cleanup}.
642
643 \S{faq-dsa}{Question} How come PuTTY now supports DSA, when the
644 website used to say how insecure it was?
645
646 DSA has a major weakness \e{if badly implemented}: it relies on a
647 random number generator to far too great an extent. If the random
648 number generator produces a number an attacker can predict, the DSA
649 private key is exposed - meaning that the attacker can log in as you
650 on all systems that accept that key.
651
652 The PuTTY policy changed because the developers were informed of
653 ways to implement DSA which do not suffer nearly as badly from this
654 weakness, and indeed which don't need to rely on random numbers at
655 all. For this reason we now believe PuTTY's DSA implementation is
656 probably OK. However, if you have the choice, we still recommend you
657 use RSA instead.
658
659 \H{faq-admin} Administrative questions
660
661 \S{faq-domain}{Question} Would you like me to register you a nicer
662 domain name?
663
664 No, thank you. Even if you can find one (most of them seem to have
665 been registered already, by people who didn't ask whether we
666 actually wanted it before they applied), we're happy with the PuTTY
667 web site being exactly where it is. It's not hard to find (just type
668 \q{putty} into \W{http://www.google.com/}{google.com} and we're the
669 first link returned), and we don't believe the administrative hassle
670 of moving the site would be worth the benefit.
671
672 In addition, if we \e{did} want a custom domain name, we would want
673 to run it ourselves, so we knew for certain that it would continue
674 to point where we wanted it, and wouldn't suddenly change or do
675 strange things. Having it registered for us by a third party who we
676 don't even know is not the best way to achieve this.
677
678 \S{faq-webhosting}{Question} Would you like free web hosting for the
679 PuTTY web site?
680
681 We already have some, thanks.
682
683 \S{faq-sourceforge}{Question} Why don't you move PuTTY to
684 SourceForge?
685
686 Partly, because we don't want to move the web site location (see
687 \k{faq-domain}).
688
689 Also, security reasons. PuTTY is a security product, and as such it
690 is particularly important to guard the code and the web site against
691 unauthorised modifications which might introduce subtle security
692 flaws. Therefore, we prefer that the CVS repository, web site and
693 FTP site remain where they are, under the direct control of system
694 administrators we know and trust personally, rather than being run
695 by a large organisation full of people we've never met and which is
696 known to have had breakins in the past.
697
698 No offence to SourceForge; I think they do a wonderful job. But
699 they're not ideal for everyone, and in particular they're not ideal
700 for us.
701
702 \S{faq-mailinglist1}{Question} Why can't I subscribe to the
703 putty-bugs mailing list?
704
705 Because you're not a member of the PuTTY core development team. The
706 putty-bugs mailing list is not a general newsgroup-like discussion
707 forum; it's a contact address for the core developers, and an
708 \e{internal} mailing list for us to discuss things among ourselves.
709 If we opened it up for everybody to subscribe to, it would turn into
710 something more like a newsgroup and we would be completely
711 overwhelmed by the volume of traffic. It's hard enough to keep up
712 with the list as it is.
713
714 \S{faq-mailinglist2}{Question} If putty-bugs isn't a
715 general-subscription mailing list, what is?
716
717 There isn't one, that we know of.
718
719 If someone else wants to set up a mailing list for PuTTY users to
720 help each other with common problems, that would be fine with us;
721 but the PuTTY team would almost certainly not have the time to read
722 it, so any questions the list couldn't answer would have to be
723 forwarded on to us by the questioner. In any case, it's probably
724 better to use the established newsgroup \cw{comp.security.ssh} for
725 this purpose.
726
727 \S{faq-donations}{Question} How can I donate to PuTTY development?
728
729 Please, \e{please} don't feel you have to. PuTTY is completely free
730 software, and not shareware. We think it's very important that
731 \e{everybody} who wants to use PuTTY should be able to, whether they
732 have any money or not; so the last thing we would want is for a
733 PuTTY user to feel guilty because they haven't paid us any money. If
734 you want to keep your money, please do keep it. We wouldn't dream of
735 asking for any.
736
737 Having said all that, if you still really \e{want} to give us money,
738 we won't argue :-) The easiest way for us to accept donations is if
739 you go to \W{http://www.e-gold.com}\cw{www.e-gold.com}, and deposit
740 your donation in account number 174769. Then send us e-mail to let
741 us know you've done so (otherwise we might not notice for months!).
742
743 Small donations (tens of dollars or tens of euros) will probably be
744 spent on beer or curry, which helps motivate our volunteer team to
745 continue doing this for the world. Larger donations will be spent on
746 something that actually helps development, if we can find anything
747 (perhaps new hardware, or a copy of Windows 2000), but if we can't
748 find anything then we'll just distribute the money among the
749 developers. If you want to be sure your donation is going towards
750 something worthwhile, ask us first. If you don't like these terms,
751 feel perfectly free not to donate. We don't mind.
752
753 \S{faq-pronounce}{Question} How do I pronounce PuTTY?
754
755 Exactly like the normal word \q{putty}. Just like the stuff you put
756 on window frames. (One of the reasons it's called PuTTY is because
757 it makes Windows usable. :-)