Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Идеальный хостинг сервер с панелью ISPConfig  (Прочитано 9397 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн egorchik007

  • Автор темы
  • Участник
  • *
  • Сообщений: 156
    • Просмотр профиля
вот, отрыл статью (http://sudouser.com/ustanovka-xosting-paneli-ispconfig-3-na-ubuntu-904.html) , немного подправил.

В этой статье описывается как установить панель управления хостингом ISPConfig на Ubuntu 9.04. ISPConfig работает со следующими компонентами:

    * Apache 1.3.x/2.0.x/2.2.x
    * Proftpd & vsftpd
    * Supports The Following Mail Servers: Sendmail & Postfix
    * All POP3 & POP3s Servers
    * All IMAP & IMAPs Servers
    * BIND 8/9 (A, CNAME, MX, SPF Records)
    * Firewall Configuration
    * Monitoring Of Services And Automatic Restart
    * Web FTP
    * Web Mail Interface
    * phpMyAdmin Integration

После установки вам будут доступны следующие параметры для вашего хостинга, где любая из опций может быть включена или выключена для аккаунтов пользователей:

    * PHP incl. Safemode
    * SSI
    * CGI-Directories
    * SSL Sites and Certificates
    * Frontpage 2002 extensions (if installed on the server)
    * MySQL Databases
    * Disk Quota
    * Webalizer statisics
    * Traffic statistics
    * Traffic limits (for web sites and resellers)
    * Disk usage statistics and overquota warnings
    * Individual standard index and error pages per domain
    * Individual records for inclusion in apache vhost (admin only)
    * Domain redirects
    * Backup
    * Log-Quota and Logrotation
    * Standard CGI
    * WAP pages
    * Hosting templates
    * Cronjobs


Начнем установку с удаления app-armor, он может помешать нормальной работе ISPConfig.

Код:

    /etc/init.d/apparmor stop
    update-rc.d -f apparmor remove
    aptitude remove apparmor apparmor-utils

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

Код:

    aptitude 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 maildrop getmail4 rkhunter binutils ntp ntpdate

В процессе установки пакетов вам надо будет ответить на вопросы, задать пароль для сервера MYSQL, отказаться от создания директорий для веб администрирования, дляпочтовой системы выбрать конфигурацию "интернет сайт", указать полное доменное имя вашего сервера, а так же согласиться на установку сертификатов.

Далее отредактируйте конфиг файл для MYSQL сервера /etc/mysql/my.cnf, закомментируйте строку bind-address = 127.0.0.1 как показано в примере ниже, затем перезапустите MYSQL сервер командой /etc/init.d/mysql restart.

Код:

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

Проверьте все ли верно, выполнив команду netstat -tap | grep mysql, результат должен быть примерно таким:

Код:

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

Во время установки почтовый сервер Courier генерирует сертификаты для localhost, нам надо сменить их на наше доменное имя, для этого нам надо удалить старые сертификаты, поправить конфигурационные файлы Courier и сгенерировать новые сертификаты для нашего домена. В примере используется домен server1.example.com.

Код:

    cd /etc/courier
    удалим старые сертификаты
    rm -f /etc/courier/imapd.pem
    rm -f /etc/courier/pop3d.pem
    Отредактируем конфиги
    vi /etc/courier/imapd.cnf
    Впишите ваш домен вместо localhost
    [...]
    CN=server1.example.com
    [...]
    Отредактируем второй конфиг
    vi /etc/courier/pop3d.cnf
    замените localhost на ваш домен
    [...]
    CN=server1.example.com
    [...]
    теперь сгененрируем новые сертификаты
    mkimapdcert
    mkpop3dcert

Перезапустите Courier для того что бы он подхватил новые сертификаты выполнив пару команд:

Код:

    /etc/init.d/courier-imap-ssl restart
    /etc/init.d/courier-pop-ssl 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

Установка Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear, 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-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp

В процессе установки надо ответить на вопросы, на первый вопросо ответьте apache2, на следующий вопрос заданный пакетом phpmyadmin ответить Yes, затем у вас спросят пароль для root на сервер mysql, и пароль для доступа к phpmyadmin, оставьте его пустым.

Включите необходимые модули для вебсервера Apache2

Код:

    a2enmod suexec rewrite ssl actions include

Далее обезопасим доступ к phpmyadmin, удалите файл /etc/phpmyadmin/htpasswd.setup и закомментируйте секцию в конфиге Apache2 /etc/phpmyadmin/apache.conf как показано ниже

Код:

    [...]
    ## Authorize for setup
    #
    #
    # AuthType Basic
    # AuthName "phpMyAdmin Setup"
    # AuthUserFile /etc/phpmyadmin/htpasswd.setup
    #
    # Require valid-user
    #
    [...]

После этого перезапустим Apache2 командой /etc/init.d/apache2 restart
Установка PureFTPd и Quota

Код:

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

Отредактируем конфиг сервера PureFTPD /etc/default/pure-ftpd-common, изменив пару важных параметров как показано ниже

Код:

    [...]
    STANDALONE_OR_INETD=standalone
    [...]
    VIRTUALCHROOT=true
    [...]

После этого перезапустите PureFTPD командой /etc/init.d/pure-ftpd-mysql restart

Для включения квот для пользователей отредактируем файл /etc/fstab который отвечает за монтирование дисков, добавим к разделу / опции usrquota и grpquota, выглядеть это будет примерно так

Код:

    # /etc/fstab: static file system information.
    #
    # Use 'vol_id --uuid' to print the universally unique identifier for a
    # device; this may be used with UUID= as a more robust way to name devices
    # that works even if disks are added and removed. See fstab(5).
    #
    #
    proc /proc proc defaults 0 0
    # / was on /dev/mapper/server1-root during installation
    UUID=b8d265bc-5959-404d-a68e-8dc1c76f18d6 / ext3 relatime,errors=remount-ro,usrquota,grpquota 0 1
    # /boot was on /dev/sda5 during installation
    UUID=01e9c3c7-2ad0-4f52-a356-18290517b362 /boot ext2 relatime 0 2
    # swap was on /dev/mapper/server1-swap_1 during installation
    UUID=c1e0bcbb-5c73-4bd2-a7b2-8beeb7526200 none swap sw 0 0
    /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0
    /dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0

Создадим файлы необходимые для работы квот и перемонтируем корневой раздел для их включения

Код:

    touch /quota.user /quota.group
    chmod 600 /quota.*
    mount -o remount /

Проверим все ли правильно выполнив команды

Код:

    quotacheck -avugm
    quotaon -avug

Установка DNS сервер MyDNS

Код:

    aptitude install g++ libc6 gcc gawk make texinfo libmysqlclient15-dev

Пакет MyDNS отсутствует в репозиториях Ubuntu, поэтому ставить его будем из исходных кодов.

Код:

    cd /tmp
    wget http://heanet.dl.sourceforge.net/sourceforge/mydns-ng/mydns-1.2.8.27.tar.gz
    tar xvfz mydns-1.2.8.27.tar.gz
    cd mydns-1.2.8
    ./configure
    make
    make install

После установки создадим стартовый скрипт для MyDNS, создайте файл /etc/init.d/mydns и впишите в него следующее

Код:

    #! /bin/sh
    #
    # mydns Start the MyDNS server
    #
    # Author: Philipp Kern .
    # Based upon skeleton 1.9.4 by Miquel van Smoorenburg
    # and Ian Murdock .
    #
    set -e
    PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
    DAEMON=/usr/local/sbin/mydns
    NAME=mydns
    DESC="DNS server"
    SCRIPTNAME=/etc/init.d/$NAME
    # Gracefully exit if the package has been removed.
    test -x $DAEMON || exit 0
    case "$1" in
    start)
    echo -n "Starting $DESC: $NAME"
    start-stop-daemon --start --quiet
    --exec $DAEMON -- -b
    echo "."
    ;;
    stop)
    echo -n "Stopping $DESC: $NAME"
    start-stop-daemon --stop --oknodo --quiet
    --exec $DAEMON
    echo "."
    ;;
    reload|force-reload)
    echo -n "Reloading $DESC configuration..."
    start-stop-daemon --stop --signal HUP --quiet
    --exec $DAEMON
    echo "done."
    ;;
    restart)
    echo -n "Restarting $DESC: $NAME"
    start-stop-daemon --stop --quiet --oknodo
    --exec $DAEMON
    sleep 1
    start-stop-daemon --start --quiet
    --exec $DAEMON -- -b
    echo "."
    ;;
    *)
    echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
    exit 1
    ;;
    esac
    exit 0

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

