source: server/major/proftpd.xml@ 3f2db3a6

11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since 3f2db3a6 was 3f2db3a6, checked in by Pierre Labastie <pierre.labastie@…>, 17 months ago

Remove sect1info tags

They only contain a date tag that is nowhere used.

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