Сквид. запретить подключения удаленных клиентов
Он имеет адреса: 10.1.32.2, 192.168.1.2, 127.0.0.1
Есть сквид прозрачный. Слушает только на внутренней сети (например, 10.1.32.2:3128).
На 192.168.1.1 - АДСЛ модем, под НАТом (не РРР).
Есть айпитейблсы, которые заворачивают прямой трафик по 80 порту на 3128 порт.
Есть netstat -tapn | grep squid.
Вопрос: откуда взялись лишние подключения на лишних интерфейсах?
в бубунте, есть сильно подозрение, что также, только путь подправь
и если я правильно понимаю суть проблемы, доступ разрешается/запрещается у сквида через acl. вот было бы неплохо их глянуть в конфиге.
Дропал, но так весь траф ложится. Но я в этом и не удивляюсь, ибо правило неправильно создал.
Дропал так:
iptables -I OUTBOUND -p tcp --dport 443 -j REJECT --reject-with tcp-reset
Тут у меня получается сбрасывание всех подключений, в т.ч. и клиентов из моей сети, которые лезут на любой хост на HTTP(S). Как уточнить правило?
[COLOR=Blue]acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl our_networks src 10.1.32.0/24
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 81 # x-drivers download page
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl Block_port port 8000
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow our_networks
http_access deny Block_port
http_access deny CONNECT Block_port
http_access deny all
icp_access allow all
follow_x_forwarded_for deny all
http_port 10.1.32.2:3128 transparent
hierarchy_stoplist cgi-bin ?
maximum_object_size 10240 KB
access_log /var/log/squid/access.log
log_access allow all
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
logfile_rotate 5
emulate_httpd_log off
log_ip_on_direct on
acl QUERY urlpath_regex cgi-bin \?
acl FTPCACHE urlpath_regex ^ftp:
cache deny QUERY
cache deny FTPCACHE
refresh_pattern \.bz2$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.exe$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.gif$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.gz$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.ico$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.jpg$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.mid$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.mp3$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.pdf$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.swf$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.tar$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.tgz$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.zip$ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern http://ad\. 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern http://ads\. 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern http://adv\. 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern http://click\. 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern http://count\. 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern http://counter\. 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern http://engine\. 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern http://img\.readme\.ru 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern http://userpic\.livejournal\.com 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.ru/bf-analyze 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern \.ru/bf-si 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern /advs/ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern /banners/ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
refresh_pattern /cgi-bin/iframe/ 43200 100% 43200 override-lastmod override-expire ignore-reload ignore-no-cache ignore-private ignore-auth
via off
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
extension_methods REPORT MERGE MKACTIVITY CHECKOUT
cache_mgr admin@domain.com
error_directory /usr/share/squid/errors/Ukrainian-utf8
hosts_file /etc/hosts
forwarded_for off
reload_into_ims on
coredump_dir /var/spool/squid[/COLOR]
[COLOR=Blue]Chain INPUT (policy ACCEPT 47M packets, 43G bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 41819 packets, 2525K bytes)
pkts bytes target prot opt in out source destination
1993 321K ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
Chain OUTPUT (policy ACCEPT 36M packets, 20G bytes)
pkts bytes target prot opt in out source destination[/COLOR]
[COLOR=Blue]Chain PREROUTING (policy ACCEPT 189K packets, 14M bytes)
pkts bytes target prot opt in out source destination
606 31248 DNAT tcp -- * * 10.1.32.0/24 82.207.94.153 tcp dpt:80 to:10.1.32.2
143K 6956K REDIRECT tcp -- * * 10.1.32.0/24 0.0.0.0/0 tcp dpt:80 redir ports 3128
Chain POSTROUTING (policy ACCEPT 238K packets, 16M bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 222K packets, 15M bytes)
pkts bytes target prot opt in out source destination[/COLOR]
upd.: Сначла думал, что это все режик (его детеныши), но, как видно из конфига, я их отрубил. А трабла актуальной остается.
а я тебе вечерком попытаюсь ответить.
-----------------------
upd:
подумалось тут и пообщалось =)
а если так?
iptables -t nat -A PREROUTING -p tcp -s from_ip1 --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -s from_ip2 --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -s from_ip3 --dport 80 -j ACCEPT
# а потом дропаешь
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DROP
а я тебе вечерком попытаюсь ответить.
-----------------------
upd:
подумалось тут и пообщалось =)
а если так?
iptables -t nat -A PREROUTING -p tcp -s from_ip1 --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -s from_ip2 --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp -s from_ip3 --dport 80 -j ACCEPT
# а потом дропаешь
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DROP
Нука попробую.... Что-то я не догадался, что можно фильтровать в НАТ-таблице... Зациклился на -j SNAT / DNAT / REDIRECT
Вопрос: откуда взялись лишние подключения на лишних интерфейсах?
А можно полюбопытствовать какие конкретно подключения из перечисленных не нравятся?
Те, что 192.168.1.2
Но только что ко мне пришло прозрение... Оказывается, это потребления интернета программами, подключенными на этом же хосте (локально). Я совсем забыл, что я торрент-клиент и аську запускаю через Х-форвардинг........... Нда...
Тем не менее, всем спасибо! Наверное без обсуждений темы со всех сторон не смог бы понять в чем дело. :)
Ну в общем, вот ;) И сам сквид в инет лезет за инфой - нужно ведь ему ее где-то брать, если нету.
ПыСы. Может авторизуешь меня-таки в аське? Ато ЛС отключены... не достучаться. Один раз уже отверг! ))