トーク:ProFTPD/proftpd.conf
提供:maruko2 Note.
proftpd (proftpd.conf) は apache (httpd.conf) とよく似た構文で設定する。
ProFTPD の設定例
VirtualHost, Global, Anonymous, Limit ディレクティブなどの設定例。
# ---------------------------------------------------------------
# ProFTPD Configuration
# ---------------------------------------------------------------
ServerType standalone
Port 21
MaxInstances 30
UseReverseDNS off
PidFile /var/run/proftpd.pid
ScoreboardFile /var/run/proftpd.scoreboard
# SystemLog /var/proftpd/systemlog
<Global>
PassivePorts 42000 42100
RootLogin off
IdentLookups off
DeferWelcome on
RequireValidShell off
TimesGMT off
MaxLoginAttempts 10
User ftp
Group ftp
AuthPAM on
AuthPAMConfig ftpd
WtmpLog off
</Global>
# -----------------------------------------------------------------
# Default FTP Server
# -----------------------------------------------------------------
ServerName "Default FTP Server"
ServerIdent on "Default FTP Server"
DefaultRoot ~ !foo !bar !baz
DefaultRoot /home/share foo
DefaultRoot /home/share bar
DefaultRoot /var/www baz
ExtendedLog /var/log/proftpd/default.ftp.log ALL
TransferLog /var/log/proftpd/default.xferlog
Umask 000
AllowOverwrite on
AllowStoreRestart on
AllowRetrieveRestart on
DeleteAbortedStores off
HiddenStor on
# -----------------------------------------------------------------
# VirtualHost 1
# -----------------------------------------------------------------
<VirtualHost ftp.example.com>
ServerName "VirtualHost 1 (ftp.example.com)"
ServerIdent on "VirtualHost 1 (ftp.example.com)"
DefaultRoot ~ !foo !bar
DefaultRoot /home/share foo
DefaultRoot /home/share bar
ExtendedLog /var/log/proftpd/ftp.example.com.log ALL
TransferLog /var/log/proftpd/ftp.example.com.xferlog
Umask 000
AllowOverwrite on
AllowStoreRestart on
AllowRetrieveRestart on
DeleteAbortedStores off
HiddenStor on
<Anonymous /home/anomymousftp>
UserAlias anonymous ftp
DirFakeUser on "anonymous"
DirFakeGroup on "anonymous"
DirFakeMode 000
ExtendedLog /var/log/proftpd/ftp.example.com.anonymous.log ALL
TransferLog /var/log/proftpd/ftp.example.com.anonymous.xferlog
AccessGrantMsg "Anonymous access granted for %u"
AllowOverwrite off
AllowStoreRestart off
AllowRetrieveRestart off
DeleteAbortedStores on
HiddenStor on
<Directory "/">
HideFiles ".DS_Store"
<Limit STOR RETR CWD XCWD CDUP>
AllowAll
</Limit>
<Limit NLST LIST MKD XMKD RNFR RETO DELE RMD XRMD>
DenyAll
</Limit>
</Directory>
</Anonymous>
</VirtualHost>
# -----------------------------------------------------------------
# VirtualHost 2
# -----------------------------------------------------------------
<VirtualHost ftp2.example.com>
ServerName "VirtualHost 2 (ftp2.example.com)"
ServerIdent on "VirtualHost 2 (ftp2.example.com)"
DefaultRoot ~ !qux
DefaultRoot /home/www qux
ExtendedLog /var/log/proftpd/ftp2.example.com.log ALL
TransferLog /var/log/proftpd/ftp2.example.com.xferlog
Umask 000
AllowOverwrite on
AllowStoreRestart on
AllowRetrieveRestart on
DeleteAbortedStores off
HiddenStor on
</VirtualHost>