source: server/major/proftpd.xml@ 94b42903

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 94b42903 was 94b42903, checked in by Bruce Dubbs <bdubbs@…>, 6 years ago

Archive openssl-1.1.x. Moved to LFS.
Update to v4l-utils-1.14.2.
Update to vlc-3.0.0.

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

  • Property mode set to 100644
File size: 13.2 KB
RevLine 
[08254fc]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[08254fc]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
[0aeb696]6
[edeebe2]7 <!ENTITY proftpd-download-http " ">
[de65afe]8 <!ENTITY proftpd-download-ftp "ftp://ftp.proftpd.org/distrib/source/proftpd-&proftpd-version;.tar.gz">
[87bbbc9]9 <!ENTITY proftpd-md5sum "13270911c42aac842435f18205546a1b">
10 <!ENTITY proftpd-size "19 MB">
11 <!ENTITY proftpd-buildsize "65 MB">
12 <!ENTITY proftpd-time "0.3 SBU">
[08254fc]13]>
14
[1598426]15<sect1 id="proftpd" xreflabel="ProFTPD-&proftpd-version;">
[ce49e897]16 <?dbhtml filename="proftpd.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>ProFTPD-&proftpd-version;</title>
24
25 <indexterm zone="proftpd">
26 <primary sortas="a-proftpd">Proftpd</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to ProFTPD</title>
31
32 <para>The <application>ProFTPD</application> package contains a secure
33 and highly configurable FTP daemon. This is useful for serving large
34 file archives over a network.</para>
35
[fe316a64]36 &lfs81_checked;
[e5bc4ed]37
[ce49e897]38 <bridgehead renderas="sect3">Package Information</bridgehead>
39 <itemizedlist spacing="compact">
40 <listitem>
41 <para>Download (HTTP): <ulink url="&proftpd-download-http;"/></para>
42 </listitem>
43 <listitem>
44 <para>Download (FTP): <ulink url="&proftpd-download-ftp;"/></para>
45 </listitem>
46 <listitem>
47 <para>Download MD5 sum: &proftpd-md5sum;</para>
48 </listitem>
49 <listitem>
50 <para>Download size: &proftpd-size;</para>
51 </listitem>
52 <listitem>
53 <para>Estimated disk space required: &proftpd-buildsize;</para>
54 </listitem>
55 <listitem>
56 <para>Estimated build time: &proftpd-time;</para>
57 </listitem>
58 </itemizedlist>
59
60 <bridgehead renderas="sect3">ProFTPD Dependencies</bridgehead>
61
62 <bridgehead renderas="sect4">Optional</bridgehead>
[e5bc4ed]63 <para role="optional">
[56605b9]64 <xref linkend="libcap-pam"/>,
[2f62a072]65 <xref linkend="linux-pam"/>,
[5e0662d]66 <xref linkend="mariadb"/> or <ulink url="http://www.mysql.com/">MySQL</ulink>,
[81d8cac]67 <xref linkend="pcre"/>, and
68 <xref linkend="postgresql"/>
[e5bc4ed]69 </para>
[ce49e897]70
[3cb0c57]71 <para condition="html" role="usernotes">User Notes:
72 <ulink url="&blfs-wiki;/proftpd"/></para>
73
[ce49e897]74 </sect2>
75
76 <sect2 role="installation">
77 <title>Installation of ProFTPD</title>
78
79 <para>For security reasons, you should install
80 <application>ProFTPD</application> using an unprivileged user and group.
81 As the <systemitem class="username">root</systemitem> user:</para>
82
[283bd88]83<screen role="root"><userinput>groupadd -g 46 proftpd &amp;&amp;
[13be1e2]84useradd -c proftpd -d /srv/ftp -g proftpd \
[283bd88]85 -s /usr/bin/proftpdshell -u 46 proftpd &amp;&amp;
86
[13be1e2]87install -v -d -m775 -o proftpd -g proftpd /srv/ftp &amp;&amp;
[283bd88]88ln -v -s /bin/false /usr/bin/proftpdshell &amp;&amp;
[13be1e2]89echo /usr/bin/proftpdshell &gt;&gt; /etc/shells</userinput></screen>
[08254fc]90
[4c288b0]91 <para>Install <application>ProFTPD</application> as an unprivileged user by
[ce49e897]92 running the following commands:</para>
[08254fc]93
[e5bc4ed]94<screen><userinput>./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/run &amp;&amp;
[ce49e897]95make</userinput></screen>
[1728f4e]96
[81d8cac]97 <para>This packages does not come with a usable test suite.</para>
[e5bc4ed]98
[ce49e897]99 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
[08254fc]100
[81d8cac]101<screen role="root"><userinput>make install &amp;&amp;
102install -d -m755 /usr/share/doc/proftpd-&proftpd-version; &amp;&amp;
103cp -Rv doc/* /usr/share/doc/proftpd-&proftpd-version;</userinput></screen>
[08254fc]104
[ce49e897]105 </sect2>
[08254fc]106
[ce49e897]107 <sect2 role="commands">
108 <title>Command Explanations</title>
[1728f4e]109
[ce49e897]110 <para><command>install -v -d -m775 -o proftpd -g proftpd
[13be1e2]111 /srv/ftp</command>: Create the home directory for
[ce49e897]112 <application>ProFTPD</application>.</para>
[1728f4e]113
[13be1e2]114 <para><command>ln -v -s /bin/false /usr/bin/proftpdshell</command>:
[4c288b0]115 Set the default shell as a link to an invalid shell.</para>
[1728f4e]116
[13be1e2]117 <para><command>echo /usr/bin/proftpdshell &gt;&gt;
[bfb7882]118 /etc/shells</command>: Fake a valid shell for compatibility purposes.</para>
[1728f4e]119
[ce49e897]120 <note>
[13be1e2]121 <para>The above two commands can be omitted if the following directive is
[ce49e897]122 placed in the configuration file:</para>
[1728f4e]123
[ce49e897]124<screen><literal>RequireValidShell off</literal></screen>
[1728f4e]125
[ce49e897]126 <para>By default, proftpd will require that users logging in have valid
127 shells. The RequireValidShell directive turns off this requirement. This
128 is only recommended if you are setting up your FTP server exclusively
129 for anonymous downloads.</para>
130 </note>
[08254fc]131
[2f62a072]132 <note>
133 <para>
134 Support for most of the dependency packages requires using options
135 passed to the <command>configure</command> script. View the output
136 from <command>./configure --help</command> for complete information
137 about enabling dependency packages.
138 </para>
139 </note>
[08254fc]140
[ce49e897]141 </sect2>
[08254fc]142
[ce49e897]143 <sect2 role="configuration">
144 <title>Configuring ProFTPD</title>
[1728f4e]145
[ce49e897]146 <sect3 id='proftpd-config'>
147 <title>Config Files</title>
[1728f4e]148
[ce49e897]149 <para><filename>/etc/proftpd.conf</filename></para>
[1728f4e]150
[ce49e897]151 <indexterm zone="proftpd proftpd-config">
152 <primary sortas="e-etc-proftpd">/etc/proftpd.conf</primary>
153 </indexterm>
[1586494]154
[ce49e897]155 </sect3>
[08254fc]156
[ce49e897]157 <sect3>
158 <title>Configuration Information</title>
[08254fc]159
[ce49e897]160 <para>This is a simple, download-only sample configuration. See the
161 <application>ProFTPD</application> documentation in
162 <filename class="directory">/usr/share/doc/proftpd</filename> and
163 consult the website at <ulink url="http://www.proftpd.org/"/> for
164 example configurations.</para>
[1728f4e]165
[8e37798]166<screen role="root"><?dbfo keep-together="auto"?><userinput>cat &gt; /etc/proftpd.conf &lt;&lt; "EOF"
[ce49e897]167<literal># This is a basic ProFTPD configuration file
[08254fc]168# It establishes a single server and a single anonymous login.
169
170ServerName "ProFTPD Default Installation"
171ServerType standalone
172DefaultServer on
173
174# Port 21 is the standard FTP port.
175Port 21
176# Umask 022 is a good standard umask to prevent new dirs and files
177# from being group and world writable.
178Umask 022
179
180# To prevent DoS attacks, set the maximum number of child processes
181# to 30. If you need to allow more than 30 concurrent connections
182# at once, simply increase this value. Note that this ONLY works
183# in standalone mode, in inetd mode you should use an inetd server
184# that allows you to limit maximum number of processes per service
[59048cd9]185<!--# (such as xinetd)-->
[08254fc]186MaxInstances 30
187
188# Set the user and group that the server normally runs at.
189User proftpd
190Group proftpd
191
[e89d59a]192# To cause every FTP user to be "jailed" (chrooted) into their home
193# directory, uncomment this line.
194#DefaultRoot ~
195
196
[1586494]197# Normally, files should be overwritable.
[08254fc]198&lt;Directory /*&gt;
199 AllowOverwrite on
200&lt;/Directory&gt;
201
202# A basic anonymous configuration, no upload directories.
203&lt;Anonymous ~proftpd&gt;
204 User proftpd
205 Group proftpd
[1586494]206 # Clients should be able to login with "anonymous" as well as "proftpd"
[08254fc]207 UserAlias anonymous proftpd
208
209 # Limit the maximum number of anonymous logins
210 MaxClients 10
211
[1586494]212 # 'welcome.msg' should be displayed at login, and '.message' displayed
[08254fc]213 # in each newly chdired directory.
214 DisplayLogin welcome.msg
[e5bc4ed]215 DisplayChdir .message
[08254fc]216
217 # Limit WRITE everywhere in the anonymous chroot
218 &lt;Limit WRITE&gt;
219 DenyAll
220 &lt;/Limit&gt;
[ce49e897]221&lt;/Anonymous&gt;</literal>
222EOF</userinput></screen>
223
224 </sect3>
225
226 <sect3 id="proftpd-init">
[1258125]227 <title><phrase revision="sysv">Boot Script</phrase>
228 <phrase revision="systemd">Systemd Unit</phrase></title>
229
230 <para>Install the
231 <phrase revision="sysv"><filename>/etc/rc.d/init.d/proftpd</filename>
232 init script</phrase>
233 <phrase revision="systemd"><filename>proftpd.service</filename>
234 unit</phrase> included in the
235 <xref linkend="bootscripts" revision="sysv"/>
[3c7bd00]236 <xref linkend="systemd-units" revision="systemd"/>
[ce49e897]237 package.</para>
238
239 <indexterm zone="proftpd proftpd-init">
240 <primary sortas="f-proftpd">proftpd</primary>
241 </indexterm>
242
243<screen role="root"><userinput>make install-proftpd</userinput></screen>
244
245 </sect3>
246
247 </sect2>
248
249 <sect2 role="content">
250 <title>Contents</title>
251
252 <segmentedlist>
253 <segtitle>Installed Programs</segtitle>
254 <segtitle>Installed Libraries</segtitle>
255 <segtitle>Installed Directory</segtitle>
256
257 <seglistitem>
[ca8cc947]258 <seg>
259 ftpasswd, ftpcount, ftpdctl, ftpmail, ftpquota, ftpscrub, ftpshut,
[28370fe]260 ftptop, ftpwho, in.proftpd (symlink to proftpd), proftpd, and prxs
[ca8cc947]261 </seg>
262 <seg>
263 None
264 </seg>
265 <seg>
266 /usr/{include,lib}/proftpd
267 </seg>
[ce49e897]268 </seglistitem>
269 </segmentedlist>
270
271 <variablelist>
272 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
273 <?dbfo list-presentation="list"?>
274 <?dbhtml list-presentation="table"?>
275
276 <varlistentry id="proftpd-prog">
277 <term><command>proftpd</command></term>
278 <listitem>
279 <para>is the FTP daemon.</para>
280 <indexterm zone="proftpd proftpd-prog">
281 <primary sortas="b-proftpd">proftpd</primary>
282 </indexterm>
283 </listitem>
284 </varlistentry>
285
286 <varlistentry id="ftpcount">
287 <term><command>ftpcount</command></term>
288 <listitem>
289 <para>shows the current number of connections.</para>
290 <indexterm zone="proftpd ftpcount">
291 <primary sortas="b-ftpcount">ftpcount</primary>
292 </indexterm>
293 </listitem>
294 </varlistentry>
295
[e5bc4ed]296 <varlistentry id="ftpdctl">
297 <term><command>ftpdctl</command></term>
298 <listitem>
299 <para>is used to control the proftpd daemon while it is running.</para>
300 <indexterm zone="proftpd ftpdctl">
301 <primary sortas="b-ftpdctl">ftpdctl</primary>
302 </indexterm>
303 </listitem>
304 </varlistentry>
305
306 <varlistentry id="ftpasswd">
307 <term><command>ftpasswd</command></term>
308 <listitem>
[0d7900a]309 <para>is a Perl script designed to create and manage
[e5bc4ed]310 AuthUserFiles and AuthGroupFiles of the correct format for proftpd.</para>
311 <indexterm zone="proftpd ftpasswd">
312 <primary sortas="b-ftpasswd">ftpasswd</primary>
313 </indexterm>
314 </listitem>
315 </varlistentry>
316
317 <varlistentry id="ftpmail">
318 <term><command>ftpmail</command></term>
319 <listitem>
[601a838]320 <para>is a Perl script for sending email based on the proftpd TransferLog.
[e5bc4ed]321 </para>
322 <indexterm zone="proftpd ftpmail">
323 <primary sortas="b-ftpmail">ftpmail</primary>
324 </indexterm>
325 </listitem>
326 </varlistentry>
327
328 <varlistentry id="ftpquota">
329 <term><command>ftpquota</command></term>
330 <listitem>
[0d7900a]331 <para>is a Perl script designed to create and manage limits and tally
332 files for the mod_quotatab + mod_quotatab_file module combination
[e5bc4ed]333 for proftpd.</para>
334 <indexterm zone="proftpd ftpquota">
335 <primary sortas="b-ftpquota">ftpquota</primary>
336 </indexterm>
337 </listitem>
338 </varlistentry>
339
340 <varlistentry id="ftpscrub">
341 <term><command>ftpscrub</command></term>
342 <listitem>
343 <para>provides a way to scrub the scoreboard file on demand.</para>
344 <indexterm zone="proftpd ftpscrub">
345 <primary sortas="b-ftpscrub">ftpscrub</primary>
346 </indexterm>
347 </listitem>
348 </varlistentry>
349
[ce49e897]350 <varlistentry id="ftpshut">
351 <term><command>ftpshut</command></term>
352 <listitem>
353 <para>shuts down all <application>proftpd</application> servers
354 at a given time.</para>
355 <indexterm zone="proftpd ftpshut">
356 <primary sortas="b-ftpshut">ftpshut</primary>
357 </indexterm>
358 </listitem>
359 </varlistentry>
360
361 <varlistentry id="ftptop">
362 <term><command>ftptop</command></term>
363 <listitem>
364 <para>displays running status on connections.</para>
365 <indexterm zone="proftpd ftptop">
366 <primary sortas="b-ftptop">ftptop</primary>
367 </indexterm>
368 </listitem>
369 </varlistentry>
370
371 <varlistentry id="ftpwho">
372 <term><command>ftpwho</command></term>
373 <listitem>
374 <para>shows current process information for each session.</para>
375 <indexterm zone="proftpd ftpwho">
376 <primary sortas="b-ftpwho">ftpwho</primary>
377 </indexterm>
378 </listitem>
379 </varlistentry>
380
[ca8cc947]381 <varlistentry id="prxs">
382 <term><command>prxs</command></term>
383 <listitem>
384 <para>is a Perl script designed to compile and install third-party
385 modules, from source code, as DSO modules for the installed
386 proftpd.</para>
387 <indexterm zone="proftpd prxs">
388 <primary sortas="b-prxs">prxs</primary>
389 </indexterm>
390 </listitem>
391 </varlistentry>
392
[ce49e897]393 </variablelist>
394
395 </sect2>
[1598426]396
397</sect1>
Note: See TracBrowser for help on using the repository browser.