Как я могу проверить, является ли мой сервер Apache открытым прокси?

11

Существует ли команда curl, которая будет проверять, действует ли сервер как открытый прокси?

я пробовал

curl --proxy http://<my server>:80 http://yahoo.com

Но ответ от Apache:

Description: Could not process this "GET" request.
Будет
источник
10
Это должно сделать это. Этот ответ означает, что он не действует как прокси на этом порту. Если бы это было так, вы бы получили страницу Yahoo (или проверку подлинности прокси, или какой-либо другой ответ прокси).
squillman
Вам также следует попробовать прокси на сайте https, http / https реализованы иначе. Прокси-серверы Apache, которые я использовал, не работают, как это, кстати, удаленный (прокси-сервер) сервер указан где-то в конфигурации. Это как для случая, когда вы хотите, чтобы страница со случайного сервера появлялась на вашем основном сайте или что-то в этом роде.
Немного Linux Nerd
curl --proxy http: // <ваш сервер>: 80 https: //mail.google.com # <--- https
немного Linux Nerd
Помимо тестов, предложенных выше, вы можете просто проверить свою конфигурацию. Для настройки Apache в качестве прямого прокси-сервера требуется «ProxyRequests On» (по умолчанию он выключен). Его можно включить только на глобальном (сервер) или уровне виртуального хоста, поэтому вам не нужно искать файлы htaccess.
Неверующий

Ответы:

1

Простой ответ таков: если у вас есть ProxyRequests On(по умолчанию выключено) где-то в вашей конфигурации, то вы можете использовать открытый прокси-сервер, если нет, то нет, по крайней мере, со стороны конфигурации Apache.

Если вы все еще получаете 200 OKзаписи в своем журнале доступа для запросов, которые выглядят как прямые запросы прокси, возможно, это связано с тем, что вы перезаписали все запросы, которые отображают любой запрос на контроллер, независимо от того, как он выглядит. Вы могли бы, возможно, добавить условия, чтобы предотвратить это, если вы беспокоитесь.

Неверующий
источник