Как написать свой собственный прокси, анонимайзер и разместить его, чтобы помочь, когда сайты заблокированы на работе - PullRequest
2 голосов
/ 23 июня 2009

Я работаю подрядчиком / фрилансером . На большинстве клиентских сайтов многие сайты заблокированы . В частности, Gmail и Facebook, к которым я действительно хотел бы получить доступ, находясь в командировке.

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

Я владею несколькими доменами и хотел бы написать свой собственный прокси / анонимный сервер и разместить его на одном из этих доменов, чтобы я мог получить доступ к Gmail и Facebook, находясь на сайте клиента. URL будет низкопрофильным, с низким трафиком, поэтому не должен блокироваться, я уже могу получить доступ к URL.

Как бы мне написать код для этого? также, если на моем веб-сервере можно запустить какие-либо проекты или приложения с открытым исходным кодом, которые дадут мне такую ​​функциональность, я бы с радостью сделал это / купил этот продукт.

В настоящее время у меня есть общий хостинг, но в случае необходимости я рассмотрю выделенный / виртуальный.

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

Спасибо.

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

Ответы [ 8 ]

7 голосов
/ 23 июня 2009

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

4 голосов
/ 23 июня 2009

Написание собственного прокси довольно сложно (я пробовал много лет назад!). Если вы на самом деле не пытаетесь изучить все сложности, если вы просто хотите иметь собственное прокси-решение, вы, вероятно, отлично подойдете, просто установив Squid на свой собственный сервер с Webmin или что-то дать простой интерфейс конфигурации.

3 голосов
/ 05 июля 2009

этот блог может помочь вам начать.

http://techkiddos.wordpress.com/2009/07/04/how-we-developed-a-model-proxy-site-anonymizer-with-asp-net/

[Как мы разработали сайт Model Proxy (Anonymizer) с ASP.NET ..]

2 голосов
/ 23 июня 2009

Если у вас есть сервер в Интернете, вы можете установить OpenVPN, VPN, которая может работать через SSL-порт 443. Таким образом, все прокси / брандмауэры имеют , чтобы разрешить это, если они вообще разрешают любой веб-доступ. Ссылка на Википедию для OpenVPN

Я никогда не пробовал сам, просто много об этом читал.

Писать на свой собственный прокси очень и очень сложно. Вы должны быть в курсе последних событий, чтобы поддерживать его в рабочем состоянии. Тем более, что многие веб-сайты в настоящее время интенсивно используют AJAX, а множество URL-адресов генерируется в коде скрипта, поэтому простая замена всех атрибутов href не будет работать.

Но это - это хороший способ узнать много нового о протоколе HTTP и всех новейших веб-технологиях;)

1 голос
/ 23 января 2010

Вот что вам нужно для создания (хорошего) прокси:

  1. Запросите страницу (помните, что вам нужна поддержка SSL для Facebook!
  2. Перепишите любую часть страницы, которая содержит абсолютные URL-адреса, и перепишите их, чтобы использовать ваш скрипт
  3. Разобрать и переписать CSS
  4. Разбор / удаление любого JavaScript. Вы могли бы хотеть дать JS функцию, ловящую выстрел
  5. Эхо страницы

Это намного сложнее, чем вы думаете на первый взгляд.

Вот пример из codeproject.net: http://www.codeproject.com/KB/aspnet/asproxy.aspx

Вот пример хорошего хука javascript, если вы решите сделать свой собственный:

var old_open = window.open;
window.open = function(URL, windowName, features) // overwrite window.open calls
{
URL = "http://example.com/proxy.php?url=" + escape(URL);
return old_open(URL, windowName, features);
};

Если этот код выполняется первым, любые будущие вызовы window.open будут переписаны, чтобы открыть новое окно с помощью вашего скрипта. Конечно, это не поможет с такими вещами, как window.location, но это начало

1 голос
/ 23 июня 2009

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

0 голосов
/ 08 ноября 2011

Рассматривали ли вы удаленный рабочий стол для внешнего сервера?

0 голосов
/ 23 июня 2009

Большинство прокси в ближайшее время заблокированы. Так что ожидайте, что он скоро будет закрыт. Когда люди начинают использовать его чаще, большинство «блокировщиков» автоматически обнаружат его и начнут блокировать.

Вы получите много прокси клонов веб-сайта, если будете искать . Отметьте этот тоже .

...