Lighttpd: сайты на разных интерфейсах

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

Модераторы: SLEDopit, Модераторы разделов

IMB
Сообщения: 2567
ОС: Debian

Lighttpd: сайты на разных интерфейсах

Сообщение IMB »

Доброго дня!
Установлен LIghttpd 1.4.19-5~bpo40+1 на Debian "Etch". Необходимо настроить таким образом, что бы часть ресурсов было доступно только с внутреннего интерфейса.
Настройка виртуальных хостов:

Код: Выделить всё

server.modules += ( "mod_simple_vhost" )
$HTTP["host"] == "site1.company.ru" {
    server.document-root = "/var/www/site1"
    accesslog.filename = "/var/log/lighttpd/site1/access.log"
    server.errorlog = "/var/log/lighttpd/site1/error.log"
}
$HTTP["host"] == "site2.company.ru" {
    server.document-root = "/var/www/site2"
    accesslog.filename = "/var/log/lighttpd/site2/access.log"
    server.errorlog = "/var/log/lighttpd/site2/error.log"
    $HTTP["remoteip"] != "192.168.10.0/24" {
        url.access-deny = ("")
    }
}

Очевидно, что site2.company.ru хочется сделать доступным только из внутренней сети. И на данный момент это так, доступ есть только изнутри, но если снаружу обратиться по адресу site2.company.ru открывается страница с ошибкой 403. Скорее всего это связано с тем, что имя машины и название ресурса совпадают.
Пробовал привести к конфиг к виду:

Код: Выделить всё

$SERVER["socket"] == "192.168.10.1:80" {
$HTTP["host"] == "site2.company.ru" {
    server.document-root = "/var/www/site2"
    accesslog.filename = "/var/log/lighttpd/site2/access.log"
    server.errorlog = "/var/log/lighttpd/site2/error.log"
    $HTTP["remoteip"] != "192.168.10.0/24" {
        url.access-deny = ("")
    }
}}

Безрезультатно, страница с 403 Forbidden всё равно открывается.
Вопрос - возможно ли настроить таким образом, что бы site2.company.ru был доступен только при обращении из внутренней сети, или этого можно достичь только переименовав ресурс?
Спасибо.
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Lighttpd: сайты на разных интерфейсах

Сообщение rm_ »

Безрезультатно, страница с 403 Forbidden всё равно открывается.
Вопрос - возможно ли настроить таким образом, что бы site2.company.ru был доступен только при обращении из внутренней сети, или этого можно достичь только переименовав ресурс?

Он и так у Вас доступен только изнутри.
При попытке зайти снаружи, выдаётся ошибка "Доступ запрещён".
Что ещё нужно? Всё работает как и должно.
Если хотите, чтобы посетителям говорилось, что "site2.company.ru: host not found", уберите этот адрес из "настоящего" DNS, оставив только во внутреннем. Но особо хитрые товарищи всеравно могут обратиться на сервер с таким "Host:"-заголовком, если пропишут соответствие адреса айпишнику к себе в /etc/hosts. Поэтому проверку на remoteip в конфиге даже после удаления хоста из DNS следует оставить.
Спасибо сказали: