@pauloriply

Как подключить несколько виртуальных серверов и вывести их в интернет через один IP?

Всем привет, и хорошего настроения!
Обращаюсь ко всем, кто читает эту тему, за помощью и советами.
Решились с друзьями и единомышленниками открыть свою маленькую "конторку" веб-разработчиков.
Суть вопроса:
1) Есть оптоволоконный канал от провайдера.
2) Есть выделенный IP
3) Есть хостинг у провайдера (просто для справки), а в перспективе откажемся.
4) Есть зарегистрированное доменное имя
5) Есть сервер Dell PowerEdge R610, на котором есть 4 сетевых адаптера по 1Гб(каждый), который находится в нашем небольшом офисе
6) Оптоволокно подключено к Mikrotik 751U, и с него выход на гигабитный свитч.
7) Сервер виртуализирован посредством ESXi
8) На сервере установлено 4 виртуальных сервера (2 веб сервера(Apache, PHP, MySQL)(1 сервер - Redmine Virtual Machine)(1 сервер Samba))
9) У каждого виртуального сервера естественно имеется свой локальный IP
Собственно говоря нужно вывести 3 сервера в интернет, при этом имея 1 IP.
Но все нужно сделать так, чтоб пользователь интернет ввел, например (server1.com - и попал на 1-й веб-сервер),(server2.com - и попал на 2-й веб-сервер), (server3.com - и попал на веб-сервер с Redmine), при этом никаких дополнительных махинаций с принудительным указанием портов, пользователь интернет, производить не должен.
Всем заранее спасибо за помощь.
Если нужна еще какая-то уточняющая информация, естественно дополню.
  • Вопрос задан
  • 814 просмотров
Решения вопроса 3
ifaustrue
@ifaustrue
Пишу интересное в теллеграмм канале @cooladmin
0. Ставите ещё один виртуальный сервер с nginx на борту nginx.org/ru/docs/install.html
1. на него посредством NAT на микротике направляете 80 и 443 порты с внешнего интерфейса
/ip firewall nat
add action=dst-nat chain=dstnat dst-address=%WAN_IP% dst-port=80 in-interface=WAN protocol=tcp to-addresses=%NGINX_IP% to-ports=80
add action=dst-nat chain=dstnat dst-address=%WAN_IP% dst-port=443 in-interface=WAN protocol=tcp to-addresses=%NGINX_IP% to-ports=443

2. на nginx настраиваете reverse proxy модуль
server {
      listen 80;
      server_name server1.com;
      location / {
        proxy_pass http://server1;
      }
    }
server {
      listen 80;
      server_name server2.com;
      location / {
        proxy_pass http://server2;
      }
    }

3. в днс прописываете внешний адрес микротика как имена ваших сайтов.
server1.com A %WAN_IP%
server2.com A %WAN_IP%


Сколько угодно имён, сколько угодно записей в реверс прокси.
Ответ написан
gbg
@gbg
Любые ответы на любые вопросы
Полностью аналогично этому - организуете машину-шлюз с NGINX.
Ответ написан
Комментировать
RazorBlade
@RazorBlade
Тут либо, как писали выше, ставить Reverse Proxy (nginx или что-то другое), либо покупать дополнительные внешние IP у провайдера.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@silverjoe
А почему бы не купить подсеть у провайдера? например /29 - дадут вам 6 IP адресов?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы