\relax \ifx\hyper@anchor\@undefined \global \let \oldcontentsline\contentsline \gdef \contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} \global \let \oldnewlabel\newlabel \gdef \newlabel#1#2{\newlabelxx{#1}#2} \gdef \newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} \AtEndDocument{\let \contentsline\oldcontentsline \let \newlabel\oldnewlabel} \else \global \let \hyper@last\relax \fi \providecommand {\FN@pp@footnotehinttrue }{} \providecommand {\FN@pp@footnote@aux }[2]{} \FN@pp@footnotehinttrue \FN@pp@footnotehinttrue \FN@pp@footnotehinttrue \FN@pp@footnotehinttrue \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {chapter}{\numberline {1}SSH --- The Secure Shell}{1}{chapter.1}} \@writefile{lof}{\addvspace {10\p@ }} \@writefile{lot}{\addvspace {10\p@ }} \newlabel{cha:secure-shell}{{1}{1}{SSH --- The Secure Shell\relax }{chapter.1}{}} \@writefile{toc}{\contentsline {subsection}{Objectives}{1}{section*.2}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.1}What is the Secure Shell?}{2}{section.1.1}} \newlabel{sec:what-is-ssh}{{1.1}{2}{What is the Secure Shell?\relax }{section.1.1}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.2}But what's wrong with {\ttfamily telnet}?}{3}{section.1.2}} \newlabel{sec:telnet-problems}{{1.2}{3}{But what's wrong with {\cmdn telnet}?\relax }{section.1.2}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.3}Cryptography}{4}{section.1.3}} \newlabel{sec:crytography}{{1.3}{4}{Cryptography\relax }{section.1.3}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.4}OpenSSH and its history}{5}{section.1.4}} \newlabel{sec:openssh-history}{{1.4}{5}{OpenSSH and its history\relax }{section.1.4}{}} \newlabel{fig:SSHerrif}{{1.4}{5}{OpenSSH and its history\relax }{section.1.4}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.5}Okay, I like the blowfish---what else does OpenSSH provide?}{6}{section.1.5}} \newlabel{sec:openssh-files}{{1.5}{6}{Okay, I like the blowfish---what else does OpenSSH provide?\relax }{section.1.5}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.6}So okay, how do I use this Secure Shell?}{7}{section.1.6}} \newlabel{sec:how-use-ssh-to-login}{{1.6}{7}{So okay, how do I use this Secure Shell?\relax }{section.1.6}{}} \newlabel{1@xvr}{{}{7}{So okay, how do I use this Secure Shell?\relax }{section.1.6}{}} \newlabel{1@vr}{{}{7}{So okay, how do I use this Secure Shell?\relax }{section.1.6}{}} \FN@pp@footnote@aux{1}{7} \FN@pp@footnotehinttrue \newlabel{2@xvr}{{}{7}{So okay, how do I use this Secure Shell?\relax }{section.1.6}{}} \newlabel{2@vr}{{}{7}{So okay, how do I use this Secure Shell?\relax }{section.1.6}{}} \@writefile{toc}{\contentsline {section}{\numberline {1.7}Using {\ttfamily scp} to copy files over the network}{8}{section.1.7}} \newlabel{sec:how-use-scp}{{1.7}{8}{Using {\cmdn scp} to copy files over the network\relax }{section.1.7}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.8}Useful options with {\ttfamily scp}}{9}{section.1.8}} \newlabel{sec:scp-options}{{1.8}{9}{Useful options with {\cmdn scp}\relax }{section.1.8}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.9}SSH uses public and private keys}{10}{section.1.9}} \newlabel{sec:public-private-keys}{{1.9}{10}{SSH uses public and private keys\relax }{section.1.9}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.10}SSH Architecture}{11}{section.1.10}} \newlabel{sec:ssh-architecture}{{1.10}{11}{SSH Architecture\relax }{section.1.10}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.11}Overview of SSH}{12}{section.1.11}} \newlabel{sec:overview-of-ssh}{{1.11}{12}{Overview of SSH\relax }{section.1.11}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.12}Steps of establishing a connection}{13}{section.1.12}} \newlabel{sec:steps-ssh}{{1.12}{13}{Steps of establishing a connection\relax }{section.1.12}{}} \newlabel{3@xvr}{{}{13}{Steps of establishing a connection\relax }{section.1.12}{}} \newlabel{3@vr}{{}{13}{Steps of establishing a connection\relax }{section.1.12}{}} \newlabel{4@xvr}{{}{13}{Steps of establishing a connection\relax }{section.1.12}{}} \newlabel{4@vr}{{}{13}{Steps of establishing a connection\relax }{section.1.12}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.13}Using {\ttfamily ssh-keygen} to create a personal pair of private and public keys}{14}{section.1.13}} \newlabel{sec:ssh-keygen}{{1.13}{14}{Using {\cmdn ssh-keygen} to create a personal pair of private and public keys\relax }{section.1.13}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.14}The host keys in {\normalfont \ttfamily /etc/ssh/ssh\_known\_hosts} and {\normalfont \ttfamily $\sim $/.ssh/known\_hosts}}{15}{section.1.14}} \newlabel{sec:host-keys}{{1.14}{15}{The host keys in {\fn /etc/ssh/ssh\_known\_hosts} and {\fn $\sim $/.ssh/known\_hosts}\relax }{section.1.14}{}} \newlabel{5@xvr}{{}{15}{The host keys in {\fn /etc/ssh/ssh\_known\_hosts} and {\fn $\sim $/.ssh/known\_hosts}\relax }{section.1.14}{}} \newlabel{5@vr}{{}{15}{The host keys in {\fn /etc/ssh/ssh\_known\_hosts} and {\fn $\sim $/.ssh/known\_hosts}\relax }{section.1.14}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.15}The file {\normalfont \ttfamily $\sim $/.ssh/authorized\_keys}}{16}{section.1.15}} \newlabel{sec:authorized_keys}{{1.15}{16}{The file {\fn $\sim $/.ssh/authorized\_keys}\relax }{section.1.15}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.16}The User's Public and Private Keys}{17}{section.1.16}} \newlabel{sec:users-public-and-private-keys}{{1.16}{17}{The User's Public and Private Keys\relax }{section.1.16}{}} \newlabel{6@xvr}{{}{17}{The User's Public and Private Keys\relax }{section.1.16}{}} \newlabel{6@vr}{{}{17}{The User's Public and Private Keys\relax }{section.1.16}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.17}SSH1 and SSH2}{18}{section.1.17}} \newlabel{sec:ssh1-cf-ssh2}{{1.17}{18}{SSH1 and SSH2\relax }{section.1.17}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.18}The public and private key pairs: a summary}{19}{section.1.18}} \newlabel{sec:keys-summary}{{1.18}{19}{The public and private key pairs: a summary\relax }{section.1.18}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.19}Files and Permissions I Recommend}{20}{section.1.19}} \newlabel{sec:ssh-permissions}{{1.19}{20}{Files and Permissions I Recommend\relax }{section.1.19}{}} \newlabel{7@xvr}{{}{20}{Files and Permissions I Recommend\relax }{section.1.19}{}} \newlabel{7@vr}{{}{20}{Files and Permissions I Recommend\relax }{section.1.19}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.20}Using {\ttfamily ssh-agent} to log in without typing passwords}{21}{section.1.20}} \newlabel{sec:ssh-agent}{{1.20}{21}{Using {\cmdn ssh-agent} to log in without typing passwords\relax }{section.1.20}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.21}Setting up {\ttfamily ssh-agent}: logging in without typing passwords}{22}{section.1.21}} \newlabel{sec:ssh-agent-config}{{1.21}{22}{Setting up {\cmdn ssh-agent}: logging in without typing passwords\relax }{section.1.21}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.22}Using {\ttfamily ssh-add}: logging in without typing passwords}{23}{section.1.22}} \newlabel{sec:ssh-add}{{1.22}{23}{Using {\cmdn ssh-add}: logging in without typing passwords\relax }{section.1.22}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.23}An easier way: using {\normalfont \ttfamily keychain}}{24}{section.1.23}} \newlabel{sec:keychain}{{1.23}{24}{An easier way: using {\pgn keychain}\relax }{section.1.23}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.24}Configuring your own account to use {\normalfont \ttfamily keychain} }{25}{section.1.24}} \newlabel{sec:keychain-account}{{1.24}{25}{Configuring your own account to use {\pgn keychain} \relax }{section.1.24}{}} \@writefile{toc}{\contentsline {subsection}{Automating network transfers using {\normalfont \ttfamily keychain} and SSH}{25}{section*.3}} \newlabel{sec:cron-keychain}{{1.24}{25}{Automating network transfers using {\pgn keychain} and SSH\relax }{section*.3}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.25}Running X applications remotely}{26}{section.1.25}} \newlabel{sec:remote-X-with-ssh}{{1.25}{26}{Running X applications remotely\relax }{section.1.25}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.26}Configuring SSH for {\ttfamily X}}{27}{section.1.26}} \newlabel{sec:configuring-ssh}{{1.26}{27}{Configuring SSH for {\cmdn X}\relax }{section.1.26}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.27}Security options for the client in {\normalfont \ttfamily /etc/ssh/ssh\_config}}{28}{section.1.27}} \newlabel{sec:security-options}{{1.27}{28}{Security options for the client in {\fn /etc/ssh/ssh\_config}\relax }{section.1.27}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.28}{\normalfont \ttfamily rsync}: using it with SSH to mirror data}{29}{section.1.28}} \newlabel{sec:rsync-1}{{1.28}{29}{{\pgn rsync}: using it with SSH to mirror data\relax }{section.1.28}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.29}Using {\ttfamily ssh} from Windows, with {\ttfamily XWin32}: setting up}{30}{section.1.29}} \newlabel{sec:putty-setup}{{1.29}{30}{Using {\cmdn ssh} from Windows, with {\cmdn XWin32}: setting up\relax }{section.1.29}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.30}Using {\normalfont \ttfamily ssh} from Windows, with {\normalfont \ttfamily XWin32}}{31}{section.1.30}} \newlabel{sec:putty-using-it}{{1.30}{31}{Using {\pgn ssh} from Windows, with {\pgn XWin32}\relax }{section.1.30}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.31}What else can this do?}{32}{section.1.31}} \newlabel{sec:what-else-with-ssh}{{1.31}{32}{What else can this do?\relax }{section.1.31}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.32}Summary}{33}{section.1.32}} \newlabel{sec:summary}{{1.32}{33}{Summary\relax }{section.1.32}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.33}SSH References}{34}{section.1.33}} \newlabel{sec:ssh-references}{{1.33}{34}{SSH References\relax }{section.1.33}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.34}Secure Shell Exercises}{35}{section.1.34}} \newlabel{sec:ssh-exercises}{{1.34}{35}{Secure Shell Exercises\relax }{section.1.34}{}} \newlabel{8@xvr}{{}{35}{Secure Shell Exercises\relax }{Item.10}{}} \newlabel{8@vr}{{}{35}{Secure Shell Exercises\relax }{Item.10}{}} \newlabel{9@xvr}{{}{35}{Secure Shell Exercises\relax }{Item.11}{}} \newlabel{9@vr}{{}{35}{Secure Shell Exercises\relax }{Item.11}{}} \FN@pp@footnotehinttrue \@writefile{toc}{\contentsline {section}{\numberline {1.35}Secure Shell Solutions}{37}{section.1.35}} \newlabel{sec:ssh-solutions}{{1.35}{37}{Secure Shell Solutions\relax }{section.1.35}{}} \FN@pp@footnotehinttrue