1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-25 01:02:24 +00:00

Added indexing for the first three chapters of the manual. This is a

big job :-/

[originally from svn r4041]
This commit is contained in:
Simon Tatham 2004-04-08 12:38:53 +00:00
parent 7843ab696a
commit ad37aabb08
4 changed files with 347 additions and 216 deletions

View File

@ -1,11 +1,11 @@
\versionid $Id: gs.but,v 1.6 2001/12/06 20:05:39 simon Exp $ \versionid $Id: gs.but,v 1.7 2004/04/08 12:38:53 simon Exp $
\C{gs} Getting started with PuTTY \C{gs} Getting started with PuTTY
This chapter gives a quick guide to the simplest types of This chapter gives a quick guide to the simplest types of
interactive login session using PuTTY. interactive login session using PuTTY.
\H{gs-insecure} Starting a session \H{gs-insecure} \ii{Starting a session}
When you start PuTTY, you will see a dialog box. This dialog box When you start PuTTY, you will see a dialog box. This dialog box
allows you to control everything PuTTY can do. See \k{config} for allows you to control everything PuTTY can do. See \k{config} for
@ -19,12 +19,13 @@ In the \q{Host Name} box, enter the Internet host name of the server
you want to connect to. You should have been told this by the you want to connect to. You should have been told this by the
provider of your login account. provider of your login account.
Now select a login protocol to use, from the \q{Protocol} buttons. Now select a login \i{protocol} to use, from the \q{Protocol}
For a login session, you should select Telnet, Rlogin or SSH. See buttons. For a login session, you should select \i{Telnet},
\k{which-one} for a description of the differences between the three \i{Rlogin} or \i{SSH}. See \k{which-one} for a description of the
protocols, and advice on which one to use. The fourth protocol, differences between the three protocols, and advice on which one to
\e{Raw}, is not used for interactive login sessions; you would use. The fourth protocol, \I{raw protocol}\e{Raw}, is not used for
usually use this for debugging other Internet services. interactive login sessions; you would usually use this for debugging
other Internet services.
When you change the selected protocol, the number in the \q{Port} When you change the selected protocol, the number in the \q{Port}
box will change. This is normal: it happens because the various box will change. This is normal: it happens because the various
@ -33,16 +34,17 @@ the server machine. Most servers will use the standard port numbers,
so you will not need to change the port setting. If your server so you will not need to change the port setting. If your server
provides login services on a non-standard port, your system provides login services on a non-standard port, your system
administrator should have told you which one. (For example, many administrator should have told you which one. (For example, many
MUDs run Telnet service on a port other than 23.) \i{MUDs} run Telnet service on a port other than 23.)
Once you have filled in the \q{Host Name}, \q{Protocol}, and Once you have filled in the \q{Host Name}, \q{Protocol}, and
possibly \q{Port} settings, you are ready to connect. Press the possibly \q{Port} settings, you are ready to connect. Press the
\q{Open} button at the bottom of the dialog box, and PuTTY will \q{Open} button at the bottom of the dialog box, and PuTTY will
begin trying to connect you to the server. begin trying to connect you to the server.
\H{gs-hostkey} Verifying the Host Key (SSH only) \H{gs-hostkey} \i{Verifying the host key} (SSH only)
If you are not using the SSH protocol, you can skip this section. If you are not using the \i{SSH} protocol, you can skip this
section.
If you are using SSH to connect to a server for the first time, you If you are using SSH to connect to a server for the first time, you
will probably see a message looking something like this: will probably see a message looking something like this:
@ -60,12 +62,12 @@ will probably see a message looking something like this:
\c connection. \c connection.
This is a feature of the SSH protocol. It is designed to protect you This is a feature of the SSH protocol. It is designed to protect you
against a network attack known as \e{spoofing}: secretly redirecting against a network attack known as \i\e{spoofing}: secretly
your connection to a different computer, so that you send your redirecting your connection to a different computer, so that you
password to the wrong machine. Using this technique, an attacker send your password to the wrong machine. Using this technique, an
would be able to learn the password that guards your login account, attacker would be able to learn the password that guards your login
and could then log in as if they were you and use the account for account, and could then log in as if they were you and use the
their own purposes. account for their own purposes.
To prevent this attack, each server has a unique identifying code, To prevent this attack, each server has a unique identifying code,
called a \e{host key}. These keys are created in a way that prevents called a \e{host key}. These keys are created in a way that prevents
@ -75,16 +77,18 @@ expecting, PuTTY can warn you that the server may have been switched
and that a spoofing attack might be in progress. and that a spoofing attack might be in progress.
PuTTY records the host key for each server you connect to, in the PuTTY records the host key for each server you connect to, in the
Windows Registry. Every time you connect to a server, it checks that Windows \i{Registry}. Every time you connect to a server, it checks
the host key presented by the server is the same host key as it was that the host key presented by the server is the same host key as it
the last time you connected. If it is not, you will see a warning, was the last time you connected. If it is not, you will see a
and you will have the chance to abandon your connection before you warning, and you will have the chance to abandon your connection
type any private information (such as a password) into it. before you type any private information (such as a password) into
it.
However, when you connect to a server you have not connected to However, when you connect to a server you have not connected to
before, PuTTY has no way of telling whether the host key is the before, PuTTY has no way of telling whether the host key is the
right one or not. So it gives the warning shown above, and asks you right one or not. So it gives the warning shown above, and asks you
whether you want to trust this host key or not. whether you want to \I{trusting host keys}trust this host key or
not.
Whether or not to trust the host key is your choice. If you are Whether or not to trust the host key is your choice. If you are
connecting within a company network, you might feel that all the connecting within a company network, you might feel that all the
@ -101,22 +105,22 @@ list, but it doesn't matter which one it is.)
doesn't work that way. Ask the team if they have any good ideas for doesn't work that way. Ask the team if they have any good ideas for
changes to this section! changes to this section!
\H{gs-login} Logging In \H{gs-login} \ii{Logging in}
After you have connected, and perhaps verified the server's host After you have connected, and perhaps verified the server's host
key, you will be asked to log in, probably using a username and a key, you will be asked to log in, probably using a \i{username} and
password. Your system administrator should have provided you with a \i{password}. Your system administrator should have provided you
these. Enter the username and the password, and the server should with these. Enter the username and the password, and the server
grant you access and begin your session. If you have mistyped your should grant you access and begin your session. If you have
password, most servers will give you several chances to get it \I{mistyping a password}mistyped your password, most servers will
right. give you several chances to get it right.
If you are using SSH, be careful not to type your username wrongly, If you are using SSH, be careful not to type your username wrongly,
because you will not have a chance to correct it after you press because you will not have a chance to correct it after you press
Return. This is an unfortunate feature of the SSH protocol: it does Return. This is an unfortunate feature of the SSH protocol: it does
not allow you to make two login attempts using different usernames. not allow you to make two login attempts using \i{different
If you type your username wrongly, you must close PuTTY and start usernames}. If you type your username wrongly, you must close PuTTY
again. and start again.
If your password is refused but you are sure you have typed it If your password is refused but you are sure you have typed it
correctly, check that Caps Lock is not enabled. Many login servers, correctly, check that Caps Lock is not enabled. Many login servers,
@ -124,16 +128,16 @@ particularly Unix computers, treat upper case and lower case as
different when checking your password; so if Caps Lock is on, your different when checking your password; so if Caps Lock is on, your
password will probably be refused. password will probably be refused.
\H{gs-session} After Logging In \H{gs-session} After logging in
After you log in to the server, what happens next is up to the After you log in to the server, what happens next is up to the
server! Most servers will print some sort of login message and then server! Most servers will print some sort of login message and then
present a prompt, at which you can type commands which the server present a \i{prompt}, at which you can type commands which the
will carry out. Some servers will offer you on-line help; others server will carry out. Some servers will offer you on-line help;
might not. If you are in doubt about what to do next, consult your others might not. If you are in doubt about what to do next, consult
system administrator. your system administrator.
\H{gs-logout} Logging Out \H{gs-logout} \ii{Logging out}
When you have finished your session, you should log out by typing When you have finished your session, you should log out by typing
the server's own logout command. This might vary between servers; if the server's own logout command. This might vary between servers; if
@ -141,7 +145,7 @@ in doubt, try \c{logout} or \c{exit}, or consult a manual or your
system administrator. When the server processes your logout command, system administrator. When the server processes your logout command,
the PuTTY window should close itself automatically. the PuTTY window should close itself automatically.
You \e{can} close a PuTTY session using the Close button in the You \e{can} close a PuTTY session using the \i{Close button} in the
window border, but this might confuse the server - a bit like window border, but this might confuse the server - a bit like
hanging up a telephone unexpectedly in the middle of a conversation. hanging up a telephone unexpectedly in the middle of a conversation.
We recommend you do not do this unless the server has stopped We recommend you do not do this unless the server has stopped

109
doc/index.but Normal file
View File

@ -0,0 +1,109 @@
\IM{verifying the host key} verifying the host key
\IM{verifying the host key} host key, verifying
\IM{trusting host keys} trusting host keys
\IM{trusting host keys} host keys, trusting
\IM{starting a session} starting a session
\IM{starting a session} session, starting
\IM{mistyping a password} mistyping a password
\IM{mistyping a password} password, mistyping
\IM{different usernames} different usernames
\IM{different usernames} changing usernames
\IM{different usernames} usernames, different
\IM{differences between SSH, Telnet and Rlogin} differences between
SSH, Telnet and Rlogin
\IM{differences between SSH, Telnet and Rlogin} protocols,
differences between
\IM{differences between SSH, Telnet and Rlogin} SSH, differences
from Telnet and Rlogin
\IM{differences between SSH, Telnet and Rlogin} Telnet, differences
from SSH and Rlogin
\IM{differences between SSH, Telnet and Rlogin} Rlogin, differences
from SSH and Telnet
\IM{differences between SSH, Telnet and Rlogin} selecting a protocol
\IM{differences between SSH, Telnet and Rlogin} choosing a protocol
\IM{copy and paste} copy and paste
\IM{copy and paste} cut and paste
\IM{copy and paste} paste, copy and
\IM{rectangular selection} rectangular selection
\IM{rectangular selection} selection, rectangular
\IM{adjusting a selection} adjusting a selection
\IM{adjusting a selection} selection, adjusting
\IM{port forwarding}{port forwardings} port forwarding in SSH
\IM{port forwarding}{port forwardings} SSH port forwarding
\IM{port forwarding}{port forwardings} forwarding ports in SSH
\IM{port forwarding}{port forwardings} tunnelling using SSH
\IM{port forwarding}{port forwardings} SSH tunnelling
\IM{debugging Internet protocols} debugging Internet protocols
\IM{debugging Internet protocols} Internet protocols, debugging
\IM{debugging Internet protocols} protocols, debugging
\IM{raw TCP connections} raw TCP connections
\IM{raw TCP connections} TCP connections, raw
\IM{command-line arguments} command-line arguments
\IM{command-line arguments} arguments, command-line
\IM{command-line arguments} options, command-line
\IM{command-line arguments} switches, command-line
\IM{telnet URLs} Telnet URLs
\IM{telnet URLs} URLs, Telnet
\IM{saved sessions, loading from command line} saved sessions,
loading from command line
\IM{saved sessions, loading from command line} loading saved
sessions from command line
\IM{saved sessions, loading from command line} command line, loading
saved sessions from
\IM{protocol selection} protocol selection
\IM{protocol selection} selecting a protocol
\IM{protocol selection} choosing a protocol
\IM{login name} login name
\IM{login name} user name
\IM{agent forwarding} agent forwarding
\IM{agent forwarding} SSH agent forwarding
\IM{agent forwarding} forwarding, SSH agent
\IM{X11 forwarding} X11 forwarding
\IM{X11 forwarding} SSH X11 forwarding
\IM{X11 forwarding} forwarding, X11
\IM{pseudo-terminal allocation} pseudo-terminal allocation
\IM{pseudo-terminal allocation} pty allocation
\IM{-telnet} \c{-telnet} command-line option
\IM{-raw} \c{-raw} command-line option
\IM{-rlogin} \c{-rlogin} command-line option
\IM{-ssh} \c{-ssh} command-line option
\IM{-cleanup} \c{-cleanup} command-line option
\IM{-load} \c{-load} command-line option
\IM{-v} \c{-v} command-line option
\IM{-l} \c{-l} command-line option
\IM{-L} \c{-L} command-line option
\IM{-R} \c{-R} command-line option
\IM{-D} \c{-D} command-line option
\IM{-m} \c{-m} command-line option
\IM{-P} \c{-P} command-line option
\IM{-pw} \c{-pw} command-line option
\IM{-A} \c{-A} command-line option
\IM{-a} \c{-a} command-line option
\IM{-X} \c{-X} command-line option
\IM{-x} \c{-x} command-line option
\IM{-T} \c{-T} command-line option
\IM{-t} \c{-t} command-line option
\IM{-C} \c{-C} command-line option
\IM{-1} \c{-1} command-line option
\IM{-2} \c{-2} command-line option
\IM{-i} \c{-i} command-line option

View File

@ -1,4 +1,4 @@
\versionid $Id: intro.but,v 1.4 2001/11/25 16:57:45 simon Exp $ \versionid $Id: intro.but,v 1.5 2004/04/08 12:38:53 simon Exp $
\C{intro} Introduction to PuTTY \C{intro} Introduction to PuTTY
@ -15,18 +15,18 @@ logging in to a multi-user computer from another computer, over a
network. network.
Multi-user operating systems, such as Unix and VMS, usually present Multi-user operating systems, such as Unix and VMS, usually present
a command-line interface to the user, much like the \q{Command a command-line interface to the user, much like the \q{\i{Command
Prompt} or \q{MS-DOS Prompt} in Windows. The system prints a prompt, Prompt}} or \q{\i{MS-DOS Prompt}} in Windows. The system prints a
and you type commands which the system will obey. prompt, and you type commands which the system will obey.
Using this type of interface, there is no need for you to be sitting Using this type of interface, there is no need for you to be sitting
at the same machine you are typing commands to. The commands, and at the same machine you are typing commands to. The commands, and
responses, can be sent over a network, so you can sit at one responses, can be sent over a network, so you can sit at one
computer and give commands to another one, or even to more than one. computer and give commands to another one, or even to more than one.
SSH, Telnet and Rlogin are \e{network protocols} that allow you to SSH, Telnet and Rlogin are \i\e{network protocols} that allow you to
do this. On the computer you sit at, you run a \e{client}, which do this. On the computer you sit at, you run a \i\e{client}, which
makes a network connection to the other computer (the \e{server}). makes a network connection to the other computer (the \i\e{server}).
The network connection carries your keystrokes and commands from the The network connection carries your keystrokes and commands from the
client to the server, and carries the server's responses back to client to the server, and carries the server's responses back to
you. you.
@ -42,7 +42,7 @@ You might want to use SSH, Telnet or Rlogin if:
able to access from somewhere else able to access from somewhere else
\b your Internet Service Provider provides you with a login account \b your Internet Service Provider provides you with a login account
on a web server. (This might also be known as a \e{shell account}. on a web server. (This might also be known as a \i\e{shell account}.
A \e{shell} is the program that runs on the server and interprets A \e{shell} is the program that runs on the server and interprets
your commands for you.) your commands for you.)
@ -58,8 +58,8 @@ remote login protocols.
\H{which-one} How do SSH, Telnet and Rlogin differ? \H{which-one} How do SSH, Telnet and Rlogin differ?
This list summarises some of the differences between SSH, Telnet and This list summarises some of the \i{differences between SSH, Telnet
Rlogin. and Rlogin}.
\b SSH is a recently designed, high-security protocol. It uses \b SSH is a recently designed, high-security protocol. It uses
strong cryptography to protect your connection against strong cryptography to protect your connection against
@ -91,5 +91,6 @@ we recommend you use SSH. If the server you want to connect to
doesn't support SSH, it might be worth trying to persuade the doesn't support SSH, it might be worth trying to persuade the
administrator to install it. administrator to install it.
If you are behind a good firewall, it is more likely to be safe to If your client and server are both behind the same (good) firewall,
use Telnet or Rlogin, but we still recommend you use SSH. it is more likely to be safe to use Telnet or Rlogin, but we still
recommend you use SSH.

View File

