Значит, что клиенту с адресом 60.190.97.142 был запрещён доступ к http://www.yahoo.com/
В конфиге сквида разрешение внешним клиентам на доступ дан?
Только одна запись
1247556104.295 23 60.190.97.142 TCP_DENIED/407 1618 GET http://www.yahoo.com/ - NONE/- text/html
Что она значит, понятия не имею.
Значит, что клиенту с адресом 60.190.97.142 был запрещён доступ к http://www.yahoo.com/
В конфиге сквида разрешение внешним клиентам на доступ дан?
На выходе нужна proxy для доступа с рабочего места, в обход работодателя. Для одного пользователя, лучше если с паролем.
Я бы с удовольствием весь конфиг скинул, только там раскомментаренные строки разряжены по всему огромному конфигу, без скрипта, вручную долго собирать.
Скину то, что относится к acl.
Как я понял именно эти строки регулируют доступ. Если нужны значения еще каких параметров, то могу предоставить.
acl manager proto cache_object
acl MY proxy_auth REQUIRED
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 SSL_ports port 443
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 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 CONNECT method CONNECT
http_access allow MY
http_access deny all
http_port 3128
И еще вопрос. Я не понял где нужно задавать пароль и задается ли он где-либо.
Из приведенных строк важны две:
acl MY proxy_auth REQUIRED
http_access allow MY
Но, для авторизации, надо еще несколько:
auth_param basic program /opt/squid/bin/checkauth
auth_param basic children 1
auth_param basic credentialsttl 2 hours
authenticate_ttl 5 minutes
Гдеcheckauth - программа-авторизатор, которая получает на стандартный вход 2 параметра (логин и пароль), проверяет их и в стандартный выход выдает "OK\n" или "ERR\n". Например что-то типа этого (на перле, переделка на другой язык - домашнее задание):
Разумеется, имена/пароли можно хранить в файлике, его считывать и проверять по всему списку.PHP Code:#!/opt/bin/perl
$|=1;
while(<>) {
chomp;
my(@A)=split;
if ($A[0]=='логин' && $A[1]=='пароль') { print "OK\n"; }
else { print "ERR\n"; }
}
Сейчас у меня следующие настройки в конфиге.
# If you want to use the traditional proxy authentication, jump over to
# the helpers/basic_auth/NCSA directory and type:
# % make
# % make install
#
# Then, set this line to something like
#
auth_param basic program /opt/libexec/ncsa_auth /opt/share/passwords/users
Нужно ли менять программы авторизации?
И что это за дирректория и какой у нее абсолютный путь?
helpers/basic_auth/NCSA
в которой меня просят выполнить команды %make %make install
В cashe.log при старте вижу следующую запись
helperOpenServers: Starting 5 'ncsa_auth' processes
Т.е. процесс который отвечает за авторизацию запущен?
Last edited by __KiM__; 15-07-2009 at 08:58.
Скажем так, стандартно со сквидом идет именно ncsa_auth, параметром задается файл, в котором хранятся логины и пароли в виде:
login:crypt_password
где crypt_password - шифрованный пароль по стандартному алгоритму crypt
Если в логе пишется о запуске ncsa_auth, то авторизатор работает и в указанный файлик надо поместить нужные логины-пароли.
Например, паролю 12345678 будет соответствовать строка uhlrca4vneO7E
Я же привел пример вообще произвольной программы проверки логина-пароля, без привязки к ncsa_auth, поскольку эту проверку можно выполнить многими разными способами. Вплоть до привязки к nvram.
banners и файл исключений
при использовании redirector.sh
Какой формат файлов и структура , что б свой сделать?
Last edited by oleg71; 02-08-2009 at 17:33.
| Asus WL-500gP V2 | WL500gPv2-rtn-11.10.3495 code.google.com/p/wl500g/ core.dumped.ru |
Перевыложите плиз сборочку! На рапиде долго не отлежала.
Хочется delay_pools поюзать и без кеша тоже отлично.
Скомпилил, выложил.
WL-500GPremium v.1 default CPU&memory 1.9.2.7-10
(HP1018, EZ-setup on/off wi-fi, FDD 1Gb Corsair: nginx+phpfcgi, cron+phpNOD32Updater, squid+ADredirector, swapon)
спасибо.
настроил одно ведро первого класса, всё отлично работает.
Привет Всем,
ничего не понимаю после установки пакета выложенного в данной теме delay_pools не появился:
Squid Cache: Version 2.7.STABLE6
configure options: '--build=i386-pc-linux-gnu' '--host=mipsel-linux' '--target=mipsel-linux' '--prefix=/opt' '--bindir=/opt/bin' '--sbindir=/opt/sbin' '--libexecdir=/opt/libexec' '--datadir=/opt/share/squid' '--sysconfdir=/opt/etc/squid' '--sharedstatedir=/opt/com/squid' '--localstatedir=/opt/var/squid' '--libdir=/opt/lib' '--includedir=/opt/include' '--oldincludedir=/opt/include' '--infodir=/opt/info' '--mandir=/opt/man' '--disable-epoll' '--enable-basic-auth-helpers=NCSA' '--disable-nls' 'build_alias=i386-pc-linux-gnu' 'host_alias=mipsel-linux' 'target_alias=mipsel-linux' 'CC=/home/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/bin/mipsel-linux-uclibc-gcc' 'LDFLAGS= -L/home/optware/oleg/staging/opt/lib -Wl,-rpath,/opt/lib -Wl,-rpath-link,/home/optware/oleg/staging/opt/lib ' 'CPPFLAGS=-O2 -pipe -I/home/optware/oleg/staging/opt/include ' 'CPP=/home/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/bin/mipsel-linux-uclibc-gcc -E'
PS: PLZ, поделитесь squid, собранным, с поддержкой delay_pools
--
Last edited by shadow-2005; 07-10-2009 at 07:53. Reason: insufficient information