Установка и настройка серверов Linux,создание сайтов, установка и настройка Asterisk PBX, Linux для начинающих и не только.
Получать статьи этого сайта на почту:

 

12
Апр 2013
sergldom
автор
22
комментариев
Рейтинг статьи:
5
Средняя: 5 (1 оценка)

Установка необходимых программ для установки ISPConfig 3 в Debian - ч.2

      Продолжаем установку хостинг панели ISPConfig 3, напоминаю, что первая часть статьи находится по адресу: Настройка сети перед установкой ISPConfig 3 в Debian - ч.1.

      В данной инструкции мы установим и произведем первичную настройку необходимого програмного обеспечения.

     ]]>ISPConfig 3]]> - отличная панель для администрирования таких сервисов как Почта (Postfix), FTP (PureFTPd), SSH (OpenSSH), DNS (Bind9), Web (Apache2)

     Если Вам не нужен какой-либо из данных сервисов, тогда Вы можете не призводить установку не нужного Вам програмного обеспечения. Например если Вы не будете настраивать DNS, то можете не устанвливать bind9, и во время установки ISPConfig 3 когда инсталятор спросит о настройке DNS просто отказываемся от установки, Это вполне возможно, если Вы производите установку на маленький выделенный виртуальный сервер в котором считается каждый метр оперативной памяти. Тогда и Почтовый сервер можно не устанавливать, а на сайтах производить отправку сообщений пользователям используя внешние почтовые ящики, например почтовый ящик от Google и подключение по SMTP протоколу, для примера как я настраивал сайт на Drupal 7 в инструкции: Настраиваем отправку почты с сайта Drupal 7 используя внешний SMTP сервер - для примера google почтовый ящик

Приступим.

      Изменение оболочки консоли по умолчанию, так как /bin/sh является символичной ссылкой на /bin/dash, нам надо /bin/bash, а не /bin/dash. Изменяем настройку консоли выполнив команду:

dpkg-reconfigure dash

на вопрос системы:
Использовать dash в качестве системной оболочки по умолчанию (/bin/sh)?
Отвечаем Нет

Настройка dash перед установкой хостинг панели ISPConfig 3

      Устанавливаем NTP, Postfix, Dovecot, Saslauthd, MySQL, rkhunter, and binutils командой:

aptitude install ntp ntpdate postfix postfix-mysql postfix-doc mysql-client mysql-server openssl getmail4 rkhunter binutils dovecot-imapd dovecot-pop3d dovecot-mysql dovecot-sieve sudo

Устанавливаем ntp, postfix, mysql для установки ISPConfig 3

На вопросы системы отвечаем:

  • Настройка Postfix: - Ok
  • Общий тип настройки почты: - выбираем Интернет-сайт
  • Система почтовое имя: - Вводим webserver.server.loc
  • Новый пароль для MySQL пользователя "root": Вводим пароль root для MySQL
  • Повторите ввод пароля для MySQL пользователя "root": Повторяем ввод пароля root для MySQL

Устанавливаем ntp, postfix, mysql для установки ISPConfig 3, отвечаем на вопросы инсталятора - 1

Устанавливаем ntp, postfix, mysql для установки ISPConfig 3, отвечаем на вопросы инсталятора - 2

Устанавливаем ntp, postfix, mysql для установки ISPConfig 3, отвечаем на вопросы инсталятора - 3

Устанавливаем ntp, postfix, mysql для установки ISPConfig 3, отвечаем на вопросы инсталятора - 3

Устанавливаем ntp, postfix, mysql для установки ISPConfig 3, отвечаем на вопросы инсталятора - 4

      Открываем TLS/SSL порты в Postfix внеся изменения в файл /etc/postfix/master.cf:

vi /etc/postfix/master.cf

было:

...
#submission inet n       -       -       -       -       smtpd
#  -o syslog_name=postfix/submission
#  -o smtpd_tls_security_level=encrypt
#  -o smtpd_sasl_auth_enable=yes
#  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#  -o milter_macro_daemon_name=ORIGINATING
#smtps     inet  n       -       -       -       -       smtpd
#  -o syslog_name=postfix/smtps
#  -o smtpd_tls_wrappermode=yes
#  -o smtpd_sasl_auth_enable=yes
#  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#  -o milter_macro_daemon_name=ORIGINATING
...

