Используйте CloudFlare, чтобы я мог получить доступ к веб-сайту, размещенному в Azure, по IP-адресу

#azure-web-app-service #cloudflare

Вопрос:

Я очень новичок в Cloudflare. Так что, пожалуйста, потерпи меня. Мне нужно получить доступ к моему веб — сайту (размещенному в службах приложений Microsoft Azure) через IP-адрес вместо доменного имени.

Для этого мне нужно добавить HOST=www.mydomain.com в HTTP-заголовок при запросе веб-сайта по IP-адресу.

Я слышал, что это можно решить с помощью Cloudflare, но человек, которого я спросил, не будет вдаваться в дальнейшие подробности. Возможно ли это? Если да, то какую услугу мне следует приобрести? Любое руководство или инструкция будут оценены по достоинству.

Если Cloudflare невозможна, у вас есть какие-либо рекомендации по обслуживанию?

Спасибо 🙂

Ответ №1:

Причина, по которой необходим заголовок хоста, заключается в том, что службы приложений Azure по умолчанию являются многопользовательскими (несколько приложений на одном IP-адресе). Таким образом, серверу необходимо каким-то образом узнать, куда направить ваш запрос (имя хоста). Кроме того, IP-адреса не гарантированно будут статичными (например, они могут изменяться при масштабировании).

Должна быть возможность защитить один статический IP-адрес, используя следующий метод —

https://docs.microsoft.com/en-us/azure/app-service/overview-inbound-outbound-ips#get-a-static-inbound-ip

Неясно, будет ли этот IP-адрес также выделен (это означает, что его будет использовать только ваш домен). Это то, что потребуется для того, чтобы разрешить вам доступ к службе приложений без указания имени хоста.

Cloudflare не решит эту проблему, так как она находится на уровне DNS (доступ к доменным именам). Доступ к серверу по IP-адресу полностью обойдет Cloudflare.

Комментарии:

1. Чтобы добавить к этому, похоже, что только сервисы приложений в Isolated tier сша будут иметь выделенный IP — адрес- docs.microsoft.com/en-us/azure/app-service/… Другим вариантом было бы переместить ваше веб-приложение на виртуальную машину Azure (или другой хост), у которой нет общих IP-адресов. Возможно, стоит пересмотреть или объяснить, почему вам нужен доступ по IP, так как это довольно необычно.

2. У меня есть один статический IP-адрес. Но, как вы сказали, это мультитенант, мне нужен способ в Cloudflare (или любой третьей стороне), позволяющий мне вводить хост в заголовок HTTP — запроса.

3. Практически любое программное обеспечение, которое делает HTTP-запросы, позволит вам добавлять любые заголовки, которые вы хотите (включая заголовок ХОСТА). Чего они не могут сделать, так это отрицать необходимость того, чтобы Azure обладал такой ценностью. Какой язык / библиотеку вы используете для выполнения HTTP-запроса?

4. Это просто стандартный браузер (ie. Chrome/FireFox/Edge/и т. Д.). Мне просто нужно иметь доступ к веб-сайту по IP-адресу.

5. Используя только веб-браузер, на самом деле не существует отличного решения для автоматического добавления пользовательских HTTP-заголовков к данному запросу. Если вы хотите разобраться, почему вам нужен доступ именно по IP (а не по доменному имени), это может помочь с альтернативными решениями?