Код:

    chmod +x /etc/init.d/mydns
    update-rc.d mydns defaults

Установим Vlogger и Webalizer

Код:

    aptitude install vlogger webalizer

Установим Jailkit

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

Код:

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

Jailkit так же как и MyDns будем ставить из исходников

Код:

    cd /tmp
    wget http://olivier.sessink.nl/jailkit/jailkit-2.5.tar.gz
    tar xvfz jailkit-2.5.tar.gz
    cd jailkit-2.5
    ./configure
    make
    make install
    cd ..
    rm -rf jailkit-2.5*

Установим fail2ban

Код:

    aptitude install fail2ban

Установим SquirrelMail

Код:

    aptitude install squirrelmail

Создадим симлинк для более удобного входа в почтовый интерфейс, он будет доступен по адресу http://server1.example.com/webmail (server1.example.com замените на ваш домен)

Код:

    ln -s /usr/share/squirrelmail/ /var/www/webmail

Затем настроим SquirrelMail выполнив команду squirrelmail-configure.

Вместо squirrel mail вы можете установить Roundcube mail,выглядит она поприятнее, функционала побольше.

ВНИМАНИЕ - это подправленная часть статьи, читаем мои комменты под кодом.


Установим ISPConfig 3

Код:

    cd /tmp
    wget http://downloads.sourceforge.net/ispconfig/ISPConfig-3.0.1.1.tar.gz?use_mirror=
    tar xvfz ISPConfig-3.0.1.1.tar.gz
    cd ispconfig3_install/install/