стало:

...
submission inet n       -       -       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#  -o milter_macro_daemon_name=ORIGINATING
smtps     inet  n       -       -       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#  -o milter_macro_daemon_name=ORIGINATING
...

После сохранения файла /etc/postfix/master.cf перезагружаем сервер Рostfix выполнив команду:

/etc/init.d/postfix restart

Настраиваем работу базы данных Mysql на всех интерфейсах, по умолчанию работает только на 127.0.0.1:

vi /etc/mysql/my.cnf

было:

...
bind-address           = 127.0.0.1
...

стало:

...
#bind-address           = 127.0.0.1
...

      После сохранения изменений перезагружаем сервер Mysql командой:

/etc/init.d/mysql restart

      Устанавливаем антиспам и антивирус для почтового сервера Amavisd-new, SpamAssassin и ClamAV командой:

aptitude install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl

Для фильтрации спам писем ISPConfig3 использует Amavisd, который загружает внутренние фильтры библиотеки SpamAssassin самостоятельно, потому мы можем остановить и отключить загрузку SpamAssassin, чтобы не занимать оперативную память лишним процессом выполнив команды:

/etc/init.d/spamassassin stop
update-rc.d -f spamassassin remove

 !!! Внимание !!!     При продолжительной работе почтового сервера, сервер Amavisd собирает огромное количество спама и вирусов в карантинную папку /var/lib/amavis/virusmails/ которая разростается если её не чистить. Добавим в крон автоматический поиск и удаление спама и вирусов в карантине старше 30 дней.

      Для этого выполним команду:

crontab -e

      В открывшемся файле добавим запись:

10 1 * * * find /var/lib/amavis/virusmails -ctime +30 -and -type 'f' -exec rm {} \;

      Таким образом в час ночи десять минут каждый день будет запускатся поиск файлов старше 30 дней и автоматически удалятся.

      Устанавливаем Веб сервер с поддержкой php Apache2, PHP5, PHPMyAdmin, FCGI, suExec, Pear, FPM And mcrypt выполнив команду:

aptitude install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-curl php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-ruby libapache2-mod-python libapache2-mod-perl2 dh-make-php php5-dev build-essential libmagic-dev php5-intl libapache2-mod-fastcgi php5-fpm

На вопросы системы отвечаем:

  • Веб-сервер для автоматической перенастройки: - apache2
  • Настроить базу данных для phpmyadmin с помощью dbconfig-common? - Нет

Устанавливаем WEB сервер для ISPConfig 3

Установка Phpmyadmin для хостинг панели ISPConfig 3

      Выполним активацию модулей веб сервера Apache2 - suexec, rewrite, ssl, actions, dav, dav_fs, and auth_digest выполнив команду:

a2enmod suexec rewrite ssl actions include dav_fs dav auth_digest fastcgi alias fcgid

      После активации моделей веб сервера необходимо перезагрузить Apache2 веб сервер командой:

/etc/init.d/apache2 restart

 

      Вносим изменения в suphp конфигурационный файл /etc/apache2/mods-available/suphp.conf

vi /etc/apache2/mods-available/suphp.conf

было:

<IfModule mod_suphp.c>
    <FilesMatch "\.ph(p3?|tml)$">
        SetHandler application/x-httpd-suphp
    </FilesMatch>
        suPHP_AddHandler application/x-httpd-suphp

    <Directory />
        suPHP_Engine on
    </Directory>
...

стало:
 

<IfModule mod_suphp.c>
#    <FilesMatch "\.ph(p3?|tml)$">
#        SetHandler application/x-httpd-suphp
#    </FilesMatch>
        AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml
        suPHP_AddHandler application/x-httpd-suphp

    <Directory />
        suPHP_Engine on
    </Directory>
...

 

Если Вы хотите использовать файлы языка Ruby с расширением .rb, необходимо закоментировать параметр в файле /etc/mime.types:

vi /etc/mime.types

было:

...
application/x-ruby                             rb
...

стало:

...
#application/x-ruby                             rb
...

 

Устанавливаем модуль кеширования для PHP Xcache, вместо него Вы можете использовать и APC или Eaccelerator:

aptitude install php5-xcache

Перезагружаем веб сервер Apache2 выполнив команду:

/etc/init.d/apache2 restart

 

     Устанавливаем FTP сервер PureFTPd и квоты Quota выполнив команду:

aptitude install pure-ftpd-common pure-ftpd-mysql quota quotatool

      Нам необходимо внести изменения в конфигурационный файл ftp сервера PureFTPd /etc/default/pure-ftpd-common:

vi /etc/default/pure-ftpd-common

было:

...
VIRTUALCHROOT=false
...

стало:

...
VIRTUALCHROOT=true
...

Сохраняем измененный файл.

      Теперь настраиваем работу FTP сервера для работы через защищенный протокол TLS и создаем ssl сертефикат:

echo 1 > /etc/pure-ftpd/conf/TLS

Создаем папку, где будет хранится наш сертификат выполнив команду:

mkdir -p /etc/ssl/private/

      Генерируем сам сертификат выполнив команду:

openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

Во время создания сертификатов отвечаем на вопросы:

Установка FTP сервера PureFTPD для хостинг панели ISPConfig 3

      Назначаем права для сертификата 600 выполнив команду:

chmod 600 /etc/ssl/private/pure-ftpd.pem

После внесения изменений и сохранив конфигурационный файл,  создания ssl сертификата перезагружаем FTP сервер PureFTPd командой:

/etc/init.d/pure-ftpd-mysql restart

Вносим изменения в файл /etc/fstab для включения квот нашим пользователям, параметр ,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 который добавим для почты и веб сервера в корневой раздел.
У Вас UUID будет отличатся от моего, вносим изменения в корневой раздел / системы:

vi /etc/fstab

было:

UUID=5deecf34-1354-4a0f-b65c-90abb960433e /               ext4    errors=remount-ro 0       1

стало:

UUID=5deecf34-1354-4a0f-b65c-90abb960433e /               ext4    errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0       1

Сохраняем файл /etc/fstab.conf

      Для включения квот на диске, нам необходимо перемонтировать корневой раздел выполнив команду:

mount -o remount /

      И непосредственно включаем квоты на диске выпонив команды:

quotacheck -avugm
quotaon -avug

      Устанавливаем DNS сервер Bind который будет также удобно администрироватся через веб интерфейс панели ISPConfig выполнив команду и согласившись:

aptitude install bind9 dnsutils

      Устанавливаем программы для анализа и статистики посещаемости веб сервера выполнив команды:

aptitude install vlogger webalizer awstats geoip-database

Отключаем для программы awstat автоматический запуск из cron в файле /etc/cron.d/awstats:

vi /etc/cron.d/awstats

было:

*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/update.sh

# Generate static reports:
10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] && /usr/share/awstats/tools/buildstatic.sh

 

стало:

#*/10 * * * * www-data [ -x /usr/share/awstats/tools/update.sh ] && /usr/share/awstats/tools/update.sh

# Generate static reports:
#10 03 * * * www-data [ -x /usr/share/awstats/tools/buildstatic.sh ] && /usr/share/awstats/tools/buildstatic.sh

 

Установка программы Jailkit
      Если Вы будете предоставлять для пользователей изолированный chroot ssh доступ к серверу, необходимо установить программу Jailkit. Jailkit должен быть установлен до установки ISPConfig, и сам Jailkit будем устанавливать из исходных кодов, потому устанавливаем необходимые для сборки программы выполнив команду:

aptitude install build-essential autoconf automake1.9 libtool flex bison debhelper

      И приступаем у созданию директории, где будем скачивать, распаковывать и собирать программу Jailkit. Для установки программы Jailkit выполняем команды:

mkdir /usr/src/iserver/ && cd /usr/src/iserver/
wget http://olivier.sessink.nl/jailkit/jailkit-2.16.tar.gz
tar xvfz jailkit-2.16.tar.gz
cd jailkit-2.16
./debian/rules binary
dpkg -i /usr/src/iserver/jailkit_2.16*.deb

 

Установка программы Fail2ban

      Устанавливаем программу fail2ban, которая будет стоять на защите наших серверов, блокируя айпи с которых производится попытка взлома открытых в интернет сервисов, если такие есть. Если же Вам это не нужно, тогда можете пропустить установку и настройку fail2ban.
