Лучшие практики перенаправления IIS7

Фырканье может быть симпатичной голодной памятью, который на VPS может быть проблемой. Это может работать вместе с ossec вполне приятно - эти два оба включены в Ossim, который коррелирует infosecurity события из различных источников.

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

Если Вы используете Apache, затем полагают, что mod_security помогает защитить потенциально уязвимые сценарии, которые Вы размещаете. И наконец быть превентивным в безопасности, сканируя Ваше поле для уязвимостей с чем-то как Nessus.

0
задан 14 November 2011 в 21:35
1 ответ

Чтобы заставить весь трафик использовать HTTPS на https://www.mydomain.com , вы можете просто использовать одно правило перезаписи:

<rules>
    <rule name="Force HTTPS" enabled="false" stopProcessing="true">
        <match url="(.*)" />
        <conditions logicalGrouping="MatchAny">
            <add input="{HTTPS}" negate="true" pattern="^ON$" />
            <add input="{HTTP_HOST}" negate="true" pattern="^www\.mydomain\.com$" />
        </conditions>
        <action type="Redirect" url="https://www.mydomain.com{REQUEST_URI}" appendQueryString="false" redirectType="Permanent" />
    </rule>
</rules>

Это перенаправит все не -HTTPS-трафик, независимо от доменного имени, используемого для перехода на сайт https://www.mydomain.com . Он также перенаправит https://mydomain.com на https://www.mydomain.com . Поскольку в настоящее время большинство сертификатов SSL включают домен с www и без него, это не вызовет ошибки в браузере.

Вышеупомянутое правило перенаправления не может препятствовать доступу пользователей к вашему сайту, например, с https: // www. mydomain.net . Это связано с тем, что проверка имени заголовка хоста может быть выполнена только после того, как сеанс HTTPS был установлен, и до этого браузер уже покажет ошибку, поскольку имя домена не соответствует общему имени сертификата. Единственный способ предотвратить это - использовать отдельный IP-адрес для доменного имени mydomain.com и отдельный IP-адрес для всех других доменных имен, под которыми вы хотите, чтобы ваш сайт был доступен.

Чтобы сделать при этом вы настраиваете свой DNS так, чтобы (www.) mydomain.net (и любые другие доменные имена, с которых вы хотите, чтобы ваш сайт был доступен) указывали на IP-адрес XXX1 . Этот IP-адрес привязан к фиктивному сайту только для HTTP в IIS. Единственная цель этого сайта - перенаправить весь трафик на https://www.mydomain.com , используя следующее правило перезаписи:

<rules>
    <rule name="Redirect to https://www.mydomain.com" enabled="false" stopProcessing="true">
        <match url="(.*)" />
        <conditions logicalGrouping="MatchAll">
            <add input="{HTTP_HOST}" negate="true" pattern="^www\.mydomain\.com$" />
        </conditions>
        <action type="Redirect" url="https://www.mydomain.com{REQUEST_URI}" appendQueryString="false" redirectType="Permanent" />
    </rule>
</rules>

Затем вы настраиваете другой сайт на IP-адресе XXX2 , используя HTTP и HTTPS для (www.) Mydomain.com . Используя указанное выше правило перезаписи (первое), вы принудительно используете HTTPS и используете www.mydomain.com .

Это решение фактически сделает ваш сайт недоступным через HTTPS, если не указан правильный домен mydomain.com используется, но это также то, что вам нужно, потому что у вас нет действительных сертификатов для других доменных имен.

2
ответ дан 4 December 2019 в 14:36

Теги

Похожие вопросы