Идеальный сервер - Ubuntu 11.10 с Nginx [ISPConfig 3]

Содержание материала

Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

Установка Postfix, Courier, Saslauthd, MySQL, rkhunter, Binutils

Мы можем установить Postfix, Courier, Saslauthd, MySQL, rkhunter и Binutils всего одной командой:

  • apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl getmail4 rkhunter binutils maildrop

Вам будет предложено ответить на следующие вопросы:

Новый пароль для MySQL пользователя "root": Ваш пароль root для MySQL
Повторите ввод пароля для MySQL пользователя "root": Ваш пароль root для MySQL
Yастройка Postfix: - Ok
Общий тип настройки почты: - Интернет-сайта
Система почтовое имя: - server1.example.com
Создание каталоги для веб-администрирования? - Нет
Требуется сертификат SSL - Ok

Пароль для MySQL в Ubuntu 11.10 Пароль для MySQL в Ubuntu 11.10 Тип настройки почтового ящика Postfix на Ubuntu server Тип настройки почтового ящика Postfix на Ubuntu server

Настройка почтового ящика Postfix на Ubuntu server Настройка почтового ящика Postfix на Ubuntu server Настройка почтового ящика Postfix на Ubuntu server

Мы хотим, чтобы MySQL прослушивался на всех интерфейсах, а не только локальном, поэтому мы редактируем /etc/mysql/my.cnf и закомментируйте строку bind-address = 127.0.0.1:

  • nano /etc/mysql/my.cnf
[...]
# 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:

  • /etc/init.d/mysql restart

Теперь проверьте, что сеть включена, выполнив:

  • netstat -tap | grep mysql

Вывод должен выглядеть следующим образом:

root@server1:~# netstat -tap | grep mysql
tcp        0      0 *:mysql                 *:*                     LISTEN      9990/mysqld
root@server1:~#

Во время установки SSL сертификаты для IMAP-SSL и POP3-SSL создаются с локального хоста. Чтобы изменить это на правильное имя хоста ( server1.example.com в моем случае), удаляем сертификаты ...

  • cd /etc/courier
  • rm -f /etc/courier/imapd.pem
  • rm -f /etc/courier/pop3d.pem

... и изменим следующие два файла, заменить CN=localhost на CN=server1.example.com (Вы можете также изменить другие значения, если это необходимо):

  • nano /etc/courier/imapd.cnf
[...]
CN=server1.example.com
[...]
  • nano /etc/courier/pop3d.cnf
[...]
CN=server1.example.com
[...]

Тогда воссоздадим сертификаты ...

  • mkimapdcert
  • mkpop3dcert

... и перезапустим Courier-IMAP-SSL и Courier-POP3-SSL:

  • /etc/init.d/courier-imap-ssl restart
  • /etc/init.d/courier-pop-ssl restart

Установка amavisd-new, SpamAssassin и ClamAV

Чтобы установить amavisd-new, SpamAssassin и ClamAV мы запускаем:

  • apt-get 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

Установка ISPConfig 3 использует AMaViSd который запускает внутренние SpamAssassin фильтры библиотек, так что мы можем остановить SpamAssassin, чтобы освободить некоторые ОЗУ:

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

Установка Nginx, PHP5 (PHP-FPM) и Fcgiwrap

Nginx доступен в виде пакета для Ubuntu который мы можем установить следующим образом:

  • apt-get install nginx

Если Apache2 уже установлен в системе, остановите его сейчас ...

  • /etc/init.d/apache2 stop

... и удалите ссылки в Apache автозапуска с системой:

  • insserv -r apache2

Запустите Nginx в последствии:

  • /etc/init.d/nginx start

(Если оба Apache2 и Nginx установлены, установка ISPConfig 3 спросит какую из них Вы хотите использовать - ответьте Nginx. Если установлен, только один из них тогда, ISPConfig сделает необходимые настройки автоматически.)

Мы можем сделать PHP5 работу в Nginx через PHP-FPM (PHP-FPM (FastCGI Process Manager) является альтернативой PHP FastCGI реализации с некоторыми дополнительными функциями полезна для сайтов любого размера, особенно нагруженных сайтов), которые мы устанавливаем следующим образом:

  • apt-get install php5-fpm

PHP-FPM является демоном (с сценарием инициализации /etc/init.d/php5-fpm ), который работает на FastCGI серверах через порт 9000.

Чтобы получить поддержку MySQL в PHP, мы можем установить php5-MySQL пакет. Это хорошая идея установить некоторые другие PHP5 модулей, а также другие, которые Вам могут понадобиться для ваших приложений. Вы можете искать доступные модули PHP5 следующим образом:

  • apt-cache search php5

Выберите из них Вам нужно, и установить их следующим образом:

  • apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

APC является свободным и открытым PHP кодом для операции Cacher для кэширования и оптимизации промежуточного кода PHP. Он похож на другой машинный код PHP cachers, таких как Eaccelerator и XCache. Настоятельно рекомендуется, чтобы один из них установлен, чтобы ускорить ваши PHP-страницы.

APC может быть установлен следующим образом:

  • apt-get install php-apc

Теперь перезапустите PHP-FPM:

  • /etc/init.d/php5-fpm restart

Чтобы получить поддержку CGI в Nginx, мы устанавливаем Fcgiwrap.

Fcgiwrap является CGI-оболочкой, которая должна работать и при комплексных CGI скриптах и может быть использована для виртуальной среды хостинга, поскольку она позволяет каждому виртуальному хосту использовать свои собственные CGI-BIN директории.

Установим fcgiwrap пакет:

  • apt-get install fcgiwrap

После установки, fcgiwrap демон уже должен быть запущен, его сокет /var/run/fcgiwrap.socket. Если это не работает, вы можете использовать /etc/init.d/fcgiwrap скрипт для его запуска. Вот и все! Теперь, когда Вы создаете виртуальные хосты Nginx, ISPConfig позаботится о правильной конфигурации виртуальных хостов.

Установка phpMyAdmin

Установим PhpMyAdmin следующим образом:

  • apt-get install 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 конфигурации) соответственно:

  • /etc/init.d/nginx reload

Затем снова перейдите на 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 следующим образом:

  • apt-get install mailman

Прежде чем мы сможем запустить Mailman, должен быть создан первый список рассылки называется mailman:

  • newlist 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 потом ...

  • newlist mailman

... и добавьте следующие строки:

[...]
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"

Запустим:

  • newaliases

потом и перезапустим Postfix:

  • /etc/init.d/postfix restart

Теперь запустим Mailman демона:

  • /etc/init.d/mailman start

После установки 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 вы можете найти архивы рассылки.


Обмениваться, хранить, передавать Ваши файлы стало просто как никогда.
yandex-disk
Читать подробнее: для чего Yandex-Диск проекту Mini-Server. Практика установки, настройки и использования сетевого хранилища на Ubuntu server LTS 12.04 в статье Резервное копирование сервера Ubuntu на Яндекс Диск.

>> Ubuntu 12.04 + Nginx Скачать сервер
>> Fedora 15 Скачать сервер
>> Простой Debian 6.0.6 Скачать сервер
>> CentOS 6.0 и
+ (5.6) другой
Скачать сервер
>> OpenSUSE 11.4
MAX
Скачать сервер

Вход на сайт

ВНИМАНИЕ!

Регистрация на сайте только по согласованию с администратором ресурса. Обращаться через форму обратной связи.