Назад | Перейти на главную страницу

Может ли CloudFlare получать контент с 8080 и обслуживать его на 80?

Может ли CloudFlare получать контент, который мой сервер предоставляет через порт 8080, и передавать его пользователям через порт 80?

Например, у меня есть следующий IP-адрес 0.0.0.0 и домен example.ga (зарегистрирован в CloudFlare). Может ли CloudFlare получать контент из 0.0.0.0:8080 и отобразить на example.ga:80?

Насколько мне известно, нет. CloudFlare на бесплатном плане не может выполнять перевод портов. Если вы сделаете запрос через порт 80, CloudFlare отправит его вашему источнику через порт 80. CloudFlare по существу невидим. В корпоративном плане CloudFlare может сделать это за вас.

Если ваш сервер находится на порту 8080, вам следует установить обратный прокси. Он может находиться на том же сервере, что и сервер приложений, или на другом сервере. На другом сервере с соответствующими правилами брандмауэра вы можете сделать DMZ, что увеличивает безопасность.

Nginx очень часто используется в качестве обратного прокси-сервера либо на том же сервере, что и ваш сервер приложений, либо на другом сервере. Nginx может легко принимать запросы на порт 80, а затем передавать их на сервер приложений, работающий на порту 80. Он очень легкий, требует очень мало процессора или оперативной памяти.

Nginx также может кэшировать страницы на основе определенных вами правил для ускорения обслуживания статических ресурсов или анонимных страниц. Обслуживание страницы из кеша требует гораздо меньше работы, чем повторное создание страницы. Обратный прокси Nginx гид здесь. У меня также есть Руководство по Nginx / Wordpress это даст вам еще несколько примеров того, как кэшировать страницы для анонимных пользователей, но не авторизованных пользователей.

Обновление на основе комментариев

Судя по всему, в Linux вы можете использовать iptables для перенаправления портов. Так, например, сервер, работающий на порту 8080, может отвечать на порту 80. Это должно быть настроено пользователем с правами суперпользователя, поскольку непривилегированные пользователи не могут прослушивать порты ниже 1024.

То, что вы ищете, называется «обратным прокси». Это веб-сервер, который действует как точка доступа к контенту на другом сервере. Более новые версии Windows Server помечают его «Прокси приложения». Их можно настроить для запроса контента с другого сервера или даже для HTTPS в прокси-сервере, извлекающего из внутреннего HTTP-сервера. В идеале все должно быть HTTPS. Надеюсь, это ответит на ваш вопрос и даст вам то, что нужно искать.

Если ваша идея состоит в том, чтобы скрыть свой реальный IP-адрес, можно получить хостинг наподобие AWS с общедоступным IP-адресом «и вместо этого указать CloudFlare на этот IP-адрес» и запустить на этом сервере что-то вроде Nginx или HAProxy. Те, которые вы можете настроить для подключения к вашему реальному серверу в качестве серверной части, а затем настроить свой маршрутизатор / модем / сервер / и т. Д. брандмауэр, чтобы принимать соединения только с IP-адреса вашего AWS и любого другого IP-адреса, такого как ваш собственный IP-адрес, при удаленном хостинге. Также вы можете настроить AWS для приема подключений только от CloudFlare IP. Это будет что-то вроде: User -> YourDomain (CloudFlare -> AWS -> Your Real / Back-end Hosting), а затем поток обратно к пользователю, поэтому время ответа может немного задержаться. ИЛИ вы можете просто пропустить AWS и просто сделать Accept only connections from CloudFlare IPs с брандмауэром, если вы не используете другие сервисы (FTP, электронная почта и т. Д.), Это не скроет ваш реальный IP.