@ -1,4 +1,4 @@
\versionid $Id: using.but,v 1.21 2004/03/25 11:33:17 jacob Exp $ \versionid $Id: using.but,v 1.22 2004/04/08 12:38:53 simon Exp $
\C{using} Using PuTTY \C{using} Using PuTTY
@ -15,53 +15,56 @@ Nevertheless, there are a few more useful features available.
\S{using-selection} Copying and pasting text \S{using-selection} Copying and pasting text
Often in a PuTTY session you will find text on your terminal screen \I{copy and paste}Often in a PuTTY session you will find text on
which you want to type in again. Like most other terminal emulators, your terminal screen which you want to type in again. Like most
PuTTY allows you to copy and paste the text rather than having to other terminal emulators, PuTTY allows you to copy and paste the
type it again. Also, copy and paste uses the Windows clipboard, so text rather than having to type it again. Also, copy and paste uses
that you can paste (for example) URLs into a web browser, or paste the \I{Windows clipboard}Windows \i{clipboard}, so that you can
from a word processor or spreadsheet into your terminal session. paste (for example) URLs into a web browser, or paste from a word
processor or spreadsheet into your terminal session.
PuTTY's copy and paste works entirely with the mouse. In order to PuTTY's copy and paste works entirely with the \i{mouse}. In order
copy text to the clipboard, you just click the left mouse button in to copy text to the clipboard, you just click the \i{left mouse
the terminal window, and drag to select text. When you let go of the button} in the terminal window, and drag to \I{selecting text}select
button, the text is \e{automatically} copied to the clipboard. You text. When you let go of the button, the text is \e{automatically}
do not need to press Ctrl-C or Ctrl-Ins; in fact, if you do press copied to the clipboard. You do not need to press Ctrl-C or
Ctrl-C, PuTTY will send a Ctrl-C character down your session to the Ctrl-Ins; in fact, if you do press Ctrl-C, PuTTY will send a Ctrl-C
server where it will probably cause a process to be interrupted. character down your session to the server where it will probably
cause a process to be interrupted.
Pasting is done using the right button (or the middle mouse button, Pasting is done using the right button (or the middle mouse button,
if you have a three-button mouse and have set it up; see if you have a three-button mouse and have set it up; see
\k{config-mouse}). (Pressing Shift-Ins, or selecting \q{Paste} from \k{config-mouse}). (Pressing \i{Shift-Ins}, or selecting \q{Paste}
the Ctrl+right-click context menu, have the same effect.) from the Ctrl+right-click context menu, have the same effect.) When
When you click the right mouse button, PuTTY will you click the \i{right mouse button}, PuTTY will read whatever is in
read whatever is in the Windows Clipboard and paste it into your the Windows clipboard and paste it into your session, \e{exactly} as
session, \e{exactly} as if it had been typed at the keyboard. if it had been typed at the keyboard. (Therefore, be careful of
(Therefore, be careful of pasting formatted text into an editor that pasting formatted text into an editor that does automatic indenting;
does automatic indenting; you may find that the spaces pasted from you may find that the spaces pasted from the clipboard plus the
the clipboard plus the spaces added by the editor add up to too many spaces added by the editor add up to too many spaces and ruin the
spaces and ruin the formatting. There is nothing PuTTY can do about formatting. There is nothing PuTTY can do about this.)
this.)
If you double-click the left mouse button, PuTTY will select a whole If you \i{double-click} the left mouse button, PuTTY will select a
word. If you double-click, hold down the second click, and drag the whole word. If you double-click, hold down the second click, and
mouse, PuTTY will select a sequence of whole words. (You can adjust drag the mouse, PuTTY will select a sequence of whole words. (You
precisely what PuTTY considers to be part of a word; see can adjust precisely what PuTTY considers to be part of a word; see
\k{config-charclasses}.) If you \e{triple}-click, or triple-click \k{config-charclasses}.) If you \e{triple}-click, or
and drag, then PuTTY will select a whole line or sequence of lines. \i{triple-click} and drag, then PuTTY will select a whole line or
sequence of lines.
If you want to select a rectangular region instead of selecting to If you want to select a \I{rectangular selection}rectangular region
the end of each line, you can do this by holding down Alt when you instead of selecting to the end of each line, you can do this by
make your selection. (You can also configure rectangular selection holding down Alt when you make your selection. (You can also
to be the default, and then holding down Alt gives the normal configure rectangular selection to be the default, and then holding
behaviour instead. See \k{config-rectselect} for details.) down Alt gives the normal behaviour instead. See
\k{config-rectselect} for details.)
If you have a middle mouse button, then you can use it to adjust an If you have a \i{middle mouse button}, then you can use it to
existing selection if you selected something slightly wrong. (If you \I{adjusting a selection}adjust an existing selection if you
have configured the middle mouse button to paste, then the right selected something slightly wrong. (If you have configured the
mouse button does this instead.) Click the button on the screen, and middle mouse button to paste, then the right mouse button does this
you can pick up the nearest end of the selection and drag it to instead.) Click the button on the screen, and you can pick up the
somewhere else. nearest end of the selection and drag it to somewhere else.
It's possible for the server to ask to handle mouse clicks in the It's possible for the server to ask to handle mouse clicks in the
PuTTY window itself. If this happens, the mouse cursor will turn PuTTY window itself. If this happens, the mouse cursor will turn
@ -70,24 +73,24 @@ you hold down Shift. See \k{config-features-mouse} and
\k{config-mouseshift} for details of this feature and how to configure \k{config-mouseshift} for details of this feature and how to configure
it. it.
\S{using-scrollback} Scrolling the screen back \S{using-scrollback} \I{scrollback}Scrolling the screen back
PuTTY keeps track of text that has scrolled up off the top of the PuTTY keeps track of text that has scrolled up off the top of the
terminal. So if something appears on the screen that you want to terminal. So if something appears on the screen that you want to
read, but it scrolls too fast and it's gone by the time you try to read, but it scrolls too fast and it's gone by the time you try to
look for it, you can use the scrollbar on the right side of the look for it, you can use the scrollbar on the right side of the
window to look back up the session history and find it again. window to look back up the session \i{history} and find it again.
As well as using the scrollbar, you can also page the scrollback up As well as using the scrollbar, you can also page the scrollback up
and down by pressing Shift-PgUp and Shift-PgDn. You can scroll a and down by pressing \i{Shift-PgUp} and \i{Shift-PgDn}. You can
line at a time using Ctrl-PgUp and Ctrl-PgDn. These are still scroll a line at a time using \i{Ctrl-PgUp} and \i{Ctrl-PgDn}. These
available if you configure the scrollbar to be invisible. are still available if you configure the scrollbar to be invisible.
By default the last 200 lines scrolled off the top are By default the last 200 lines scrolled off the top are
preserved for you to look at. You can increase (or decrease) this preserved for you to look at. You can increase (or decrease) this
value using the configuration box; see \k{config-scrollback}. value using the configuration box; see \k{config-scrollback}.
\S{using-sysmenu} The System menu \S{using-sysmenu} The \i{System menu}
If you click the left mouse button on the icon in the top left If you click the left mouse button on the icon in the top left
corner of PuTTY's window, or click the right mouse button on the corner of PuTTY's window, or click the right mouse button on the
@ -102,7 +105,7 @@ described below.
by holding Ctrl and clicking with the right mouse button anywhere by holding Ctrl and clicking with the right mouse button anywhere
in the PuTTY window.) in the PuTTY window.)
\S2{using-eventlog} The PuTTY Event Log \S2{using-eventlog} The PuTTY \i{Event Log}
If you choose \q{Event Log} from the system menu, a small window If you choose \q{Event Log} from the system menu, a small window
will pop up in which PuTTY logs significant events during the will pop up in which PuTTY logs significant events during the
@ -111,38 +114,43 @@ during session startup, but a few can occur at any point in the
session, and one or two occur right at the end. session, and one or two occur right at the end.
You can use the mouse to select one or more lines of the Event Log, You can use the mouse to select one or more lines of the Event Log,
and hit the Copy button to copy them to the clipboard. If you are and hit the Copy button to copy them to the \i{clipboard}. If you
reporting a bug, it's often useful to paste the contents of the are reporting a bug, it's often useful to paste the contents of the
Event Log into your bug report. Event Log into your bug report.
\S2{using-specials} Special commands \S2{using-specials} \ii{Special commands}
Depending on the protocol used for the current session, there may be a Depending on the protocol used for the current session, there may be
submenu of \q{special commands}. These are protocol-specific tokens, a submenu of \q{special commands}. These are protocol-specific
such as a \q{break} signal, that can be sent down a connection in tokens, such as a \i{\q{break} signal}, that can be sent down a
addition to normal data. Currently only Telnet and SSH have special connection in addition to normal data. Currently only Telnet and SSH
commands. have special commands.
\# FIXME: possibly the full list of special commands should be
\# given here, if only so that it can be sensibly indexed and
\# someone looking up (e.g.) AYT can find out how to send one?
\S2{using-newsession} Starting new sessions \S2{using-newsession} Starting new sessions
PuTTY's system menu provides some shortcut ways to start new PuTTY's system menu provides some shortcut ways to start new
sessions: sessions:
\b Selecting \q{New Session} will start a completely new instance of \b Selecting \i{\q{New Session}} will start a completely new
PuTTY, and bring up the configuration box as normal. instance of PuTTY, and bring up the configuration box as normal.
\b Selecting \q{Duplicate Session} will start a session with \b Selecting \i{\q{Duplicate Session}} will start a session with
precisely the same options as your current one - connecting to the precisely the same options as your current one - connecting to the
same host using the same protocol, with all the same terminal same host using the same protocol, with all the same terminal
settings and everything. settings and everything.
\b The \q{Saved Sessions} submenu gives you quick access to any \b The \i{\q{Saved Sessions} submenu} gives you quick access to any
sets of stored session details you have previously saved. See sets of stored session details you have previously saved. See
\k{config-saving} for details of how to create saved sessions. \k{config-saving} for details of how to create saved sessions.
\S2{using-changesettings} Changing your session settings \S2{using-changesettings} \I{settings, changing}Changing your
session settings
If you select \q{Change Settings} from the system menu, PuTTY will If you select \i{\q{Change Settings}} from the system menu, PuTTY will
display a cut-down version of its initial configuration box. This display a cut-down version of its initial configuration box. This
allows you to adjust most properties of your current session. You allows you to adjust most properties of your current session. You
can change the terminal size, the font, the actions of various can change the terminal size, the font, the actions of various
@ -153,16 +161,17 @@ are not shown in the cut-down Change Settings box. These are usually
options which don't make sense to change in the middle of a session options which don't make sense to change in the middle of a session
(for example, you can't switch from SSH to Telnet in mid-session). (for example, you can't switch from SSH to Telnet in mid-session).
\S2{using-copyall} Copy All to Clipboard \S2{using-copyall} \i{Copy All to Clipboard}
This system menu option provides a convenient way to copy the whole This system menu option provides a convenient way to copy the whole
contents of the terminal screen (up to the last nonempty line) and contents of the terminal screen (up to the last nonempty line) and
scrollback to the clipboard in one go. scrollback to the \i{clipboard} in one go.
\S2{reset-terminal} Clearing and resetting the terminal \S2{reset-terminal} \I{scrollback, clearing}Clearing and
\I{terminal, resetting}resetting the terminal
The \q{Clear Scrollback} option on the system menu tells PuTTY to The \i{\q{Clear Scrollback}} option on the system menu tells PuTTY
discard all the lines of text that have been kept after they to discard all the lines of text that have been kept after they
scrolled off the top of the screen. This might be useful, for scrolled off the top of the screen. This might be useful, for
example, if you displayed sensitive information and wanted to make example, if you displayed sensitive information and wanted to make
sure nobody could look over your shoulder and see it. (Note that sure nobody could look over your shoulder and see it. (Note that
@ -170,14 +179,14 @@ this only prevents a casual user from using the scrollbar to view
the information; the text is not guaranteed not to still be in the information; the text is not guaranteed not to still be in
PuTTY's memory.) PuTTY's memory.)
The \q{Reset Terminal} option causes a full reset of the terminal The \i{\q{Reset Terminal}} option causes a full reset of the
emulation. A VT-series terminal is a complex piece of software and terminal emulation. A VT-series terminal is a complex piece of
can easily get into a state where all the text printed becomes software and can easily get into a state where all the text printed
unreadable. (This can happen, for example, if you accidentally becomes unreadable. (This can happen, for example, if you
output a binary file to your terminal.) If this happens, selecting accidentally output a binary file to your terminal.) If this
Reset Terminal should sort it out. happens, selecting Reset Terminal should sort it out.
\S2{using-fullscreen} Full screen mode \S2{using-fullscreen} \ii{Full screen} mode
If you find the title bar on a maximised window to be ugly or If you find the title bar on a maximised window to be ugly or
distracting, you can select Full Screen mode to maximise PuTTY distracting, you can select Full Screen mode to maximise PuTTY
@ -190,11 +199,12 @@ When you are in full-screen mode, you can still access the system
menu if you click the left mouse button in the \e{extreme} top left menu if you click the left mouse button in the \e{extreme} top left
corner of the screen. corner of the screen.
\H{using-logging} Creating a log file of your session \H{using-logging} Creating a \i{log file} of your \I{session
log}session
For some purposes you may find you want to log everything that For some purposes you may find you want to log everything that
appears on your screen. You can do this using the \q{Logging} panel appears on your screen. You can do this using the \i{\q{Logging}
in the configuration box. panel} in the configuration box.
To begin a session log, select \q{Change Settings} from the system To begin a session log, select \q{Change Settings} from the system
menu and go to the Logging panel. Enter a log file name, and select menu and go to the Logging panel. Enter a log file name, and select
@ -207,20 +217,20 @@ will close the log file and you can safely read it.
See \k{config-logging} for more details and options. See \k{config-logging} for more details and options.
\H{using-translation} Altering your character set configuration \H{using-translation} Altering your \i{character set} configuration
If you find that special characters (accented characters, for If you find that special characters (\i{accented characters}, for
example) are not being displayed correctly in your PuTTY session, it example) are not being displayed correctly in your PuTTY session, it
may be that PuTTY is interpreting the characters sent by the server may be that PuTTY is interpreting the characters sent by the server
according to the wrong \e{character set}. There are a lot of according to the wrong \e{character set}. There are a lot of
different character sets available, so it's entirely possible for different character sets available, so it's entirely possible for
this to happen. this to happen.
If you click \q{Change Settings} and look at the \q{Translation} If you click \q{Change Settings} and look at the \i{\q{Translation}
panel, you should see a large number of character sets which you can panel}, you should see a large number of character sets which you
select. Now all you need is to find out which of them you want! can select. Now all you need is to find out which of them you want!
\H{using-x-forwarding} Using X11 forwarding in SSH \H{using-x-forwarding} Using \i{X11 forwarding} in SSH
The SSH protocol has the ability to securely forward X Window System The SSH protocol has the ability to securely forward X Window System
applications over your encrypted SSH connection, so that you can run applications over your encrypted SSH connection, so that you can run
@ -231,8 +241,8 @@ the clear.
In order to use this feature, you will need an X display server for In order to use this feature, you will need an X display server for
your Windows machine, such as X-Win32 or Exceed. This will probably your Windows machine, such as X-Win32 or Exceed. This will probably
install itself as display number 0 on your local machine; if it install itself as display number 0 on your local machine; if it
doesn't, the manual for the X server should tell you what it does doesn't, the manual for the \i{X server} should tell you what it
do. does do.
You should then tick the \q{Enable X11 forwarding} box in the You should then tick the \q{Enable X11 forwarding} box in the
Tunnels panel (see \k{config-ssh-x11}) before starting your SSH Tunnels panel (see \k{config-ssh-x11}) before starting your SSH
@ -249,7 +259,7 @@ connection startup, you can check the PuTTY Event Log (see
\c 2001-12-05 17:22:02 X11 forwarding enabled \c 2001-12-05 17:22:02 X11 forwarding enabled
If the remote system is Unix or Unix-like, you should also be able If the remote system is Unix or Unix-like, you should also be able
to see that the \c{DISPLAY} environment variable has been set to to see that the \i{\c{DISPLAY} environment variable} has been set to
point at display 10 or above on the SSH server machine itself: point at display 10 or above on the SSH server machine itself:
\c fred@unixbox:~$ echo $DISPLAY \c fred@unixbox:~$ echo $DISPLAY
@ -263,7 +273,7 @@ then PuTTY cannot currently support it. If this is a problem for
you, you should mail the PuTTY authors \#{FIXME} and give details you, you should mail the PuTTY authors \#{FIXME} and give details
(see \k{feedback}). (see \k{feedback}).
\H{using-port-forwarding} Using port forwarding in SSH \H{using-port-forwarding} Using \i{port forwarding} in SSH
The SSH protocol has the ability to forward arbitrary network The SSH protocol has the ability to forward arbitrary network
connections over your encrypted SSH connection, to avoid the network connections over your encrypted SSH connection, to avoid the network
@ -316,14 +326,15 @@ number on the \e{server} (note that most servers will not allow you
to use port numbers under 1024 for this purpose). to use port numbers under 1024 for this purpose).
An alternative way to forward local connections to remote hosts is An alternative way to forward local connections to remote hosts is
to use dynamic SOCKS proxying. For this, you will need to select the to use \I{dynamic port forwarding}dynamic \I{SOCKS} proxying. For
\q{Dynamic} radio button instead of \q{Local}, and then you should this, you will need to select the \q{Dynamic} radio button instead
not enter anything into the \q{Destination} box (it will be of \q{Local}, and then you should not enter anything into the
ignored). This will cause PuTTY to listen on the port you have \q{Destination} box (it will be ignored). This will cause PuTTY to
specified, and provide a SOCKS proxy service to any programs which listen on the port you have specified, and provide a SOCKS proxy
connect to that port. So, in particular, you can forward other PuTTY service to any programs which connect to that port. So, in
connections through it by setting up the Proxy control panel (see particular, you can forward other PuTTY connections through it by
\k{config-proxy} for details). setting up the Proxy control panel (see \k{config-proxy} for
details).
The source port for a forwarded connection usually does not accept The source port for a forwarded connection usually does not accept
connections from any machine except the SSH client or server machine connections from any machine except the SSH client or server machine
@ -341,26 +352,26 @@ SSH server machine can connect to the forwarded port.) Note that
this feature is only available in the SSH 2 protocol, and not all this feature is only available in the SSH 2 protocol, and not all
SSH 2 servers support it (OpenSSH 3.0 does not, for example). SSH 2 servers support it (OpenSSH 3.0 does not, for example).
You can also specify an IP address to listen on. Typically a You can also specify an \i{IP address} to listen on. Typically a
Windows machine can be asked to listen on any single IP address in Windows machine can be asked to listen on any single IP address in
the \cw{127.*.*.*} range, and all of these are loopback addresses the \cw{127.*.*.*} range, and all of these are loopback addresses
available only to the local machine. So if you forward (for available only to the local machine. So if you forward (for example)
example) \c{127.0.0.5:79} to a remote machine's \cw{finger} port, \c{127.0.0.5:79} to a remote machine's \cw{finger} port, then you
then you should be able to run commands such as \c{finger should be able to run commands such as \c{finger fred@127.0.0.5}.
fred@127.0.0.5}. This can be useful if the program connecting to This can be useful if the program connecting to the forwarded port
the forwarded port doesn't allow you to change the port number it doesn't allow you to change the port number it uses. This feature is
uses. This feature is available for local-to-remote forwarded available for local-to-remote forwarded ports; SSH1 is unable to
ports; SSH1 is unable to support it for remote-to-local ports, support it for remote-to-local ports, while SSH2 can support it in
while SSH2 can support it in theory but servers will not theory but servers will not necessarily cooperate.
necessarily cooperate.
\H{using-rawprot} Making raw TCP connections \H{using-rawprot} Making \i{raw TCP connections}
A lot of Internet protocols are composed of commands and responses A lot of \I{debugging Internet protocols}Internet protocols are
in plain text. For example, SMTP (the protocol used to transfer composed of commands and responses in plain text. For example,
e-mail), NNTP (the protocol used to transfer Usenet news), and HTTP \i{SMTP} (the protocol used to transfer e-mail), \i{NNTP} (the
(the protocol used to serve Web pages) all consist of commands in protocol used to transfer Usenet news), and \i{HTTP} (the protocol
readable plain text. used to serve Web pages) all consist of commands in readable plain
text.
Sometimes it can be useful to connect directly to one of these Sometimes it can be useful to connect directly to one of these
services and speak the protocol \q{by hand}, by typing protocol services and speak the protocol \q{by hand}, by typing protocol
@ -379,21 +390,22 @@ detect or guess whether the service it is talking to is a real
Telnet service or not; PuTTY prefers to be told for certain. Telnet service or not; PuTTY prefers to be told for certain.
In order to make a debugging connection to a service of this type, In order to make a debugging connection to a service of this type,
you simply select the fourth protocol name, \q{Raw}, from the you simply select the fourth protocol name, \I{\q{Raw}
\q{Protocol} buttons in the \q{Session} configuration panel. (See protocol}\q{Raw}, from the \q{Protocol} buttons in the \q{Session}
\k{config-hostname}.) You can then enter a host name and a port configuration panel. (See \k{config-hostname}.) You can then enter a
number, and make the connection. host name and a port number, and make the connection.
\H{using-cmdline} The PuTTY command line \H{using-cmdline} The PuTTY command line
PuTTY can be made to do various things without user intervention by PuTTY can be made to do various things without user intervention by
supplying command-line arguments (e.g., from a command prompt window, supplying \i{command-line arguments} (e.g., from a \i{command prompt
or a Windows shortcut). window}, or a \i{Windows shortcut}).
\S{using-cmdline-session} Starting a session from the command line \S{using-cmdline-session} Starting a session from the command line
These options allow you to bypass the configuration window and launch \I\c{-ssh}\I\c{-telnet}\I\c{-rlogin}\I\c{-raw}These options allow
straight into a session. you to bypass the configuration window and launch straight into a
session.
To start a connection to a server called \c{host}: To start a connection to a server called \c{host}:
@ -405,8 +417,8 @@ supplied. Also, you can specify a protocol, which will override the
default protocol (see \k{using-cmdline-protocol}). default protocol (see \k{using-cmdline-protocol}).
For telnet sessions, the following alternative syntax is supported For telnet sessions, the following alternative syntax is supported
(this makes PuTTY suitable for use as a URL handler for telnet URLs in (this makes PuTTY suitable for use as a URL handler for \i{telnet
web browsers): URLs} in web browsers):
\c putty.exe telnet://host[:port]/ \c putty.exe telnet://host[:port]/
@ -415,7 +427,7 @@ use the \c{-load} option (described in \k{using-cmdline-load}).
\c putty.exe -load "session name" \c putty.exe -load "session name"
\S{using-cleanup} \c{-cleanup} \S{using-cleanup} \i\c{-cleanup}
If invoked with the \c{-cleanup} option, rather than running as If invoked with the \c{-cleanup} option, rather than running as
normal, PuTTY will remove its registry entries and random seed file normal, PuTTY will remove its registry entries and random seed file
@ -429,12 +441,13 @@ section lists the available options in all tools. Options which are
specific to a particular tool are covered in the chapter about that specific to a particular tool are covered in the chapter about that
tool. tool.
\S2{using-cmdline-load} \c{-load}: load a saved session \S2{using-cmdline-load} \i\c{-load}: load a saved session
The \c{-load} option causes PuTTY to load configuration details out \I{saved sessions, loading from command line}The \c{-load} option
of a saved session. If these details include a host name, then this causes PuTTY to load configuration details out of a saved session.
option is all you need to make PuTTY start a session (although Plink If these details include a host name, then this option is all you
still requires an explicitly specified host name). need to make PuTTY start a session (although Plink still requires an
explicitly specified host name).
You need double quotes around the session name if it contains spaces. You need double quotes around the session name if it contains spaces.
@ -457,29 +470,30 @@ option is deprecated.)
To choose which protocol you want to connect with, you can use one To choose which protocol you want to connect with, you can use one
of these options: of these options:
\b \c{-ssh} selects the SSH protocol. \b \i\c{-ssh} selects the SSH protocol.
\b \c{-telnet} selects the Telnet protocol. \b \i\c{-telnet} selects the Telnet protocol.
\b \c{-rlogin} selects the Rlogin protocol. \b \i\c{-rlogin} selects the Rlogin protocol.
\b \c{-raw} selects the raw protocol. \b \i\c{-raw} selects the raw protocol.
These options are not available in the file transfer tools PSCP and These options are not available in the file transfer tools PSCP and
PSFTP (which only work with the SSH protocol). PSFTP (which only work with the SSH protocol).
These options are equivalent to the protocol selection buttons in These options are equivalent to the \i{protocol selection} buttons
the Session panel of the PuTTY configuration box (see in the Session panel of the PuTTY configuration box (see
\k{config-hostname}). \k{config-hostname}).
\S2{using-cmdline-v} \c{-v}: increase verbosity \S2{using-cmdline-v} \i\c{-v}: increase verbosity
Most of the PuTTY tools can be made to tell you more about what they \I{verbose mode}Most of the PuTTY tools can be made to tell you more
are doing by supplying the \c{-v} option. If you are having trouble about what they are doing by supplying the \c{-v} option. If you are
when making a connection, or you're simply curious, you can turn having trouble when making a connection, or you're simply curious,
this switch on and hope to find out more about what is happening. you can turn this switch on and hope to find out more about what is
happening.
\S2{using-cmdline-l} \c{-l}: specify a login name \S2{using-cmdline-l} \i\c{-l}: specify a \i{login name}
You can specify the user name to log in as on the remote server You can specify the user name to log in as on the remote server
using the \c{-l} option. For example, \c{plink login.example.com -l using the \c{-l} option. For example, \c{plink login.example.com -l
@ -489,7 +503,8 @@ These options are equivalent to the username selection box in the
Connection panel of the PuTTY configuration box (see Connection panel of the PuTTY configuration box (see
\k{config-username}). \k{config-username}).
\S2{using-cmdline-portfwd} \c{-L}, \c{-R} and \c{-D}: set up port forwardings \S2{using-cmdline-portfwd} \i\c{-L}, \i\c{-R} and \i\c{-D}: set up
\i{port forwardings}
As well as setting up port forwardings in the PuTTY configuration As well as setting up port forwardings in the PuTTY configuration
(see \k{config-ssh-portfwd}), you can also set up forwardings on the (see \k{config-ssh-portfwd}), you can also set up forwardings on the
@ -526,20 +541,20 @@ For general information on port forwarding, see
These options are not available in the file transfer tools PSCP and These options are not available in the file transfer tools PSCP and
PSFTP. PSFTP.
\S2{using-cmdline-m} \c{-m}: read a remote command or script from a \S2{using-cmdline-m} \i\c{-m}: read a remote command or script from
file a file
The \c{-m} option performs a similar function to the \q{Remote The \i\c{-m} option performs a similar function to the \q{Remote
command} box in the SSH panel of the PuTTY configuration box (see command} box in the SSH panel of the PuTTY configuration box (see
\k{config-command}). However, the \c{-m} option expects to be given \k{config-command}). However, the \c{-m} option expects to be given
a local file name, and it will read a command from that file. On most Unix a local file name, and it will read a command from that file. On
systems, you can even put multiple lines in this file and execute most Unix systems, you can even put multiple lines in this file and
more than one command in sequence, or a whole shell script. execute more than one command in sequence, or a whole shell script.
This option is not available in the file transfer tools PSCP and This option is not available in the file transfer tools PSCP and
PSFTP. PSFTP.
\S2{using-cmdline-p} \c{-P}: specify a port number \S2{using-cmdline-p} \i\c{-P}: specify a \i{port number}
The \c{-P} option is used to specify the port number to connect to. If The \c{-P} option is used to specify the port number to connect to. If
you have a Telnet server running on port 9696 of a machine instead of you have a Telnet server running on port 9696 of a machine instead of
@ -552,11 +567,10 @@ port 23, for example:
because in PuTTY you can write \c{putty -telnet host.name 9696} in because in PuTTY you can write \c{putty -telnet host.name 9696} in
any case.) any case.)
These options are equivalent to the protocol selection buttons in This option is equivalent to the port number control in the Session
the Session panel of the PuTTY configuration box (see panel of the PuTTY configuration box (see \k{config-hostname}).
\k{config-hostname}).
\S2{using-cmdline-pw} \c{-pw}: specify a password \S2{using-cmdline-pw} \i\c{-pw}: specify a \i{password}
A simple way to automate a remote login is to supply your password A simple way to automate a remote login is to supply your password
on the command line. This is \e{not recommended} for reasons of on the command line. This is \e{not recommended} for reasons of
@ -567,12 +581,13 @@ Note that the \c{-pw} option only works when you are using the SSH
protocol. Due to fundamental limitations of Telnet and Rlogin, these protocol. Due to fundamental limitations of Telnet and Rlogin, these
protocols do not support automated password authentication. protocols do not support automated password authentication.
\S2{using-cmdline-agent} \c{-A} and \c{-a}: control agent forwarding \S2{using-cmdline-agent} \i\c{-A} and \i\c{-a}: control \i{agent
forwarding}
The \c{-A} option turns on SSH agent forwarding, and \c{-a} turns it The \c{-A} option turns on SSH agent forwarding, and \c{-a} turns it
off. These options are only meaningful if you are using SSH. off. These options are only meaningful if you are using SSH.
See \k{pageant} for general information on Pageant, and See \k{pageant} for general information on \i{Pageant}, and
\k{pageant-forward} for information on agent forwarding. Note that \k{pageant-forward} for information on agent forwarding. Note that
there is a security risk involved with enabling this option; see there is a security risk involved with enabling this option; see
\k{pageant-security} for details. \k{pageant-security} for details.
@ -583,7 +598,8 @@ Auth panel of the PuTTY configuration box (see \k{config-ssh-agentfwd}).
These options are not available in the file transfer tools PSCP and These options are not available in the file transfer tools PSCP and
PSFTP. PSFTP.
\S2{using-cmdline-x11} \c{-X} and \c{-x}: control X11 forwarding \S2{using-cmdline-x11} \i\c{-X} and \i\c{-x}: control \i{X11
forwarding}
The \c{-X} option turns on X11 forwarding in SSH, and \c{-x} turns The \c{-X} option turns on X11 forwarding in SSH, and \c{-x} turns
it off. These options are only meaningful if you are using SSH. it off. These options are only meaningful if you are using SSH.
@ -597,8 +613,8 @@ Tunnels panel of the PuTTY configuration box (see
These options are not available in the file transfer tools PSCP and These options are not available in the file transfer tools PSCP and
PSFTP. PSFTP.
\S2{using-cmdline-pty} \c{-t} and \c{-T}: control pseudo-terminal \S2{using-cmdline-pty} \i\c{-t} and \i\c{-T}: control
allocation \i{pseudo-terminal allocation}
The \c{-t} option ensures PuTTY attempts to allocate a The \c{-t} option ensures PuTTY attempts to allocate a
pseudo-terminal at the server, and \c{-T} stops it from allocating pseudo-terminal at the server, and \c{-T} stops it from allocating
@ -611,7 +627,7 @@ configuration box (see \k{config-ssh-pty}).
These options are not available in the file transfer tools PSCP and These options are not available in the file transfer tools PSCP and
PSFTP. PSFTP.
\S2{using-cmdline-compress} \c{-C}: enable compression \S2{using-cmdline-compress} \i\c{-C}: enable \i{compression}
The \c{-C} option enables compression of the data sent across the The \c{-C} option enables compression of the data sent across the
network. This option is only meaningful if you are using SSH. network. This option is only meaningful if you are using SSH.
@ -620,24 +636,25 @@ This option is equivalent to the \q{Enable compression} checkbox in
the SSH panel of the PuTTY configuration box (see the SSH panel of the PuTTY configuration box (see
\k{config-ssh-comp}). \k{config-ssh-comp}).
\S2{using-cmdline-sshprot} \c{-1} and \c{-2}: specify an SSH protocol \S2{using-cmdline-sshprot} \i\c{-1} and \i\c{-2}: specify an \i{SSH
version protocol version}
The \c{-1} and \c{-2} options force PuTTY to use version 1 or The \c{-1} and \c{-2} options force PuTTY to use version \I{SSH1}1
version 2 of the SSH protocol. These options are only meaningful if or version \I{SSH2}2 of the SSH protocol. These options are only
you are using SSH. meaningful if you are using SSH.
These options are equivalent to selecting your preferred SSH These options are equivalent to selecting your preferred SSH
protocol version as \q{1 only} or \q{2 only} in the SSH panel of the protocol version as \q{1 only} or \q{2 only} in the SSH panel of the
PuTTY configuration box (see \k{config-ssh-prot}). PuTTY configuration box (see \k{config-ssh-prot}).
\S2{using-cmdline-identity} \c{-i}: specify an SSH private key \S2{using-cmdline-identity} \i\c{-i}: specify an SSH \i{private key}
The \c{-i} option allows you to specify the name of a private key The \c{-i} option allows you to specify the name of a private key
file in \c{*.PPK} format which PuTTY will use to authenticate with the file in \c{*.PPK} format which PuTTY will use to authenticate with the
server. This option is only meaningful if you are using SSH. server. This option is only meaningful if you are using SSH.
For general information on public-key authentication, see \k{pubkey}. For general information on \i{public-key authentication}, see
\k{pubkey}.
This option is equivalent to the \q{Private key file for This option is equivalent to the \q{Private key file for
authentication} box in the Auth panel of the PuTTY configuration box authentication} box in the Auth panel of the PuTTY configuration box