Implemented export of OpenSSH keys.
[u/mdw/putty] / doc / faq.but
index 6150ed2..e4eadb8 100644 (file)
@@ -1,4 +1,4 @@
-\versionid $Id: faq.but,v 1.15 2001/12/16 15:30:03 simon Exp $
+\versionid $Id: faq.but,v 1.27 2002/05/14 18:11:15 simon Exp $
 
 \A{faq} PuTTY FAQ
 
@@ -31,16 +31,16 @@ However, currently the \e{default} SSH protocol is v1; to select SSH
 v2 if your server supports both, go to the SSH panel and change the
 \e{Preferred SSH protocol version} option.
 
-Public key authentication (both RSA and DSA) in SSH v2 has been
-added since version 0.51.
+Public key authentication (both RSA and DSA) in SSH v2 is new in
+version 0.52.
 
 \S{faq-ssh2-keyfmt}{Question} Does PuTTY support reading OpenSSH or
 \cw{ssh.com} SSHv2 private key files?
 
-Not at present. OpenSSH and \cw{ssh.com} have totally different
-formats for private key files, and neither one is particularly
-pleasant, so PuTTY has its own. We do plan to write a converter at
-some stage.
+Version 0.52 doesn't, but in the latest development snapshots
+PuTTYgen can load OpenSSH and \cw{ssh.com} private keys, and save
+OpenSSH private keys. We plan to add exporting of \cw{ssh.com} keys
+as well.
 
 \S{faq-ssh1}{Question} Does PuTTY support SSH v1?
 
@@ -48,25 +48,20 @@ Yes. SSH 1 support has always been available in PuTTY.
 
 \S{faq-localecho}{Question} Does PuTTY support local echo?
 
-Yes.
+Yes. Version 0.52 has proper support for local echo.
 
-In version 0.51 and before, local echo cannot be separated from
+In version 0.51 and before, local echo could not be separated from
 local line editing (where you type a line of text locally, and it is
 not sent to the server until you press Return, so you have the
 chance to edit it and correct mistakes \e{before} the server sees
-it). The two features can be enabled and disabled from the Terminal
-panel, using the checkbox marked \q{Use local terminal line
-discipline}. Note that due to a bug in those versions of PuTTY,
-changing this feature in mid-session will have no effect; you have
-to enable it \e{before} you open the connection.
-
-In later versions, local echo and local line editing are separate
-options, and by default PuTTY will try to determine automatically
-whether to enable them or not, based on which protocol you have
-selected and also based on hints from the server. If you have a
-problem with PuTTY's default choice, you can force each option to be
-enabled or disabled as you choose. The controls are in the Terminal
-panel, in the section marked \q{Line discipline options}.
+it). New in version 0.52, local echo and local line editing are
+separate options, and by default PuTTY will try to determine
+automatically whether to enable them or not, based on which protocol
+you have selected and also based on hints from the server. If you
+have a problem with PuTTY's default choice, you can force each
+option to be enabled or disabled as you choose. The controls are in
+the Terminal panel, in the section marked \q{Line discipline
+options}.
 
 \S{faq-disksettings}{Question} Does PuTTY support storing its
 settings in a disk file?
@@ -77,7 +72,7 @@ a method of achieving the same effect.
 \S{faq-fullscreen}{Question} Does PuTTY support full-screen mode,
 like a DOS box?
 
-Not in the 0.51 release, but it has been added since then.
+Yes; this is a new feature in version 0.52.
 
 \S{faq-password-remember}{Question} Does PuTTY have the ability to
 remember my password so I don't have to type it every time?
@@ -153,6 +148,18 @@ it would be for us to write a server from the ground up. We don't
 have time, and we don't have motivation. The code is available if
 anyone else wants to try it.
 
+\S{faq-pscp-ascii}{Question} Can PSCP or PSFTP transfer files in
+ASCII mode?
+
+Unfortunately not. This is a limitation of the file transfer
+protocols: the SCP and SFTP protocols have no notion of transferring
+a file in anything other than binary mode.
+
+SFTP is designed to be extensible, so it's possible that an
+extension might be proposed at some later date that implements ASCII
+transfer. But the PuTTY team can't do anything about it until that
+happens.
+
 \H{faq-ports} Ports to other operating systems
 
 The eventual goal is for PuTTY to be a multi-platform program, able
@@ -173,6 +180,20 @@ under X11 or perhaps other windowing systems, whereas Telnet Passive
 Mode is universal and shouldn't need to be specified once for each
 platform.
 
+\S{faq-ports-general}{Question} What ports of PuTTY exist?
+
+Currently, PuTTY only runs on full Win32 systems. This includes
+Windows 95, 98, and ME, and it includes Windows NT, Windows 2000 and
+Windows XP.
+
+It does \e{not} include Windows CE (see \k{faq-wince}), and it does
+not quite include the Win32s environment under Windows 3.1 (see
+\k{faq-win31}).
+
+We do not have ports for any other systems at the present time. If
+anyone told you we had a Unix port, or an iPaq port, or any other
+port of PuTTY, they were mistaken. We don't.
+
 \S{faq-wince}{Question} Will there be a port to Windows CE?
 
 Probably not in the particularly near future. Despite sharing large
@@ -263,9 +284,7 @@ This is what CVS for Windows does, for example.
 \S{faq-term}{Question} What terminal type does PuTTY use?
 
 For most purposes, PuTTY can be considered to be an \cw{xterm}
-terminal, although full support for some of \cw{xterm}'s features,
-such as passing mouse actions to the server-side program, is not
-present in the 0.51 release (but has been added since).
+terminal.
 
 PuTTY also supports some terminal control sequences not supported by
 the real \cw{xterm}: notably the Linux console sequences that
@@ -344,9 +363,7 @@ You can also paste by pressing Shift-Ins.
 \S{faq-tunnels}{Question} How do I use X forwarding and port
 forwarding? I can't find the Tunnels panel.
 
-If you're looking in the 0.51 release or earlier, the Tunnels panel
-isn't there. It was added in the development snapshots after 0.51,
-and releases 0.52 and onwards will contain it.
+This is a new feature in version 0.52. You should upgrade.
 
 \S{faq-options}{Question} How do I use all PuTTY's features (public
 keys, port forwarding, SSH v2, etc.) in PSCP, PSFTP and Plink?
@@ -416,21 +433,39 @@ expects the client to construct them in the same wrong way. PuTTY
 constructs the MACs correctly by default, and hence these old
 servers will fail to work with it.
 
-If you are using PuTTY version 0.51 or below, go to the SSH panel
-and check the box labelled \q{Imitate SSH 2 MAC bug}. This will
-cause PuTTY to construct its MACs in the same incorrect manner as
-the buggy servers, so it will be able to work with them.
+If you are using PuTTY version 0.52 or better, this should work
+automatically: PuTTY should detect the buggy servers from their
+version number announcement, and automatically start to construct
+its MACs in the same incorrect manner as they do, so it will be able
+to work with them.
 
-Since version 0.51, PuTTY has been enhanced to detect buggy servers
-automatically (when they announce their version) and enable the
-workaround without the user needing to ask. Therefore you \e{should}
-never have to use this option again after 0.52, but it is still
-provided just in case another buggy server shows up.
+If you are using PuTTY version 0.51 or below, you can enable the
+workaround by going to the SSH panel and ticking the box labelled
+\q{Imitate SSH 2 MAC bug}. It's possible that you might have to do
+this with 0.52 as well, if a buggy server exists that PuTTY doesn't
+know about.
 
 In this context MAC stands for Message Authentication Code. It's a
 cryptographic term, and it has nothing at all to do with Ethernet
 MAC (Media Access Control) addresses.
 
+\S{faq-pscp-protocol}{Question} Why do I see \q{Fatal: Protocol
+error: Expected control record} in PSCP?
+
+This happens because PSCP was expecting to see data from the server
+that was part of the PSCP protocol exchange, and instead it saw data
+that it couldn't make any sense of at all.
+
+This almost always happens because the startup scripts in your
+account on the server machine are generating output. This is
+impossible for PSCP, or any other SCP client, to work around. You
+should never use startup files (\c{.bashrc}, \c{.cshrc} and so on)
+which generate output in non-interactive sessions.
+
+This is not actually a PuTTY problem. If PSCP fails in this way,
+then all other SCP clients are likely to fail in exactly the same
+way. The problem is at the server end.
+
 \S{faq-colours}{Question} I clicked on a colour in the Colours
 panel, and the colour didn't change in my terminal.
 
@@ -472,8 +507,7 @@ v2 servers from \cw{ssh.com} will require the key exchange to be
 repeated one hour after the start of the connection, and PuTTY will
 get this wrong.
 
-The bug has been fixed since version 0.51, so upgrading to a later
-version or snapshot should solve the problem.
+Upgrade to version 0.52 and the problem should go away.
 
 \S{faq-outofmem}{Question} After trying to establish an SSH 2
 connection, PuTTY says \q{Out of memory} and dies.
@@ -498,6 +532,36 @@ and you should report it (although it might be a bug in your SSH
 server instead); but it doesn't necessarily mean you've actually run
 out of memory.
 
+\S{faq-outofmem2}{Question} When attempting a file transfer, either
+PSCP or PSFTP says \q{Out of memory} and dies.
+
+This is almost always caused by your login scripts on the server
+generating output. PSCP or PSFTP will receive that output when they
+were expecting to see the start of a file transfer protocol, and
+they will attempt to interpret the output as file-transfer protocol.
+This will usually lead to an \q{out of memory} error for much the
+same reasons as given in \k{faq-outofmem}.
+
+This is a setup problem in your account on your server, \e{not} a
+PSCP/PSFTP bug. Your login scripts should \e{never} generate output
+during non-interactive sessions; secure file transfer is not the
+only form of remote access that will break if they do.
+
+On Unix, a simple fix is to ensure that all the parts of your login
+script that might generate output are in \c{.profile} (if you use a
+Bourne shell derivative) or \c{.login} (if you use a C shell).
+Putting them in more general files such as \c{.bashrc} or \c{.cshrc}
+is liable to lead to problems.
+
+\S{faq-psftp-slow} PSFTP transfers files much slower than PSCP.
+
+We believe this is because the SFTP and SSH2 protocols are less
+efficient at bulk data transfer than SCP and SSH1, because every
+block of data transferred requires an acknowledgment from the far
+end. It would in theory be possible to queue several blocks of data
+to get round this speed problem, but as yet we haven't done the
+coding. If you really want this fixed, feel free to offer to help.
+
 \S{faq-bce}{Question} When I run full-colour applications, I see
 areas of black space where colour ought to be.
 
@@ -523,8 +587,8 @@ effect. It will only take effect once you reset the terminal.
 \S{faq-altgr}{Question} I can't type characters that require the
 AltGr key.
 
-In PuTTY version 0.51, the AltGr key was broken. The bug has been
-fixed since then.
+In PuTTY version 0.51, the AltGr key was broken. Upgrade to version
+0.52.
 
 \S{faq-idleout}{Question} My PuTTY sessions unexpectedly close after
 they are idle for a while.
@@ -614,6 +678,67 @@ as a row of asterisks either. This is so that someone looking at
 your screen can't even tell how \e{long} your password is, which
 might be valuable information.
 
+\S{faq-keyboard}{Question} One or more function keys don't do what I
+expected in a server-side application.
+
+If you've already tried all the relevant options in the PuTTY
+Keyboard panel, you may need to mail the PuTTY maintainers and ask.
+
+It is \e{not} usually helpful just to tell us which application,
+which server operating system, and which key isn't working; in order
+to replicate the problem we would need to have a copy of every
+operating system, and every application, that anyone has ever
+complained about.
+
+PuTTY responds to function key presses by sending a sequence of
+control characters to the server. If a function key isn't doing what
+you expect, it's likely that the character sequence your application
+is expecting to receive is not the same as the one PuTTY is sending.
+Therefore what we really need to know is \e{what} sequence the
+application is expecting.
+
+The simplest way to investigate this is to find some other terminal
+environment, in which that function key \e{does} work; and then
+investigate what sequence the function key is sending in that
+situation. One reasonably easy way to do this on a Unix system is to
+type the command \c{cat}, and then press the function key. This is
+likely to produce output of the form \c{^[[11~}. You can also do
+this in PuTTY, to find out what sequence the function key is
+producing in that. Then you can mail the PuTTY maintainers and tell
+us \q{I wanted the F1 key to send \c{^[[11~}, but instead it's
+sending \c{^[OP}, can this be done?}, or something similar.
+
+You should still read the
+\W{http://www.chiark.greenend.org.uk/~sgtatham/putty/feedback.html}{Feedback
+page} on the PuTTY website (also provided as \k{feedback} in the
+manual), and follow the guidelines contained in that.
+
+\S{faq-broken-openssh31}{Question} Since my SSH server was upgraded to
+OpenSSH 3.1p1, I can no longer connect with PuTTY.
+
+There is a known problem when OpenSSH has been built against an
+incorrect version of OpenSSL; the quick workaround is to configure
+PuTTY to use SSH protocol 2 and the Blowfish cipher.
+
+This is not a PuTTY-specific problem; if you try to connect with
+another client you'll likely have similar problems.
+
+Configurations known to be broken (and symptoms):
+
+\b SSH 2 with AES cipher (PuTTY says "Assertion failed! Expression:
+(len & 15) == 0" in sshaes.c, or "Out of memory", or crashes)
+
+\b SSH 2 with 3DES (PuTTY says "Incorrect MAC received on packet")
+
+\b SSH 1 with Blowfish (PuTTY says "Incorrect CRC received on
+packet")
+
+\b SSH 1 with 3DES
+
+For more details and OpenSSH patches, see
+\W{http://bugzilla.mindrot.org/show_bug.cgi?id=138}{bug 138} in the
+OpenSSH BTS.
+
 \H{faq-secure} Security questions
 
 \S{faq-publicpc}{Question} Is it safe for me to download PuTTY and
@@ -739,17 +864,30 @@ we won't argue :-) The easiest way for us to accept donations is if
 you go to \W{http://www.e-gold.com}\cw{www.e-gold.com}, and deposit
 your donation in account number 174769. Then send us e-mail to let
 us know you've done so (otherwise we might not notice for months!).
+Alternatively, if e-gold isn't convenient for you, you can donate to
+\cw{<anakin@pobox.com>} using PayPal
+(\W{http://www.paypal.com/}\cw{www.paypal.com}).
 
 Small donations (tens of dollars or tens of euros) will probably be
 spent on beer or curry, which helps motivate our volunteer team to
 continue doing this for the world. Larger donations will be spent on
 something that actually helps development, if we can find anything
-(perhaps new hardware, or a copy of Windows 2000), but if we can't
+(perhaps new hardware, or a copy of Windows XP), but if we can't
 find anything then we'll just distribute the money among the
 developers. If you want to be sure your donation is going towards
 something worthwhile, ask us first. If you don't like these terms,
 feel perfectly free not to donate. We don't mind.
 
+\S{faq-sillyputty}{Question} Where can I buy silly putty?
+
+You're looking at the wrong web site; the only PuTTY we know about
+here is the name of a computer program.
+
+If you want the kind of putty you can buy as an executive toy, the
+PuTTY team can personally recommend Thinking Putty, which you can
+buy from Crazy Aaron's Putty World, at
+\W{http://www.puttyworld.com}\cw{www.puttyworld.com}.
+
 \S{faq-pronounce}{Question} How do I pronounce PuTTY?
 
 Exactly like the normal word \q{putty}. Just like the stuff you put