URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 64517
[ Назад ]

Исходное сообщение
"Проблемы всех ftp серевров в *nix"

Отправлено woto , 02-Мрт-06 19:53 
Здравствуйте. Задача, нетривиальная необходимо правильно настроить любой! фтп сервер. Что я имею ввиду под словом правильно? Я за сегодняшний день настроил 2 фтп сервера vsftpd и proftpd, перечитал кучу статей, патчил исходники, на предмет буквы 'Я', смотрел статьи тут же про перекодировки и т.д. но ничего не помогло.

Проблема такая. Если создать папку с русским именем, а потом попытаться залить подпапки с файлами, то почему-то выскакивает сообщение после каждого файла:
"В ходе открытия папки на FTP-сервере произошла ошибка. Убедитесь, что у вас есть разрешение открывать эту папку." Причем файлы успешно заливаются! Ну как это побороть? Только не говорите про стандарты и т.д. начитался уже вдоволь :) Ну есть же фтп сервера, тот же Serv-U, который правильно умеет работать со всеми! клиентами. Может уже кто-нибудь перебарывал? Буду, очень благодарен если хотя бы направите на нужный дистрибутив. Сил уже нету перебирать эти кучи и искать доработки умельцев.

Заранее Спасибо.


Содержание

Сообщения в этом обсуждении
"Проблемы всех ftp серевров в *nix"
Отправлено Mempis , 03-Мрт-06 04:42 
>Здравствуйте. Задача, нетривиальная необходимо правильно настроить любой! фтп сервер. Что я имею
>ввиду под словом правильно? Я за сегодняшний день настроил 2 фтп
>сервера vsftpd и proftpd, перечитал кучу статей, патчил исходники, на предмет
>буквы 'Я', смотрел статьи тут же про перекодировки и т.д. но
>ничего не помогло.
>
>Проблема такая. Если создать папку с русским именем, а потом попытаться залить
>подпапки с файлами, то почему-то выскакивает сообщение после каждого файла:
>"В ходе открытия папки на FTP-сервере произошла ошибка. Убедитесь, что у вас
>есть разрешение открывать эту папку." Причем файлы успешно заливаются! Ну как
>это побороть? Только не говорите про стандарты и т.д. начитался уже
>вдоволь :) Ну есть же фтп сервера, тот же Serv-U, который
>правильно умеет работать со всеми! клиентами. Может уже кто-нибудь перебарывал? Буду,
>очень благодарен если хотя бы направите на нужный дистрибутив. Сил уже
>нету перебирать эти кучи и искать доработки умельцев.
>
>Заранее Спасибо.


А ты пробывал другими клиентами заливать?


"Проблемы всех ftp серевров в *nix"
Отправлено woto , 03-Мрт-06 05:54 
>А ты пробывал другими клиентами заливать?
Да нет, с другими клиентами все ок. Тот же vsftpd достаточно хорош (сейчас используется). А вот с осликои. Если бы хоть не видел что IE прекрасно работает с win/serv-u не просил, но если есть, может и под никсами тоже есть. Просто слишком большой фтп сервер 3Тб с прикрученым самописным веб интерфейсом, прокачка на 600мб/с, кучи пользователей. В общем очень, ну просто очень нужно побороть проблему.

"Проблемы всех ftp серевров в *nix"
Отправлено satelit , 03-Мрт-06 05:31 
Ты когда-нибудь монтировал виндовый рездел на диске к линуксу без указания опций перекодировки символов?, наверно видел какие там кракозяблики и знаки вопроса, так что покопай в эту сторону, заливаеш-то наверняка виндовым клиентом, а юних не может понять символов.

"Проблемы всех ftp серевров в *nix"
Отправлено woto , 03-Мрт-06 05:59 
>Ты когда-нибудь монтировал виндовый рездел на диске к линуксу без указания опций
>перекодировки символов?, наверно видел какие там кракозяблики и знаки вопроса, так
>что покопай в эту сторону, заливаеш-то наверняка виндовым клиентом, а юних
>не может понять символов.

Наврятли, проблема наверняка кроется просто в протоколе взаимодействия командами (FTP). Так вот где бы найти "русский" фтп.

Хотелось бы услышать спецов которые именно проделывали эти операции, а то может это только у меня такая проблема?


"Проблемы всех ftp серевров в *nix"
Отправлено Аноним , 03-Мрт-06 10:21 
>Здравствуйте. Задача, нетривиальная необходимо правильно настроить любой! фтп сервер. Что я имею
>ввиду под словом правильно? Я за сегодняшний день настроил 2 фтп
>сервера vsftpd и proftpd, перечитал кучу статей, патчил исходники, на предмет
>буквы 'Я', смотрел статьи тут же про перекодировки и т.д. но
>ничего не помогло.
>
>Проблема такая. Если создать папку с русским именем, а потом попытаться залить
>подпапки с файлами, то почему-то выскакивает сообщение после каждого файла:
>"В ходе открытия папки на FTP-сервере произошла ошибка. Убедитесь, что у вас
>есть разрешение открывать эту папку." Причем файлы успешно заливаются! Ну как
>это побороть? Только не говорите про стандарты и т.д. начитался уже
>вдоволь :) Ну есть же фтп сервера, тот же Serv-U, который
>правильно умеет работать со всеми! клиентами. Может уже кто-нибудь перебарывал? Буду,
>очень благодарен если хотя бы направите на нужный дистрибутив. Сил уже
>нету перебирать эти кучи и искать доработки умельцев.
>
>Заранее Спасибо.

хер знает чо там у вас за трабла. у меня proftpd практически в дефолтной инсталляции. на RedHat-7.3
виндузятники заливают русские файлы.
в окне Осла нормально отображаються русские буквы, как и в cute ftp pro, total cmd, cmd ftp и пр.
эти файлы в разделе ред хата отображаються вопросиками - фигня.
локаль ред хата переписал на cp-1251 и все стало зачупато.


"Проблемы всех ftp серевров в *nix"
Отправлено woto , 03-Мрт-06 11:16 
>хер знает чо там у вас за трабла. у меня proftpd практически
>в дефолтной инсталляции. на RedHat-7.3
>виндузятники заливают русские файлы.
>в окне Осла нормально отображаються русские буквы, как и в cute ftp
>pro, total cmd, cmd ftp и пр.
>эти файлы в разделе ред хата отображаються вопросиками - фигня.
>локаль ред хата переписал на cp-1251 и все стало зачупато.

Да нет, у меня с русским языком проблема выражается только когда будешь заливать папку Folder на фтп сервер, причем файлы заливаются! и все правильно работает, но эта ошибка дурацкая, которая отображается после залития каждого файла убивает желание заливать...

Папка
    |
    Folder
         |
         + file1
         + file2
         + ...

Не могли бы вы проэксперементировать ситуацию, что я описал?


"Проблемы всех ftp серевров в *nix"
Отправлено redmoon , 03-Мрт-06 11:19 
>>хер знает чо там у вас за трабла. у меня proftpd практически
>>в дефолтной инсталляции. на RedHat-7.3
>>виндузятники заливают русские файлы.
>>в окне Осла нормально отображаються русские буквы, как и в cute ftp
>>pro, total cmd, cmd ftp и пр.
>>эти файлы в разделе ред хата отображаються вопросиками - фигня.
>>локаль ред хата переписал на cp-1251 и все стало зачупато.
>
>Да нет, у меня с русским языком проблема выражается только когда будешь
>заливать папку Folder на фтп сервер, причем файлы заливаются! и все
>правильно работает, но эта ошибка дурацкая, которая отображается после залития каждого
>файла убивает желание заливать...
>
>Папка
>    |
>    Folder
>         |
>         + file1
>         + file2
>         + ...
>
>Не могли бы вы проэксперементировать ситуацию, что я описал?


в том то и дело ..  что почему то у меня никаких ошибок нет.. .
proftpd-1.2.9


"Проблемы всех ftp серевров в *nix"
Отправлено woto , 03-Мрт-06 12:27 
>в том то и дело ..  что почему то у меня
>никаких ошибок нет.. .
>proftpd-1.2.9


