Домашний сервер

Как настроить веб-сервер Apache в Ubuntu?

Как настроить веб-сервер Apache в Ubuntu?

Apache, как называет его Apache Foundation, «HTTP-сервер номер один в Интернете». Проект Apache разрабатывает и поддерживает HTTP-сервер с открытым исходным кодом для серверов UNIX и Windows. Он предоставляет безопасный, эффективный и расширяемый сервер, который предоставляет службы HTTP в синхронизации с текущими стандартами HTTP. В этом посте я объясню, как настроить веб-сервер Apache.в системе Ubuntu. Конечно, хостинг вашего сайта у известных поставщиков услуг хостинга, таких как HostGator или GoDaddy, имеет свои преимущества. Это тема для нового поста (скоро). Но сам хостинг обеспечивает больший контроль над тем, что происходит на вашем сервере. Кроме того, вы можете использовать свой сервер для других целей помимо размещения вашего веб-сайта: файловый сервер, станция загрузки, медиа-сервер и т.д. Итак, без дальнейших задержек, давайте рассмотрим, как настроить веб-сервер Apache в системе Ubuntu.

Настройка сервера Ubuntu

Прежде чем вы сможете настроить веб-сервер Apache, вам потребуется система для его запуска. Я рекомендую использовать сервер на базе Linux, и, по моему опыту, Ubuntu Server Edition – самый простой и удобный для пользователя, но с очень хорошей безопасностью. Я также предлагаю вам выбрать версию LTS (Long Term Support), которая предоставляет обновления и поддержку в течение 5 лет. В то время как не самые передовые релизы LTS являются наиболее стабильными для запуска надежных веб-серверов.

Процедуры установки подробно описаны в нескольких местах. Во время установки сервера я обычно выбираю установку сервера LAMP (Linux Apache MySQL PHP), файлового сервера SAMBA и сервера SSH, как показано на рисунке ниже:

Как настроить веб-сервер Apache в Ubuntu?

Ubuntu Tasksel – Выбор пакета

Во время установки у вас спросят имя пользователя, пароль, имя хоста (имя вашего сервера), пароль администратора MySQL и т.д. Для большинства других вопросов вы можете выбрать значение по умолчанию или оставить пустым. После завершения установки обновите вашу систему, используя следующие команды:

sudo apt-get update sudo apt-get upgrade

Безопасный Apache и PHP

После установки сервера LAMP выполните следующие незначительные шаги, чтобы повысить его безопасность:

Apache Security

Отредактируйте /etc/apache2/conf.d/securityс помощью следующей команды:

sudo nano /etc/apache2/conf.d/security

Найдите следующие строки и внесите изменения, перечисленные ниже:

#ServerTokens Minimal #ServerTokens OS #ServerTokens Full ServerTokens Prod

И,

ServerSignature Off #ServerSignature On

#В передней линии делает Apache игнорировать эту строку (комментарий).

PHP Безопасность

Отредактируйте /etc/php5/apache2/php.iniс помощью следующей команды:

sudo nano /etc/php5/apache2/php.ini

Найдите expose_php = Onи измените его следующим образом:

expose_php = Off

Вышеуказанные изменения не позволят вашему серверу раскрыть, что PHP установлен (добавив свою подпись в заголовок веб-сервера) на ваш сервер вместе с другой информацией. Несмотря на то, что это может не быть угрозой безопасности, потенциальным хакерам это показывает, что веб-сервер использует PHP. Чем меньше хакер знает о конфигурации вашего сервера, тем лучше. Перезагрузите сервер Apache, используя следующую команду, чтобы применить вышеуказанные изменения:

sudo service apache2 reload

Установка графического интерфейса рабочего стола

Помните, что веб-сервер более безопасен, когда у него нет головы, то есть, когда у вас не работает GUI Desktop Environment. Тем не менее, новичкам намного проще выполнять задачи с помощью графического интерфейса пользователя. Следуйте этому руководству, чтобы установить минимальную или облегченную рабочую среду на вашем сервере. Если вам нужна полноценная среда рабочего стола (не рекомендуется для серверов), вы можете установить Ubuntu Desktop (Unity), Kubuntu Desktop (KDE) или Lubuntu Desktop (LXDE).

sudo apt-get install ubuntu-desktop sudo apt-get install kubuntu-desktop sudo apt-get install lubuntu-desktop

Выберите один из вышеперечисленных, исходя из ваших предпочтений. Кроме того, вы можете установить графическую веб-среду, такую ​​как Webmin (руководство по установке ). Все, что делает Webmin, – это упрощает системное администрирование, предоставляя сетевые альтернативы для операций командной строки. Это не традиционная графическая среда рабочего стола.

Изменить разрешения пользователя

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

sudo usermod -g www-data -G mackey,adm,cdrom,sudo,dip,plugdev,sambashare,lpadmin mackey

Где mackey(в конце строки выше) – пользователь, которому будут принадлежать файлы сайта. www-data, которая является группой, к которой принадлежат все файлы веб-сайта, будет mackeyновой основной группой пользователя. mackey,adm,cdrom,sudo,dip,plugdev,sambashare,lpadminбудут mackeyассоциации группы пользователя пользователя. Связи вторичной группы будут различаться в зависимости от вашей ситуации / установки. Просмотрите этот пост, чтобы составить список ассоциаций вторичных групп. Любые ошибки могут заблокировать вас из вашей системы.

Настройка веб-сервера Apache

Выполнив описанные выше шаги, вы готовы к настройке веб-сервера Apache. Файлы конфигурации находятся в, /etc/apache2а файлы сайта – в /var/www. Во-первых, давайте остановим сервер Apache на время:

sudo service apache2 stop

Переименуйте файл сайта по умолчанию, /etc/apache2/sites-available/defaultиспользуя следующую команду:

sudo nano /etc/apache2/sites-available/default /etc/apache2/sites-available/default.bak

Теперь создайте новый файл /etc/apache2/sites-available/defaultсо следующим содержимым:

<virtualhost *:80> ServerName domain.com ServerAlias www.domain.com ServerAdmin admin@domain.com DocumentRoot /var/www/mywebsite <directory></directory> Options FollowSymLinks AllowOverride None <directory /var/www/mywebsite></directory> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </directory> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel emerg CustomLog ${APACHE_LOG_DIR}/access.log combined Alias /doc/ "/usr/share/doc/" <directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </directory> </virtualhost>

Следующие строки должны быть настроены:

ServerName domain.com ServerAlias www.domain.com ServerAdmin admin@domain.com DocumentRoot /var/www/mywebsite <directory /var/www/mywebsite></directory> LogLevel emerg

/var/www/mywebsiteэто папка, в которой находятся файлы вашего сайта. Индексный файл вашего сайта должен присутствовать в этой папке. Установите предпочитаемый уровень ведения журнала. emergрегистрирует только экстренные сообщения.

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

sudo a2ensite default

Затем перезапустите сервер Apache:

sudo service apache2 reload

Теперь вы сможете получить доступ к своему веб-сайту, используя свой IP-адрес.

Настройка DNS

Доступ к вашему веб-сайту с использованием вашего IP-адреса неудобен. Если у вас есть доменное имя, вам понадобится служба DNS для поиска вашего сервера по доменному имени. Это еще более важно, если у вас динамический IP-адрес.

Сначала настройте службу DNS, такую ​​как Zoneedit или DynDns, и отредактируйте записи зоны, указав имя домена на свой IP-адрес. Пример из Zoneedit показан на рисунке ниже.

Как настроить веб-сервер Apache в Ubuntu?

Zoneedit Zone Records

Затем скопируйте DNS-серверы имен, предоставляемые вашей службой DNS, и введите их в диспетчере DNS для вашего доменного имени, предоставленного регистратором доменов. Пример GoDaddy с DNS-серверами Zoneedit показан на рисунке ниже.

Как настроить веб-сервер Apache в Ubuntu?

DNS-серверы GoDaddy DNS

Дайте пару часов на распространение указанных изменений DNS. Теперь вы сможете получить доступ к своему сайту с вашим доменным именем. Если у вас есть динамический IP-адрес, вам, возможно, придется настроить динамическое обновление DNS, такое как ddclient, как описано в этом посте.

Запуск нескольких сайтов

Наиболее распространенный способ запуска нескольких веб-сайтов в Apache – использование виртуальных хостов на основе имен. Следуйте точной процедуре, описанной в разделе «Настройка веб-сервера Apache» выше. Первый сайт будет под названием default. Создайте аналогичный файл виртуального хоста для второго домена, но назовите его как-нибудь иначе default. Я называю свой файл виртуального хоста тем же, что и имя домена (например, domain2.com, domain3.com и т.д. ). Вам нужно будет активировать каждый виртуальный хост, используя следующую команду:

sudo a2ensite domain2.com

Перезагрузите сервер Apache после внесения любых изменений:

sudo service apache2 reload

Если ваш сервер находится за маршрутизатором, не забудьте перенаправить порт 80 на сетевой IP-адрес вашего сервера. Вот и все. Настройте веб-сервер Apache и обслуживайте сайты из дома.

Источник записи: https://www.smarthomebeginner.com

Похожие записи
Домашний сервер

Изменить интервал синхронизации времени Windows?

Домашний сервер

План новичка: полное руководство по установке Monit

Домашний сервер

Google OAuth Tutorial для Docker и Traefik - аутентификация для сервисов

Домашний сервер

Установите Guacamole на Docker - VNC, SSH, SFTP и RDP, как босс!

Sign up for our Newsletter and
stay informed
[mc4wp_form id="14"]

Политика конфиденциальности

Наш сайт использует файлы cookies, чтобы улучшить работу и повысить эффективность сайта. Продолжая работу с сайтом, вы соглашаетесь с использованием нами cookies и политикой конфиденциальности.

Принять