Правило iptables заставляет все браузеры использовать прокси

Я установил squid в качестве моего прокси-сервера в автономной системе Ubuntu 10.04 , которая имеет один NIC . Почему я установил Squid в автономной системе из-за моих друзей, которые используют мою систему для просмотра сайтов и загрузки файлов. Так я установил Squid блокировать порно сайты и загрузки. Но они просто обходят настройки прокси-сервера, отключая его в браузере. Я знаю, что есть какой-то способ заставить все браузеры проходить через прокси с помощью iptables. Но как? Я всюду искал ответ, но пока не могу найти правильный. Может ли кто-нибудь мне помочь?

4
задан 2 November 2011 в 23:09

2 ответа

поочередно вы можете добавить опции LD_PRELOAD для прокси-цепочек в .profile - если вы хотите прокси https, вы можете сделать это с 3proxy

0
ответ дан 2 November 2011 в 23:09

Первый блок прямого доступа к порту 80 для всех, кроме root и squid. (root нуждается в этом, чтобы получать обновления для вашей системы). (Я предполагаю, что squid работает как пользовательский прокси-сервер - отредактируйте при необходимости).

iptables -A OUTPUT -m owner --uid-owner root -j ACCEPT
iptables -A OUTPUT -m owner --uid-owner proxy -j ACCEPT
iptables -A OUTPUT -p tcp --dport 80 -j DROP

Затем вы можете настроить Firefox для использования Squid в качестве прокси-сервера в обычном режиме. Если ваши друзья изменят настройки, они будут заблокированы.

Обратите внимание, что squid не может прокси-трафик https, поэтому я не включил эти детали в эти правила. Если вы хотите выполнять только фильтрацию без прокси или кэширования, вы можете использовать DansGuardian. Это руководство по использованию dansguardian с некоторыми пользователями, исключенными из фильтрации. Руководство будет означать, что https (порт 443) будет фильтроваться DansGuardian, а также http (порт 80).

0
ответ дан 2 November 2011 в 23:09

Другие вопросы по тегам:

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