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

Исходное сообщение
"Хочу писать в папку по ftp"

Отправлено saib , 08-Июн-05 12:53 
Есть поднятый ftpd под freebsd
Но никак не получается по ftp писать ни в домашнюю папку пользователя
ни в папку /var/ftp/incoming анонимно
хотя на папку права выставил
    chmod 1777 /var/ftp/incoming

Бьюсь и топчусь на месте ...


Содержание

Сообщения в этом обсуждении
"Хочу писать в папку по ftp"
Отправлено saib , 08-Июн-05 14:16 
Народ, кто знает
Если кто знает откликнитесь PLEASE !!!
Такая же свистопляска с vsftpd и proftpd

"Хочу писать в папку по ftp"
Отправлено jb , 08-Июн-05 14:28 
>Народ, кто знает
>Если кто знает откликнитесь PLEASE !!!
>Такая же свистопляска с vsftpd и proftpd

А что с правами на папки?


"Хочу писать в папку по ftp"
Отправлено saib , 08-Июн-05 14:56 
На папки для анонимного пользователя и всех остальных предоставлены полные права на /var/ftp
На домашние папки пользователей аналогично
Причем на папку /var/ftp/incoming выставлен sticky bit

"Хочу писать в папку по ftp"
Отправлено jb , 08-Июн-05 15:48 
А access и xfer лог ведется? Если да, то что там пишется?
Может фтпшник чего говорит в /var/log/messages ?



"Хочу писать в папку по ftp"
Отправлено saib , 08-Июн-05 16:11 
Вот что пишет proftpd в режиме отладки при попытке записать в папку /var/ftp/incoming

/usr/local/libexec/proftpd -d 9 -n -c /usr/local/etc/proftpd.conf

tm     dispatching CMD command 'PORT 172,16,0,8,22,31' to mod_core    
tm     FS: using system stat()    
tm     AllowOverride allows all .ftpaccess files    
tm     FS: using system stat()    
tm     dispatching LOG_CMD command 'PORT 172,16,0,8,22,31' to mod_log    
tm     dispatching PRE_CMD command 'TYPE A' to mod_core    
tm     dispatching PRE_CMD command 'TYPE A' to mod_core    
tm     dispatching CMD command 'TYPE A' to mod_xfer    
tm     dispatching LOG_CMD command 'TYPE A' to mod_log    
tm     dispatching PRE_CMD command 'LIST' to mod_core    
tm     dispatching PRE_CMD command 'LIST' to mod_core    
tm     dispatching PRE_CMD command 'LIST' to mod_ratio    
tm     dispatching CMD command 'LIST' to mod_ls    
tm     ROOT PRIVS at inet.c:243    
tm     RELINQUISH PRIVS at inet.c:259    
tm     ROOT PRIVS at inet.c:322    
tm     RELINQUISH PRIVS at inet.c:380    
tm     active data connection opened      local  : 172.16.0.60:20
tm     active data connection opened      remote : 172.16.0.8:5663
tm     FS: using system stat()    
tm     AllowOverride allows all .ftpaccess files    
tm     FS: using system stat()    
tm     FS: using system stat()    
tm     FS: using system opendir()    
tm     FS: using system readdir()    
tm     FS: using system readdir()    
tm     FS: using system readdir()    
tm     FS: using system readdir()    
tm     FS: using system closedir()    
tm     dispatching POST_CMD command 'LIST' to mod_ratio    
tm     dispatching LOG_CMD command 'LIST' to mod_log    
tm     dispatching LOG_CMD command 'LIST' to mod_ls    
tm     dispatching PRE_CMD command 'TYPE I' to mod_core    
tm     dispatching PRE_CMD command 'TYPE I' to mod_core    
tm     dispatching CMD command 'TYPE I' to mod_xfer    
tm     dispatching LOG_CMD command 'TYPE I' to mod_log    
tm     dispatching auth request "endpwent" to module mod_auth_file    
tm     dispatching auth request "endpwent" to module mod_auth_unix    
tm     dispatching auth request "endgrent" to module mod_auth_file    
tm     dispatching auth request "endgrent" to module mod_auth_unix    
tm     FTP session closed.    


"Хочу писать в папку по ftp"
Отправлено lavr , 08-Июн-05 15:58 
>Есть поднятый ftpd под freebsd
>Но никак не получается по ftp писать ни в домашнюю папку пользователя
>
>ни в папку /var/ftp/incoming анонимно
>хотя на папку права выставил
>    chmod 1777 /var/ftp/incoming
>
>Бьюсь и топчусь на месте ...

а прочитать man ftpd уже не судьба?

Собственно есть переведенные FAQ'и по wuftpd и proftpd, многое для ПОНИМАНИЯ
можно оттуда почерпнуть, хотя как и сказано выше НУ ВСЕ есть в: man ftpd


"Хочу писать в папку по ftp"
Отправлено saib , 08-Июн-05 16:13 
Смотрел в man и черт еще знает куда, настраиваю все по правилам,
также попробовал использовать .ftpaccess:

<Directory incoming>
AllowStoreRestart on # - [ OOOAllowOverwrite on # - [  ]@] <Limit STOR MKD RNTO>
AllowAll
</Limit>
<Limit ALL>
Order Allow,Allow
Allow from 172.16.0.8
AllowAll
</Limit>
</Directory>


"Хочу писать в папку по ftp"
Отправлено lavr , 08-Июн-05 16:22 
>Смотрел в man и черт еще знает куда, настраиваю все по правилам,
>
>также попробовал использовать .ftpaccess:
>
><Directory incoming>
>AllowStoreRestart on # - [ OOOAllowOverwrite on # - [  ]@] <Limit STOR MKD RNTO>
>AllowAll
></Limit>
><Limit ALL>
>Order Allow,Allow
>Allow from 172.16.0.8
>AllowAll
></Limit>
></Directory>


определись сперва О ЧЕМ будешь вести речь:

- родной ftpd
- vsftpd
- proftpd

после чего выдай:

# grep ftp /etc/passwd
# ls -la ~ftp
# cat файл-конфигурации (если есть)

дальше можно будет говорить, ну и почитай:
http://unix1.jinr.ru/~lavr/


"Хочу писать в папку по ftp"
Отправлено saib , 08-Июн-05 16:53 
В качестве демона - proftpd

grep ftp /etc/passwd:
ftp:*:14:5:Anonymous FTP Admin:/var/ftp:/bin/sh

ls -la ~ftp
dr-xr-xr-x   8 ftp   operator   512 Jun  7 14:39 .
drwxr-xr-x  24 root  wheel      512 Jun  8 14:15 ..
drwxrwxrwx   2 ftp   operator  1024 Jun  7 14:28 bin
drwxrwxrwx   2 ftp   operator   512 Jun  7 14:40 dev
drwxrwxrwx   2 ftp   operator   512 Jun  7 16:08 etc
drwxrwxrwt   2 ftp   operator   512 Jun  8 16:35 incoming
drwxrwxrwx   2 ftp   operator   512 Jun  7 14:38 lib
drwxrwxrwx   2 ftp   operator   512 Jun  7 13:20 pub

cat /usr/local/etc/proftpd.conf

ServerName                      "ProFTPD Default Installation"
ServerType                      standalone
DefaultServer                   on
AllowOverride                   on
Port                            21
Umask                           022
MaxInstances                    30
User                            ftp
Group                           operator

DefaultRoot ~

AllowOverwrite          on
<Limit SITE_CHMOD>
  AllowAll
</Limit>

<Anonymous ~ftp>
   User                         ftp
   Group                        operator

AllowOverride                   on

  UserAlias                     anonymous ftp
   <Limit ALL>
     AllowAll
   </Limit>
</Anonymous>


"Хочу писать в папку по ftp"
Отправлено lavr , 08-Июн-05 17:05 
>В качестве демона - proftpd
>
>grep ftp /etc/passwd:
>ftp:*:14:5:Anonymous FTP Admin:/var/ftp:/bin/sh

ну и нахрена SHELL=/bin/sh для username=ftp

>ls -la ~ftp
>dr-xr-xr-x   8 ftp   operator   512 Jun
> 7 14:39 .
>drwxr-xr-x  24 root  wheel      512
>Jun  8 14:15 ..
>drwxrwxrwx   2 ftp   operator  1024 Jun  
>7 14:28 bin
>drwxrwxrwx   2 ftp   operator   512 Jun
> 7 14:40 dev
>drwxrwxrwx   2 ftp   operator   512 Jun
> 7 16:08 etc

на кой фик для proftpd делать директории bin,dev,etc,lib?!
да еще с таким жутким (мягко сказано) chmod=777?! это кто ж такое
посоветовал?

>drwxrwxrwt   2 ftp   operator   512 Jun
> 8 16:35 incoming
>drwxrwxrwx   2 ftp   operator   512 Jun
> 7 14:38 lib
>drwxrwxrwx   2 ftp   operator   512 Jun
> 7 13:20 pub
>
>cat /usr/local/etc/proftpd.conf
>
>ServerName            
>          "ProFTPD
>Default Installation"
>ServerType            
>          standalone
>
>DefaultServer            
>       on
>AllowOverride            
>       on
>Port            
>          
>     21
>Umask            
>          
>    022
>MaxInstances            
>        30
>User            
>          
>     ftp
>Group            
>          
>    operator
>
>DefaultRoot ~
>
>AllowOverwrite          on
><Limit SITE_CHMOD>
>  AllowAll
></Limit>
>
><Anonymous ~ftp>
>   User        
>          
>     ftp
>   Group        
>          
>    operator
>
>AllowOverride            
>       on

Override?

>  UserAlias          
>          
>anonymous ftp
>   <Limit ALL>
>     AllowAll
>   </Limit>
></Anonymous>

и что proftpd запускается с синтаксическими ошибками в конфиге?
Какая OS?


"Хочу писать в папку по ftp"
Отправлено saib , 08-Июн-05 17:17 
>>В качестве демона - proftpd
>>
>>grep ftp /etc/passwd:
>>ftp:*:14:5:Anonymous FTP Admin:/var/ftp:/bin/sh
>
>ну и нахрена SHELL=/bin/sh для username=ftp
Это можно и убрать
>
>>ls -la ~ftp
>>dr-xr-xr-x   8 ftp   operator   512 Jun
>> 7 14:39 .
>>drwxr-xr-x  24 root  wheel      512
>>Jun  8 14:15 ..
>>drwxrwxrwx   2 ftp   operator  1024 Jun  
>>7 14:28 bin
>>drwxrwxrwx   2 ftp   operator   512 Jun
>> 7 14:40 dev
>>drwxrwxrwx   2 ftp   operator   512 Jun
>> 7 16:08 etc
>
>на кой фик для proftpd делать директории bin,dev,etc,lib?!
>да еще с таким жутким (мягко сказано) chmod=777?! это кто ж такое
>посоветовал?

Это когда уже ничто не помогало решил пойти на страшное :-)

>
>>drwxrwxrwt   2 ftp   operator   512 Jun
>> 8 16:35 incoming
>>drwxrwxrwx   2 ftp   operator   512 Jun
>> 7 14:38 lib
>>drwxrwxrwx   2 ftp   operator   512 Jun
>> 7 13:20 pub
>>
>>cat /usr/local/etc/proftpd.conf
>>
>>ServerName            
>>          "ProFTPD
>>Default Installation"
>>ServerType            
>>          standalone
>>
>>DefaultServer            
>>       on
>>AllowOverride            
>>       on
>>Port            
>>          
>>     21
>>Umask            
>>          
>>    022
>>MaxInstances            
>>        30
>>User            
>>          
>>     ftp
>>Group            
>>          
>>    operator
>>
>>DefaultRoot ~
>>
>>AllowOverwrite          on
>><Limit SITE_CHMOD>
>>  AllowAll
>></Limit>
>>
>><Anonymous ~ftp>
>>   User        
>>          
>>     ftp
>>   Group        
>>          
>>    operator
>>
>>AllowOverride            
>>       on
>
>Override?

Привожу /var/log/incoming/.ftpaccess

