Моя проблема в следующем: есть шлюз с squid, настроено так что он пропускает только на необходимые сайты, остальные под запретом.
Мне необходимо добавить разрешение для доступа к банковскому сайту https://sbi.sberbank.ru:9443/ic/
вот из конфига squid(то что касается этого сайта)
acl mts src 192.168.80.1
acl sbonline dstdom_regex sbi.sberbank.ru
acl SSL_ports port 9443 # sbonline
acl CONNECT method CONNECT
http_access deny CONNECT !SSL_ports
http_access allow mts sbonline
Но страница не отображается, нет записи что сайт заблокирован squid, просто не отображается.
В логе следующее:
1340688067.422 0 192.168.80.1 TCP_DENIED/403 1327 CONNECT sbi.sberbank.ru:9443 - NONE/- text/html
В чем загвоздка, подскажите?PS нашел похожую тему , http://www.opennet.me/openforum/vsluhforumID12/6642.html , все то же но не работает.
>[оверквотинг удален]
> вот из конфига squid(то что касается этого сайта)
> acl mts src 192.168.80.1
> acl sbonline dstdom_regex sbi.sberbank.ru
> acl SSL_ports port 9443
> # sbonline
> acl CONNECT method CONNECT
> http_access deny CONNECT !SSL_ports
> http_access allow mts sbonline
> Но страница не отображается, нет записи что сайт заблокирован squid, просто не
> отображается.Может быть вот так раз используете regex
acl sbonline dstdom_regex sbi\.sberbank\.ru
> В логе следующее:
> 1340688067.422 0 192.168.80.1 TCP_DENIED/403 1327 CONNECT sbi.sberbank.ru:9443
> - NONE/- text/html
> В чем загвоздка, подскажите?
> PS нашел похожую тему , http://www.opennet.me/openforum/vsluhforumID12/6642.html ,
> все то же но не работает.
> Может быть вот так раз используете regex
> acl sbonline dstdom_regex sbi\.sberbank\.ruА что предлагаете вместо regex использовать? Но, скорее всего не в этом дело, я уже пробовал dstdomain, srcdomain, srcdom_regex. Эффект тот же.
Вообщем сейчас ситуация следующая:В логах squid 1340865593.957 2 192.168.50.1 TCP_MISS/503 0 CONNECT sbi.sberbank.ru:9443 - DIRECT/- -
Значит проблемма заключается в фаерволе iptables, есть два интерфейса eth0 внутренний и eth1 внешний, как его настроить так чтоб можно было выйти на этот сайт, помогите!
> http_access deny CONNECT !SSL_ports
>CONNECT sbi.sberbank.ru:9443
> В чем загвоздка, подскажите?Порта :9443 нет в SSL_ports - - > deny.
> Порта :9443 нет в SSL_ports - - > deny.вот здесь прописал acl SSL_ports port 9443, а потом http_access deny CONNECT !SSL_ports.
только что дописал эти строчки на другой машине, все заработало, там было достаточно только их, т.к. нет такого жесткого ограничения по сайтам.
как мне кажется проблема здесь
> acl mts src 192.168.80.1
> acl sbonline dstdom_regex sbi.sberbank.ruМожет iptables оказывать влияние? Хотя там в правилах прописано пропускать/выпускать все что относится к SQUID
>> Порта :9443 нет в SSL_ports - - > deny.
>ограничения по сайтам.
> как мне кажется проблема здесьА мне кажется, что проблема _там.
> А мне кажется, что проблема _там.Подскажите тогда куда 9443 порт прописать.
> вот из конфига squid(то что касается этого сайта)А знаете ли вы, что осьминог (или кто он там?) выполняет правила http_access по порядку. Соответственно ваше "то что касается этого сайта" может быть в конфиге где угодно и не дает оценить всех "масштабов бедствия". В общем перенесите правила http_access указанные в "то что касается этого сайта" в начало списка http_access. Должно помочь.
>> вот из конфига squid(то что касается этого сайта)
> А знаете ли вы, что осьминог (или кто он там?) выполняет правила
> http_access по порядку. Соответственно ваше "то что касается этого сайта" может
> быть в конфиге где угодно и не дает оценить всех "масштабов
> бедствия". В общем перенесите правила http_access указанные в "то что касается
> этого сайта" в начало списка http_access. Должно помочь.Да, я знал, но это не из-за порядка очередности.
Заменил acl sbonline dstdom_regex sbi.sberbank.ru на acl sbonline dstdom_regex sberbank.ru, теперь на сайт сбербанка пускает, и на все его домены 3-его уровня за исключением необходимого мне.
попробуйте так:
acl sbonline dstdomain .sberbank.ru
> попробуйте так:
> acl sbonline dstdomain .sberbank.ruЯ так уже пробовал, вот все мои попытки
#acl sbonline dst 194.186.207.124
#acl sbonline url_regex sberbank.ru
#acl sbonline dstdomain .sberbank.ru
#acl sbonline dstdom_regex sberbank.ruно спасибо за участие!
>> попробуйте так:
>> acl sbonline dstdomain .sberbank.ru
> Я так уже пробовал, вот все мои попытки
> #acl sbonline dst 194.186.207.124
> #acl sbonline url_regex sberbank.ru
> #acl sbonline dstdomain .sberbank.ru
> #acl sbonline dstdom_regex sberbank.ruПопробовать включить debug_options 28 и посмотреть какое правило
блокирует запрос
> Попробовать включить debug_options 28 и посмотреть какое правило
> блокирует запросспасибо!
2012/06/27 17:15:23| The request CONNECT sbi.sberbank.ru:9443 is ALLOWED, because it matched 'sbonline'
вот небольшая выдержка из лога, получается squid разрешает соединение и здесь дело в другом, значит iptables, сможет кто помочь, я с iptables на "вы".
В общем получается так, sqid разрешает соединение
2012/06/27 17:15:23| The request CONNECT sbi.sberbank.ru:9443 is ALLOWED, because it matched 'sbonline'а затем при подключении выдает ошибку 503
1340885974.049 0 192.168.50.1 TCP_MISS/503 0 CONNECT sbi.sberbank.ru:9443 - DIRECT/- -
в чем может быть проблема?
> В общем получается так, sqid разрешает соединение
> 2012/06/27 17:15:23| The request CONNECT sbi.sberbank.ru:9443 is ALLOWED, because
> it matched 'sbonline'
> а затем при подключении выдает ошибку 503
> 1340885974.049 0 192.168.50.1 TCP_MISS/503 0 CONNECT sbi.sberbank.ru:9443
> - DIRECT/- -
> в чем может быть проблема?какая схема аутентификации пользователей ? пользуете ли какой-нибудь редиректор ?
> какая схема аутентификации пользователей ? пользуете ли какой-нибудь редиректор ?аутентификации пользователей нет, как и редиректора
> 1340885974.049 0 192.168.50.1 TCP_MISS/503 0 CONNECT sbi.sberbank.ru:9443
> - DIRECT/- -Гугль дал стальные http://www.opennet.me/openforum/vsluhforumID12/5536.html#1 руки-крылья?
Все, проблема решена, все дело в SELinux, необходимо было добавить 9443 порт в http_port_t следующим образом semanage port -a -t http_port_t -p tcp 9443, может кому и пригодится.
Спасибо всем кто принимал участие, тему можно закрыть.
> Все, проблема решена, все дело в SELinux, необходимо было добавить 9443 порт
> в http_port_t следующим образом semanage port -a -t http_port_t -p tcp
> 9443, может кому и пригодится.:-O Приятно видеть человека, решившего проблему не по накатанному "с самого начала отключаем SELinux"!
>> Все, проблема решена, все дело в SELinux, необходимо было добавить 9443 порт
>> в http_port_t следующим образом semanage port -a -t http_port_t -p tcp
>> 9443, может кому и пригодится.
> :-O Приятно видеть человека, решившего проблему не по накатанному "с самого начала
> отключаем SELinux"!Я тоже столкнулся с такой проблемой и не сразу догадался отключить SELinux... :)
Но включение этого порта мне не помогло, пришлось сделать
setsebool -P squid_connect_any 1
чтобы совсем не отключать SELinux.
Если кому интересно, в логах на предмет squid и connect было примерно так:
#============= squid_t ==============
allow squid_t pki_ca_port_t:tcp_socket name_connect;
allow squid_t pki_tps_port_t:tcp_socket name_connect;
allow squid_t port_t:tcp_socket name_connect;
allow squid_t soundd_port_t:tcp_socket name_connect;
allow squid_t transproxy_port_t:tcp_socket name_connect;