6 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как настроить виртуальные хосты веб-сервера Apache на Ubuntu или

Как настроить виртуальные хосты веб-сервера Apache на Ubuntu 16.10 или 17.04

Веб-сервер Apache является самым популярным способом обслуживания веб-контента в Интернете. На его долю приходится более половины активных веб-сайтов в Интернете, и он является чрезвычайном мощным и быстрым.

Apache разбивает свои функциональные возможности и компоненты на отдельные блоки, которые могут быть кастомизированы и настроены независимо друг от друга. Базовой единицей, описывающей индивидуальный сайт или домен, называется виртуальным хостом.

Такие распределения позволяют администратору с помощью соответствующего механизма использовать один сервер для размещения множества доменов или сайтов на одном интерфейсе или IP. Это важно для всех, кто хочет разместить несколько сайтов в одном VPS.

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

В этом руководстве мы расскажем, как настроить виртуальные хосты Apache на Ubuntu 16.10 или 17.04 VPS. Во время этого процесса вы узнаете, как обслуживать разный контент для разных посетителей, в зависимости от того, какие домены они запрашивают.

Предполагается, что вы работаете под обычным пользователем. Если нет, то предварительно создайте обычного пользователя и залогинтесь под ним.

Также у вас уже должен быть установлен Apache.

Для целей этой инструкции, мы будем настраивать виртуальный хост для домена example.com, а другой виртуальный хост для test.com. На них будут делаться ссылки в этом руководстве, но вы должны подставить ваши собственные домены или значения.

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

Читать еще:  Устанавливаем словарь для Кали Линукс

Если вы используете не настоящие значения, мы покажем вам, как отредактировать ваш локальный файл hosts чтобы протестировать конфигурацию. Это позволит вам протестировать вашу конфигурацию прямо на вашем домашнем компьютере, пусть даже ваш контент не будет доступен через доменное имя для других посетителей.

Виды сетевых адаптеров VirtualBox

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

  • NAT — этот способ используется по умолчанию. Для каждой машины создается отдельная внутренняя локальная сеть, в которой машина получает ip 10.10.0.1. Машина может связаться с интернетом, используя технологию NAT, и вы можете обратиться к машине, используя проброс портов VirtualBox, но если у вас будет две виртуальные машины, то вы уже не сможете между ними так взаимодействовать. И если из основной системы к гостевой можно обратиться, то к основной ни гостевой уже никак не получится;
  • Виртуальный адаптер хоста — создается виртуальный сетевой адаптер, к которому можно подключить несколько виртуальных машин, тем самым объединив их в локальную сеть. Доступа к интернету нет, но зато машины находятся в одной сети и каждая имеет свой ip адрес, теперь они могут взаимодействовать между собой. Основная система тоже доступна по ip 192.168.56.1. Машины доступны не только между собой, но и из основной системы;
  • Сетевой мост — при таком подключении виртуальная машина становится полноценным членом локальной сети, к которой подключена основная система. Машина использует сетевой интерфейс чтобы получить адрес у роутера и становится доступна для других устройств, как и основной компьютер по своему ip адресу.
  • Внутренняя сеть — почти то же самое, что и виртуальный адаптер хоста, только без возможности доступа к виртуальной сети из основной системы, доступа к интернету нет.
  • Универсальный драйвер — позволяет использовать драйвер из расширений VirtualBox для связи между машинами, расположенными на разных физических хостах.

Теперь рассмотрим каждый вариант настройки более подробно.

NAT (Network Adress Translation)

Система трансляции адресов, весьма удобный способ раздачи сети между виртуальными машинами. Принцип действия такой, что в реальной системе создается виртуальный интерфейс (NAT), со своим собственным сетевым адресом (IP 1), в своей сети.

Читать еще:  Easy cred Установка и настройки

Все виртуальные машины, клиенты NAT, берут адреса из этой виртуальной сети с адресом шлюза IP 1. Этот NAT-адрес реальной машины может быть привязан к реальному интерфейсу, и все клиенты могут получить доступ к внешней сети. Их адреса будут подменяться на адрес интерфейса и обратно, таким образом происходит трансляция целой подсети в IP адрес. Для меня этот способ был наиболее удобным в VMWare, чтобы доставить Интернет на виртуальную машину. При этом в сети заводил ещё DHCP сервер и стоило только установить любой виртуальный интерфейс в NAT, как ему тут же назначался адрес и он мог выходить в Internet. Удобно. В чем отличие от Bridge? Виртуальных интерфейсов может быть много, все они привязываются (транслируются) через один реальный. В Bridge происходит привязка 1 к 1, т.е. на каждую виртуальную машину потребовался бы свой физический интерфейс, что весьма накладно.

