Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» SQUID (только под *nix)

Автор: Ruza
Дата сообщения: 20.03.2011 11:42
magiogre
нет.
Автор: Boris_Popov
Дата сообщения: 22.03.2011 10:47
magiogre
iptables поможет.
Автор: ginger
Дата сообщения: 23.03.2011 11:08
Ребята, тема, наверно, избитая, но все же, задам вам вопрос, касательно квотирования в squid, кто что использует и посоветует?

Squid Account Management System (SAMS)
Squid Traffic Counter (STC)
Squid Accounting (Sacc)
Squid Quotas (squidquotas)
Squid log real-time analiser and traffic restriction tool (SDQuota)
Squid rus proxy acl auth (Squidacc)

В настоящий момент, на протяжении 2-х лет мною используется Squidacc, до этого пробовала SAMS. Но вот настало время, когда использование Squidacc уже неприемлемо.
Рассматриваю вариант замены на STC, на днях пробовали SAMS-2.0b2, система RHEL5.5, происходит крах squid из-за очень длинных строк ACL добавляемых SAMS'ом...

Спасибо.
Автор: magiogre
Дата сообщения: 23.03.2011 13:42
Boris_Popov
А есть где подробная инструкция, как это можно осуществить?
Автор: ipmanyak
Дата сообщения: 23.03.2011 14:11
magiogre гугль что ли не помог? Поиск в гугле - Запретить передачу файлов в ICQ
уже вторая ссылка дает ответ, как это делаетcя на iptables
http://forum.lissyara.su/viewtopic.php?f=4&t=11192
Ленитесь батенька самому усилия приложить? Ждете когда вам всё разжуют и на блюдечке принесут?
Автор: Ruza
Дата сообщения: 23.03.2011 14:29
magiogre
Угу в теме про squid запостить инструкцию на iptables никак к squid не относящиеся...
ipmanyak
Кстати не факт что и оно заработает...

ginger
У меня квотируется через LightSquid +perl скрипт... Есть в теме про LightSquid
Автор: ginger
Дата сообщения: 23.03.2011 17:23
Ruza

Цитата:
У меня квотируется через LightSquid +perl скрипт... Есть в теме про LightSquid

Мм, идея рассказать о LightSquid на нашем замечательном форуме у меня как то пробегала... но речь не об этом, хочу у вас поинтересоваться, используете ли вы при этом авторизацию?
В частности передо мной стоит задача NTLM-авторизации... что-то мне подсказывает, что perl-скрипт используемый вами, основывается на информации о хостах, либо вручную введенных пользователях, например как в basic авторизации?
Спасибо.
Автор: Ruza
Дата сообщения: 23.03.2011 17:25
ginger

Цитата:
В частности передо мной стоит задача NTLM-авторизации..

Да, NTLM в AD. Но юзеров не много (да и ротация не большая) так что руками 40 строк вроде как не проблема... Последний раз редактировал ещё в ноябре.
Автор: ginger
Дата сообщения: 23.03.2011 23:03
Ruza

Цитата:
Да, NTLM в AD. Но юзеров не много (да и ротация не большая) так что руками 40 строк вроде как не проблема... Последний раз редактировал ещё в ноябре.

Мм, интересно... вас не затруднит дать ссылочку на сей скрипт? либо выложить тот, что используется вами? Процесс интеграции прост? Есть небольшое описание необходимых для этого действий?
Спасибо.
Автор: vlary
Дата сообщения: 23.03.2011 23:49
ginger Я еще не так давно использовал идентефикацию юзеров в АД непосредственно через LDAP. Для этого использовал такую программу написанную на Си:
[more=Код программы]
/*
* squid_ad_auth: authentication via ldap for squid proxy server

*/

#define LDAP_DEPRECATED 1
#define LDAP_UNICODE 0
#define MAX_USERS 128
#include <sys/time.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>

/* Some tricks to allow dynamic bind with ldap_start_tls_s entry point at
* run time.
*/

#include <lber.h>
#include <ldap.h>

#define PROGRAM_NAME "squid_ad_auth"
#define xisspace(x) isspace((unsigned char)x)
/* Global options */
struct accnt
{
char name[16];
char pwtext[16];
};
struct accnt users[MAX_USERS];
static const char *basedn;
static const char *searchfilter = NULL;
static const char *binddn = NULL;
static const char *bindpasswd = NULL;
static const char *userattr = "cn";
static const char *passwdattr = NULL;
static int searchscope = LDAP_SCOPE_SUBTREE;
static int cached = 0;
static int bind_once = 0;
static int noreferrals = 0;
static int aliasderef = LDAP_DEREF_NEVER;
static int connect_timeout = 0;
static int timelimit = LDAP_NO_LIMIT;
static int debug = 0;

/* Added for TLS support and version 3 */
static int use_tls = 0;
static int version = -1;


static int checkcache(char *user, char *password)
{
int n;
for(n=0;n<cached;n++)
{
if(strcmp(user,users[n].name)==0 && strcmp(password,users[n].pwtext)==0)
return n;
}
return -1;
}

/* Yuck.. we need to glue to different versions of the API */

#ifndef LDAP_NO_ATTRS
#define LDAP_NO_ATTRS "1.1"
#endif
/*
* RFC 1738 defines that these characters should be escaped, as well
* any non-US-ASCII character or anything between 0x00 - 0x1F.
*/
static char rfc1738_unsafe_chars[] =
{
(char) 0x3C, /* < */
(char) 0x3E, /* > */
(char) 0x22, /* " */
(char) 0x23, /* # */
#if 0 /* done in code */
(char) 0x25, /* % */
#endif
(char) 0x7B, /* { */
(char) 0x7D, /* } */
(char) 0x7C, /* | */
(char) 0x5C, /* \ */
(char) 0x5E, /* ^ */
(char) 0x7E, /* ~ */
(char) 0x5B, /* [ */
(char) 0x5D, /* ] */
(char) 0x60, /* ` */
(char) 0x27, /* ' */
(char) 0x20 /* space */
};
static char rfc1738_reserved_chars[] =
{
(char) 0x3b, /* ; */
(char) 0x2f, /* / */
(char) 0x3f, /* ? */
(char) 0x3a, /* : */
(char) 0x40, /* @ */
(char) 0x3d, /* = */
(char) 0x26 /* & */
};
void xfree(void *s)
{
if(s!=NULL)
free(s);
}

/*
* xcalloc() - same as calloc(3). Used for portability.
* Never returns NULL; fatal on error.
*/
void *
xcalloc(size_t n, size_t sz)
{
void *p;

if (n < 1)
n = 1;
if (sz < 1)
sz = 1;
if ((p = calloc(n, sz)) == NULL) {

perror("xcalloc");
exit(1);
}

return (p);
}
/*
* rfc1738_escape - Returns a static buffer contains the RFC 1738
* compliant, escaped version of the given url.
*/
static char *
rfc1738_do_escape(const char *url, int encode_reserved)
{
static char *buf;
static size_t bufsize = 0;
const char *p;
char *q;
unsigned int i, do_escape;

if (buf == NULL || strlen(url) * 3 > bufsize) {
xfree(buf);
bufsize = strlen(url) * 3 + 1;
buf = xcalloc(bufsize, 1);
}
for (p = url, q = buf; *p != '\0'; p++, q++) {
do_escape = 0;

/* RFC 1738 defines these chars as unsafe */
for (i = 0; i < sizeof(rfc1738_unsafe_chars); i++) {
if (*p == rfc1738_unsafe_chars[i]) {
do_escape = 1;
break;
}
}
/* Handle % separately */
if (encode_reserved >= 0 && *p == '%')
do_escape = 1;
/* RFC 1738 defines these chars as reserved */
for (i = 0; i < sizeof(rfc1738_reserved_chars) && encode_reserved > 0; i
++) {
if (*p == rfc1738_reserved_chars[i]) {
do_escape = 1;
break;
}
}
/* RFC 1738 says any control chars (0x00-0x1F) are encoded */
if ((unsigned char) *p <= (unsigned char) 0x1F) {
do_escape = 1;
}
/* RFC 1738 says 0x7f is encoded */
if (*p == (char) 0x7F) {
do_escape = 1;
}
/* RFC 1738 says any non-US-ASCII are encoded */
if (((unsigned char) *p >= (unsigned char) 0x80)) {
do_escape = 1;
}
/* Do the triplet encoding, or just copy the char */
/* note: we do not need snprintf here as q is appropriately
* allocated - KA */
if (do_escape == 1) {
(void) sprintf(q, "%%%02X", (unsigned char) *p);
q += sizeof(char) * 2;
} else {
*q = *p;
}
}
*q = '\0';
return (buf);
}

/*
* rfc1738_escape - Returns a static buffer that contains the RFC
* 1738 compliant, escaped version of the given url.
*/
char *
rfc1738_escape(const char *url)
{
return rfc1738_do_escape(url, 0);
}

/*
* rfc1738_escape_unescaped - Returns a static buffer that contains
* the RFC 1738 compliant, escaped version of the given url.
*/
char *
rfc1738_escape_unescaped(const char *url)
{
return rfc1738_do_escape(url, -1);
}

/*
* rfc1738_escape_part - Returns a static buffer that contains the
* RFC 1738 compliant, escaped version of the given url segment.
*/
char *
rfc1738_escape_part(const char *url)
{
return rfc1738_do_escape(url, 1);
}

/*
* rfc1738_unescape() - Converts escaped characters (%xy numbers) in
* given the string. %% is a %. %ab is the 8-bit hexadecimal number "ab"
*/
void
rfc1738_unescape(char *s)
{
char hexnum[3];
int i, j; /* i is write, j is read */
unsigned int x;
for (i = j = 0; s[j]; i++, j++) {
s[i] = s[j];
if (s[i] != '%')
continue;
if (s[j + 1] == '%') { /* %% case */
j++;
continue;
}
if (s[j + 1] && s[j + 2]) {
if (s[j + 1] == '0' && s[j + 2] == '0') { /* %00 case */
j += 2;
continue;
}
hexnum[0] = s[j + 1];
hexnum[1] = s[j + 2];
hexnum[2] = '\0';
if (1 == sscanf(hexnum, "%x", &x)) {
s[i] = (char) (0x0ff & x);
j += 2;
}
}
}
s[i] = '\0';
}
#if defined(LDAP_API_VERSION) && LDAP_API_VERSION > 1823
static int
squid_ldap_errno(LDAP * ld)
{
int err = 0;
ldap_get_option(ld, LDAP_OPT_ERROR_NUMBER, &err);
return err;
}
static void
squid_ldap_set_aliasderef(LDAP * ld, int deref)
{
ldap_set_option(ld, LDAP_OPT_DEREF, &deref);
}
static void
squid_ldap_set_referrals(LDAP * ld, int referrals)
{
int *value = referrals ? LDAP_OPT_ON : LDAP_OPT_OFF;
ldap_set_option(ld, LDAP_OPT_REFERRALS, value);
}
static void
squid_ldap_set_timelimit(LDAP * ld, int timelimit)
{
ldap_set_option(ld, LDAP_OPT_TIMELIMIT, &timelimit);
}
static void
squid_ldap_set_connect_timeout(LDAP * ld, int timelimit)
{
#if defined(LDAP_OPT_NETWORK_TIMEOUT)
struct timeval tv;
tv.tv_sec = timelimit;
tv.tv_usec = 0;
ldap_set_option(ld, LDAP_OPT_NETWORK_TIMEOUT, &tv);
#elif defined(LDAP_X_OPT_CONNECT_TIMEOUT)
timelimit *= 1000;
ldap_set_option(ld, LDAP_X_OPT_CONNECT_TIMEOUT, &timelimit);
#endif
}
static void
squid_ldap_memfree(char *p)
{
ldap_memfree(p);
}

#else
static int
squid_ldap_errno(LDAP * ld)
{
return ld->ld_errno;
}
static void
squid_ldap_set_aliasderef(LDAP * ld, int deref)
{
ld->ld_deref = deref;
}
static void
squid_ldap_set_referrals(LDAP * ld, int referrals)
{
if (referrals)
ld->ld_options |= ~LDAP_OPT_REFERRALS;
else
ld->ld_options &= ~LDAP_OPT_REFERRALS;
}
static void
squid_ldap_set_timelimit(LDAP * ld, int timelimit)
{
ld->ld_timelimit = timelimit;
}
static void
squid_ldap_set_connect_timeout(LDAP * ld, int timelimit)
{
fprintf(stderr, "Connect timeouts not supported in your LDAP library\n");
}
static void
squid_ldap_memfree(char *p)
{
free(p);
}

#endif

static LDAP *
open_ldap_connection(const char *ldapServer, int port)
{
LDAP *ld = NULL;
if ((ld = ldap_init(ldapServer, port)) == NULL) {
fprintf(stderr, "\nUnable to connect to LDAP server:%s port:%d\n",
ldapServer, port);
exit(1);
}
if (connect_timeout)
squid_ldap_set_connect_timeout(ld, connect_timeout);

#ifdef LDAP_VERSION3
if (version == -1) {
version = LDAP_VERSION2;
}
if (ldap_set_option(ld, LDAP_OPT_PROTOCOL_VERSION, &version) != LDAP_SUCCESS
) {
fprintf(stderr, "Could not set LDAP_OPT_PROTOCOL_VERSION %d\n",
version);
exit(1);
}

#endif
squid_ldap_set_timelimit(ld, timelimit);
squid_ldap_set_referrals(ld, !noreferrals);
squid_ldap_set_aliasderef(ld, aliasderef);
return ld;
}
/* Check the userid & password.
* Return 0 on success, 1 on failure
*/
static int
checkLDAP(const char *userid, const char *password, const char *ldapServer, int
port)
{
char dn[1024];
int ret = 0;
LDAP *bind_ld = NULL;
if (!*password) {
/* LDAP can't bind with a blank password. Seen as "anonymous"
* and always granted access
*/
if (debug)
fprintf(stderr, "Blank password given\n");
return 1;
}
snprintf(dn, sizeof(dn), "CN=%s,OU=your_unit,DC=your_domain,DC=com", userid);
if (debug)
fprintf(stderr, "Attempting to authenticate user '%s'\n", dn);
bind_ld = open_ldap_connection(ldapServer, port);
if(bind_ld==NULL)
{
if (debug)
fprintf(stderr, "Cannot connect to server %s \n",ldapServer);
return 1;
}
if (ldap_simple_bind_s(bind_ld, dn, password) != LDAP_SUCCESS)
ret = 1;
ldap_unbind(bind_ld);
bind_ld = NULL;
return ret;
}
/* Make a sanity check on the username to reject oddly typed names */
static int
validUsername(const char *user)
{
const unsigned char *p = (const unsigned char *) user;

/* Leading whitespace? */
if (xisspace(p[0]))
return 0;
while (p[0] && p[1]) {
if (xisspace(p[0])) {
/* More than one consequitive space? */
if (xisspace(p[1]))
return 0;
/* or odd space type character used? */
if (p[0] != ' ')
return 0;
}
p++;
}
/* Trailing whitespace? */
if (xisspace(p[0]))
return 0;
return 1;
}

int
main(int argc, char **argv)
{
char buf[1024];
char *user, *passwd;
char ldapServer[32];
int tryagain;
int port = LDAP_PORT;
setbuf(stdout, NULL);
if (argc > 2)
{
strncpy(ldapServer,argv[2],31);
debug++;
}
else if(argc==2)
{
strncpy(ldapServer,argv[1],31);
}
else {
fprintf(stderr, "Usage: " PROGRAM_NAME " [-d] ldap_server_name\n");
exit(1);
}

while (fgets(buf, sizeof(buf), stdin) != NULL) {
user = strtok(buf, " \r\n");
passwd = strtok(NULL, "\r\n");

if (!user || !passwd || !passwd[0]) {
printf("ERR\n");
continue;
}
if (debug)
fprintf(stderr, "User: %s Password: %s \n",user,passwd );

rfc1738_unescape(user);
rfc1738_unescape(passwd);

if (!validUsername(user)) {
printf("ERR Bad user name\n");
continue;
}
if(checkcache(user,passwd)>=0)
{
if (debug)
fprintf(stderr, "User %s found in cache\n",user );
printf("OK\n");
continue;
}
if (checkLDAP(user, passwd, ldapServer, port) != 0) {
printf("ERR\n");
} else {
printf("OK\n");
if(cached>=MAX_USERS)
continue;
strncpy(users[cached].name,user,15);
strncpy(users[cached].pwtext,passwd,15);
cached++;
}
}
return 0;
}


[/more]
Для компиляции кода нужны библиотеки liblber и libldap, они обычно идут с самбой.
Все работало очень четко, быстро и пристойно.
Автор: Alukardd
Дата сообщения: 24.03.2011 00:02
vlary
я кстати тогда посмотрел на вашу программку, посмотрел и сделал basic авторизацию с помощью squid_ldap_auth... Тоже прекрасно живу.
Правда были мысль о квотирование, но т.к. необходимости в нём нет то и время на решение этого вопроса я не выделил. Самому-то мб и обидно, но сеть живет и так хорошо.
Автор: Ruza
Дата сообщения: 24.03.2011 07:55
ginger

Я тут описывал - http://forum.ru-board.com/topic.cgi?forum=8&topic=13976&start=160#2
Всё так же только редиректор отрабатывает на превышение лимита и юзера отправляет на страницу с поздравлениями.
Автор: ginger
Дата сообщения: 24.03.2011 11:04
vlary

Цитата:
Я еще не так давно использовал идентефикацию юзеров в АД непосредственно через LDAP

Авторизовать в AD это не проблема, задача стоит в применении квот к пользователям прошедших NTLM авторизацию, вариант как видится только один, прописывание их вручную...
Ruza
Спасибо.
Автор: ginger
Дата сообщения: 24.03.2011 16:16
Ruza
Прошу прощения за беспокойство, по данной вами ссылке, скрипт оказался не рабочим, в частности:

Цитата:
# GetRealName($daypath,"?"); # init realname for day
<FF>;
<FF>;
while (<FF>) {
($user,$size,$hit)=split;
$h{$user}{size}+=$size;
$h{$user}{hit}+=$hit;
}
close FF;
}

Задвоенное "<FF>;" здесь явно лишнее... вас не затруднит выложить ваш рабочий вариант в запакованном виде, например в zip?

Спасибо.
Автор: milyasow
Дата сообщения: 04.04.2011 21:25
ginger
A если SAMS использовать не бету?
у меня 1.05 стабильно работает на CentOS 5.5 c NTLM и squidguard
Автор: Ruza
Дата сообщения: 05.04.2011 12:35
ginger
Странно, у меня работает на Fedora14
cat ./squid-block.pl

Цитата:
#!/usr/bin/perl
use File::Basename;.
push (@INC,(fileparse($0))[1]);.

require "lightsquid.cfg";.
require "common.pl";.

($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime;.
$year=sprintf("%02d",$year+1900);.
$month=sprintf("%02d",$mon+1);.

$filter="$year$month";.

@daylist=glob("$reportpath/$filter*");.

foreach $daypath (sort @daylist) {.
open FF,"<$daypath/.total";.
# GetRealName($daypath,"?"); # init realname for day.
<FF>;.
<FF>;.
while (<FF>) {.
($user,$size,$hit)=split;.
$h{$user}{size}+=$size;.
$h{$user}{hit}+=$hit;.
}.
close FF;.
}.

open FF,"</etc/squid/limit";.
while (<FF>) {.
($user,$limit)=split;.
$tt{$user}{limit}=$limit;.
}.
close FF;.

open FF,">","/etc/squid/blocked_users";.

foreach $user (sort {$h{$b}{size}<=>$h{$a}{size}} keys %h) {.
print FF ("$user\n") if ($h{$user}{size} > $tt{$user}{limit});.
}.
close FF;.


cat /etc/squid/limit

Цитата:
ivanov 512000000
....
....
....
Автор: vlary
Дата сообщения: 07.04.2011 17:33
bugmenot121

Цитата:
вышла новая книга
Squid Proxy Server 3.1: Beginner's Guide

Ну вот она и в электронном виде появилась. Если интересно, можешь почитать:
http://www.filesonic.com/file/347532661/Packtpub.Squid.Proxy.Server.3.1.Beginners.Guide.Feb.2011.rar
Автор: Alukardd
Дата сообщения: 07.04.2011 20:40
vlary
спасиб за ссылочку) уже лежит в локальной библиотеке...

p.s. вот она, обложка с цветочком)
Автор: vlary
Дата сообщения: 07.04.2011 21:23
Alukardd
Цитата:
спасиб за ссылочку)
На здоровье! Подниму-ка я ее в шапку. Глядишь, кому-нибудь еще пригодится.

Автор: ginger
Дата сообщения: 09.04.2011 23:43
milyasow

Цитата:
A если SAMS использовать не бету?
у меня 1.05 стабильно работает на CentOS 5.5 c NTLM и squidguard

В настоящий момент развернула тестовый стенд с SQLim:
http://sqlim.googlecode.com
Если работа будет не удовлетворительна, то SAMS наверное, останется единственным решением.

Ruza
Спасибо, но ваш вариант, так же содержит ошибки в коде, сейчас рассматриваю испозование SQLim, чуть позже расскажу пошагово что и как.

vlary
Если вас не затруднит, будьте так добры, продублируйте пожалуйста ссылку на книгу, нынешняя уже не доступна.
Спасибо.
Автор: vlary
Дата сообщения: 10.04.2011 00:02
ginger
Цитата:
продублируйте пожалуйста ссылку на книгу