Может тогда кто-нибудь подскажет с какими настройками еще стоит поиграться? :(


"Проблемы всех ftp серевров в *nix"
Отправлено lavr , 03-Мрт-06 12:50 
>>в том то и дело ..  что почему то у меня
>>никаких ошибок нет.. .
>>proftpd-1.2.9
>
>
>Может тогда кто-нибудь подскажет с какими настройками еще стоит поиграться? :(

пока RFC на FTP не прочтете и не поймете В ЧЕМ ДЕЛО, ничего вам не поможет
и будете долго мучаться


"Проблемы всех ftp серевров в *nix"
Отправлено woto , 03-Мрт-06 13:52 
>пока RFC на FTP не прочтете и не поймете В ЧЕМ ДЕЛО,
>ничего вам не поможет
>и будете долго мучаться
Слишком расплывчато...

Но тем не менее кажется понял почему у redmoon все работало, у него наверно клиент Windows 2000 + IE (5.0 - 5.5). У меня WinXP + IE (6.0). (Выяснил опытным путем случайно проверяя на компах работу фтп сервера).

Не знаю имеет ли тогда смысл уходить с vsftpd, двухтысячным уже пользуется не более 11% - http://gs.spylog.ru/r/?reportId=13&categoryId=1

Понятно, ладно, всем большое спасибо, что посодействовали разборкам.
Буду рад выслушать если кому-то будет что добавить.


"Проблемы всех ftp серевров в *nix"
Отправлено redmoon , 03-Мрт-06 14:08 
у меня ХП :)) СП2
вот конфиг

ServerName                      "FuckFTPd"
ServerType                      standalone
DefaultServer                   on
ServerIdent                     on "ftp-server"
RootLogin                       on
Port                            21
AllowForeignAddress             on
Umask                           022
MaxInstances                    30
User                            ftp
Group                           ftp
MaxClients      30              "Too many connection"
#MaxClientsPerHosts 4           "%m clients already connect from your host, more clients can't connect!!!"
MaxLoginAttempts 3              "Too many tries to connect"
DisplayConnect /etc/proftpd/ftp_connect.msg
AllowOverride   on
AllowOverwrite on
AccessDenyMsg "ATTENTION!!! ALL CONNECTIONS LOGED"
AccessGrantMsg "Now apload/download files"
DisplayGoAway "Good bye!!!"
TimeoutIdle 600
TimeoutLogin 600
TimeoutNoTransfer 600
TimeoutStalled 600
DefaultRoot / root
DefaultRoot ~
UseReverseDNS off
IdentLookups off
DenyFilter \*.*/
PathDenyFilter "(^|/)[-]"
TransferLog /var/log/proftpd/proftpd-transfer.log
SystemLog /var/log/proftpd/proftpd-error.log
ExtendedLog /var/log/proftpd/proftpd-extended.log read,write
<Limit LOGIN>
     Order Allow,Deny
     Allow from 172.23.1.
     AllowUser dead
     AllowUser ded
     AllowUser pretender
     AllowUser megatel
     Deny from all
</Limit>
<Limit SITE_CHMOD>
  IgnoreHidden off
  Order deny,allow
  AllowUser vysov
  AllowUser krot
  AllowUser radio
  AllowUser apache
  AllowUser neko
  AllowUser photo
  AllowUser ustasia
  AllowUser dead
  AllowUser belkin
  AllowUser ded
  AllowUser danil
  AllowUser pretender
  AllowUser megatel
</Limit>
  <Anonymous /home/ftp>
  User                            ftp
  Group                           ftp
  UserAlias                       anonymous ftp
  MaxClients                      30
     <Limit WRITE>
          DenyAll
             </Limit>
             <Directory /home/ftp/incoming>
             <Limit WRITE>
                 AllowAll
             </Limit>
         </Directory>
</Anonymous>

locale:

LANG=ru_RU.CP=1251
LC_CTYPE=ru_RU.CP=1251
LC_NUMERIC=ru_RU.CP=1251
LC_TIME=ru_RU.CP=1251
LC_COLLATE=ru_RU.CP=1251
LC_MONETARY=ru_RU.CP=1251
LC_MESSAGES=ru_RU.CP=1251
LC_PAPER=ru_RU.CP=1251
LC_NAME=ru_RU.CP=1251
LC_ADDRESS=ru_RU.CP=1251
LC_TELEPHONE=ru_RU.CP=1251
LC_MEASUREMENT=ru_RU.CP=1251
LC_IDENTIFICATION=ru_RU.CP=1251
LC_ALL=

