source: server/major/openssh.xml@ a6ac43b

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 a6ac43b was a6ac43b, checked in by Manuel Canales Esparcia <manuel@…>, 18 years ago

Adding automatized scripts generation related tags. Server part.

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

  • Property mode set to 100644
File size: 13.6 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 "df899194a340c933944b193477c628fa">
10 <!ENTITY openssh-size "914 KB">
11 <!ENTITY openssh-buildsize "15.7 MB">
12 <!ENTITY openssh-time "0.5 SBU (additional 0.5 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="ftptdir">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 X (<xref linkend="xfree86"/> or <xref linkend="xorg"/>),
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.org/">OpenSC</ulink> and
77 <ulink url="http://sourceforge.net/projects/libedit/">libedit</ulink></para>
78
79 </sect2>
80
81 <sect2 role="installation">
82 <title>Installation of OpenSSH</title>
83
84 <para><application>OpenSSH</application> runs as two processes when
85 connecting to other computers. The first process is a privileged process
86 and controls the issuance of privileges as necessary. The second process
87 communicates with the network. Additional installation steps are necessary
88 to set up the proper environment, which are performed by the following
89 commands:</para>
90
91<screen role="root"><userinput>install -v -m700 -d /var/lib/sshd &amp;&amp;
92chown -v root:sys /var/lib/sshd &amp;&amp;
93groupadd -g 50 sshd &amp;&amp;
94useradd -c 'sshd PrivSep' -d /var/lib/sshd -g sshd \
95 -s /bin/false -u 50 sshd</userinput></screen>
96
97 <para><application>OpenSSH</application> is very sensitive to changes in
98 the linked <application>OpenSSL</application> libraries. If you recompile
99 <application>OpenSSL</application>, <application>OpenSSH</application> may
100 fail to startup. An alternative is to link against the static
101 <application>OpenSSL</application> library. To link against the static
102 library, execute the following command:</para>
103
104<screen><userinput>sed -i "s:-lcrypto:/usr/lib/libcrypto.a:g" configure</userinput></screen>
105
106 <para>Install <application>OpenSSH</application> by running
107 the following commands:</para>
108
109<screen><userinput>./configure --prefix=/usr --sysconfdir=/etc/ssh \
110 --libexecdir=/usr/sbin --with-md5-passwords \
111 --with-privsep-path=/var/lib/sshd</userinput></screen>
112
113 <para>If you use <application>Heimdal</application> as your Kerberos5
114 implementation and you linked the <application>Heimdal</application>
115 libraries into the <application>OpenSSH</application> build using the
116 <option>--with-kerberos5</option> parameter, you'll need to modify the
117 <filename>Makefile</filename> if you previously linked
118 <application>OpenSSL</application> into the
119 <application>Heimdal</application> build or the build will fail. The
120 <application>OpenSSH</application> default expects
121 <application>Heimdal</application> was built using the included
122 <filename class='libraryfile'>libdes</filename> library instead of
123 <application>OpenSSL</application>. Use the following command to modify
124 the <filename>Makefile</filename>:</para>
125
126<screen><userinput>sed -i -e "s/lkrb5 -ldes/lkrb5/" Makefile</userinput></screen>
127
128 <para>Continue the build:</para>
129
130<screen><userinput>make</userinput></screen>
131
132 <para>If you linked <application>tcp_wrappers</application> into the
133 build using the <option>--with-tcp-wrappers</option> parameter, ensure
134 you add 127.0.0.1 to the sshd line in <filename>/etc/hosts.allow</filename>
135 if you have a restrictive <filename>/etc/hosts.deny</filename> file, or the
136 test suite will fail. To run the test suite, issue: <command>make -k
137 tests</command>. The banner tests are known to fail.</para>
138
139 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
140
141<screen role="root"><userinput>make install &amp;&amp;
142install -v -m755 -d /usr/share/doc/openssh-&openssh-version; &amp;&amp;
143install -v -m644 INSTALL LICENCE OVERVIEW README* WARNING.RNG \
144 /usr/share/doc/openssh-&openssh-version;</userinput></screen>
145
146 </sect2>
147
148 <sect2 role="commands">
149 <title>Command Explanations</title>
150
151 <para><parameter>--sysconfdir=/etc/ssh</parameter>: This prevents
152 the configuration files from being installed in
153 <filename class="directory">/usr/etc</filename>.</para>
154
155 <para><parameter>--with-md5-passwords</parameter>: This is required
156 if you made the changes recommended by the shadowpasswd_plus
157 LFS hint on your SSH server when you installed the Shadow Password
158 Suite or if you access a SSH server that authenticates by
159 user passwords encrypted with md5.</para>
160
161 <para><parameter>--libexecdir=/usr/sbin</parameter>: This parameter
162 changes the installation path of some programs to
163 <filename class="directory">/usr/sbin</filename> instead of
164 <filename class="directory">/usr/libexec</filename>.</para>
165
166 </sect2>
167
168 <sect2 role="configuration">
169 <title>Configuring OpenSSH</title>
170
171 <sect3 id="openssh-config">
172 <title>Config Files</title>
173
174 <para><filename>~/.ssh/*</filename>,
175 <filename>/etc/ssh/ssh_config</filename>, and
176 <filename>/etc/ssh/sshd_config</filename></para>
177
178 <indexterm zone="openssh openssh-config">
179 <primary sortas="e-AA.ssh">~/.ssh/*</primary>
180 </indexterm>
181
182 <indexterm zone="openssh openssh-config">
183 <primary sortas="e-etc-ssh-ssh_config">/etc/ssh/ssh_config</primary>
184 </indexterm>
185
186 <indexterm zone="openssh openssh-config">
187 <primary sortas="e-etc-ssh-sshd_config">/etc/ssh/sshd_config</primary>
188 </indexterm>
189
190 <para>There are no required changes to any of these files. However,
191 you may wish to view the <filename class='directory'>/etc/ssh/</filename>
192 files and make any changes appropriate for the security of your system.
193 One recommended change is that you disable
194 <systemitem class='username'>root</systemitem> login via
195 <command>ssh</command>. Execute the following command as the
196 <systemitem class='username'>root</systemitem> user to disable
197 <systemitem class='username'>root</systemitem> login via
198 <command>ssh</command>:</para>
199
200<screen role="root"><userinput>echo "PermitRootLogin no" >> /etc/ssh/sshd_config</userinput></screen>
201
202 <para>Additional configuration information can be found in the man
203 pages for <command>sshd</command>, <command>ssh</command> and
204 <command>ssh-agent</command>.</para>
205
206 </sect3>
207
208 <sect3 id="openssh-init">
209 <title>Boot Script</title>
210
211 <para>To start the SSH server at system boot, install the
212 <filename>/etc/rc.d/init.d/sshd</filename> init script included
213 in the <xref linkend="intro-important-bootscripts"/> package.</para>
214
215 <indexterm zone="openssh openssh-init">
216 <primary sortas="f-sshd">sshd</primary>
217 </indexterm>
218
219<screen role="root"><userinput>make install-sshd</userinput></screen>
220
221 </sect3>
222
223 </sect2>
224
225 <sect2 role="content">
226 <title>Contents</title>
227
228 <segmentedlist>
229 <segtitle>Installed Programs</segtitle>
230 <segtitle>Installed Libraries</segtitle>
231 <segtitle>Installed Directories</segtitle>
232
233 <seglistitem>
234 <seg>scp, sftp, sftp-server, slogin, ssh, sshd, ssh-add, ssh-agent,
235 ssh-keygen, ssh-keyscan, and ssh-keysign</seg>
236 <seg>None</seg>
237 <seg>/etc/ssh, /var/lib/sshd and
238 /usr/share/doc/openssh-&openssh-version;</seg>
239 </seglistitem>
240 </segmentedlist>
241
242 <variablelist>
243 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
244 <?dbfo list-presentation="list"?>
245 <?dbhtml list-presentation="table"?>
246
247 <varlistentry id="scp">
248 <term><command>scp</command></term>
249 <listitem>
250 <para>is a file copy program that acts like <command>rcp</command>
251 except it uses an encrypted protocol.</para>
252 <indexterm zone="openssh scp">
253 <primary sortas="b-scp">scp</primary>
254 </indexterm>
255 </listitem>
256 </varlistentry>
257
258 <varlistentry id="sftp">
259 <term><command>sftp</command></term>
260 <listitem>
261 <para>is an FTP-like program that works over
262 SSH1 and SSH2 protocols.</para>
263 <indexterm zone="openssh sftp">
264 <primary sortas="b-sftp">sftp</primary>
265 </indexterm>
266 </listitem>
267 </varlistentry>
268
269 <varlistentry id="sftp-server">
270 <term><command>sftp-server</command></term>
271 <listitem>
272 <para>is an SFTP server subsystem.</para>
273 <indexterm zone="openssh sftp-server">
274 <primary sortas="b-sftp-server">sftp-server</primary>
275 </indexterm>
276 </listitem>
277 </varlistentry>
278
279 <varlistentry id="slogin">
280 <term><command>slogin</command></term>
281 <listitem>
282 <para>is a symlink to <command>ssh</command>.</para>
283 <indexterm zone="openssh slogin">
284 <primary sortas="g-slogin">slogin</primary>
285 </indexterm>
286 </listitem>
287 </varlistentry>
288
289 <varlistentry id="ssh">
290 <term><command>ssh</command></term>
291 <listitem>
292 <para>is an <command>rlogin</command>/<command>rsh</command>-like
293 client program except it uses an encrypted protocol.</para>
294 <indexterm zone="openssh ssh">
295 <primary sortas="b-ssh">ssh</primary>
296 </indexterm>
297 </listitem>
298 </varlistentry>
299
300 <varlistentry id="sshd">
301 <term><command>sshd</command></term>
302 <listitem>
303 <para>is a daemon that listens for <command>ssh</command> login
304 requests.</para>
305 <indexterm zone="openssh sshd">
306 <primary sortas="b-sshd">sshd</primary>
307 </indexterm>
308 </listitem>
309 </varlistentry>
310
311 <varlistentry id="ssh-add">
312 <term><command>ssh-add</command></term>
313 <listitem>
314 <para>is a tool which adds keys to the
315 <command>ssh-agent</command>.</para>
316 <indexterm zone="openssh ssh-add">
317 <primary sortas="b-ssh-add">ssh-add</primary>
318 </indexterm>
319 </listitem>
320 </varlistentry>
321
322 <varlistentry id="ssh-agent">
323 <term><command>ssh-agent</command></term>
324 <listitem>
325 <para>is an authentication agent that can store private keys.</para>
326 <indexterm zone="openssh ssh-agent">
327 <primary sortas="b-ssh-agent">ssh-agent</primary>
328 </indexterm>
329 </listitem>
330 </varlistentry>
331
332 <varlistentry id="ssh-keygen">
333 <term><command>ssh-keygen</command></term>
334 <listitem>
335 <para>is a key generation tool.</para>
336 <indexterm zone="openssh ssh-keygen">
337 <primary sortas="b-ssh-keygen">ssh-keygen</primary>
338 </indexterm>
339 </listitem>
340 </varlistentry>
341
342 <varlistentry id="ssh-keyscan">
343 <term><command>ssh-keyscan</command></term>
344 <listitem>
345 <para>is a utility for gathering public host keys from a
346 number of hosts.</para>
347 <indexterm zone="openssh ssh-keyscan">
348 <primary sortas="b-ssh-keyscan">ssh-keyscan</primary>
349 </indexterm>
350 </listitem>
351 </varlistentry>
352
353 <varlistentry id="ssh-keysign">
354 <term><command>ssh-keysign</command></term>
355 <listitem>
356 <para>is used by <command>ssh</command> to access the local host
357 keys and generate the digital signature required during hostbased
358 authentication with SSH protocol version 2.</para>
359 <indexterm zone="openssh ssh-keysign">
360 <primary sortas="b-ssh-keysign">ssh-keysign</primary>
361 </indexterm>
362 </listitem>
363 </varlistentry>
364
365 </variablelist>
366
367 </sect2>
368
369</sect1>
Note: See TracBrowser for help on using the repository browser.