Установка Postfix, Courier, Saslauthd, MySQL, rkhunter, Binutils
Мы можем установить Postfix, Courier, Saslauthd, MySQL, rkhunter и Binutils всего одной командой:
|
Вам будет предложено ответить на следующие вопросы:
Новый пароль для MySQL пользователя "root": Ваш пароль root для MySQL Повторите ввод пароля для MySQL пользователя "root": Ваш пароль root для MySQL Yастройка Postfix: - Ok Общий тип настройки почты: - Интернет-сайта Система почтовое имя: - server1.example.com Создание каталоги для веб-администрирования? - Нет Требуется сертификат SSL - Ok
Мы хотим, чтобы MySQL прослушивался на всех интерфейсах, а не только локальном, поэтому мы редактируем /etc/mysql/my.cnf и закомментируйте строку bind-address = 127.0.0.1:
|
[...] # Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. #bind-address = 127.0.0.1 [...]
Теперь мы перезапустим MySQL:
|
Теперь проверьте, что сеть включена, выполнив:
|
Вывод должен выглядеть следующим образом:
root@server1:~# netstat -tap | grep mysql tcp 0 0 *:mysql *:* LISTEN 9990/mysqld root@server1:~#
Во время установки SSL сертификаты для IMAP-SSL и POP3-SSL создаются с локального хоста. Чтобы изменить это на правильное имя хоста ( server1.example.com в моем случае), удаляем сертификаты ...
|
... и изменим следующие два файла, заменить CN=localhost на CN=server1.example.com (Вы можете также изменить другие значения, если это необходимо):
|
[...] CN=server1.example.com [...]
|
[...] CN=server1.example.com [...]
Тогда воссоздадим сертификаты ...
|
... и перезапустим Courier-IMAP-SSL и Courier-POP3-SSL:
|
Установка amavisd-new, SpamAssassin и ClamAV
Чтобы установить amavisd-new, SpamAssassin и ClamAV мы запускаем:
|
Установка ISPConfig 3 использует AMaViSd который запускает внутренние SpamAssassin фильтры библиотек, так что мы можем остановить SpamAssassin, чтобы освободить некоторые ОЗУ:
|
Установка Nginx, PHP5 (PHP-FPM) и Fcgiwrap
Nginx доступен в виде пакета для Ubuntu который мы можем установить следующим образом:
|
Если Apache2 уже установлен в системе, остановите его сейчас ...
|
... и удалите ссылки в Apache автозапуска с системой:
|
Запустите Nginx в последствии:
|
(Если оба Apache2 и Nginx установлены, установка ISPConfig 3 спросит какую из них Вы хотите использовать - ответьте Nginx. Если установлен, только один из них тогда, ISPConfig сделает необходимые настройки автоматически.)
Мы можем сделать PHP5 работу в Nginx через PHP-FPM (PHP-FPM (FastCGI Process Manager) является альтернативой PHP FastCGI реализации с некоторыми дополнительными функциями полезна для сайтов любого размера, особенно нагруженных сайтов), которые мы устанавливаем следующим образом:
|
PHP-FPM является демоном (с сценарием инициализации /etc/init.d/php5-fpm ), который работает на FastCGI серверах через порт 9000.
Чтобы получить поддержку MySQL в PHP, мы можем установить php5-MySQL пакет. Это хорошая идея установить некоторые другие PHP5 модулей, а также другие, которые Вам могут понадобиться для ваших приложений. Вы можете искать доступные модули PHP5 следующим образом:
|
Выберите из них Вам нужно, и установить их следующим образом:
|
APC является свободным и открытым PHP кодом для операции Cacher для кэширования и оптимизации промежуточного кода PHP. Он похож на другой машинный код PHP cachers, таких как Eaccelerator и XCache. Настоятельно рекомендуется, чтобы один из них установлен, чтобы ускорить ваши PHP-страницы.
APC может быть установлен следующим образом:
|
Теперь перезапустите PHP-FPM:
|
Чтобы получить поддержку CGI в Nginx, мы устанавливаем Fcgiwrap.
Fcgiwrap является CGI-оболочкой, которая должна работать и при комплексных CGI скриптах и может быть использована для виртуальной среды хостинга, поскольку она позволяет каждому виртуальному хосту использовать свои собственные CGI-BIN директории.
Установим fcgiwrap пакет:
|
После установки, fcgiwrap демон уже должен быть запущен, его сокет /var/run/fcgiwrap.socket. Если это не работает, вы можете использовать /etc/init.d/fcgiwrap скрипт для его запуска. Вот и все! Теперь, когда Вы создаете виртуальные хосты Nginx, ISPConfig позаботится о правильной конфигурации виртуальных хостов.
Установка phpMyAdmin
Установим PhpMyAdmin следующим образом:
|
Вы увидите следующий вопрос:
Web server to reconfigure automatically: - выбрать нет (потому что только apache2 и Lighttpd в качестве опции) Configure database for phpmyadmin with dbconfig-common? - Нет
Теперь Вы сможете найти PhpMyAdmin в /usr/share/phpmyadmin/ каталоге.
После установки ISPConfig 3, Вы сможете получить доступ к PhpMyAdmin следующим образом:
ISPConfig виртуальный хост приложения на порту 8081 для Nginx поставляется с PhpMyAdmin конфигурации, так что вы можете использовать http://server1.example.com:8081/phpmyadmin или http://server1.example.com:8081/phpMyAdmin для доступа к PHPMyAdmin.
Если вы хотите использовать /phpmyadmin или /phpMyAdmin псевдоним, который Вы можете использовать с вашим веб-сайтом, это немного сложнее, чем для Apache, потому Nginx не имеют глобальные псевдонимы (например, псевдонимы, которые могут быть определены для всех виртуальных доменов). Поэтому вы должны определить эти псевдонимы для каждого виртуальный хост, с которого вы хотите получить доступ к PHPMyAdmin.
Для этого вставьте следующее в строку Nginx Директивы на параметры вкладки веб-сайта в ISPConfig:
location /phpmyadmin { root /usr/share/; index index.php index.html index.htm; location ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include /etc/nginx/fastcgi_params; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /phpMyAdmin { rewrite ^/* /phpmyadmin last; }
Если Вы используете HTTPS с HTTP, и не для вашего виртуальный хост, вы должны добавить строку HTTPS fastcgi_param далее; к PhpMyAdmin конфигурации следующим образом:
location /phpmyadmin { root /usr/share/; index index.php index.html index.htm; location ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS on; # <-- add this line fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include /etc/nginx/fastcgi_params; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /phpMyAdmin { rewrite ^/* /phpmyadmin last; }
При одновременном использовании HTTP и HTTPS для вашего виртуальный хоста, вам нужно добавить следующую секцию в HTTP {} раздел в /etc/nginx/nginx.conf (до того, включают строки), которая определяет, если посетитель использует HTTP или HTTPS и устанавливает $ fastcgi_https переменной (которые мы будем использовать в нашей PhpMyAdmin конфигурации) соответственно:
|
Затем снова перейдите на nginx Directives строки, и вместо fastcgi_param HTTPS on; Вы добавляете строку fastcgi_param HTTPS $fastcgi_https; так что Вы можете использовать PhpMyAdmin для HTTP и HTTPS-запросы:
location /phpmyadmin { root /usr/share/; index index.php index.html index.htm; location ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; root /usr/share/; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS $fastcgi_https; # <-- add this line fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename; include /etc/nginx/fastcgi_params; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } location /phpMyAdmin { rewrite ^/* /phpmyadmin last; }
Установка Mailman
Начиная с версии 3.0.4, ISPConfig также позволяет управлять (создание / изменение / удаление) списки рассылок Mailman. Если Вы хотите, использовать эту функцию, установите Mailman следующим образом:
|
Прежде чем мы сможем запустить Mailman, должен быть создан первый список рассылки называется mailman:
|
root@server1:~# newlist mailman
Enter the email of the person running the list: - адрес электронной почты админа, например Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
Initial mailman password: - пароль администратора для mailman списока
To finish creating your mailing list, you must edit your /etc/aliases (or
equivalent) file by adding the following lines, and possibly running the
`newaliases' program:
## mailman mailing list
mailman: "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman"
mailman-join: "|/var/lib/mailman/mail/mailman join mailman"
mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman"
mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request: "|/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"
Hit enter to notify mailman owner... - ENTER
root@server1:~#
Открытый nano /etc/aliases потом ...
|
... и добавьте следующие строки:
[...] mailman: "|/var/lib/mailman/mail/mailman post mailman" mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman" mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman" mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman" mailman-join: "|/var/lib/mailman/mail/mailman join mailman" mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman" mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman" mailman-request: "|/var/lib/mailman/mail/mailman request mailman" mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman" mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"
Запустим:
|
потом и перезапустим Postfix:
|
Теперь запустим Mailman демона:
|
После установки ISPConfig 3, Вы можете получить доступ к Mailman следующим образом:
ISPConfig виртуальный хост приложения на порту 8081 для Nginx поставляется с конфигурацией Mailman, поэтому вы можете получить Mailman.
Если Вы хотите использовать Mailman с вашего веб-сайтов, это немного сложнее, чем для Apache, потому Nginx не имеют глобальные псевдонимы (например, псевдонимы, которые могут быть определены для всех виртуальных доменов). Поэтому Вы должны определить эти псевдонимы для каждого виртуальный хост, с которого Вы хотите получить доступ к Mailman.
Для этого вставьте следующее в Nginx Директивы поля на параметры вкладки веб-сайта в ISPConfig:
location /cgi-bin/mailman { root /usr/lib/; fastcgi_split_path_info (^/cgi-bin/mailman/[^/]*)(.*)$; include /etc/nginx/fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_intercept_errors on; fastcgi_pass unix:/var/run/fcgiwrap.socket; } location /images/mailman { alias /usr/share/images/mailman; } location /pipermail { alias /var/lib/mailman/archives/public; autoindex on; }
Это определяет псевдоним /cgi-bin/mailman/ для вашего виртуального хоста, который означает, что Вы можете получить доступ к интерфейсу администратора Mailman для списка на http://<vhost>/cgi-bin/mailman/admin/<listname>, и веб-страницы для пользователей список рассылки можно найти по адресу http://<vhost>/cgi-bin/mailman/listinfo/<listname>.
Под http://<vhost>/pipermail вы можете найти архивы рассылки.