Настройка vsftpd

Материал из Gentoo Linux Wiki

Перейти к: навигация, поиск
Вернуться в раздел руководства

Содержание

[править] Введение

Это перевод статьи en:HOWTO vsftpd. Кое-что изменено и добавлено от себя для более понятного, как мне кажется, изложения

Взято из en:HOWTO Plan, setup and run a high school Gentoo Club и модифицировано.

Это руководство описывает процесс установки VSFTP и настройки его для анонимного доступа с правами только для чтения. FTP (File Transfer Protocol) - старый, но надежный протокол, используемый для быстрой передачи файлов в сети.

[править] Установка VSFTPD

Зайдите в систему под пользователем root и введите комманду:

Code: Установка
 emerge vsftpd

[править] Настройка

Это очень легко. Откройте файл /etc/vsftpd/vsftpd.conf вашим любимым текстовым редактором и внесите в него вот эти изменения:

[править] Общие настройки

Файл: /etc/vsftpd/vsftpd.conf
 dirmessage_enable=YES
 # banner_file=/etc/vsftpd/vsftpd.banner # edit banner first
 chown_uploads=NO
 xferlog_enable=YES
 idle_session_timeout=600
 data_connection_timeout=120
 ascii_upload_enable=NO
 ascii_download_enable=NO
 chroot_list_enable=YES
 listen=YES
 ls_recurse_enable=NO

[править] Анонимный пользователь (Anonymous), только для чтения

Файл: /etc/vsftpd/vsftpd.conf
#use_microsoft_no_smpke_driver=NO
 anonymous_enable=YES
 anon_upload_enable=NO
 anon_mkdir_write_enable=NO

[править] Отключаем локальных пользователей

Это плохая идея разрешать локальным пользователям доступ через ftp (проще sftp/ssh), потому мы отключаем им доступ.

Файл: /etc/vsftpd/vsftpd.conf
 local_enable=NO
 write_enable=NO

[править] Запуск службы

Gentoo предоставляет централизированное место для служб, которые называються init scripts или скрипты инициализации. Эти скрипты находятся в каталоге /etc/init.d/ и имеют имя сервиса, который они стартуют. Инит скрипты используются для управления сервисами. Для запуска VSFTPD сервера наберите

Code: Запуск vsftpd как службы
 /etc/init.d/vsftpd start

А также

Code: vsftpd usage
/etc/init.d/vsftpd help

для просмотра всех возможностей скрипта.

[править] Настройка скриптов конфигурации

Вы не хотите набирать /etc/init.d/vsftpd start каждый раз когда вы включаете свой компьютер? Gentoo предоставляет простой путь запуска скриптов инициализации при включении вашего компьютера. Чтобы настроить VSFTPD для запуска при каждой загрузке, наберите:

Code: запуск vsftpd как службы загрузке
 rc-update add vsftpd default

Если вы хотите узнать больше о rc-update наберите "man rc-update".

Также можно и через chkconfig:

Code: запуск vsftpd как службы загрузке
 chkconfig vsftpd on

[править] Где размещать файлы

Файлы анонимного пользователя находятся в домашнем каталоге специального пользоватьля ftp (пользователя в системе). По умолчанию это - /home/ftp. Если вы хотите сменить его например на /var/ftp, вам нужно сделать следущие действия: /var/ftp

Code: Смена размещения
 rmdir /home/ftp
 mkdir /var/ftp
 chown ftp:ftp /var/ftp
 ln -s /var/ftp /home/

Теперь можно что-то разместить в этом каталоге. Например, если вы хотите сделать доступными для других каталоги disfiles и packages, можно сделать следущие действия:

Code: '
 mv /usr/portage/disfiles /var/ftp/
 ln -s /var/ftp/disfiles /usr/portage/
 mv /usr/portage/packages /var/ftp/
 ln -s  /var/ftp/packages /usr/portage/

Примечание: VSFTPD автоматически запусается в chroot окружении, поэтому символические ссылки не работают. Именно для этого пришлось перенести каталоги /usr/portage/disfiles и usr/portage/packages и создать символические ссылки в тех местах где они должны находится

Но можно например монтировать нужные каталоги в .../ftp при помощи fstab. Для этого нужно создать каталоги: /var/ftp/distfiles и /var/ftp/packages

Code: '
 mkdir /var/ftp/distfiles
 mkdir /var/ftp/packages

После чего пропишите в /etc/fstab следущее:

Code: '
 /usr/portage/distfiles /var/ftp/distfiles none ro,bind 0 0
 /usr/portage/packages /var/ftp/packages none ro,bind 0 0

[править] Клиенты

Есть множеcтво программ, которые позволяют получать доступ к ftp серверу. Вот некоторые из них:

  • ftp
  • lftp - лучший консольный клиент
  • mozilla-firefox
  • nautilus
  • gftp
  • Midnight Commander
  • Links - консольный браузер http и ftp

Для проверки работы вашего сервера кликните по ссылке ftp://localhost/packages

[править] Смотрите еще

Личные инструменты
На других языках