Осел 6-ой


"Проблемы всех ftp серевров в *nix"
Отправлено lavr , 03-Мрт-06 14:12 
>>пока RFC на FTP не прочтете и не поймете В ЧЕМ ДЕЛО,
>>ничего вам не поможет
>>и будете долго мучаться
>Слишком расплывчато...

оба-на RFC слишком расплывчато!

в таком случае вам вряд ли что-то или кто-то поможет.


"Проблемы всех ftp серевров в *nix"
Отправлено Аноним , 03-Мрт-06 10:42 
>Здравствуйте. Задача, нетривиальная необходимо правильно настроить любой! фтп сервер. Что я имею
>ввиду под словом правильно? Я за сегодняшний день настроил 2 фтп
>сервера vsftpd и proftpd, перечитал кучу статей, патчил исходники, на предмет
>буквы 'Я', смотрел статьи тут же про перекодировки и т.д. но
>ничего не помогло.
>
>Проблема такая. Если создать папку с русским именем, а потом попытаться залить
>подпапки с файлами, то почему-то выскакивает сообщение после каждого файла:
>"В ходе открытия папки на FTP-сервере произошла ошибка. Убедитесь, что у вас
>есть разрешение открывать эту папку." Причем файлы успешно заливаются! Ну как
>это побороть? Только не говорите про стандарты и т.д. начитался уже
>вдоволь :) Ну есть же фтп сервера, тот же Serv-U, который
>правильно умеет работать со всеми! клиентами. Может уже кто-нибудь перебарывал? Буду,
>очень благодарен если хотя бы направите на нужный дистрибутив. Сил уже
>нету перебирать эти кучи и искать доработки умельцев.
>
>Заранее Спасибо.
покажите конфиг ?


"Проблемы всех ftp серевров в *nix"
Отправлено woto , 03-Мрт-06 11:09 
>покажите конфиг ?

А они у меня в принципе стандартные, но чтоб не затягивать.
Вот vsftpd

listen_address=192.168.7.12
listen=YES
chroot_local_user=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=002
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
max_per_ip=2
log_ftp_protocol=YES
idle_session_timeout=30
data_connection_timeout=75
accept_timeout=15
connect_timeout=15
anon_max_rate=2621440

Вот proftpd, это уже с использованием "ProFtpd по-русски. Изменение кодировки koi8->win1251 на лету" - http://www.opennet.me/base/patch/rus_proftpd.txt.html, но в принципе и без патча было также.

CharsetLocal KOI8-R
CharsetRemote CP1251
ServerName            "ProFTPD Default Installation"
ServerType            standalone
DefaultServer            on
Port                21
Umask                000
MaxInstances            30
User                nobody
Group                nogroup
AllowOverwrite        on
<Limit SITE_CHMOD>
  DenyAll
</Limit>
<Anonymous ~ftp>
  User                ftp
  Group                ftp
  UserAlias            anonymous ftp
  MaxClients            10
  DisplayLogin            welcome.msg
  DisplayFirstChdir        .message
  <Limit WRITE>
    AllowAll
  </Limit>
</Anonymous>


"Проблемы всех ftp серевров в *nix"
Отправлено redmoon , 03-Мрт-06 11:12 
вот что касается профтпд, у меня тоже самое, примерно, но только без
CharsetLocal KOI8-R
CharsetRemote CP1251
локаль ОС перебита на сп-1251

"Проблемы всех ftp серевров в *nix"
Отправлено dimus , 06-Мрт-06 09:20 
Русская буква я в кодировке АНСИ1251 имеет код 255. Этот же код имеет символ EOF. Если программист использует проверку на этот символ, вместо того, чтобы проверять флаг закрытия при помощи, например, feof, то первая же русская буква я будет и последней :) Цитата из мана:

RETURN VALUE
       fgetc(), getc() and getchar() return the character read as
       an  unsigned  char cast to an int or EOF on end of file or
       error.

Очень похоже, что мы тут имеем именно такой случай.