 |
 |
Форум сетевых администраторов » Операционные системы » Linux » Vsftpd
| Автор |
| Тема |
 |
|
 |
|
|
|
Незнайка


Зарегистрирован: Nov 2001
Место проживания: Mосква
Публикаций: 539
Статус:  |
Vsftpd - ftp daemon server. Собственно вопрос простой, где бы взять документацию полноценную, желательно на русском, на официальном сайте, что то я ну никак не найду документации хотя бы по поводу дополнения юзеров. Может быть плохо смотрю. Если кому не трудно то киньте плиз линки на предмет приличного манула к этому "зверю".
__________________
Functional Upgraded Construct Kernel for Offensive and Faultless Fighting
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
08-12-2002 13:30 |
|
|


НеУчаcтник+
|
[quote]
Если же вам необходим надёжный, защищённый... |
[сооб. #28833]
11-12-2002 14:08 |
|
НеУчаcтник+


Зарегистрирован: Mar 2002
Место проживания:
Публикаций: 270
Статус:  |
quote:
Если же вам необходим надёжный, защищённый и одновременно чрезвычайно быстрый и масштабируемый FTP-сервер, предоставляющий не только анонимный доступ к ресурсам вашего сервера, но и доступ локально зарегистрированным пользователям, то вам безусловно понадобится более серьёзное средство, такое как vsftpd. Примером такого использования может послужить серверный пул ftp.redhat.com, обрабатывающий по 15000 соединений одновременно.
Что же придаёт ему такую популярность? Во-первых, конечно же безопасность работы. Каждая строка его кода неоднократно подвергалась самым жестким проверкам со стороны специалистов в вопросах безопасности. Другой стороной его привлекательности безусловно является простота и гибкость настройки. Все необходимые настройки осуществляются путем редактирования единственного конфигурационного файла /etc/vsftpd.conf.
В целях безопасности сервер по умолчанию сконфигурирован для предоставления только анонимного доступа. Запрещены любые команды записи. От администратора требуется только указать при помощи директивы nopriv_user имя пользователя, которое vsftpd будет использовать для организации безопасных соединений. Ð_то должен быть абсолютно изолированный и лишённый каких-либо привилегий пользователь.
Для предоставления доступа к FTP-серверу локально зарегистрированным пользователям необходимо удалить знак комментария перед директивой local_enable=YES – тем самым вы предоставите доступ пользователям к их домашним и системным каталогам. Для ограничения возможности пользователя перемещаться по дереву каталогов в пределах только его домашнего каталога достаточно убрать знак комментария из строки, содержащей директиву chroot_list_file, чтобы сообщить vsftpd о необходимости использования изолированной среды выполнения, а также указать имя этого пользователя в файле /etc/vsftpd/chroot_list.
Общие рекомендации
Еще большей безопасности в работе FTP-сервера можно добиться при помощи xinetd. Ð_тот сервер позволяет ограничить количество одновременно выполняемых процессов как по системе в целом, так и для каждого отдельного пользователя, указать пользователя, от имени которого будет выполняться сервис, задать приоритет процесса (nice), указать адреса, с которых разрешено подключение к данной службе, а также время доступа и множество других параметров. Вот наглядный пример файла конфигурации xinetd для vsftpd:
# default: off
# description: The vsftpd FTP server.
service ftp
{
disable = no # включает службу
socket_type = stream
protocol = tcp
wait = no
user = root
nice = 10
rlimit_as = 16M # устанавливает лимит адресного пространства
server = /usr/sbin/vsftpd # путь к исполняемому файлу
only_from = 192.168.0.0 # предоставляем доступ из всей подсети 192.168.0
only_from = 207.46.197.100, 207.46.197.101 # доступ с указанных адресов
# only_from = 0.0.0.0 # неограниченный по адресам доступ
access_times = 2:00-9:00 12:00-24:00 # время, когда возможен доступ
}
Для получения дополнительной информации по использованию xinetd смотрите страницы руководства xinetd и xinetd.conf.
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
11-12-2002 14:08 |
|
|
Незнайка
|
| Может, чего то не понял может туповат, но будьте... |
[сооб. #28847]
11-12-2002 16:45 |
|
Незнайка


Зарегистрирован: Nov 2001
Место проживания: Mосква
Публикаций: 539
Статус:  |
Может, чего то не понял может туповат, но будьте так добры, объясните, как например пользователю "Vasya" предоставить доступ к директории pub с паролем "pupkin". ? Чтобы он был не на правах анонимуса, а на правах Васи, и чтобы мог оттуда осуществить например "download".
__________________
Functional Upgraded Construct Kernel for Offensive and Faultless Fighting
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
11-12-2002 16:45 |
|
|
НеУчаcтник+
|
[quote]
Для предоставления доступа к FTP-серверу... |
[сооб. #29064]
15-12-2002 08:57 |
|
НеУчаcтник+


Зарегистрирован: Mar 2002
Место проживания:
Публикаций: 270
Статус:  |
quote:
Для предоставления доступа к FTP-серверу локально зарегистрированным пользователям необходимо удалить знак комментария перед директивой local_enable=YES – тем самым вы предоставите доступ пользователям к их домашним и системным каталогам. Для ограничения возможности пользователя перемещаться по дереву каталогов в пределах только его домашнего каталога достаточно убрать знак комментария из строки, содержащей директиву chroot_list_file, чтобы сообщить vsftpd о необходимости использования изолированной среды выполнения, а также указать имя этого пользователя в файле /etc/vsftpd/chroot_list.
Если надо настроить "виртуальных" юзверей -- читаем пошаговый мануал
quote:
This example shows how to set up vsftpd / PAM with "virtual users".
A virtual user is a user login which does not exist as a real login on the
system. Virtual users can therefore be more secure than real users, beacuse
a compromised account can only use the FTP server.
Virtual users are often used to serve content that should be accessible to
untrusted users, but not generally accessible to the public.
Step 1) Create the virtual users database.
We are going to use pam_userdb to authenticate the virtual users. This needs
a username / password file in "db" format - a common database format.
To create a "db" format file, first create a plain text files with the
usernames and password on alternating lines.
See example file "logins.txt" - this specifies "tom" with password "foo" and
"fred" with password "bar".
Whilst logged in as root, create the actual database file like this:
db_load -T -t hash -f logins.txt /etc/vsftpd_login.db
(Requires the Berkeley db program installed).
This will create /etc/vsftpd_login.db. Obviously, you may want to make sure
the permissions are restricted:
chmod 600 /etc/vsftpd_login.db
For more information on maintaing your login database, look around for
documentation on "Berkeley DB", e.g.
http://www.sleepycat.com/docs/utility/index.html
Step 2) Create a PAM file which uses your new database.
See the example file vsftpd.pam. It contains two lines:
auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login
This tells PAM to authenticate users using our new database. Copy this PAM
file to the PAM directory - typically /etc/pam.d/
cp vsftpd.pam /etc/pam.d/ftp
Step 3) Set up the location of the files for the virtual users.
useradd -d /home/ftpsite virtual
ls -ld /home/ftpsite
(which should give):
drwx------ 3 virtual virtual 4096 Jul 30 00:39 /home/ftpsite
We have created a user called "virtual" with a home directory "/home/ftpsite".
Let's add some content to this download area:
cp /etc/hosts /home/ftpsite
chown virtual.virtual /home/ftpsite/hosts
Step 4) Create your vsftpd.conf config file.
See the example in this directory. Let's go through it line by line:
anonymous_enable=NO
local_enable=YES
This disables anonymous FTP for security, and enables non-anonymous FTP (which
is what virtual users use).
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
These ensure that for security purposes, no write commands are allowed.
chroot_local_user=YES
This makes sure that the virtual user is restricted to the virtual FTP area
/home/ftpsite we set up above.
guest_enable=YES
guest_username=virtual
The guest_enable is very important - it activates virtual users! And
guest_username says that all virtual users are mapped to the real user
"virtual" that we set up above. This will also determine where on the
filesystem the virtual users end up - the home directory of the user
"virtual", /home/ftpsite.
listen=YES
listen_port=10021
This puts vsftpd in "standalone" mode - i.e. not running from an inetd. This
means you just run the vsftpd executable and it will start up. This also
makes vsftpd listen for FTP requests on the non-standard port of 10021 (FTP
is usually 21).
pasv_min_port=30000
pasv_max_port=30999
These put a port range on passive FTP incoming requests - very useful if
you are configuring a firewall.
Copy the example vsftpd.conf file to /etc:
cp vsftpd.conf /etc/
Step 5) Start up vsftpd.
Go to the directory with the vsftpd binary in it, and:
./vsftpd
If all is well, the command will sit there. If all is not well, you will
likely see some error message.
Step 6) Test.
Launch another shell session (or background vsftpd with CTRL-Z and then "bg").
Here is an example of an FTP session:
ftp localhost 10021
Connected to localhost (127.0.0.1).
220 ready, dude (vsFTPd 1.1.0: beat me, break me)
Name (localhost:chris): tom
331 Please specify the password.
Password:
230 Login successful. Have fun.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/"
ftp> ls
227 Entering Passive Mode (127,0,0,1,117,135)
150 Here comes the directory listing.
226 Transfer done (but failed to open directory).
ftp> size hosts
213 147
ftp>
Comments:
The password we gave was "foo".
Do not be alarmed by the "failed to open directory". That is because the
directory /home/ftpsite is not world readable (we could change this
behaviour if we wanted using anon_world_readable_only=NO but maybe we want
it this way for security.
We can see that we have access to the "hosts" file we copied into the virtual
FTP area, via the size command.
Сообщить модератору об этом сообщении | Предупреждение | IP: определен
|
15-12-2002 08:57 |
|
|
|
Формат времени GMT. Текущее время 21:43.
|
Правила форума:
Вы не можете создавать новые темы.
Вы не можете отвечать на существующие темы.
Вы не можете прикреплять файлы.
Вы не можете редактировать свои сообщения. |
HTML теги выкл.
Спец. код вкл.
Смайлики вкл.
[IMG] тег выкл.
|
|
|
|
| |
Page generated in 0.01133108 seconds (55.57% PHP - 44.43% MySQL) with 26 queries.
|
 |