15.2.3. Π Π°Π·Π³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ ProFTP
Π― ΡΡΠΈΡΠ°Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ Π±Π»ΠΎΡΠ½ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Limit. ΠΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π²ΠΈΠ΄ ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠΎΠΌΡ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΌΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Ρ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π»ΠΈΡΡΠΈΠ½Π³ 15.8.
ΠΠΈΡΡΠΈΠ½Π³ 15.8. ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Limit
<Directory incoming>
<Limit WRITE>
AllowAll
</Limit>
<Limit READ>
DenyAll
</Limit>
</Directory>
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Directory ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° incoming, Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Limit Π·Π°Π΄Π°Π΅Ρ Π²ΠΈΠ΄ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΡΠΎΠΌΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Ρ. ΠΠΎΠΌΠ°Π½Π΄Π° WRITE Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Limit Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ AllowAll ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ Π²ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΡΡΠΎΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³. ΠΠΎΠΌΠ°Π½Π΄Π° READ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Limit Π·Π°Π΄Π°Π΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°. Π ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠ΅ΡΠ΅Π½ΠΎ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
ΠΡΠΎΠΌΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ WRITE ΠΈ READ, Π² Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π΅ Limit ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ STOR ΠΈ LOGIN (ΡΠ°Π±Π»ΠΈΡΠ° 15.6).
ΠΠΎΠΌΠ°Π½Π΄Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Limit, ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡΠΈΠ΅ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° Π’Π°Π±Π»ΠΈΡΠ° 15.6
ΠΠΎΠΌΠ°Π½Π΄Π° ΠΠ°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ LOGIN ΠΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ WRITE ΠΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ Π·Π°ΠΏΠΈΡΡ HEAD ΠΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΡΠ΅Π½ΠΈΠ΅ STOR ΠΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠΈΠ΅ΠΌ ΡΠ°ΠΉΠ»ΠΎΠ²Π Π±Π»ΠΎΠΊΠ΅ Limit ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Allow, AllowAll, AllowGroup, AllowUser, Deny, DenyAll, DenyUser. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π»ΠΈΡΡΠΈΠ½Π³Π΅ 15.9 Π·Π°ΠΏΡΠ΅ΡΠ°Π΅ΡΡΡ Π΄ΠΎΡΡΡΠΏ Π²ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ, ΠΊΡΠΎΠΌΠ΅ den. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ den ΠΌΠΎΠΆΠ΅Ρ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΡΠΎ Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ², ΠΊΡΠΎΠΌΠ΅ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ° Ρ IP-Π°Π΄ΡΠ΅ΡΠΎΠΌ 111.111.111.111. Π’Π°ΠΊΠΆΠ΅ Π·Π°ΠΏΡΠ΅ΡΠ΅Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΠΈΠ· ΡΠ΅ΡΠΈ 192.168.2.0
ΠΠΈΡΡΠΈΠ½Π³ 15.9. ΠΡΠΈΠΌΠ΅Ρ Π±Π»ΠΎΠΊΠ° Limit
<Limit LOGIN>
DenyAll
AllowUser den
Deny from 111.111.111.111
Deny from 192.168.2.
</Limit>
ΠΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ°ΠΉΠ» .ftpaccess, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ Π² ΡΡΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅. Π Π½Π΅ΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΆΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, ΡΡΠΎ ΠΈ Π² ΡΠ°ΠΉΠ»Π΅ proftpd.conf, Π½ΠΎ ΡΠ°ΠΉΠ» .ftpaccess ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ°ΠΉΠ»ΠΎΠΌ proftpd.conf.
ΠΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠ³ΠΎ FTP-ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΠ½ΠΎΠ½ΠΈΠΌΠ½ΡΠΉ FTP-ΡΠ΅ΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΡΠΎΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ wu-ftpd, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ² ΠΏΠ°ΠΊΠ΅Ρ anonftp. ΠΡΠΎΡ ΠΏΠ°ΠΊΠ΅Ρ Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ProFTPD. ΠΠ°ΠΊΠ΅Ρ anonftp ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² ΡΠΎΡΡΠ°Π²Π΅ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ².
Π‘Π΅ΠΉΡΠ°Ρ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΠΉ FTP-ΡΠ΅ΡΠ²Π΅Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ° ProFTPD. ΠΠ»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΡΠ΅ΡΠ²Π΅Ρ ProFTPD ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ Anonymous. ΠΡΠΈ ΡΡΠΎΠΌ Π² Π±Π»ΠΎΠΊ Anonymous Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ, ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΡΡΡΠΈΠ΅ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΡ ΡΠ»ΡΠΆΠ±Ρ. Π ΡΠ°ΠΌΠΎΠΉ ΠΆΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π΅ Anonymous Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ Π΄Π»Ρ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠΉ ΡΠ»ΡΠΆΠ±Ρ. Π‘Π΅ΡΠ²Π΅Ρ ProFTPD Π²ΡΠΏΠΎΠ»Π½ΠΈΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ chroot, ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Ρ ΡΡΠΎΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ, ΡΠ΅ΡΠ²Π΅Ρ ProFTPD ΠΏΡΠΎΡΠΈΡΠ°Π΅Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΅ΠΌΡ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈΠ· ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° /etc.
ΠΡΠΈ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠΉ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ anonymous, Π° Π²ΠΌΠ΅ΡΡΠΎ ΠΏΠ°ΡΠΎΠ»Ρ β Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ°, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ AnonRequirePassword. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΡΠΈΠΏΠΈΡΠ½ΡΠΉ Π±Π»ΠΎΠΊ Anonymous, ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΉ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² (ΡΠΌ. Π»ΠΈΡΡΠΈΠ½Π³ 15.10).
ΠΠΈΡΡΠΈΠ½Π³ 15.10. Π’ΠΈΠΏΠΈΡΠ½ΡΠΉ Π±Π»ΠΎΠΊ Anonymous
<Anonymous /var/ftp>
User ftp
Group ftp
UserAlias anonymous ftp
RequireValidShell off
<Directory *>
<Limit WRITE>
DenyAll
</Limit>
<Limit STOR>
AllowAll
</Limit>
</Directory>
</Anonymous>
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ User ΠΈ Group Π·Π°Π΄Π°ΡΡ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π»Ρ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ°. Π ΠΎΠ±ΠΎΠΈΡ ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΈΠΌΡ ftp. ΠΠ»Ρ ΠΈΠΌΠ΅Π½ΠΈ ftp ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ anonymous. ΠΠΌΠ΅ΡΡΠΎ ΠΏΠ°ΡΠΎΠ»Ρ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ.
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° RequireValidShell ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅Ρ ProFTPD ΠΈΡΠ΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠΎΠ² Π² ΡΠ°ΠΉΠ»Π΅ /etc/shells. ΠΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Π½Π΅ ΡΠΊΠ°Π·Π°Π½ Π² ΡΠ°ΠΉΠ»Π΅ /etc/shells, ΡΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·ΠΎΡΠ²Π°Π½ΠΎ. ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° RequireValidShell off ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ°ΠΊΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ.
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° <Directory *> ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ²ΠΎΠΉΡΡΠ²Π° Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ². ΠΡΠΈ ΡΡΠΎΠΌ Π²ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π·Π°ΠΏΡΠ΅ΡΠ΅Π½ΠΎ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ, Π½ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΡΠΊΠ°ΡΠΈΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° Π½Π° ΡΠ²ΠΎΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ.
ΠΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² Π±Π»ΠΎΠΊ Anonymous Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ MaxClients, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΡΠΆΠ½ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ ΠΈ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΠΊΠ°Π½Π°Π» Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΠ°ΡΡΠΎΡΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΡΠ΅ΡΠ²Π΅ΡΠ° FTP ΠΏΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΡ . ΠΡΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΌ ΠΊΠ°Π½Π°Π»Π΅ ΡΠ²ΡΠ·ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 33 ΠΠ±ΠΈΡ/ΡΠ΅ΠΊ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 5 ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ 3. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΠΈΡΠ»ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΡΠ°ΠΊΠΆΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΎΠ±ΡΠ΅ΠΌΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅. ΠΡΠ»ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π΅Π²Π΅Π»ΠΈΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ), ΡΠΎ ΡΠΈΡΠ»ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±ΠΎΠ»ΡΡΠΈΠΌ (10β15).
15.3. Π£ΡΠΈΠ»ΠΈΡΡ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ FTP-ΡΠ΅ΡΠ²Π΅ΡΠ°
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ wu-ftpd ΠΈ ProFTPD Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ftpshut (ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ΅ΡΠ²Π΅Ρ), ftpwho (Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡ ), ftpcount (ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ). ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΎΠ±ΠΎΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ ΠΎΠΏΡΠΈΠΈ, Π½ΠΎ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ ProFTPD Π²ΡΠ²ΠΎΠ΄ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
Π― ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ Π²ΡΠ²ΠΎΠ΄ ΡΡΠΈΠ»ΠΈΡΡ ftpwho. Π ΡΡΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ (Π»ΠΈΡΡΠΈΠ½Π³ 15.11).
ΠΠΈΡΡΠΈΠ½Π³ 15.11. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ftpwho
# ftpwho -v
Master proftpd process 759:
1113 2m55s proftpd: ftp β localhost.localdomain:
anonymous/ [email protected]: IDLE
(host: localhost.localdomain [127.0.0.1])
(cwd: /)
1150 0m20s proftpd: den - localhost.localdomain: IDLE
(host: localhost.localdomain [127.0.0.1])
(cwd: /home/den)
Service class - 2 users
15.4. ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ·Π΅Π» FTP
ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ β ΡΡΠΎ ΡΠ΅ΡΠ²Π΅Ρ, Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ, Π½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠΈΠΉΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊΠ°ΠΊ ΡΠ΅Π°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ. ΠΠ‘ Linux ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ IP-Π°Π΄ΡΠ΅ΡΠΎΠ², Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅ΠΌΡ ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ·Π»Ρ. ΠΡΠ»ΠΈ Π²Ρ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ IP-Π°Π΄ΡΠ΅ΡΠ°ΠΌΠΈ, ΡΠΎ ΠΎΠ½ΠΈ ΠΊΠ°ΠΊ ΡΠ°Π· ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ·Π»ΠΎΠ². ΠΡΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ FTP-ΡΠ·Π»ΠΎΠ² ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΌΡ ΡΠ·Π»Ρ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΈΡΠ²ΠΎΠΈΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ IP-Π°Π΄ΡΠ΅Ρ.
ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ FTP-ΡΠ·Π»Ρ Π½ΡΠΆΠ½Ρ, Π΅ΡΠ»ΠΈ Π²Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΎΡΠΈΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ·Π»ΠΎΠ² FTP β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠ°Π±ΠΎΡΠΈΡ Π³ΡΡΠΏΠΏ ΠΈ Π΄Π»Ρ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΠ°Π·Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ FTP-ΡΠ·Π»ΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ΅ ΡΠΎΡ ΠΆΠ΅ Π΄Π΅ΠΌΠΎΠ½ proftpd.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ FTP-ΡΠ·Π»Π° ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠ° Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π° Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π³Π»Π°Π²Π΅. ΠΠ°ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠ΄Π½Π° ΠΈ ΡΠ° ΠΆΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° VirtualHost, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ IΠ -Π°Π΄ΡΠ΅Ρ ΠΈΠ»ΠΈ Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΈΠΌΡ, ΠΏΡΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ Π² ΡΠ»ΡΠΆΠ±Π΅ DNS. IP-Π°Π΄ΡΠ΅Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΡΠ·Π΅Π» ΡΠ΅ΡΠΈ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π·Π°ΠΏΡΡΠ΅Π½ ProFTPD (ΡΠΌ. Π»ΠΈΡΡΠΈΠ½Π³ 15.12).
ΠΠΈΡΡΠΈΠ½Π³ 15.12. ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ VirtualHost
<VirtualHost ftp.library.com>
ServerName "Online library"
MaxClients 15
MaxLoginAttempts 1
DeferWelcome on
<Limit LOGIN>
Allow from 192.168.1
Deny from all
</Limit>
<Limit WRITE>
AllowUser libadmin
DenyAll
</Limit>
<Anonymous /var/ftp/library/books>
User library
Group library
AnonRequirePassword on
</Anonymous>
<Anonymous /var/ftp/library>
User ftp
Group ftp
UserAlias anonymous ftp
</Anonymous>
</VirtualHost>
Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ 15.12 ΡΠ°ΠΊΠΆΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΡΡΡΡΡ Π΄Π²Π΅ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΡ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΠΈ β library ΠΈ ftp. ΠΡΠΈΡΠ΅ΠΌ ΡΡΠ΅ΡΠ½Π°Ρ Π·Π°ΠΏΠΈΡΡ library ΡΡΠ΅Π±ΡΠ΅Ρ Π²Π²ΠΎΠ΄Π° ΠΏΠ°ΡΠΎΠ»Ρ ΠΏΡΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ. ΠΠ°ΡΠΎΠ»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ ΡΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΏΡΡΡΠΈΠ» Π΄Π΅ΠΌΠΎΠ½. ΠΠΎΡΡΡΠΏ ΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΠΎΠ΄ΡΠ΅ΡΠΈ 192.168.1.0. ΠΠ°ΠΏΠΈΡΡΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ libadmin.
15.5. ΠΠ°ΡΠΈΡΠ° FTP