воскресенье, 7 апреля 2013 г.

Настройка Proftpd и установка Webalizer и модулей Perl

Эта заметка является продолжением статьи Идеальный сервер — Ubuntu Server Precise Pangolin 12.04. Посвящена базовой настройке Proftp и установке Webalizer и некоторых модулей Perl, подготовка к установке ISPConfig.

ProFTPd — FTP-сервер для Linux и UNIX-подобных операционных систем.

ISPConfig — бесплатная панель управления хостингом с открытым исходным кодом для операционной системы Linux. Распространяется по лицензии BSD.

Webalizer — прикладная программа, распространяемая под лицензией GPL, на основе файлов регистрации событий веб-сервера генерирующая HTML-страницы со статистикой о работе веб-сайта.

1. Proftpd 

Установка:
# aptitude install proftpd ucf

По соображениям безопасности добавьте в файл /etc/proftpd/proftpd.conf строки:
DefaultRoot ~
ServerIdent on «FTP Server ready.»


ISPConfig ожидает файл конфигурации, которая находится в /etc/proftpd.conf вместо /etc/proftpd/proftpd.conf, поэтому нужно создать символическую ссылку (если не используете ISPConfig, можно этот шаг пропустить):
# ln -s /etc/proftpd/proftpd.conf /etc/proftpd.conf

Перезапустим Proftpd:
/etc/init.d/proftpd restart

2. Установка Webalizer

# aptitude install webalizer geoip-database

3. Установка некоторых модулей Perl, необходимых для SpamAssassin

# apttude install libhtml-parser-perl libdb-file-lock-perl libnet-dns-perl libnetaddr-ip-perl libarchive-tar-perl

4. ISPConfig

Конфигурация сервера завершена. Теперь нужно установить ISPConfig.

Перед тем как устанавливать ISPConfig, нужно сделать одну важную вещь. 
Открыть файл /usr/include/stdio.h и заменить getline на parseline в строке 662:
This function is not part of POSIX and therefore no official
cancellation point. But due to similarity with an POSIX interface
or due to the implementation it is a cancellation point and
therefore not marked with __THROW. */
   extern _IO_ssize_t parseline (char **__restrict __lineptr,
     size_t *__restrict __n,
     FILE *__restrict __stream) __wur;

Если этого не сделать, то установка ISPConfig завершится неудачей.

Можно отменить изменения в файле, после установки ISPConfig, но в случае обновления, процедуру нужно будет повторить.

Замечание о SuExec.

Если вы хотите запустить CGI-скрипты под Suexec, нужно указать каталог /var/www как домашний каталог сайтов, созданных на основе ISPConfig.
Введите:
/usr/lib/apache2/suexec -V

Вы должны увидеть:
-D AP_DOC_ROOT="/var/www"
-D AP_GID_MIN=100
-D AP_HTTPD_USER="www-data"
-D AP_LOG_EXEC="/var/log/apache2/suexec.log"
-D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
-D AP_UID_MIN=100
-D AP_USERDIR_SUFFIX="public_html"


Так что, если вы хотите использовать suexec с ISPConfig, не нужно менять корень по умолчанию.

Комментариев нет: