Search
Write a publication
Pull to refresh

Как я организовавывал связку apache+vmware

Reading time2 min
Views705
Продолжительное время на одном из серверов крутиться с десяток сайтов, все они подвержены риску взлома. Так как Apach+php стоит под Windows разграничить права на запись в ту или иную папку нет возможности. Обыкновенной командой можно вообще затереть все файлы на сервере.

Выход нашелся довольно таки простой, а что если разнести пользовательские сайты по виртуальным серверам. И уже если взломают один, то в приделах виртуального сервера пусть и «копашатся», дальше они не вылезут.
На сервер поставил Vmvare Server 2 vmware.com/products/server продукт бесплатный, необходимо лишь зарегистрироваться и на почту прийдет ключ. Позволяет создавать десятки виртуальных машин, управление происходит из под браузера, так что можно управлять серверами из любой точки мира.

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

А, решается все довольно просто, в Apache имеется модуль Прокси-сервера, собсвтвенно апач может выступать не только как web, но и proxy сервером, это возможностью я и решил воспользоваться.

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

<VirtualHost *:80>
ServerAdmin webmaster@site.com
DocumentRoot D:/www2/site/
ServerName site.com
ServerAlias www.site.com

ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all

ProxyPass / site.com
ProxyPassReverse / site.com


Собственно в этих строчка мы даем понять апачу, что все запросы, котрые приходят для сайта site.com отправлять, используя встроенный проски сервер, на то же site .com. Но встает вопрос, получается зацикливание. Чтобы этого не было необходимо в файле c:/Windows/System32/drivers/etc/hosts дописать для этого сайта внутренний IP, скажем у меня это выглядит так:

192.168.2.2 site.com

Получается, что сначала запрос приходит на основной сервер, по внешнему ИП, потом уже апач смотрит, где есть site.com и получает IP, согласно правилам системы (игнорирует внешние ДНС) смотрит в hosts и запрашивает сайт у внутреннего виртуального сервера.
Tags:
Hubs:
Total votes 8: ↑1 and ↓7-6
Comments13

Articles