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

Исходное сообщение
"Глюки с ProFTPd 1.2.9"

Отправлено Heretic2 , 14-Янв-06 02:56 
Вот файл proftpd.conf:
# This is a basic ProFTPD configuration file (rename it to
# 'proftpd.conf' for actual use.  It establishes a single server
# and a single anonymous login.  It assumes that you have a user/group
# "nobody" and "ftp" for normal operation and anon.

ServerName            "FTP server"
ServerType            standalone
DefaultServer            on

# Allow FTP resuming.
# Remember to set to off if you have an incoming ftp for upload.
AllowStoreRestart        on

# Port 21 is the standard FTP port.
Port                21

# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask                002

# To prevent DoS attacks, set the maximum number of child processes
# to 30.  If you need to allow more than 30 concurrent connections
# at once, simply increase this value.  Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd).
MaxInstances            30

# Set the user and group under which the server will run.
User                nobody
Group                nogroup
AuthUserFile    /etc/ftpconf/passwd
AuthGroupFile    /etc/ftpconf/group


# To cause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
DefaultRoot ~

# Normally, we want files to be overwriteable.
<Directory />
AllowOverwrite        on
</Directory>

# Needed for NIS.

PersistentPasswd              off

# Default root can be used to put users in a chroot environment.
# As an example if you have a user foo and you want to put foo in /home/foo
# chroot environment you would do this:
#
# DefaultRoot /home/foo foo

<Directory /*>
  <Limit LOGIN READ STOR WRITE>
    order allow,deny
    Deny from all    
    </Limit>
</Directory>


<Directory /var/www>
    <Limit LOGIN READ STOR WRITE>
    Allowuser user1
    </Limit>
</Directory>

но почему-то авторизация пользователей не идёт через файл: /etc/ftpconf/passwd , а используется обычный /etc/passwd. В чём проблема, как мне настрить так чтобы пользователи брались из мною созданного файла?


Содержание

Сообщения в этом обсуждении
"Глюки с ProFTPd 1.2.9"
Отправлено crash , 14-Янв-06 08:38 
наверное почитать тhttp://www.proftpd.org/localsite/Userguide/linked/c572.html

"Глюки с ProFTPd 1.2.9"
Отправлено Жека , 14-Янв-06 09:52 
А если временно убрать /etc/passwd и при запуске, и в логах proftpd посмотреть на его ругань, может станет понятней, с чего он решил оттуда брать авторизацию? К тому же в документации написано, что альтернативный файл passwd должен иметь такой же формат, как и оригинальный. Но в оригинальном passwd ведь нет хэшей паролей, так что может быть proftpd в любом случае обращается к shadow за логинами-паролями, беря права-настройки пользователей из альтернативных файлов. Или по крайней мере попытаться создать ещё альтернативный shadow в том же каталоге, что и альтернативные, - может "возьмёт".

"Глюки с ProFTPd 1.2.9"
Отправлено Heretic2 , 14-Янв-06 13:33 
>А если временно убрать /etc/passwd и при запуске, и в логах proftpd
>посмотреть на его ругань, может станет понятней, с чего он решил
>оттуда брать авторизацию? К тому же в документации написано, что альтернативный
>файл passwd должен иметь такой же формат, как и оригинальный. Но
>в оригинальном passwd ведь нет хэшей паролей, так что может быть
>proftpd в любом случае обращается к shadow за логинами-паролями, беря права-настройки
>пользователей из альтернативных файлов. Или по крайней мере попытаться создать ещё
>альтернативный shadow в том же каталоге, что и альтернативные, - может
>"возьмёт".
временно переименовал passwd, ProFTP не запустился и написал: "Unable to open /etc/passwd for reading: No such file or directory"


"Глюки с ProFTPd 1.2.9"
Отправлено lavr , 14-Янв-06 14:59 
>>А если временно убрать /etc/passwd и при запуске, и в логах proftpd
>>посмотреть на его ругань, может станет понятней, с чего он решил
>>оттуда брать авторизацию? К тому же в документации написано, что альтернативный
>>файл passwd должен иметь такой же формат, как и оригинальный. Но
>>в оригинальном passwd ведь нет хэшей паролей, так что может быть
>>proftpd в любом случае обращается к shadow за логинами-паролями, беря права-настройки
>>пользователей из альтернативных файлов. Или по крайней мере попытаться создать ещё
>>альтернативный shadow в том же каталоге, что и альтернативные, - может
>>"возьмёт".
>временно переименовал passwd, ProFTP не запустился и написал: "Unable to open /etc/passwd
>for reading: No such file or directory"

1. посмотреть с поддержкой КАКИХ модулей нужно собирать proftpd
# proftpd -l | grep mod_auth_file.c

2. Если собран как надо:
- почитать про AuthUserFile и AuthOrder

3. Обращать внимание на RequireValidShell off

Ну и как обычно: man proftpd

# proftpd -n -d уровень_отладки -c /path/proftpd.conf


"Глюки с ProFTPd 1.2.9"
Отправлено Heretic2 , 15-Янв-06 18:19 
>1. посмотреть с поддержкой КАКИХ модулей нужно собирать proftpd
># proftpd -l | grep mod_auth_file.c
ьщв_фгер_ашдуюс
>2. Если собран как надо:
>- почитать про AuthUserFile и AuthOrder
почитал все должно работать, а не работает
>3. Обращать внимание на RequireValidShell off
так и сделал


как мне сделать так, чтобы на ФТП могли логинится тольео те юзеры которые я указал (пусть даже из стандартого /etc/passwd), т.е. мне нужен файл типа /etc/ftpusers только который содержит спивок тех кого можно логинить.


"Глюки с ProFTPd 1.2.9"
Отправлено lavr , 15-Янв-06 18:35 
>>1. посмотреть с поддержкой КАКИХ модулей нужно собирать proftpd
>># proftpd -l | grep mod_auth_file.c
>ьщв_фгер_ашдуюс
>>2. Если собран как надо:
>>- почитать про AuthUserFile и AuthOrder
>почитал все должно работать, а не работает
>>3. Обращать внимание на RequireValidShell off
>так и сделал
>
>
>как мне сделать так, чтобы на ФТП могли логинится тольео те юзеры
>которые я указал (пусть даже из стандартого /etc/passwd), т.е. мне нужен
>файл типа /etc/ftpusers только который содержит спивок тех кого можно логинить.
>
>

какой еще ftpusers?!

какая OS?
proftpd собран с PAM? pam директивы для proftpd добавлены в pam?
Откуда вы берете проблемы на пустом месте? proftpd с дебагом ну все
показывает.


"Глюки с ProFTPd 1.2.9"
Отправлено Heretic2 , 15-Янв-06 19:09 
>>>1. посмотреть с поддержкой КАКИХ модулей нужно собирать proftpd
>>># proftpd -l | grep mod_auth_file.c
>>ьщв_фгер_ашдуюс
>>>2. Если собран как надо:
>>>- почитать про AuthUserFile и AuthOrder
>>почитал все должно работать, а не работает
>>>3. Обращать внимание на RequireValidShell off
>>так и сделал
>>
>>
>>как мне сделать так, чтобы на ФТП могли логинится тольео те юзеры
>>которые я указал (пусть даже из стандартого /etc/passwd), т.е. мне нужен
>>файл типа /etc/ftpusers только который содержит спивок тех кого можно логинить.
>>
>>
>
>какой еще ftpusers?!
>
>какая OS?
>proftpd собран с PAM? pam директивы для proftpd добавлены в pam?
>Откуда вы берете проблемы на пустом месте? proftpd с дебагом ну все
>
>показывает.
Вот дебаг лог:
proftpd -n -d9
- parsing '/etc/proftpd.conf' configuration
- FS: using system open()
- FS: using system read()
- FS: using system read()
- dispatching auth request "getpwnam" to module mod_radius
- dispatching auth request "getpwnam" to module mod_ldap
- dispatching auth request "getpwnam" to module mod_auth_file
- dispatching auth request "getpwnam" to module mod_auth_unix
- dispatching auth request "getgrnam" to module mod_radius
- dispatching auth request "getgrnam" to module mod_ldap
- dispatching auth request "getgrnam" to module mod_auth_file
- dispatching auth request "getgrnam" to module mod_auth_unix
- FS: using system stat()
- FS: using system open()
- FS: using system close()
- FS: using system stat()
- FS: using system open()
- FS: using system close()
- <Directory />: adding section for resolved path '/'
- <Directory /*>: adding section for resolved path '/*'
- <Directory /var/www>: adding section for resolved path '/var/www'
- FS: using system read()
- FS: using system read()
- FS: using system close()
serverdft -
serverdft - Config for HeretiX FTP:
serverdft - /
serverdft -  /*
serverdft -   /var/www
serverdft -    Limit
serverdft -     Order
serverdft -     AllowUser
serverdft -    AllowOverwrite
serverdft -    AllowStoreRestart
serverdft -    Umask
serverdft -    TCPAccessFiles
serverdft -    RequireValidShell
serverdft -   Limit
serverdft -    Order
serverdft -    Deny
serverdft -   AllowOverwrite
serverdft -   AllowStoreRestart
serverdft -   Umask
serverdft -   TCPAccessFiles
serverdft -   RequireValidShell
serverdft -  AllowOverwrite
serverdft -  AllowStoreRestart
serverdft -  Umask
serverdft -  TCPAccessFiles
serverdft -  RequireValidShell
serverdft - DefaultServer
serverdft - AllowStoreRestart
serverdft - Umask
serverdft - UserID
serverdft - UserName
serverdft - GroupID
serverdft - GroupName
serverdft - TCPAccessFiles
serverdft - RequireValidShell
serverdft - DefaultRoot
serverdft - AuthUserFile
serverdft - AuthGroupFile
serverdft - dispatching auth request "getgroups" to module mod_radius
serverdft - dispatching auth request "getgroups" to module mod_ldap
serverdft - dispatching auth request "getgroups" to module mod_auth_file
serverdft - dispatching auth request "getgroups" to module mod_auth_unix
serverdft - SETUP PRIVS at main.c:2704
serverdft - ROOT PRIVS at main.c:1956
serverdft - RELINQUISH PRIVS at main.c:1962
serverdft - ROOT PRIVS at main.c:2323
serverdft - opening scoreboard '/var/run/proftpd/proftpd.scoreboard'
serverdft - RELINQUISH PRIVS at main.c:2347
serverdft - ROOT PRIVS at inet.c:452
serverdft - RELINQUISH PRIVS at inet.c:510
serverdft - ProFTPD 1.2.9 (stable) (built Thu Nov 20 16:14:14 CET 2003) standalone mode STARTUP
serverdft - ROOT PRIVS at main.c:2171
serverdft - RELINQUISH PRIVS at main.c:2177
serverdft - FS: using system lstat()
serverdft - scrubbing scoreboard
serverdft - ROOT PRIVS at mod_core.c:194
serverdft - RELINQUISH PRIVS at mod_core.c:201
serverdft - ROOT PRIVS at mod_core.c:223
serverdft - RELINQUISH PRIVS at mod_core.c:251
serverdft - FS: using system lstat()
serverdft - FS: using system lstat()
serverdft - scrubbing scoreboard
serverdft - ROOT PRIVS at mod_core.c:194
serverdft - RELINQUISH PRIVS at mod_core.c:201
serverdft - ROOT PRIVS at mod_core.c:223
serverdft - RELINQUISH PRIVS at mod_core.c:251
serverdft - FS: using system lstat()


serverdft (hydra[serverdft.hertw.ru]) - FS: using system lstat()
serverdft (hydra[serverdft.hertw.ru]) - FS: using system stat()
serverdft (hydra[serverdft.hertw.ru]) - FS: using system stat()
serverdft (hydra[serverdft.hertw.ru]) - dispatching auth request "gid_name" to module mod_radius
serverdft (hydra[serverdft.hertw.ru]) - dispatching auth request "gid_name" to module mod_ldap
serverdft (hydra[serverdft.hertw.ru]) - dispatching auth request "gid_name" to module mod_auth_file
serverdft (hydra[serverdft.hertw.ru]) - mod_auth_file/0.8.2: using group file '/etc/ftpconf/group'
serverdft (hydra[serverdft.hertw.ru]) - dispatching auth request "uid_name" to module mod_radius
serverdft (hydra[serverdft.hertw.ru]) - dispatching auth request "uid_name" to module mod_ldap
serverdft (hydra[serverdft.hertw.ru]) - dispatching auth request "uid_name" to module mod_auth_file
serverdft (hydra[serverdft.hertw.ru]) - mod_auth_file/0.8.2: using passwd file '/etc/ftpconf/passwd'


пишет, что использует файл '/etc/ftpconf/passwd' а логинит юзеров только из /etc/passwd !!!



"Глюки с ProFTPd 1.2.9"
Отправлено lavr , 15-Янв-06 19:14 
>пишет, что использует файл '/etc/ftpconf/passwd' а логинит юзеров только из /etc/passwd !!!
>

значит ЛИБО настройки кривые, ЛИБО /etc/ftpconf/passwd кривой



"Глюки с ProFTPd 1.2.9"
Отправлено Heretic2 , 15-Янв-06 20:22 
>значит ЛИБО настройки кривые, ЛИБО /etc/ftpconf/passwd кривой
я копирнул /etc/passwd и просто удалил всех юзеров, кроме одного и заменил ему имя на другое.

"Глюки с ProFTPd 1.2.9"
Отправлено lavr , 16-Янв-06 11:56 
>>значит ЛИБО настройки кривые, ЛИБО /etc/ftpconf/passwd кривой
>я копирнул /etc/passwd и просто удалил всех юзеров, кроме одного и заменил
>ему имя на другое.

голова человеку нужна чтобы думать, в том файле который вы "копирнули"
есть криптованные пароли, ну типа:

lavr:$1$crLorUin$c5cCFzibCaMPhjkSiLDR/:2000:100:russian:0:0:Andrey Lavrentyev:/home/lavr:/bin/bash

типа того, где первое поле это имя пользователя, а второе - криптованный
пароль:

user|pass|etc...
----------------
lavr:пароль:...

думаю это поможет


"Глюки с ProFTPd 1.2.9"
Отправлено magr , 16-Янв-06 12:31 
>
>lavr:$1$crLorUin$c5cCFzibCaMPhjkSiLDR/:2000:100:russian:0:0:Andrey Lavrentyev:/home/lavr:/bin/bash
>

Эта строка - некий аналог chmod 644 /etc/master.passwd
Вы не верите в существующие средства подбора?


"Глюки с ProFTPd 1.2.9"
Отправлено lavr , 16-Янв-06 13:22 
>>
>>lavr:$1$crLorUin$c5cCFzibCaMPhjkSiLDR/:2000:100:russian:0:0:Andrey Lavrentyev:/home/lavr:/bin/bash
>>
>
>Эта строка - некий аналог chmod 644 /etc/master.passwd

это всего лишь строка и никакого chmod у нее БЫТЬ НЕ МОЖЕТ,
если речь об аналоге passwd для proftpd, то он должен быть 600 (/etc/ftpconf/passwd или где он там...)

>Вы не верите в существующие средства подбора?

это ко мне вопрос?


"Глюки с ProFTPd 1.2.9"
Отправлено magr , 16-Янв-06 13:53 
>>>
>>>lavr:$1$crLorUin$c5cCFzibCaMPhjkSiLDR/:2000:100:russian:0:0:Andrey Lavrentyev:/home/lavr:/bin/bash
>>>
>>
>>Эта строка - некий аналог chmod 644 /etc/master.passwd
>
>это всего лишь строка и никакого chmod у нее БЫТЬ НЕ МОЖЕТ,
>
...
>>Вы не верите в существующие средства подбора?
>
>это ко мне вопрос?

Видимо я выражался слишком неформально, а вы воспринимали слишком буквально.  Chmod - аналогия лишь в том смысле, что вы сделали отквотированную строку видимой всем посетителям форума.

Вообще, имелось в виду, что пароли, пусть даже криптованные, на общее обозрение не принято выкладывать. Поскольку я уверен, что вам это отлично известно, то и спросил про отношение с существующим утилитам подбора паролей.


"Глюки с ProFTPd 1.2.9"
Отправлено lavr , 16-Янв-06 14:18 
>>>>
>>>>lavr:$1$crLorUin$c5cCFzibCaMPhjkSiLDR/:2000:100:russian:0:0:Andrey Lavrentyev:/home/lavr:/bin/bash
>>>>
>>>
>>>Эта строка - некий аналог chmod 644 /etc/master.passwd
>>
>>это всего лишь строка и никакого chmod у нее БЫТЬ НЕ МОЖЕТ,
>>
>...
>>>Вы не верите в существующие средства подбора?
>>
>>это ко мне вопрос?
>
>Видимо я выражался слишком неформально, а вы воспринимали слишком буквально.  Chmod
>- аналогия лишь в том смысле, что вы сделали отквотированную строку
>видимой всем посетителям форума.
>
>Вообще, имелось в виду, что пароли, пусть даже криптованные, на общее обозрение
>не принято выкладывать. Поскольку я уверен, что вам это отлично известно,
>то и спросил про отношение с существующим утилитам подбора паролей.

конечно же я выложил НЕ ОРИГИНАЛ, тут и речи быть не может.


"Глюки с ProFTPd 1.2.9"
Отправлено lavr , 16-Янв-06 13:20 
>>>значит ЛИБО настройки кривые, ЛИБО /etc/ftpconf/passwd кривой
>>я копирнул /etc/passwd и просто удалил всех юзеров, кроме одного и заменил
>>ему имя на другое.
>
>голова человеку нужна чтобы думать, в том файле который вы "копирнули"
>есть криптованные пароли, ну типа:

подразумевался вопрос: в том файле которые вы копирнули - ЕСТЬ
криптованные пароли? (а они там должны быть)

>lavr:$1$crLorUin$c5cCFzibCaMPhjkSiLDR/:2000:100:russian:0:0:Andrey Lavrentyev:/home/lavr:/bin/bash
>
>типа того, где первое поле это имя пользователя, а второе - криптованный
>
>пароль:
>
>user|pass|etc...
>----------------
>lavr:пароль:...
>
>думаю это поможет


"Глюки с ProFTPd 1.2.9"
Отправлено Heretic2 , 16-Янв-06 17:49 
>подразумевался вопрос: в том файле которые вы копирнули - ЕСТЬ
>криптованные пароли? (а они там должны быть)
добавил криптованые пароли, заработало,
но теперь он логинит и юзеров из /etc/passwd/ и /etc/ftpconf/passwd. Как мне сделать, чтобы использовался только /etc/ftpconf/passwd ?

"Глюки с ProFTPd 1.2.9"
Отправлено ThunderZONE , 10-Авг-07 18:35 
>>подразумевался вопрос: в том файле которые вы копирнули - ЕСТЬ
>>криптованные пароли? (а они там должны быть)
>добавил криптованые пароли, заработало,
>но теперь он логинит и юзеров из /etc/passwd/ и /etc/ftpconf/passwd. Как мне
>сделать, чтобы использовался только /etc/ftpconf/passwd ?

AuthPAM по умолчанию стоит в on поэтому он проверяет и /etc/passwd/
ставим
AuthPAM off
теперь он их не будет проверять