Как сделать доступ в интернет, только через прокси?
Здравствуйте.
Пожалуйста, подскажите. Вот у меня есть шлюз на centos. Настроил доступ в инет. Поставил сквид. В инет можно из сети выходить и через сквид и без него. Как сделать, чтобы можно было ходить, только через сквид? Пробовал закрывать порт 80, в таблице INPUT, но все равно в инет можно заходить. Может, что то не так делаю.
Вот правила iptables.
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [357:335409]
:OUTPUT ACCEPT [16:3693]
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth1 -j ACCEPT
-A INPUT -j LOG
-A INPUT -j DROP
-A FORWARD -i eth1 -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -o eth1 -j ACCEPT
COMMIT
# Completed on Thu Jan 30 09:25:14 2014
# Generated by iptables-save v1.4.7 on Thu Jan 30 09:25:14 2014
*nat
:PREROUTING ACCEPT [28:1987]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [2:120]
-A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.1:3128
-A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Thu Jan 30 09:25:14 2014
# Generated by iptables-save v1.4.7 on Thu Jan 30 09:25:14 2014
*mangle
:PREROUTING ACCEPT [761:387631]
:INPUT ACCEPT [93:11254]
:FORWARD ACCEPT [664:376133]
:OUTPUT ACCEPT [60:10798]
:POSTROUTING ACCEPT [724:386931]
COMMIT
Правила писал не сам, нашел в мануалах. интерфейс который смотрит в интернет eth0 - 192.168.1.2, в сеть смотрит eth1 - 192.168.0.1. Если нужно, что то еще предоставить, скажите.
в Squid в конфигурации указать что этот порт 3128 "transparent"
Обычно делается дополнительный порт.
Еще придется закрывать 443 порт(https) - так как большинство сайтов по нему работают.
Так прописать в сквиде? http_port 192.168.0.1:3128 transparent
а в /etc/iptables добавить строчку
-A INPUT -s 192.168.0.0/24 -p tcp --dport 80, 443, 81 -j DROP
так?
А еще, даже если не используется, нужно, вероятно, указать и непрозрачный порт для сквида - это баг сквида - иначе сыпятся ошибки. https прозрачный можно настроить по статье Нагибатора (nagibat0r на Хабре).
сделал. Дописал в /etc/iptables
Все равно можно без прокси ходить. После изменений сделал /etc/iptables restart.
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [357:335409]
:OUTPUT ACCEPT [16:3693]
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth1 -j ACCEPT
-A INPUT -j LOG
-A INPUT -j DROP
-A FORWARD -i eth1 -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -o eth1 -j ACCEPT
COMMIT
# Completed on Thu Jan 30 09:25:14 2014
# Generated by iptables-save v1.4.7 on Thu Jan 30 09:25:14 2014
*nat
:PREROUTING ACCEPT [28:1987]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [2:120]
-A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.1:3128
-A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
-A POSTROUTING -o eth0 -j MASQUERADE
-A FORWARD -m tcp -p tcp --dport 80 - REJECT
-A FORWARD -m tcp -p tcp --dport 443 - REJECT
COMMIT
# Completed on Thu Jan 30 09:25:14 2014
# Generated by iptables-save v1.4.7 on Thu Jan 30 09:25:14 2014
*mangle
:PREROUTING ACCEPT [761:387631]
:INPUT ACCEPT [93:11254]
:FORWARD ACCEPT [664:376133]
:OUTPUT ACCEPT [60:10798]
:POSTROUTING ACCEPT [724:386931]
COMMIT
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [357:335409]
:OUTPUT ACCEPT [16:3693]
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth1 -j ACCEPT
-A INPUT -j LOG
-A INPUT -j DROP
-A FORWARD -i eth1 -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -o eth1 -j ACCEPT
COMMIT
# Completed on Thu Jan 30 09:25:14 2014
# Generated by iptables-save v1.4.7 on Thu Jan 30 09:25:14 2014
*nat
:PREROUTING ACCEPT [28:1987]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [2:120]
-A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.1:3128
-A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
-A POSTROUTING -o eth0 -j MASQUERADE
-t nat -A OUTPUT -p tcp --dport 80 -j DNAT --to-destination 192.168.0.1:3129
COMMIT
# Completed on Thu Jan 30 09:25:14 2014
# Generated by iptables-save v1.4.7 on Thu Jan 30 09:25:14 2014
*mangle
:PREROUTING ACCEPT [761:387631]
:INPUT ACCEPT [93:11254]
:FORWARD ACCEPT [664:376133]
:OUTPUT ACCEPT [60:10798]
:POSTROUTING ACCEPT [724:386931]
COMMIT
Влад Животнев: в конфиге сквида ttp_port 3128 intercept стоит, я ошибся тут. То я когда сюда писал копировал из инструкции. Мне не надо, чтобы сделали за меня. Я спросил совета, как это сделать. Я сижу с этим 2ой день, я не сразу написал сюда, как только встала проблема. Я перепробовал множество способов.