Веб-сервер на Linux. Часть 1. Установка CentOS 7

Если вы читаете эту статью, то, скорее всего, отлично понимаете, зачем вам нужен веб-сервер и останавливаться на этом я не буду. Но и просто описать, как происходит установка CentOS 7 и как настроить окружение, мне показалось неинтересным. Поэтому мы возьмем Windows, VirtualBox и будем настраивать веб-сервер в виртуальной машине, в виртуальной сети. Параллельной задачей, кроме как разобраться с установкой и настройкой веб-сервера на Linux, будем создавать удобную среду на подобии OpenServer или Denwer, но со всеми преимуществами полноценного nix-сервера.


Содержание

Вторая частьНачальная настройка CentOS после установки

Что нам понадобится

VirtualBox для Windows — https://www.virtualbox.org/wiki/Downloads
VBoxHeadlessTray — http://www.toptensoftware.com/VBoxHeadlessTray/
Образ CentOS 7 Minimal ISO — https://www.centos.org/download/
SSH клиент, PuTTY вполне подойдет http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Создаем контейнер виртуальной машины для CentOS в VirtualBox

Качаем последнюю версию VirtualBox по ссылке выше и устанавливаем. Если у вас уже стоит VirtualBox, убедитесь, что версия не ниже 5.0.12, т.к. в младших версиях с CentOS наблюдается ряд проблем (подробнее можете почитать в примечаниях к выпуску Centos 7).

Запускаем VirtualBox, заходим в настройки и смотрим конфигурацию виртуальной сети:

Конфигурация виртуальной сети в VirtualBox

Ок, сеть 192.168.56.0/24, DHCP раздает адреса со 101 по 254. Запомним эту информацию.

Переходим к созданию контейнера для CentOS 7. Для этого нажимаем на кнопочку «Создать» и переключаемся в «Экспертный режим».
Тип OS — Linux, Версия — RedHat (64-bit). Объем ОЗУ поставим в 512 Мб, работать будем только в консоли, так что этого нам хватит с запасом. Жесткий диск создаем новый.
Размер ОЗУ и тип виртуальной машины для CentOS 7
Нажимаем кнопку «Создать» и определяем конфигурацию жесткого диска — можно все оставить по умолчанию: размер 8Гб (можете сразу увеличить, если понимаете, что вам не хватит), тип VDI, Динамический. Снова нажимаем кнопку «Создать».

Контейнер для виртуальной машины создан. Немного подкорректируем настройки:

На вкладке «Система»->»Материнская плата» меняем порядок загрузки:
Меняем порядок загрузки
Ставим в «Процессорах» 2 штуки и галочку PAE/NX
Меняем настройки для виртуальных процессоров
Переходим в «Дисплей» и добавляем видеопамяти до 16 Мб. Ускорение графики нам ни к чему, т.к. у нас только консоль.
Немного добавляем видеопамяти
Переходим в носители и указываем наш образ с CentOS 7.
Выбираем образ CentOS
Отключаем звуковую карту.
Отключаем звуковую карту
Сеть. Мы будем использовать 2 интерфейса. Первый в режиме bridge (сетевой мост). В селекте «Имя» выберите тот интерфейс, через который вы подключаетесь к вашему роутеру. Это позволит виртуалке получить IP из вашей домашней сети, что часто полезно и интернет она будет получать от вашего роутера. Если у вас не так (ходите в интернет без роутера), или вы планируете, что вашей виртуалке всегда нужен будет интернет — используйте NAT.
Для первого подключения ставим "Сетевой мост"
Для второго интерфейса выбираем «Виртуальный адаптер хоста» для подключения к виртуальной сети. Благодаря этому, ваш web-сервер будет доступен вне зависимости от того, в какой сети вы работаете. Если бы мы ограничились только первым адаптером, то как только вы отключитесь от вашего роутера, пришлось бы переконфигурировать сетевое соединение под новые условия. А так веб-сервер будет вам всегда доступен в виртуальной сети.
Второй адаптер будет подключаться к виртуальной сети
Ну и последним шагом отключим USB. Вряд ли нам понадобится.
Отключаем USB
На это собственно все, запускаем виртуальную машину.

Установка Centos 7

Запуск установщика CentOS 7

Если вы все сделали правильно, у вас запустится установщик и начнется установка CentOS 7 (а если не запустился, проверьте еще раз порядок загрузки и, что в носителях у нас указан iso с дистрибутивом CentOS 7). Выбираем первый пункт — Install CentOS 7 (обратите внимание, что по умолчанию выбран второй пункт «Test this media…» — если вы выбрали его то можете подождать пока не проверятся контрольные суммы образа, а можете во время проверки нажать Esc).
Начинаем установку CentOS 7

На первом шаге нам предлагают выбрать язык установщика. Оставляем все как есть и нажимаем кнопку Contunue.
Стартовый экран установщика CentOS
Второй шаг — основное меню установщика.
Основное меню установщика CentOS 7

Настройка локализации и даты/времени

Настройки с датой/временем и языковые настройки оставим как есть. Эти моменты мы настроим потом вручную — это полезно в качестве практики. Если вы покупаете VDS, например, в Германии, трудно ожидать, что языковые настройки будут русские и время выставлено по Москве.

Выбираем профиль безопасности

Настраиваем профиль безопасности — SECURITY. Нажимаем Security Policy, выбираем Standart System Security Profile. Нажимаем кнопку «Select Profile», затем «Done».
Выбор профиля безопасности

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

Переходим к группе SYSTEM.

Отключим механизм сбора информации о сбоях ядра KDUMP. Заходим в КDUMP, снимаем галочку с «Enable kdump» и нажимаем «Done».
Отключаем KDUMP