<Directory incoming/*>
# Normally, we want files to be overwriteable.
    AllowOverwrite                on
    Umask 000
<Limit READ DIRS>
    AllowAll
</Limit>
<Limit STOR MKD RMD>
  AllowAll
</Limit>

</Directory>

>
>>  UserAlias          
>>          
>>anonymous ftp
>>   <Limit ALL>
>>     AllowAll
>>   </Limit>
>></Anonymous>
>
>и что proftpd запускается с синтаксическими ошибками в конфиге?
>Какая OS?
Ошибок в конфиге нет

Все это работает под freebsd 5.3


"Хочу писать в папку по ftp"
Отправлено saib , 08-Июн-05 17:36 
Да но это не значит что я могу писать в папку /var/ftp/incoming, проблема то не исчерпана ...

"Хочу писать в папку по ftp"
Отправлено lavr , 08-Июн-05 17:49 
>Да но это не значит что я могу писать в папку /var/ftp/incoming,
>проблема то не исчерпана ...

убери для начала ftpaccess из incoming'а и разреши в ~ftp (anonymous то бишь) ВСЕ, upload должен работать, разумеется убери из ~ftp umask...
Сперва добейся чтобы под ftp/anonymous все работало: download & upload,
потом начинай ваять ограничения. "Разделяй и Властвуй"


"Хочу писать в папку по ftp"
Отправлено saib , 08-Июн-05 17:55 
>>Да но это не значит что я могу писать в папку /var/ftp/incoming,
>>проблема то не исчерпана ...
>
>убери для начала ftpaccess из incoming'а

Это легко

и разреши в ~ftp (anonymous то
>бишь) ВСЕ, upload должен работать,

Здесь, если можно поподробнее

разумеется убери из ~ftp umask...

что значит убери umask, его там и нет ???

>Сперва добейся чтобы под ftp/anonymous все работало: download & upload,
>потом начинай ваять ограничения. "Разделяй и Властвуй"



"Хочу писать в папку по ftp"
Отправлено lavr , 08-Июн-05 19:54 
>>>Да но это не значит что я могу писать в папку /var/ftp/incoming,
>>>проблема то не исчерпана ...
>>
>>убери для начала ftpaccess из incoming'а
>
>Это легко
>
>и разреши в ~ftp (anonymous то
>>бишь) ВСЕ, upload должен работать,
>
>Здесь, если можно поподробнее
>
>разумеется убери из ~ftp umask...
>
>что значит убери umask, его там и нет ???
>
>>Сперва добейся чтобы под ftp/anonymous все работало: download & upload,
>>потом начинай ваять ограничения. "Разделяй и Властвуй"

значит нижнее я сам выдумал:
---------------------------- quote --------------------------------
Привожу /var/log/incoming/.ftpaccess

<Directory incoming/*>
# Normally, we want files to be overwriteable.
    AllowOverwrite                on
    Umask 000
<Limit READ DIRS>
    AllowAll
</Limit>
<Limit STOR MKD RMD>
  AllowAll
</Limit>

</Directory>
---------------------- end of quote ----------------------------------

убери из incoming ВСЕ, потом начинай добавлять, когда-то у меня были
проблемы с нотацией "path/*" какие - не помню.
В любом случае принцип "Разделяй и властвуй" РУЛИТ.


"Хочу писать в папку по ftp"
Отправлено saib , 09-Июн-05 09:20 
Упростли .ftpaccess
<Directory incoming/>
# Normally, we want files to be overwriteable.
  AllowOverwrite                on
</Directory>

На что в режиме отладки proftpd сказал:

[172.16.0.8]) - warning: <Directory>: directive not allowed in .ftpaccess context on line 1 of '/incoming/.ftpaccess'
[172.16.0.8]) - warning: </Directory>: directive not allowed in .ftpaccess context on line 4 of '/incoming/.ftpaccess'
[172.16.0.8]) - FS: using system read()
[172.16.0.8]) - dynamic configuration added/updated for /var/ftp/incoming
[172.16.0.8]) - FS: using system close()


"Хочу писать в папку по ftp"
Отправлено lavr , 09-Июн-05 10:52 
>Упростли .ftpaccess
><Directory incoming/>
># Normally, we want files to be overwriteable.
>  AllowOverwrite          
>      on
></Directory>
>
>На что в режиме отладки proftpd сказал:
>
>[172.16.0.8]) - warning: <Directory>: directive not allowed in .ftpaccess context on line 1 of '/incoming/.ftpaccess'
>[172.16.0.8]) - warning: </Directory>: directive not allowed in .ftpaccess context on line 4 of '/incoming/.ftpaccess'
>[172.16.0.8]) - FS: using system read()
>[172.16.0.8]) - dynamic configuration added/updated for /var/ftp/incoming
>[172.16.0.8]) - FS: using system close()


читать умеешь?


"Хочу писать в папку по ftp"
Отправлено saib , 09-Июн-05 11:14 
В итоге проблема разрешилась

Дело было в клиенте,
на котором работал msfirewall клиент
и запрещал по ftp отправлять данные на сервер