- Создание пользователя «Администратор»
- Установите брандмауэр CSF
- Установка Apache, PHP и MySQL
- Дополнительные задания
Установка веб-сервера для производственной среды с Ubuntu в качестве операционной системы не так уж сложна, поскольку для большинства необходимых пакетов не требуется много конфигураций. В этом руководстве мы создаем (опытного) пользователя, устанавливаем Apache, PHP и MySQL, phpMyAdmin и несколько других сервисов, необходимых для запуска мощного и безопасного веб-сервера.
Препараты
Сначала вам нужен веб-сервер (VPS или выделенный сервер). Попробуйте получить облачный сервер, он очень мощный, избыточный и гибкий. Выберите образ Linux, например Ubuntu 10.04 LTS, и убедитесь, что сервер SSH запущен и работает. Не используйте изображение там, где предварительно установлен какой-либо веб-сервис.
Создание пользователя «Администратор»
- Войдите через SSH, используя учетную запись пользователя root
- Создайте нового пользователя с помощью useradd -d / home / newuser -m newuser (-d указывает на каталог, а -m создаст каталог). Используйте passwd newuser для создания пароля для пользователя.
- Сделайте нового пользователя владельцем недавно созданного каталога пользователя: chown newuser: newuser / home / newuser
- Добавьте нового пользователя в группу sudo с помощью adduser newuser sudo
- Необязательно: измените «оболочку» для этого пользователя с помощью: chsh -s / bin / bash newuser
- Ограничить корневой доступ; используйте команду sudo passwd -l root, чтобы отключить пароль root. Откройте второе окно входа в систему с новым именем пользователя и закройте ТОЛЬКО первое окно терминала, если ваша новая учетная запись работает (сначала проверьте команду admin с помощью sudo).
Установка Sendmail
Мы не устанавливаем почтовый сервер, такой как postfix, но нам нужен простой почтовый демон, который может отправлять простые почтовые сообщения.
- Установите программу sendmail, используя sudo apt-get install sendmail
- Протестируйте программу, используя
эхо "привет мир" | / usr / sbin / sendmail -v [email protected]
Установите брандмауэр CSF
Для завершения установки csf должен быть установлен модуль perl LWP (libwww-perl). Сценарий установки csf остановит процесс установки, если этот пакет еще не установлен. В этом случае установите модуль с помощью sudo apt-get install libwww-perl и перезапустите сценарий установки csf.
- Перейдите в свой домашний каталог и загрузите csf, используя
wget http://www.configserver.com/free/csf.tgz - Распакуйте загруженный файл: tar -xzf csf.tgz
- Перейдите в каталог csf cd csf и запустите скрипт установки (с правами root) sudo sh install.sh
- Теперь давайте проверим, что необходимые модули iptables работают на 100% в нашей системе, введите команду sudo perl /etc/csf/csftest.pl. Вы получаете небольшой отчет и, если все выглядит хорошо, переходите к следующему шагу.
- Откройте файл конфигурации csf sudo nano /etc/csf/csf.conf, проверьте номера портов по умолчанию и, в конечном итоге, другие настройки. Каждый параметр хорошо задокументирован, если вы готовы, измените также эту строку TESTING = «1», чтобы включить брандмауэр (используйте ctrl + x, чтобы сохранить файл).
- Теперь нам нужно перезапустить службу csf, используя sudo csf -r, открыть второй терминал и войти в систему, используя SSH. Вам нужен этот дополнительный шаг, чтобы быть уверенным, что ваш брандмауэр не заблокировал для вас доступ по ssh 😉
Установка Apache, PHP и MySQL
- Сначала мы устанавливаем Apache: sudo apt-get install apache2
- Мы хотим использовать модуль MPM prefork вместо рабочего модуля MPM для лучшей производительности: sudo apt-get install apache2-mpm-prefork
- Далее мы можем установить PHP с помощью sudo apt-get install php5-cgi php5-cli (на данный момент этих двух библиотек достаточно, мы добавим больше их позже)
- Мы устанавливаем suPHP для большей безопасности, suPHP делает возможным выполнение сценариев PHP пользователем, который создал сценарий. Войдите в терминал:
sudo apt-get установить libapache2-mod-suphp - Теперь установите сервис MySQL:
sudo apt-get установить mysql-сервер libapache2-mod-auth-mysql php5-mysql. Укажите надежный пароль для пользователя root MySQL.
Создайте свой первый виртуальный хостинг
Мы уже создали пользователя в начале этого урока, теперь нам нравится устанавливать phpMyAdmin в качестве нашего первого веб-приложения.
- Перейдите в домашний каталог вашего пользователя и создайте новый каталог mkdir phpmyadmin
- Теперь мы создаем файл хоста для Apache:
sudo nano /etc/apache2/sites-available/myphpmyadmin.conf - Внутри этого нового файла мы добавим следующий код:
- Сохраните файл с помощью Ctrl + X
- Включите конфигурацию сайта с помощью sudo a2ensite myphpmyadmin.conf и перезагрузите Apache с помощью sudo /etc/init.d/apache2 reload.
Теперь мы можем установить phpMyAdmin для виртуального хоста, который мы только что создали.
- Вернитесь в домашний каталог вашего пользователя и загрузите phpMyAdmin, используя
wget http://downloads.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.4.3.1/phpMyAdmin-3.4.3.1-english.tar.gz - Распакуйте архив gz с помощью tar xvfz phpMyAdmin-3.4.3.1-english.tar.gz и переместите извлеченный каталог в каталог хоста с помощью
mv /home/newuser/phpMyAdmin-3.4.3.1-english / home / newuser / phpmyadmin - Откройте веб-браузер, введите имя сервера в адресной строке, и вы должны увидеть страницу входа phpMyAdmin. (вы можете войти с помощью пароля root MySQL)
Дополнительные задания
Мы упоминали ранее, что вы должны установить дополнительные библиотеки PHP.
- Установите эти общие библиотеки PHP:
sudo apt-get install php5-curl php5-gd php5-mcrypt Вам нужно исправить #; ошибка комментария внутри файла mcrypt.ini или вы получите устаревшие предупреждения. Перезапустите Apache после установки этих функций PHP - Создайте своего типа суперпользователя для своей базы данных, используя phpMyAdmin, гораздо безопаснее использовать другого пользователя, чем «root», для обычных операций с базой данных.
- Ваш хост phpMyAdmin доступен для всех, вы должны защитить свой инструмент базы данных от использования ботов.
- Установите эти общие библиотеки PHP:
Вам необходимо ввести эти правила в файл конфигурации вашего хоста.
Пока это все, добавьте дополнительные хосты и установите свои сайты. Служба DNS не является частью этого учебного пособия, вместо этого используйте зону DNS от вашего поставщика доменных имен и создайте записи A для IP-адреса вашего сервера.
Если у вас возникли проблемы с использованием этого руководства для вашего собственного сервера или для любого другого вопроса, пожалуйста, оставьте свой комментарий ниже.
Источник : Блог веб-разработки