Разбиение для жесткого диска то же оставим без изменения. Нажмите «Installation destination», выберите наш жесткий диск. Убедитесь, что установлена галочка «Automatically configure partitions» и нажимайте «Done».
Выбор разбиения жесткого диска

Настройка сети

Переходим к настройке сетевых интерфейсов. Нажимаем NETWORK&HOST NAME и переходим к окну конфигурации. Первым делом задайте hostname для вашего сервера — у меня это web.local, вы можете повторить за мной или же написать все что хотите.

Теперь посмотрим на список сетевых интерфейсов. Первый у нас для интернета, настройки он получает от роутера по DHCP или через NAT. Давайте включим его, установив переключатель в статус ON. Статус должен сменится на connected и интерфейс получить IP адрес.
Настраиваем первый сетевой интерфейс
Теперь нажмем кнопку «Configure» и на закладке «General» установим галочку «Automatically connect to the…» — для того что бы при загрузке операционной системы, интерфейс был сразу включен.
Отключаем IPv6 (конечно если вы им не пользуетесь 😉 ) На закладке «IPv6 Settings» ставим «Method» в Ignore. Нажимаем «Save».

Отключаем IPv6

Переходим ко второму интерфейсу. Включаем, и видим что IP адрес получили уже от DCHP виртуальной сети. Но адрес который может в один прекрасный момент поменяться, нам не подходит. Давайте зададим статический. Нажимаем «Configure» и первым делом, по аналогии с первым интерфейсом, задаем автоматическое включение и отключаем IPv6. Затем переходим на закладку «IPv4 Settings». «Method» выбираем Manual, в списке адресов Addresses нажимаем Add и добавляем IP адрес.

Помните, выше мы запомнили с вами настройки виртуальной сети? DHCP раздает адреса начиная с 56.101, следовательно нам надо выбрать адрес меньше чем 101. Я выбрал 192.168.56.80. Задаем маску подсети 24 и нажимаем «Save». Настройка сети завершена, жмем «Done».
Задаем IP адрес вручную

Ну вот установка CentOS 7 почти закончена. Нажимаем кнопку «Begin Installation» и процесс установки запускается.
Установка CentOS 7

Пароль root и пользователь для работы

Пока идет установка зададим пароль администратора.
Устанавливаем пароль root

Так же можно создать учетную запись из под которой будем работать. Нажимаем «USER CREATION» и задаем логин, пароль и ставим галочку «Make this user administrator», что поместить нашего пользователя в группу wheel. Обратите внимание — если задали пароль, который установщик посчитал слабым — то на кнопку «Done», надо будет нажать два раза. На общедоступных серверах такие пароли конечно же ставить нельзя, но в рамках нашей задачи с паролем можно особо не мудрить.
Добавляем учетную запись для повседневной работы

Теперь осталось немного подождать, пока установятся все пакеты и по завершении нажать кнопку Reboot. Поздравляю, установка CentOS 7 завершена.
Установка CentOS 7 завершена

Запуск виртуальной машины с CentOS 7

Запуск виртуальной машины в VirtualBox возможен в трех режимах:
Три способа запуска виртуальной машины

1. Обычный запуск. В этом случае виртуальная машина загрузится в обычном окне, которое будет тем или иным способом присутствовать у вас на рабочем столе или в свернутом виде на панели задач. Это конечно не совсем удобно, особенно когда виртуалка перехватывает мышь.
2. Запуск в фоновом режиме. В этом случае виртуальная машина запускается фоновым процессом и после того как она загрузилась, мы можем спокойно закрыть основное окно VirtualBox. Процесс останется и мы можем, например, спокойно подключится к серверу по ssh.
3. И наконец запуск в фоновом режиме с интерфейсом. Виртуальная машина загрузится в окне, но при необходимости, мы можем отправить ее в фон.
Запуск виртуальной машины в фоновом режиме

Запуск в фоне конечно очень удобен, но отсутствие всякой индикации о состоянии виртуальной машины или просто о факте такого запуска весьма напрягает. Но мир не без добрых людей и тут нам поможем утилитка VBoxHeadlessTray. Она запускает выбранную виртуалку в фоновом режиме и помещает в трей иконку.
VBoxHeadlessTray
Нажав по иконке правой кнопкой увидим меню, с помощью которого можно управлять запущенной виртуальной машиной. Согласитесь, так это делать намного удобнее.
Управление виртуальной машиной с помощью VBoxHeadlessTray

Подключении по ssh с помощью putty

Работать с сервером намного удобнее используя ssh-клиент. Вот уже многие годы стандартом для win систем остается putty. Подробно на всех настройках этого клиента я останавливаться не буду, давайте просто подключимся к нашему серверу. Запускаем putty и вводим в «HostName» IP адрес нашего сервера 192.168.56.80. Подключатся к нему мы будем постоянно, поэтому давайте сохраним этот IP в списке. В «Saved Sessions» вводим название и нажимаем кнопку «Save». А что бы подключится — нажимаем «Open».
Настройка PuTTY
и видим строку приглашения нашего сервера:
Подключились

После того как установка CentOS 7 завершена — нам надо сделать немало настроек, что бы подстроить сервер под себя. Об этом следующей части.

комментария 3
  • Кира

    Здравствуйте! Мне очень понравилась Ваша статья, спасибо огромное за её публикацию. Немного начинаю разбираться с вашей помощью. С нетерпением жду когда выйдет 2 часть. Это скоро?

    Ответить
    • hc

      Спасибо за отзыв. Продолжение планирую выложить в конце этой недели.

      Ответить
  • Волдемар

    Спасибо,очень интересно,жду продолжения!

    Ответить
Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *