source: server/major/openssh.xml@ e77976f

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since e77976f was e77976f, checked in by Randy McMurchy <randy@…>, 18 years ago

Changed all the references to X Window System links to a common entity displayed as 'X Window System' - now if there is ever an addition or removal of one of the X packages, an update in only one place will be required

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@5825 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 14.1 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY openssh-download-http "http://sunsite.ualberta.ca/pub/OpenBSD/OpenSSH/portable/openssh-&openssh-version;.tar.gz">
8 <!ENTITY openssh-download-ftp "ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-&openssh-version;.tar.gz">
9 <!ENTITY openssh-md5sum "7e9880ac20a9b9db0d3fea30a9ff3d46">
10 <!ENTITY openssh-size "920 KB">
11 <!ENTITY openssh-buildsize "15.3 MB">
12 <!ENTITY openssh-time "0.5 SBU (additional 0.7 SBU to run the test suite)">
13]>
14
15<sect1 id="openssh" xreflabel="OpenSSH-&openssh-version;">
16 <?dbhtml filename="openssh.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 <keywordset>
22 <keyword role="package">openssh-&openssh-version;.tar</keyword>
23 <keyword role="ftpdir">openssh</keyword>
24 </keywordset>
25 </sect1info>
26
27 <title>OpenSSH-&openssh-version;</title>
28
29 <indexterm zone="openssh">
30 <primary sortas="a-OpenSSH">OpenSSH</primary>
31 </indexterm>
32
33 <sect2 role="package">
34 <title>Introduction to OpenSSH</title>
35
36 <para>The <application>OpenSSH</application> package contains
37 <command>ssh</command> clients and the <command>sshd</command> daemon.
38 This is useful for encrypting authentication and subsequent traffic
39 over a network.</para>
40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
44 <para>Download (HTTP): <ulink url="&openssh-download-http;"/></para>
45 </listitem>
46 <listitem>
47 <para>Download (FTP): <ulink url="&openssh-download-ftp;"/></para>
48 </listitem>
49 <listitem>
50 <para>Download MD5 sum: &openssh-md5sum;</para>
51 </listitem>
52 <listitem>
53 <para>Download size: &openssh-size;</para>
54 </listitem>
55 <listitem>
56 <para>Estimated disk space required: &openssh-buildsize;</para>
57 </listitem>
58 <listitem>
59 <para>Estimated build time: &openssh-time;</para>
60 </listitem>
61 </itemizedlist>
62
63 <bridgehead renderas="sect3">OpenSSH Dependencies</bridgehead>
64
65 <bridgehead renderas="sect4">Required</bridgehead>
66 <para role="required"><xref linkend="openssl"/></para>
67
68 <bridgehead renderas="sect4">Optional</bridgehead>
69 <para role="optional"><xref linkend="linux-pam"/>,
70 <xref linkend="tcpwrappers"/>,
71 <xref linkend="x-window-system"/>,
72 <xref linkend="mitkrb"/> or <xref linkend="heimdal"/>,
73 <xref linkend="jdk"/>,
74 <xref linkend="net-tools"/>,
75 <xref linkend="sysstat"/>,
76 <ulink url="http://www.opensc-project.org/">OpenSC</ulink> and
77 <ulink
78 url="http://www.citi.umich.edu/projects/smartcard/sectok.html">libsectok</ulink></para>
79
80 <para condition="html" role="usernotes">User Notes:
81 <ulink url='&blfs-wiki;/OpenSSH'/></para>
82
83 </sect2>
84
85 <sect2 role="installation">
86 <title>Installation of OpenSSH</title>
87
88 <para><application>OpenSSH</application> runs as two processes when
89 connecting to other computers. The first process is a privileged process
90 and controls the issuance of privileges as necessary. The second process
91 communicates with the network. Additional installation steps are necessary
92 to set up the proper environment, which are performed by the following
93 commands:</para>
94
95<screen role="root"><userinput>install -v -m700 -d /var/lib/sshd &amp;&amp;
96chown -v root:sys /var/lib/sshd &amp;&amp;
97groupadd -g 50 sshd &amp;&amp;
98useradd -c 'sshd PrivSep' -d /var/lib/sshd -g sshd \
99 -s /bin/false -u 50 sshd</userinput></screen>
100
101 <para><application>OpenSSH</application> is very sensitive to changes in
102 the linked <application>OpenSSL</application> libraries. If you recompile
103 <application>OpenSSL</application>, <application>OpenSSH</application> may
104 fail to startup. An alternative is to link against the static
105 <application>OpenSSL</application> library. To link against the static
106 library, execute the following command:</para>
107
108<screen><userinput>sed -i "s:-lcrypto:/usr/lib/libcrypto.a:g" configure</userinput></screen>
109
110 <para>Install <application>OpenSSH</application> by running
111 the following commands:</para>
112
113<screen><userinput>sed -i "s/lkrb5 -ldes/lkrb5/" configure &amp;&amp;
114./configure --prefix=/usr --sysconfdir=/etc/ssh \
115 --libexecdir=/usr/sbin --with-md5-passwords \
116 --with-privsep-path=/var/lib/sshd &amp;&amp;
117make</userinput></screen>
118
119 <!-- Leaving this bunch of stuff for now. The description of all
120 this is now in the Command Explanatations, however.
121 <para>If you use <application>Heimdal</application> as your Kerberos5
122 implementation and you linked the <application>Heimdal</application>
123 libraries into the <application>OpenSSH</application> build using the
124 <option>-with-kerberos5</option> parameter, you'll need to modify the
125 <filename>Makefile</filename> if you previously linked
126 <application>OpenSSL</application> into the
127 <application>Heimdal</application> build or the build will fail. The
128 <application>OpenSSH</application> default expects
129 <application>Heimdal</application> was built using the included
130 <filename class='libraryfile'>libdes</filename> library instead of
131 <application>OpenSSL</application>. Use the following command to modify
132 the <filename>Makefile</filename>:</para>
133 -->
134
135 <para>If you linked <application>tcp_wrappers</application> into the
136 build using the <option>--with-tcp-wrappers</option> parameter, ensure
137 you add 127.0.0.1 to the sshd line in <filename>/etc/hosts.allow</filename>
138 if you have a restrictive <filename>/etc/hosts.deny</filename> file, or the
139 test suite will fail. To run the test suite, issue: <command>make -k
140 tests</command>. The banner tests are known to fail.</para>
141
142 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
143
144<screen role="root"><userinput>make install &amp;&amp;
145install -v -m755 -d /usr/share/doc/openssh-&openssh-version; &amp;&amp;
146install -v -m644 INSTALL LICENCE OVERVIEW README* WARNING.RNG \
147 /usr/share/doc/openssh-&openssh-version;</userinput></screen>
148
149 </sect2>
150
151 <sect2 role="commands">
152 <title>Command Explanations</title>
153
154 <para><command>sed -i "s/lkrb5 -ldes/lkrb5/" configure</command>:
155 This command fixes a build crash if you used the
156 <option>--with-kerberos5</option> parameter and you built the
157 <application>Heimdal</application> package in accordance with the BLFS
158 instructions. The command is harmless in all other instances.</para>
159
160 <para><parameter>--sysconfdir=/etc/ssh</parameter>: This prevents
161 the configuration files from being installed in
162 <filename class="directory">/usr/etc</filename>.</para>
163
164 <para><parameter>--with-md5-passwords</parameter>: This is required
165 if you made the changes recommended by the shadowpasswd_plus
166 LFS hint on your SSH server when you installed the Shadow Password
167 Suite or if you access a SSH server that authenticates by
168 user passwords encrypted with md5.</para>
169
170 <para><parameter>--libexecdir=/usr/sbin</parameter>: This parameter
171 changes the installation path of some programs to
172 <filename class="directory">/usr/sbin</filename> instead of
173 <filename class="directory">/usr/libexec</filename>.</para>
174
175 </sect2>
176
177 <sect2 role="configuration">
178 <title>Configuring OpenSSH</title>
179
180 <sect3 id="openssh-config">
181 <title>Config Files</title>
182
183 <para><filename>~/.ssh/*</filename>,
184 <filename>/etc/ssh/ssh_config</filename>, and
185 <filename>/etc/ssh/sshd_config</filename></para>
186
187 <indexterm zone="openssh openssh-config">
188 <primary sortas="e-AA.ssh">~/.ssh/*</primary>
189 </indexterm>
190
191 <indexterm zone="openssh openssh-config">
192 <primary sortas="e-etc-ssh-ssh_config">/etc/ssh/ssh_config</primary>
193 </indexterm>
194
195 <indexterm zone="openssh openssh-config">
196 <primary sortas="e-etc-ssh-sshd_config">/etc/ssh/sshd_config</primary>
197 </indexterm>
198
199 <para>There are no required changes to any of these files. However,
200 you may wish to view the <filename class='directory'>/etc/ssh/</filename>
201 files and make any changes appropriate for the security of your system.
202 One recommended change is that you disable
203 <systemitem class='username'>root</systemitem> login via
204 <command>ssh</command>. Execute the following command as the
205 <systemitem class='username'>root</systemitem> user to disable
206 <systemitem class='username'>root</systemitem> login via
207 <command>ssh</command>:</para>
208
209<screen role="root"><userinput>echo "PermitRootLogin no" >> /etc/ssh/sshd_config</userinput></screen>
210
211 <para>Additional configuration information can be found in the man
212 pages for <command>sshd</command>, <command>ssh</command> and
213 <command>ssh-agent</command>.</para>
214
215 </sect3>
216
217 <sect3 id="openssh-init">
218 <title>Boot Script</title>
219
220 <para>To start the SSH server at system boot, install the
221 <filename>/etc/rc.d/init.d/sshd</filename> init script included
222 in the <xref linkend="bootscripts"/> package.</para>
223
224 <indexterm zone="openssh openssh-init">
225 <primary sortas="f-sshd">sshd</primary>
226 </indexterm>
227
228<screen role="root"><userinput>make install-sshd</userinput></screen>
229
230 </sect3>
231
232 </sect2>
233
234 <sect2 role="content">
235 <title>Contents</title>
236
237 <segmentedlist>
238 <segtitle>Installed Programs</segtitle>
239 <segtitle>Installed Libraries</segtitle>
240 <segtitle>Installed Directories</segtitle>
241
242 <seglistitem>
243 <seg>scp, sftp, sftp-server, slogin, ssh, sshd, ssh-add, ssh-agent,
244 ssh-keygen, ssh-keyscan, and ssh-keysign</seg>
245 <seg>None</seg>
246 <seg>/etc/ssh, /var/lib/sshd and
247 /usr/share/doc/openssh-&openssh-version;</seg>
248 </seglistitem>
249 </segmentedlist>
250
251 <variablelist>
252 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
253 <?dbfo list-presentation="list"?>
254 <?dbhtml list-presentation="table"?>
255
256 <varlistentry id="scp">
257 <term><command>scp</command></term>
258 <listitem>
259 <para>is a file copy program that acts like <command>rcp</command>
260 except it uses an encrypted protocol.</para>
261 <indexterm zone="openssh scp">
262 <primary sortas="b-scp">scp</primary>
263 </indexterm>
264 </listitem>
265 </varlistentry>
266
267 <varlistentry id="sftp">
268 <term><command>sftp</command></term>
269 <listitem>
270 <para>is an FTP-like program that works over
271 SSH1 and SSH2 protocols.</para>
272 <indexterm zone="openssh sftp">
273 <primary sortas="b-sftp">sftp</primary>
274 </indexterm>
275 </listitem>
276 </varlistentry>
277
278 <varlistentry id="sftp-server">
279 <term><command>sftp-server</command></term>
280 <listitem>
281 <para>is an SFTP server subsystem.</para>
282 <indexterm zone="openssh sftp-server">
283 <primary sortas="b-sftp-server">sftp-server</primary>
284 </indexterm>
285 </listitem>
286 </varlistentry>
287
288 <varlistentry id="slogin">
289 <term><command>slogin</command></term>
290 <listitem>
291 <para>is a symlink to <command>ssh</command>.</para>
292 <indexterm zone="openssh slogin">
293 <primary sortas="g-slogin">slogin</primary>
294 </indexterm>
295 </listitem>
296 </varlistentry>
297
298 <varlistentry id="ssh">
299 <term><command>ssh</command></term>
300 <listitem>
301 <para>is an <command>rlogin</command>/<command>rsh</command>-like
302 client program except it uses an encrypted protocol.</para>
303 <indexterm zone="openssh ssh">
304 <primary sortas="b-ssh">ssh</primary>
305 </indexterm>
306 </listitem>
307 </varlistentry>
308
309 <varlistentry id="sshd">
310 <term><command>sshd</command></term>
311 <listitem>
312 <para>is a daemon that listens for <command>ssh</command> login
313 requests.</para>
314 <indexterm zone="openssh sshd">
315 <primary sortas="b-sshd">sshd</primary>
316 </indexterm>
317 </listitem>
318 </varlistentry>
319
320 <varlistentry id="ssh-add">
321 <term><command>ssh-add</command></term>
322 <listitem>
323 <para>is a tool which adds keys to the
324 <command>ssh-agent</command>.</para>
325 <indexterm zone="openssh ssh-add">
326 <primary sortas="b-ssh-add">ssh-add</primary>
327 </indexterm>
328 </listitem>
329 </varlistentry>
330
331 <varlistentry id="ssh-agent">
332 <term><command>ssh-agent</command></term>
333 <listitem>
334 <para>is an authentication agent that can store private keys.</para>
335 <indexterm zone="openssh ssh-agent">
336 <primary sortas="b-ssh-agent">ssh-agent</primary>
337 </indexterm>
338 </listitem>
339 </varlistentry>
340
341 <varlistentry id="ssh-keygen">
342 <term><command>ssh-keygen</command></term>
343 <listitem>
344 <para>is a key generation tool.</para>
345 <indexterm zone="openssh ssh-keygen">
346 <primary sortas="b-ssh-keygen">ssh-keygen</primary>
347 </indexterm>
348 </listitem>
349 </varlistentry>
350
351 <varlistentry id="ssh-keyscan">
352 <term><command>ssh-keyscan</command></term>
353 <listitem>
354 <para>is a utility for gathering public host keys from a
355 number of hosts.</para>
356 <indexterm zone="openssh ssh-keyscan">
357 <primary sortas="b-ssh-keyscan">ssh-keyscan</primary>
358 </indexterm>
359 </listitem>
360 </varlistentry>
361
362 <varlistentry id="ssh-keysign">
363 <term><command>ssh-keysign</command></term>
364 <listitem>
365 <para>is used by <command>ssh</command> to access the local host
366 keys and generate the digital signature required during hostbased
367 authentication with SSH protocol version 2.</para>
368 <indexterm zone="openssh ssh-keysign">
369 <primary sortas="b-ssh-keysign">ssh-keysign</primary>
370 </indexterm>
371 </listitem>
372 </varlistentry>
373
374 </variablelist>
375
376 </sect2>
377
378</sect1>
Note: See TracBrowser for help on using the repository browser.