Выполним установку и настройку программы fail2ban выполнив команду:

aptitude install fail2ban

      Создаем конфигурационный файлы для настройки программы fail2ban, выполнив команды (скопировать все и вставить в консоль через Putty):

echo '
[pureftpd]
enabled  = true
port     = ftp
filter   = pureftpd
logpath  = /var/log/syslog
maxretry = 3

[dovecot-pop3imap]
enabled = true
filter = dovecot-pop3imap
action = iptables-multiport[name=dovecot-pop3imap, port="pop3,pop3s,imap,imaps", protocol=tcp]
logpath = /var/log/mail.log
maxretry = 5
' > /etc/fail2ban/jail.local

echo '
[Definition]
failregex = .*pure-ftpd: \(.*@<HOST>\) \[WARNING\] Authentication failed for user.*
ignoreregex =
' > /etc/fail2ban/filter.d/pureftpd.conf

echo '
[Definition]
failregex = (?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login \(auth failed|Aborted login \(tried to use disabled|Disconnected \(auth failed|Aborted login \(\d+ authentication attempts).*rip=(?P<host>\S*),.*
ignoreregex =
' > /etc/fail2ban/filter.d/dovecot-pop3imap.conf

Перезагружаем программу для защиты сервера fail2ban выполнив команду:

/etc/init.d/fail2ban restart

 

С Вами был Сергей Лазаренко.

На данном месте основная настройка необходимых программ для установки хостинг панели ISPConfig 3 завершена.  Инструкция большая, потому отдохнем просмотрев видео ролик, где узнаем почему же футболисту Бэкхэму платят столько денег.  Видно талант человека :)

 

Рейтинг статьи: 

5
Средняя: 5 (1 оценка)

Вам понравилась статья? Хотите получать уведомления о выходе новых статей с этого сайта на свой почтовый адрес? Подписывайтесь пожалуйста. Введите свой почтовый адрес и нажмите кнопку Хочу получать статьи!

]]>]]>

 

*Адреса электронной почты не разглашаются и не предоставляются третьим лицам для коммерческого или некоммерческого использования.

 

 

 
 

 