Хак-группу Energetic Bear обвиняют во взломе правительственных сетей США

Власти США заявили, что спонсируемая российским правительством хакерская группа Energetic …

10 комментариев

mitrofanzzz

Очень занятная реализация. Спасибо. Надо будет опробовать!

Saulg

А линк на готовую систему ?

s0i37

Линк дать увы не могу. По причине приватных ключей и прочей конфиденциальной инфы которая может быть там найдена.

Валерий Блонский

А Intercepter-NG чем не унрдил?

Валерий Блонский

lvv1227

Попытался пройти по инструкциям в статье (у меня стоит Ununtu 16, 64 bit).
Ошибка при выполнении sudo debootstrap —arch=i386 —variant=minbase stable /mnt/ http://http.us.debian.org/debian

I: Configuring mount…
I: Configuring sysvinit-utils…
I: Configuring libc-bin…
I: Unpacking the base system…
W: Failure while installing base packages. This will be re-attempted up to five times.
W: See /mnt/debootstrap/debootstrap.log for details

В логах
Setting up mount (2.33.1-0.1) …
Setting up sysvinit-utils (2.93-8) …
Processing triggers for libc-bin (2.28-10) …
dpkg: error: —unpack needs at least one package archive file argument

Type dpkg —help for help about installing and deinstalling packages [*];
Use ‘apt’ or ‘aptitude’ for user-friendly package management;
Type dpkg -Dhelp for a list of dpkg debug flag values;
Type dpkg —force-help for a list of forcing options;
Type dpkg-deb —help for help about manipulating *.deb files;

Читать еще:  Программы Кали Линукс - беглый обзо

Побороть не смог.

Стал искать обходные пути.
У меня сработало только
sudo debootstrap —include linux-image-amd64 —arch amd64 stable /mnt/ http://ftp.us.debian.org/debian

Но даже здесь не было сорцов ядра для компиляции. Доставил их через apt-get install linux-source,
но скомпилировать не смог, не видит каких-то заголовков в openssl.

Удалось запустить виртуалку с уже готовым ядром и ramfs, для этого прописал
echo «pts/0» >> /etc/securetty
systemctl set-default multi-user.target
echo «/dev/sda1 / ext4 defaults,discard 0 0» > /etc/fstab

Но это не так интересно, размер виртуалки больше 2 Гб

Подскажите, пожалуйста, по следующим вопросам:
— какую систему на хосте нужно использовать, чтобы все сработало
— как побороть ошибку установки debootstrap
— как закачать сорцы ядра после этого (по умолчанию они не ставятся)
— нужна ли дополнительная настройка системы, не указанная в статье (например, корректировка /etc/fstab, конфигурация сетевых интерфейсов и пр)

s0i37

Здравствуйте.
-Я использовал kali rolling 2019.4, это по сути Debian.
-Попробовал на Ubuntu 20.04.1, сработало. Единственное, возможно вам нужно предварительно добавить архитектуру i386: dpkg —add-architecture i386 ; apt update
-Исходные коды ядра не скачиваются вместе с debootstrap. Их нужно взять с https://www.kernel.org/ и собрать на своей основной ОС, после чего скопировать ядро, рамдиск в образ.
-Доп настройка системы вся указана в статье, но не исключаю что какая то мелочь могла быть упущена.

lvv1227

сделал пока более простую машину. в rootfs добавил
apt-get install isc-dhcp-client

для поднятия сети в /etc/rc.local добавил /usr/sbin/dhclient -v enp0s3

Спасибо за статью!

lvv1227

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

— зачем нужен vpn, в котором мы связываем сетевой интерфейс внутри виртуальной машины (который переводим в promiscous режим) с tap0, когда тот же самый доступ к интерфейсу внутри виртуальной машины можно получить через ssh?
— не совсем понятно, как достучаться до сервера vpn на хосте без белого ip-адреса? Ведь обратный shell и эксфильтрация DNS здесь не помогут.

s0i37

Думаю что можно связаться и через ssh:
/etc/ssh/sshd_config:
PermitRootLogin yes
PermitTunnel ethernet
sudo ssh root@vbox -o Tunnel=ethernet -w any:any

Как достучаться до vpn. Тут уже pivoting и все по ситуации. Используйте форвардинг портов.

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector