Я пытаюсь настроить ProFTPD в соответствии со следующей ситуацией:
Например, должен быть ftp://example.com и ftp://otherdomain.com, оба с собственными каталогами, оба разрешают только анонимную загрузку.
Я понимаю, что мне нужно создать псевдоним IP (сделано с помощью ifconfig eth0:0 192.168.1.100
(и аналогичный для 192.168.1.101)) и настроить виртуальный хост в proftpd.conf или virtuals.conf (пробовал оба). Это то, что у меня сейчас есть
<VirtualHost example.com>
ServerName "Example.com download"
DefaultRoot /var/www/example.com/ftp
MaxClients 10
<Anonymous /var/www/example.com/ftp>
User ftp
Group ftp
UserAlias anonymous ftp
RequireValidShell no
DisplayLogin welcome.msg
DisplayChdir .message
<Limit LOGIN>
AllowAll
</Limit>
</Anonymous>
</VirtualHost>
Всякий раз, когда я пытаюсь получить доступ к серверу с такой конфигурацией, мне показывается запрос пароля. Какой бы пароль я ни попробовал, дальше ничего не получится.
Я видел источники, утверждающие, что это невозможно сделать с ProFTPD, и я видел источники, которые дают инструкции, как заставить его работать (что мне не удалось запустить). Многие веб-хосты имеют такую конфигурацию в своих более дешевых учетных записях, поэтому это должно быть возможно, хотя, возможно, не с ProFTPd.
Кто-нибудь может помочь настроить этот тип установки?
Не знаю, осталась ли у вас эта проблема (спустя 9+ месяцев), но эта конфигурация у меня работает:
<VirtualHost example.edu>
RequireValidShell off
ServerName "Anonymous FTP Server"
Port 4001
Umask 027
<Limit LOGIN>
DenyAll
</Limit>
<Anonymous /home/ftp/>
User ftp
Group nogroup
UserAlias anonymous ftp
<Limit LOGIN>
AllowAll
</Limit>
<Limit WRITE>
DenyAll
</Limit>
<Directory incoming>
<Limit WRITE>
AllowAll
</Limit>
</Directory>
</Anonymous>
TransferLog /var/log/proftpd/xferlogs/anon.log
# pre-def for firewall.
PassivePorts 49152 50000
</VirtualHost>