22 комментария:
Юрий
07/10/2014 - 18:45
Добрый вечер! Когда вносим изменения в файл /etc/fstab для включения квот у меня вот эта строчка, ext4    errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0       1 выглядит по другому. Вот так: UUID........       ext4    rw,noatime 0   1 Если сделать по аналогии с вашей строчкой, будет ли это верно? UUID..........    ext4    rw,noatime,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0        1
07/10/2014 - 22:44
Здравствуйте. Да, все верно.
Юрий
08/10/2014 - 18:41
Для включения квот на диске, нам необходимо перемонтировать корневой раздел выполнив команду: mount -o remount / после этой команды высветилось line 10 in /etc/fstab is bad mount: / not mount or bat option, что он плохо смонтировался. Подскажите пожалуста, как исправить.    
09/10/2014 - 19:45
E вас точно так?: rw,noatime,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0        1 Если да, тогда Вы ошиблись, тут в конце должно быть две цифры ,у Вас же одна.
Гость
09/10/2014 - 21:08
У меня 2 цыфры "0", проверил, наверно неудачно скопировал в коментарии.
09/10/2014 - 22:23
Ну как бы если все вы скопировали и в конфиг вставили правильно, тогда все должно быть нормально. Проверте правильность всего написаного, если Вы писали руками не копируя, Если все-равно ошибку выдает, тогда попробуйте так: errors=remount-ro,noatime,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0       1 Еще хотел спросить вы редактируете корневой раздел?  
Юрий
10/10/2014 - 17:37
Я всё проверил, всё правильно написано. Попробовал другой вариант, как вы посоветовали сейчас (errors=remount-ro вместо rw), выдал ошибку: E45: 'readonly'  option is set (add ! to override) К сожалению я не знаю куда нужно вставить " ! ", я не програмист.  
Юрий
10/10/2014 - 17:40
" Еще хотел спросить вы редактируете корневой раздел? " Да, конечно. Я иду точно как вы описываете в статье.
Юрий
10/10/2014 - 18:02
Вот сделал скриншот http://savepic.org/6150708.jpg
10/10/2014 - 18:52
Отлично :) Проблема нашлась,   noatime и noatimer  разные параметры, последнего не существует, и цифра в конце только одна :) исправте на правильно: noatime правильно должно быть в Вашем случае: rw,noatime,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0       1
Юрий
10/10/2014 - 21:24
Не могу сохранить файл, пишет: E45: 'readonly'  option is set (add ! to override)
10/10/2014 - 21:26
для записи файла просит в конце команды :wq  добавить ! :wq! Это когда Вы редактируете в редакторе vi
Юрий
10/10/2014 - 22:49
Немного по гуглив нашёл вот так :wq! или :w!  но не помогает. высвечивает      W10: Warning: Changing a readonly file E45: 'readonly' option is set (add !to override) ещё нашёл  https://www.ibm.com/developerworks/community/blogs/58e72888-6340-46ac-b488-d31aa4058e9c/entry/save_a_file_with_root_permissions_from_within_vim_editor8?lang=ru  но тоже не помогло. W10: Warning: Changing a readonly file E45: 'readonly' option is set (add !to override) W10: Warning: Changing a readonly file E45: 'readonly' option is set (add !to override) W10: Warning: Changing a readonly file E45: 'readonly' option is set (add !to override)
11/10/2014 - 00:40
Я конечно понимаю, но столько ответов по несчасной проблеме, переустановите заново и не мучайтесь, но!!! внимательно делайте пожалуйста. По проблеме, то могу предложить еще перемонтировать корневой раздел в rw и исправить Вашу ошибку. Команда: mount -o rw,remount /
Юрий
11/10/2014 - 12:29
Спасибо за совет, наверно придётся переустановить заново. Пустяковая проблема, а заняла почти неделю переписки. Хотелось бы, что бы Вы по чаще заходили на сайт, а то один комментарий в день это моловото, так можно и до нового года сервер не настроить. Вообще статьи очень хорошие, всё написано понятно( но ещё бывают подводные камни). С уважением Юрий  
Юрий
20/11/2014 - 16:18
Здравствуйте. Не могу понять, куда запихнуть и как обозвать конфигурационный файл для fail2ban, если в /etc/fail2ban/fail2ban.conf, то он уже есть и его содержимое совсем не похоже на предложенное Вами.
28/11/2014 - 16:02
fail2ban.conf остается дефолтным...тоесть его вы не трогаете. командой предложеной выше вы создаете фильтры и правила 
Юрий
23/12/2014 - 19:33
Как обновить? The following packages will be upgraded: cpio libjasper-dev libjasper1 ntp ntpdate
24/12/2014 - 11:43
Для обновления команда: aptitude safe-upgrade  
Android
03/03/2015 - 05:51
Какой командой? Куда этот фаил запихивать? в мануале ничего не написанно про это
04/03/2015 - 23:30
Это все одна большая команда (вообщето 3 команды, но можно все как одну использовать) скопировать и вставить: echo ' [pureftpd] enabled = true port = ftp filter = pureftpd logpath = /var/log/syslog maxretry = 3 [dovecot-pop3imap] enabled = true filter = dovecot-pop3imap action = iptables-multiport[name=dovecot-pop3imap, port="pop3,pop3s,imap,imaps", protocol=tcp] logpath = /var/log/mail.log maxretry = 5 ' > /etc/fail2ban/jail.local echo ' [Definition] failregex = .*pure-ftpd: \(.*@<HOST>\) \[WARNING\] Authentication failed for user.* ignoreregex = ' > /etc/fail2ban/filter.d/pureftpd.conf echo ' [Definition] failregex = (?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login \(auth failed|Aborted login \(tried to use disabled|Disconnected \(auth failed|Aborted login \(\d+ authentication attempts).*rip=(?P<host>\S*),.* ignoreregex = ' > /etc/fail2ban/filter.d/dovecot-pop3imap.conf    
01/08/2016 - 23:24
Версию Jailkit обнови с 2.16 до 2.19

Добавить комментарий

Filtered HTML

  • Поисковые системы будут индексировать и переходить по ссылкам на разрешённые домены.

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.

Plain text

  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.
  • Поисковые системы будут индексировать и переходить по ссылкам на разрешённые домены.

CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.