29.04.2009 в 21:28 — Константин
Уважаемые соратники линуксоиды! Хотя сам стараюсь всем подсказывать в основном, получилось так, что помощь понадобилась и мне. Поднимаю (уже в третий раз) FTP сервер для небольшой локалки на работе. Первые работали на Mandrive и OpenSUSE. Сейчас по причине перехода на Debian Lenny и на работе, ибо дома дебиан стоит уже давно и располодил душу мою к себе полностью =), приходится поднимать сервер соответственно в нем. Проблема в следующем. Суперсервер Xinetd настроен вроде правильно. Вот строчка ftp сервиса:
service ftp
{
socket_type = stream
wait = no
user = root
server /usr/sbin/tpd
server_args = -1
instances = 4
log_on_success += DURATION USERID HOST
log_on_failure += HOST USERID
nice = 10
}
, сам proftpd тоже вроде настроен правильно:
строчка анонимного сервера:
<Anonymous /media/sdb5/FTP>
User ftp
Group ftp
UserAlias anonymous ftp
RequireValidShell off
<Directory *>
<Limit WRITE>
DenyAll
</Limit>
<Limit STOR>
AllowAll
</Limit>
</Directory>
</Anonymous>
, но конекта к нему нет, т.е. с моего компьютера показывает пустую страницу, с виндовых машин "Отсутствует подключение к папке...".
iptables явно не мешает, так как я его пока еще не трогал, т.е. все цепочки стоят открытыми. Samba работает нормально, что говорит о том, что из сети я доступен.
Далее приведу лог proftpd:
Апр 29 11:13:38 SysAdmin proftpd[9274] SysAdmin: Failed binding to 0.0.0.0, port 21: Адрес уже используется
Апр 29 11:13:38 SysAdmin proftpd[9274] SysAdmin: Check the ServerType directive to ensure you are configured correctly.
Вот это пишется в логе при попытке коннекта как с самого компьютера с сервом, так и с других компов.
Подскажите что-нибудь, пожалуйста, а то уже 2 дня ковыряюсь, разобраться не могу...
Комментарии
> Апр 29 11:13:38 SysAdmin proftpd[9274] SysAdmin: Check the ServerType directive to ensure you are configured correctly.
На всякий случай проверьте, ServerType точно inetd?
ServerType = xinetd
Поменяйте на inetd. И равно не нужно. Видимо он не понимает директиву и делает ServerType standalone.
Из документации:
The ServerType directive configures the server daemon's operating mode. The type-identifier can be one of two values:
inetd
The daemon will expect to be run from the inetd "super server." New сonnections are passed from inetd to proftpd and serviced immediately.
standalone
The daemon starts and begins listening to the configured port for incoming сonnections. New сonnections result in spawned child processes dedicated to servicing all requests from the newly сonnected client.
Default: standalone
Да, равно не нужно) попутал сейчас, когда писал, с конфигом xinetd)
Хм..можно попробовать....
Ну а вообще, если так подумать, если он даже автоматом ставит standalone, значит он просто будет работать постоянно, стартуя при загрузке, а не вызываться суперсервером...То есть в принципе коннекты все равно должны быть нормальные...
В конфиге inetd он прописан, так что запускаться через inetd будет.
А если одновременно будет и через inetd, и standalone, то конфликт будет.
*задумчиво чешет репу* И чем же я думал...
может за одно и напомните как сделать перекодировку из utf в win для пользователей под виндой ?
а то обновился и оно мне поломало старый патченый proftp а сам уже забыл чего как делал (если никто сразу не помнит, то пойду опять в инет)
присмотритесь к RemoteCharset.
в конфиге недо указать что-то типа
RemoteCharset cp1251
Василий Валов если внимательно прочитать мое предыдущее сообщение
такого бы предложения не возникло! Так как оно уже было реализовано, но после обновления оно говори что RemoteCharset - недопустимый параметр.
Владимир Reincarnation Лысиков, спасибо, друг! Поменял xinetd на inet - все заработало. А до этого конциги раза три перелопачивал, ничего не помогало...
проблему решил обновление далее до 1.3.2 и включением LangEngine