ВНИМАНИЕ - вместо указанного адреса ставим ПОСЛЕДНЮЮ версию панели с оф.сайта (сначало надо посмотреть на сайте адрес - http://www.ispconfig.org )Также разархивируем не указанный файл, а закаченнный.

Запустим установку

Код:

    php -q install.php


Далее примерно описан процесс установки с ответами на вопросы задаваемыми установщиком

    root@server1:/tmp/ispconfig3_install/install# php -q install.php

    --------------------------------------------------------------------------------

    >> Initial configuration

    Operating System: Debian Lenny/Sid or compatible

    Following will be a few questions for primary configuration so be careful.
    Default values are in [brackets] and can be accepted with <ENTER>.
    Tap in "quit" (without the quotes) to stop the installer.

    Select language (en,de) [en]: <-- ENTER

    Installation mode (standard,expert) [standard]: <-- ENTER

    Full qualified hostname (FQDN) of the server, eg server1.domain.tld  [server1.example.com]: <-- ENTER

    MySQL server hostname [localhost]: <-- ENTER

    MySQL root username [root]: <-- ENTER

    MySQL root password []: <-- пароль root для mysql

    MySQL database to create [dbispconfig]: <-- ENTER

    MySQL charset [utf8]: <-- ENTER

    Generating a 2048 bit RSA private key
    ..............................................................+++
    ..............+++
    writing new private key to 'smtpd.key'
    -----
    You are about to be asked to enter information that will be incorporated
    into your certificate request.
    What you are about to enter is what is called a Distinguished Name or a DN.
    There are quite a few fields but you can leave some blank
    For some fields there will be a default value,
    If you enter '.', the field will be left blank.
    -----
    Country Name (2 letter code) [AU]: <-- ENTER
    State or Province Name (full name) [Some-State]: <-- ENTER
    Locality Name (eg, city) []: <-- ENTER
    Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- ENTER
    Organizational Unit Name (eg, section) []: <-- ENTER
    Common Name (eg, YOUR name) []: <-- ENTER
    Email Address []: <-- ENTER
    Configuring Jailkit
    Configuring SASL
    Configuring PAM
    Configuring Courier
    Configuring Spamassassin
    Configuring Amavisd
    Configuring Getmail
    Configuring Pureftpd
    Configuring MyDNS
    Configuring Apache
    Configuring Firewall
    Installing ISPConfig
    ISPConfig Port [8080]: <-- ENTER

    Configuring DBServer
    Installing Crontab
    no crontab for root
    no crontab for getmail
    Restarting services ...
    * Stopping MySQL database server mysqld
    ...done.
    * Starting MySQL database server mysqld
    ...done.
    * Checking for corrupt, not cleanly closed and upgrade needing tables.
    * Stopping Postfix Mail Transport Agent postfix
    ...done.
    * Starting Postfix Mail Transport Agent postfix
    ...done.
    * Stopping SASL Authentication Daemon saslauthd
    ...done.
    * Starting SASL Authentication Daemon saslauthd
    ...done.
    Stopping amavisd: amavisd-new.
    Starting amavisd: amavisd-new.
    * Stopping ClamAV daemon clamd
    ...done.
    * Starting ClamAV daemon clamd
    ...done.
    * Stopping Courier authentication services authdaemond
    ...done.
    * Starting Courier authentication services authdaemond
    ...done.
    * Stopping Courier IMAP server...
    ...done.
    * Starting Courier IMAP server...
    ...done.
    * Stopping Courier IMAP-SSL server...
    ...done.
    * Starting Courier IMAP-SSL server...
    ...done.
    * Stopping Courier POP3 server...
    ...done.
    * Starting Courier POP3 server...
    ...done.
    * Stopping Courier POP3-SSL server...
    ...done.
    * Starting Courier POP3-SSL server...
    ...done.
    * Restarting web server apache2
    ... waiting    ...done.
    Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -A -E -b -u 1000 -O clf:/var/log/pure-ftpd/transfer.log -B
    Installation completed.
    root@server1:/tmp/ispconfig3_install/install#

После установки система готова к использованию, зайдите в админ панель ISPConfig по адресу http://server1.example.com:8080/ с логином admin паролем admin

Вам останется только создать и настроить аккаунты, а так же немного привести в порядок конфигурацию установленных демонов.

Официальный сайт ISPConfig: http://www.ispconfig.org/

Еще раз напоминаю - спионерил статью с http://sudouser.com/ustanovka-xosting-paneli-ispconfig-3-na-ubuntu-904.html .

Отпишитесь о результате.
Удачи!

Кстати, нужно будет подправить конфиги Апача для .htaccess  файлов и глобалсов в PHP (если надо клиентам хостинга).


Пользователь решил продолжить мысль 04 Апреля 2010, 13:27:40:
ЗЫ - здесь (http://www.howtoforge.com/perfect-server-ubuntu-9.10-ispconfig-3) более новый туториал на 9.10 Ubuntu , на английском - если попросите, переведу.
« Последнее редактирование: 04 Апреля 2010, 13:27:41 от egorchik007 »

Оффлайн anonimus

  • Активист
  • *
  • Сообщений: 592
    • Просмотр профиля
Re: Идеальный хостинг сервер с панелью ISPConfig
« Ответ #1 : 04 Апреля 2010, 13:29:44 »
На howtoforge.org это все есть в большем объеме. Но все-равно спасибо за некоторые исправления и добавления. Кстати если интересно, вот для 9.10:
http://howtoforge.org/perfect-server-ubuntu-9.10-ispconfig-3
Там еще куча how-to для разных дистрибутвов и задач, мало ли кто не знает.

Оффлайн egorchik007

  • Автор темы
  • Участник
  • *
  • Сообщений: 156
    • Просмотр профиля
Re: Идеальный хостинг сервер с панелью ISPConfig
« Ответ #2 : 04 Апреля 2010, 13:35:07 »
ну я то на русском скомуниздил статью, для незнающих инглиш))

ХРИСТОС ВОСКРЕС!

 

Страница сгенерирована за 0.024 секунд. Запросов: 22.