Приветствую всех!
Возник небольшой вопрос и не могу понять в какую же мне сторону копать, подскажите.
Есть FreeBSD линейки 10.x Generic с настроенным SQUID 3.5.3, аутентификация kerberos.
Нужно открыть порты для клиент-банка, не совсем понимаю как это правильно сделать и куда смотреть. Из гугла понял, что в сквиде можно добавить Safe_ports, сделал - не работает, также понял, что ipfw по умолчанию не включен/насроен/работает т.к. при выводе
# ipfw list
получаю
ipfw: getsockopt(IP_FW_GET): Protocol not available
Конфигурация на фре - умолчальная, никаких фаерволлов не настраивал.
Хочу понять, чтобы открыть порты на внешку, что мне нужно настраивать?
вот вывод netstat
# netstat -na | grep LIST
tcp4 0 0 127.0.0.1.3128 *.* LISTEN
tcp4 0 0 10.68.12.1.3128 *.* LISTEN
tcp4 0 0 127.0.0.1.25 *.* LISTEN
tcp4 0 0 *.80 *.* LISTEN
tcp4 0 0 *.22 *.* LISTEN
tcp6 0 0 *.22 *.* LISTEN
Заранее благодарю за помощь.
Если у вас ipfw не включен,и нет иного файрвола, то ничего "открывать" не нужно. и так все открыто.далее... если у вас сквид используется как обычный прокси, и нет никакого софта вроде проксизаторов заворачивающих пакетики на прокси "прозрачно"- то в клиент-банке наверное нужно его прописать. иначе как клиент банк узнает что надо посылать через прокси пакетики?
Ну а вообще из описания непонятно, какого рода шлюз у вас настроен. оба адреса которые вы показали- серые. значит ли это что вы умышленно заменили их а на одном из адресов там реальный, или же это значит что ваш шлюз - на самом деле один из шлюзов в цепочек прокси, и проблема может быть гдето на вышестоящем прокси...
короче каша у вас в голове :)
>[оверквотинг удален]
> софта вроде проксизаторов заворачивающих пакетики на прокси "прозрачно"- то в клиент-банке
> наверное нужно его прописать. иначе как клиент банк узнает что надо
> посылать через прокси пакетики?
> Ну а вообще из описания непонятно, какого рода шлюз у вас настроен.
> оба адреса которые вы показали- серые. значит ли это что вы
> умышленно заменили их а на одном из адресов там реальный, или
> же это значит что ваш шлюз - на самом деле один
> из шлюзов в цепочек прокси, и проблема может быть гдето на
> вышестоящем прокси...
> короче каша у вас в голове :)В том-то и дело, что я пока не совсем разбираюсь во многих вещах.
Банально - не знаю есть-ли в конфигурации FreeBSD фаерволл по умолчанию.
Адрес прокси клиент-банку указываем, бесполезно.
Если брать всю систему: Есть Cisco ASA в которую заходит интернет-канал, из ASA выходит VLAN который используется прокси-сервером для выхода в интернет, на прокси есть вторая сетевая карта с IP внутренней сети к которому обращаются клиентские ПК.
Адреса реальные
10.68.12.1
Это внутрений адрес на котором слушает сквид.
Учись формулировать вопрос. Понаписал много, а как называется банк-клиент, по какому порту работает программа или если, это web доступ, то какая сссылка на сайт - ничего не сказал.
У сбербанка есть Система Сбербанк Бизнес ОнЛайн - ссылка в интернете https://sbi.sberbank.ru:9443/ic/
если о ней идет речь, то в сквиде разреши этот порт в SSL_ports
типа:
acl SSL_ports port 443 # ssl
acl SSL_ports port 9091 # BKS-bank
acl SSL_ports port 9443 # sberbank
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # httpsвозможно еще нужно поиграться с тэгом forwarded_for для заголовка HTTP requests X-Forwarded-For поставить delete
forwarded_for delete
>[оверквотинг удален]
> # sberbank
> acl Safe_ports port 80
> # http
> acl Safe_ports port 21
> # ftp
> acl Safe_ports port 443
> # https
> возможно еще нужно поиграться с тэгом forwarded_for для заголовка HTTP requests
> X-Forwarded-For поставить delete
> forwarded_for deleteНачну с начала.
Система PSB-Online, использует порты 80, 9080, 9443.
Ссылка на саму систему http://online.payment.ru/index0.html?enter2
По ссылке - вход в систему, для входа используется Java, во время входа Java предлагает указать настройки прокси.
У меня в конфиге вот так, но пользователь все равно не может подключиться к системе.acl Safe_ports port 80 # http
acl Safe_ports port 9080 # http
acl SSL_ports port 9443 # SSLЕсли я добавлю forwarded_for delete в конфиг, это поможет?
Честно, только начинаю разбираться во всем этом и где-то пробелы, а где-то знаю достаточно. Для примера - как поднять сквид с аутентификацией kerberos по группам в AD, я уже разобрался, но вот настройка фаерволлов, форвардинг и прочие радости для меня пока темный лес.Upd: Быть может мне нужно, для начала, как-то завернуть эти порты на сквид? Только я не совсем понимаю через что это делать, посоветуешь? Если я правильно понял - это ipfw или нет?
>>[оверквотинг удален]
> Upd: Быть может мне нужно, для начала, как-то завернуть эти порты на
> сквид? Только я не совсем понимаю через что это делать, посоветуешь?
> Если я правильно понял - это ipfw или нет?Это ты сам для себя решай. Если хочешь чтобы сквил был прозрачным (не прописывать прокси на станциях в браузере), тогда правилами ipfw заворачивай трафик и в сквиде сделай соответствующую настройку. Мануалов полно. Но имей ввиду, про большую часть типов аутентификации в сквиде можешь забыть. Про доменную с kerberos не могу сказать.
При прозрачном проксировании ПО клиента считает, что обращается напрямую к серверу и никогда не посылает заголовок Proxy-authorization.
Инет в целом у буха работает? Если не работает только сайт этого банка, то что сообщает? Что в логах сквида пишет?
Сайт этого банка требует - На текущий момент минимально допустимой версией Java для корректной работы системы PSB On-Line является Java 7 update 75. Рекомендуемая для использования - Java 8 версии не ниже 1.8.0_31.
Это соблюдено?
Прочти это http://online.payment.ru/index0.html?support
и это http://online.payment.ru/index0.html?connect_04
>[оверквотинг удален]
> При прозрачном проксировании ПО клиента считает, что обращается напрямую к серверу и
> никогда не посылает заголовок Proxy-authorization.
> Инет в целом у буха работает? Если не работает только сайт этого
> банка, то что сообщает? Что в логах сквида пишет?
> Сайт этого банка требует - На текущий момент минимально допустимой версией
> Java для корректной работы системы PSB On-Line является Java 7 update
> 75. Рекомендуемая для использования - Java 8 версии не ниже 1.8.0_31.
> Это соблюдено?
> Прочти это http://online.payment.ru/index0.html?support
> и это http://online.payment.ru/index0.html?connect_04Мне-то как раз прозрачная прокси не нужна, я правильно понимаю, что если заворачивать порты - прозрачность обязательна?
В целом, инет у буха работает.
Сайт банка работает. Не работает подключение через java приложение на сайте.
При входе в систему - открывается плагин для авторизации, там подключается токен, указываются настройки прокси и данные для авторизации.
При попытке авторизации системе - выдается ошибка подключения.
В сети у меня есть прозрачная прокся на 3proxy, через нее юзер подключается нормально, но эту проксю скоро вырубят.
Машина юзера настроена в соответсвии с требованиями и java правильная.
При попытке подключения через squid, в логах вот такая ошибка
TCP_DENIED/407 4508 GET http://online.payment.ru/i/orange-back.gif - HIER_NONE/- text/html
TCP_DENIED/407 4512 GET http://online.payment.ru/i/palebig-back.gif - HIER_NONE/- text/html
TCP_DENIED/407 4520 GET http://online.payment.ru/i/palebig-bottom.gif - HIER_NONE/- text/html
Потом TCP_MISS/200 но уже не 4508,4512,4520, а другие значения.При этом в cache.log все чисто.
Пользователь нормально аутентифицируется.
>[оверквотинг удален]
> При прозрачном проксировании ПО клиента считает, что обращается напрямую к серверу и
> никогда не посылает заголовок Proxy-authorization.
> Инет в целом у буха работает? Если не работает только сайт этого
> банка, то что сообщает? Что в логах сквида пишет?
> Сайт этого банка требует - На текущий момент минимально допустимой версией
> Java для корректной работы системы PSB On-Line является Java 7 update
> 75. Рекомендуемая для использования - Java 8 версии не ниже 1.8.0_31.
> Это соблюдено?
> Прочти это http://online.payment.ru/index0.html?support
> и это http://online.payment.ru/index0.html?connect_04Как вариант, сервера не поддерживают нормально авторизацию пользователя на проксе, быть может пропустить пользователя без авторизации? Можно-ли это как-то сделать не настраивая прозрачность и оставив kerberos аутентификацию? Имею ввиду - сказать сквиду, чтобы он пропускал такой-то хост без авторизации.
Как вариант сделать такacl host src 10.6.1.5
http_access allow hostно это все равно же аутентификация, просто по IP?
>[оверквотинг удален]
>> Прочти это http://online.payment.ru/index0.html?support
>> и это http://online.payment.ru/index0.html?connect_04
> Как вариант, сервера не поддерживают нормально авторизацию пользователя на проксе, быть
> может пропустить пользователя без авторизации? Можно-ли это как-то сделать не настраивая
> прозрачность и оставив kerberos аутентификацию? Имею ввиду - сказать сквиду, чтобы
> он пропускал такой-то хост без авторизации.
> Как вариант сделать так
> acl host src 10.6.1.5
> http_access allow host
> но это все равно же аутентификация, просто по IP?Да, можно пускать без авторизации, поставив правила выше запроса авторизации.
Авторизация подразумевает окно с вводом логина и пароля, по IP это не авторизация.
По поводу сбербанка
http://www.opennet.me/openforum/vsluhforumID12/7183.html
>[оверквотинг удален]
>> он пропускал такой-то хост без авторизации.
>> Как вариант сделать так
>> acl host src 10.6.1.5
>> http_access allow host
>> но это все равно же аутентификация, просто по IP?
> Да, можно пускать без авторизации, поставив правила выше запроса авторизации.
> Авторизация подразумевает окно с вводом логина и пароля, по IP это не
> авторизация.
> По поводу сбербанка
> http://www.opennet.me/openforum/vsluhforumID12/7183.htmlКруто, спасибо!
Сравнил то что у меня и в примере.
Пытаюсь понять, почему у меня не работает. Помоги устранить некоторые пробелы в знаниях, в самом низу я напротив строчек написал вопросы.Вот мой кусок, который я делал в конфиге
acl Safe_ports port 80 # http
acl Safe_ports port 9080 # PSB-bank
acl Safe_ports port 9443 # PSB-bank
acl SSL_ports port 443 9443 # SSL
acl bank dst online.payment.ru
http_port 80
http_port 9080
http_port 9443
http_access allow bank
http_access allow !Safe_portsА вот то, что отвечает за коннект в ссылке про сбербанк
acl SSL_ports port 443 # ssl
acl SSL_ports port 9091 # BKS-bank
acl SSL_ports port 9443 # sberbank
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl CONNECT method CONNECT
acl sber dstdomain .sberbank.ru
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow sber all
forwarded_for deleteЯ так понимаю, что в моем случае это должно иметь вид
acl SSL_ports port 443 # ssl
acl SSL_ports port 9080 # мой банк
acl SSL_ports port 9443 # мой банк
acl Safe_ports port 80 # http и мой банк
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl CONNECT method CONNECT #Предполагаю, что именно ее мне не хватает, #это так?
acl sber dstdomain online.payment.ru #здесь должно быть online.payment.ru #или .payment.ru с учетом того, что сайт на который ломится ПО - online.payment.ru?
http_access deny !Safe_ports #я правильно понимаю, что здесь доступ запрещен всем, #кроме Safe_ports???
http_access deny CONNECT !SSL_ports #а здесь, кроме SSL_ports???
http_access allow sber all
forwarded_for deleteТакже, хочу понять имеет-ли значение расположение этих параметров в конфиге? В самом конце или в самом низу.
Заранее благодарю!