Настройка сервера · 5 min read · Oct 08, 2025

Идеальный сервер - CentOS 6.3 x86_64 (nginx, Dovecot, ISPConfig 3) - Страница 3

4 Настройка /etc/hosts

Далее редактируем /etc/hosts. Сделайте его таким:

vi /etc/hosts

| 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 192.168.0.100 server1.example.com server1 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 |

5 Настройка брандмауэра

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

Я хочу установить ISPConfig в конце этого руководства, который поставляется со своим собственным брандмауэром. Поэтому я отключаю стандартный брандмауэр CentOS сейчас. Конечно, вы можете оставить его включенным и настроить по своим нуждам (но тогда вам не следует использовать какой-либо другой брандмауэр позже, так как он, скорее всего, будет мешать брандмауэру CentOS).

Запустите

system-config-firewall

и отключите брандмауэр.

Чтобы проверить, что брандмауэр действительно был отключен, вы можете выполнить

iptables -L 

после этого. Вывод должен выглядеть так:

[root@server1 ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
[root@server1 ~]#

6 Отключение SELinux

SELinux - это расширение безопасности CentOS, которое должно обеспечивать расширенную безопасность. На мой взгляд, вам не нужно это для настройки безопасной системы, и оно обычно вызывает больше проблем, чем преимуществ (подумайте об этом после того, как вы провели неделю, устраняя неполадки, потому что какая-то служба не работала так, как ожидалось, а затем вы обнаруживаете, что все было в порядке, только SELinux вызывало проблему). Поэтому я отключаю его (это обязательно, если вы хотите установить ISPConfig позже).

Отредактируйте /etc/selinux/config и установите SELINUX=disabled:

vi /etc/selinux/config

| # Этот файл управляет состоянием SELinux в системе. # SELINUX= может принимать одно из этих трех значений: # enforcing - Политика безопасности SELinux применяется. # permissive - SELinux выводит предупреждения вместо применения. # disabled - Политика SELinux не загружается. SELINUX=disabled # SELINUXTYPE= может принимать одно из этих двух значений: # targeted - Защищены целевые процессы, # mls - Защита многоуровневой безопасности. SELINUXTYPE=targeted |

После этого мы должны перезагрузить систему:

reboot

7 Включение дополнительных репозиториев и установка программного обеспечения

Сначала импортируем GPG-ключи для программных пакетов:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Затем мы включаем репозитории RPMforge и EPEL в нашей системе CentOS, так как многие пакеты, которые мы собираемся установить в ходе этого руководства, недоступны в официальных репозиториях CentOS 6.3:

rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

cd /tmp
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
rpm -ivh rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

(Если вышеуказанная ссылка больше не работает, вы можете найти текущую версию rpmforge-release здесь: http://packages.sw.be/rpmforge-release/)

rpm –import https://fedoraproject.org/static/0608B895.txt
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm
rpm -ivh epel-release-6-7.noarch.rpm

Нам также нужно включить репозиторий Remi RPM, который содержит пакет php-fpm, который мы установим позже:

rpm –import http://rpms.famillecollet.com/RPM-GPG-KEY-remi
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

yum install yum-priorities

Отредактируйте /etc/yum.repos.d/epel.repo…

vi /etc/yum.repos.d/epel.repo

… и добавьте строку priority=10 в секцию [epel]:

| [epel] name=Дополнительные пакеты для Enterprise Linux 6 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch failovermethod=priority enabled=1 priority=10 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 [...] |

Затем сделайте то же самое для секции [remi] в /etc/yum.repos.d/remi.repo, плюс измените enabled на 1:

vi /etc/yum.repos.d/remi.repo

| [remi] name=RPM от remi для Enterprise Linux $releasever - $basearch #baseurl=http://rpms.famillecollet.com/enterprise/$releasever/remi/$basearch/ mirrorlist=http://rpms.famillecollet.com/enterprise/$releasever/remi/mirror enabled=1 priority=10 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi failovermethod=priority [remi-test] name=RPM от remi в тесте для Enterprise Linux $releasever - $basearch #baseurl=http://rpms.famillecollet.com/enterprise/$releasever/test/$basearch/ mirrorlist=http://rpms.famillecollet.com/enterprise/$releasever/test/mirror enabled=0 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi |

Затем мы обновляем наши существующие пакеты в системе:

yum update

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

yum groupinstall 'Development Tools'

8 Квота

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

Чтобы установить квоту, мы выполняем эту команду:

yum install quota

Отредактируйте /etc/fstab и добавьте,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 к разделу / ( /dev/mapper/vg_server1-lv_root):

vi /etc/fstab

| # # /etc/fstab # Создано anaconda в Ср Июл 11 17:52:57 2012 # # Доступные файловые системы, по ссылке, поддерживаются в '/dev/disk' # См. страницы man fstab(5), findfs(8), mount(8) и/или blkid(8) для получения дополнительной информации # /dev/mapper/vg_server1-lv_root / ext4 defaults,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 1 1 UUID=806910a1-dbdf-4746-bd94-cbe73ce81493 /boot ext4 defaults 1 2 /dev/mapper/vg_server1-lv_swap swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 |

Затем выполните

mount -o remount /

quotacheck -avugm
quotaon -avug

чтобы включить квоту.

9 Синхронизация системных часов

Хорошей идеей является синхронизация системных часов с сервером NTP ( n etwork t ime p rotocol) через Интернет. Просто выполните

yum install ntp

и ваше системное время всегда будет синхронизировано.

10 Установка MySQL

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

yum install mysql mysql-server

Затем создайте ссылки на запуск системы для MySQL и запустите его:

chkconfig –levels 235 mysqld on
/etc/init.d/mysqld start

Установите пароли для учетной записи root MySQL:

mysql_secure_installation

[root@server1 tmp]# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

Вам нужно будет ввести текущий
пароль для пользователя root, чтобы
защитить его. Если вы только что
установили MySQL и еще не
установили пароль root,
то пароль будет пустым,
поэтому просто нажмите
Enter здесь.

Введите текущий пароль для root (нажмите Enter для отсутствия):
OK, успешно использован пароль, продолжаем…

Установка пароля root
обеспечивает, что никто
не сможет войти в
пользователя root MySQL
без надлежащей авторизации.

Установить пароль root? [Y/n] <– ENTER
Новый пароль: <– yourrootsqlpassword
Повторите новый пароль: <– yourrootsqlpassword
Пароль успешно обновлен!
Перезагрузка таблиц привилегий..
… Успех!

По умолчанию установка MySQL
имеет анонимного пользователя,
что позволяет любому
войти в MySQL
без необходимости
создания учетной записи
пользователя для них.
Это предназначено
только для тестирования
и для того, чтобы
сделать установку
немного более гладкой.
Вы должны удалить
их перед переходом
в производственную
среду.

Удалить анонимных
пользователей? [Y/n] <– ENTER
… Успех!

Обычно root
должен иметь возможность
подключаться только
с ‘localhost’.
Это обеспечивает,
что кто-то не
может угадать
пароль root
по сети.

Запретить удаленный
вход root? [Y/n] <– ENTER
… Успех!

По умолчанию MySQL
поставляется с
базой данных
с именем ‘test’,
к которой любой
может получить доступ.
Это также предназначено
только для тестирования
и должно быть
удалено перед
переходом в
производственную
среду.

Удалить тестовую
базу данных
и доступ к ней? [Y/n] <– ENTER

  • Удаление тестовой
    базы данных…
    … Успех!
  • Удаление привилегий
    на тестовую
    базу данных…
    … Успех!

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

Перезагрузить
таблицы привилегий
сейчас? [Y/n] <– ENTER
… Успех!

Очистка…

Все готово! Если вы
выполнили все
вышеуказанные шаги,
ваша установка MySQL
должна быть
теперь защищена.

Спасибо за
использование MySQL!

[root@server1 tmp]#

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.