Установка ПО · 3 min read · Oct 09, 2025

Идеальный сервер - Ubuntu Jaunty Jackalope (Ubuntu 9.04) [ISPConfig 2] - Страница 4

11 Установка программного обеспечения

Теперь мы установим несколько пакетов, которые понадобятся позже. Выполните

aptitude install binutils cpp fetchmail flex gcc libarchive-zip-perl libc6-dev libcompress-zlib-perl libdb4.6-dev libpcre3 libpopt-dev lynx m4 make ncftp nmap openssl perl perl-modules unzip zip zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ build-essential

(Эта команда должна быть в одной строке!)

12 Квота

(Если вы выбрали другую схему разбиения, чем я, вам нужно отредактировать эту главу, чтобы квота применялась к разделам, где она вам нужна.)

Чтобы установить квоту, выполните

aptitude install quota

Отредактируйте /etc/fstab. Мой выглядит так (я добавил,usrquota,grpquota к разделу с точкой монтирования /):

vi /etc/fstab

| # /etc/fstab: статическая информация о файловой системе. # # Используйте 'vol_id --uuid', чтобы напечатать универсальный уникальный идентификатор для устройства; это может быть использовано с UUID= как более надежный способ наименования устройств, который работает даже если диски добавляются и удаляются. См. fstab(5). # # <файловая система> <точка монтирования> <тип> <опции> <дамп> <проход> proc /proc proc defaults 0 0 # / был на /dev/mapper/server1-root во время установки UUID=b8d265bc-5959-404d-a68e-8dc1c76f18d6 / ext3 relatime,errors=remount-ro,usrquota,grpquota 0 1 # /boot был на /dev/sda5 во время установки UUID=01e9c3c7-2ad0-4f52-a356-18290517b362 /boot ext2 relatime 0 2 # swap был на /dev/mapper/server1-swap_1 во время установки 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

13 DNS сервер

Выполните

aptitude install bind9

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

/etc/init.d/bind9 stop

Отредактируйте файл /etc/default/bind9 так, чтобы демон работал от непривилегированного пользователя bind, chrooted в /var/lib/named. Измените строку: OPTIONS=”-u bind” так, чтобы она выглядела как OPTIONS=”-u bind -t /var/lib/named”:

vi /etc/default/bind9

| # запускать resolvconf? RESOLVCONF=yes # параметры запуска для сервера OPTIONS="-u bind -t /var/lib/named" |

Создайте необходимые директории в /var/lib:

mkdir -p /var/lib/named/etc  
mkdir /var/lib/named/dev  
mkdir -p /var/lib/named/var/cache/bind  
mkdir -p /var/lib/named/var/run/bind/run

Затем переместите конфигурационную директорию из /etc в /var/lib/named/etc:

mv /etc/bind /var/lib/named/etc

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

ln -s /var/lib/named/etc/bind /etc/bind

Создайте устройства null и random, и исправьте права доступа к директориям:

mknod /var/lib/named/dev/null c 1 3  
mknod /var/lib/named/dev/random c 1 8  
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random  
chown -R bind:bind /var/lib/named/var/*  
chown -R bind:bind /var/lib/named/etc/bind

Нам нужно изменить /etc/default/syslogd, чтобы мы все еще могли получать важные сообщения, записываемые в системные журналы. Измените строку: SYSLOGD=”” так, чтобы она выглядела как SYSLOGD=”-a /var/lib/named/dev/log”:

vi /etc/default/syslogd

| # # Основной конфигурационный файл для syslogd # # Полная документация о возможных аргументах находится в manpage syslogd(8). # # Для удаленного UDP-журналирования используйте SYSLOGD="-r" # SYSLOGD="-a /var/lib/named/dev/log" |

Перезапустите демон журналирования:

/etc/init.d/sysklogd restart

Запустите BIND и проверьте /var/log/syslog на наличие ошибок:

/etc/init.d/bind9 start

14 MySQL

Чтобы установить MySQL, мы выполняем

aptitude install mysql-server mysql-client libmysqlclient15-dev

Вам будет предложено ввести пароль для пользователя root MySQL - этот пароль действителен для пользователя root@localhost, а также [email protected], поэтому нам не нужно указывать пароль root MySQL вручную позже:

Новый пароль для пользователя MySQL “root”: <– вашпарольrootsql
Повторите пароль для пользователя MySQL “root”: <– вашпарольrootsql

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

vi /etc/mysql/my.cnf

| [...] # Вместо skip-networking по умолчанию теперь слушает только на # localhost, что более совместимо и не менее безопасно. #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      4318/mysqld  
root@server1:~#
Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.