http://rapidshare.com/files/456666108/Packtpub.Squid.Proxy.Server.3.1.Beginners.Guide.Feb.2011.rar
Продублировал, шапку поправил.
Автор: petyp
Дата сообщения: 10.04.2011 22:54
Люди такая проблема, файлы через squid передаются очень медленно, хотя если squid выключить все проходит в раз 10-15 быстрей. О пациенте : freebsd 8.2, squid 2.9 ? вот конфиг squid:

[more]
http_port 127.0.0.1:3128 transparent
http_port 192.168.20.48:3128
http_port 3128
acl all src all
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
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 manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localnet
http_access deny all
icp_access allow localnet
icp_access deny all
http_port 3128
hierarchy_stoplist cgi-bin ?
cache_mem 512 MB
cache_dir ufs /var/squid/cache 2048 16 256
access_log /var/squid/logs/access.log squid
cache_log /var/squid/logs/cache.log
cache_store_log /var/squid/logs/store.log
pid_filename /var/squid/logs/squid.pid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
acl shoutcast rep_header X-HTTP09-First-Line ^ICY.[0-9]
upgrade_http0.9 deny shoutcast
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
coredump_dir /var/squid/cache
[/more]
Этот конфиг я почти не правил кроме папок с логами, указанием что прокся прозрачна и выставил порт 3128, все остальное я не трогал.
Автор: ipmanyak
Дата сообщения: 11.04.2011 10:24
petyp

Цитата:
cache_store_log /var/squid/logs/store.log
Это зачем включено? Отключи, поставь none. Эта опция нужна только в целях отладки и значительно тормозит работу сквида и отнимает большое место на диске.

Цитата:
cache_dir ufs /var/squid/cache 2048 16 256

2 гига кэша на диске тоже может тормозить и значительно, трата времени на поиск в индексах кэша, если у вас трафик инета безлимитный, то стоит подумать и настроить сквид без использования дискового кэша.
По анализу быстродействия почитай тут
http://wiki.squid-cache.org/KnowledgeBase/PerformanceAnalysis


Цитата:
хотя если squid выключить все проходит в раз 10-15 быстрей.
Совсем выключал? Тогда само собой быстрее будет, поскольку другие юзеры мешать не будут.
Автор: Loafer
Дата сообщения: 12.04.2011 14:08

Цитата:
acl odnk_games url_regex -i /dk?st.cmd=appMain&st.refplace=
http_access deny odnk_games

BONDBIG
Не работает.
Работает ли у кого нить эта конструкция?
Автор: ginger
Дата сообщения: 12.04.2011 21:58
Loafer

Цитата:
Работает ли у кого нить эта конструкция?

Нет, работать не будет у всех, т.к. подразумевается, что вы используете регулярные выражения, приведенная вами часть URL, содержит специальные символы используемые в регулярных выражениях.
Автор: BONDBIG
Дата сообщения: 12.04.2011 22:06

Цитата:
acl odnk_games        url_regex    -i  \/dk\?st\.cmd\=appMain\&st\.refplace\=  
http_access    deny    odnk_games  

Автор: xvasekx
Дата сообщения: 19.04.2011 08:15
Добрый день, как подружить teamviewer со squid? Что нужно прописать в белый список чтобы teamviewer мог выйти в инет?
Прописал

Цитата:
teamviewer.com
dyngate.com

не помогло.
Автор: Alukardd
Дата сообщения: 19.04.2011 09:00
xvasekx
эм...
у вас белые списки что ли? в настройках teamviewer выставлен проксик?
Думаю что вам как минимум надо в squid разрешить 5938 порт. Только на 80 он работать не могёт...
Автор: ginger
Дата сообщения: 19.04.2011 09:00
xvasekx

Цитата:
Добрый день, как подружить teamviewer со squid? Что нужно прописать в белый список чтобы teamviewer мог выйти в инет?

Для начала воспользоваться Wireshark и выяснить какие протоколы и порты необходимы этой программе, после чего прописать необходимое в squid.conf.
Автор: ANTRAMABANAKAN
Дата сообщения: 03.05.2011 14:25
может кто знает...

поставлен Squid 2.6 STABLE и надо поставить dansguardian..
для етого надо пересобрать squid с ключом -follow-x-forwarded-for ..
Но у меня уже squid поставлен..
как надо пересобрать squid?

я думал что ето вожможно через yum?

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687

Предыдущая тема: Неполадки в работе DHCP сервера


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.