Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Автоматическое отключение пользователе&

    Scheduled Pinned Locked Moved Russian
    19 Posts 8 Posters 12.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      Clista
      last edited by

      спасибо, сейчас попробуемс)

      1 Reply Last reply Reply Quote 0
      • T
        Tamriel
        last edited by

        как успехи ?
        отпишись plz

        AMD Athlon™ XP 1700+
        384MB Ram
        NanoBSD Boot Slice pfsense0 / da0s1
        Platform nanobsd (512mb)
        Version 2.0-RELEASE (i386)
        built on Wed Sep 14 09:08:10 EDT 2011

        1 Reply Last reply Reply Quote 0
        • C
          Clista
          last edited by

          Извините, что не сразу ответил

          пробовал
          open(FF,"> /usr/local/squid/blocked_users");
          open(FF,"> /usr/local/etc/squid/blocked_users");

          теперь выдает такие ошибки

          [2.0-RC2][root@pfsense.localdomain]/root(1): perl /usr/local/etc/squid/ter.pl
          String found where operator expected at /usr/local/etc/squid/ter.pl line 44, near "print FF (""
            (Might be a runaway multi-line "" string starting on line 41)
                  (Missing semicolon on previous line?)
          Backslash found where operator expected at /usr/local/etc/squid/ter.pl line 44, near "$user\"
                  (Missing operator before \?)
          String found where operator expected at /usr/local/etc/squid/ter.pl line 49, near "printf(""
            (Might be a runaway multi-line "" string starting on line 44)
                  (Missing semicolon on previous line?)
          syntax error at /usr/local/etc/squid/ter.pl line 41, near "/usr/local"
          Unmatched right curly bracket at /usr/local/etc/squid/ter.pl line 54, at end of line
          syntax error at /usr/local/etc/squid/ter.pl line 54, near "}"
          Execution of /usr/local/etc/squid/ter.pl aborted due to compilation errors.
          
          

          44я строка соответственно
            print FF ("$user\n") if ($h{$user}{size} > $tt{$user}{limit});
          как понимаю он ругается на ввод информации в файл /usr/local/etc/squid/limit
          файлу я на всякий случай присвоил 777 права

          1 Reply Last reply Reply Quote 0
          • D
            dvserg
            last edited by

            c.35-40

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

            SquidGuardDoc EN  RU Tutorial
            Localization ru_PFSense

            1 Reply Last reply Reply Quote 0
            • C
              Clista
              last edited by

              @dvserg:

              c.35-40

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

              спасибо тебе о великий гуру пфсенса  ;)
              с этим изменением скрипт запускается
              но вроде бы в файл limit всё равно пользователи не добавляются =\ поковыряюсь пока ещё со скриптом

              только не сердитесь, тут велез другой вопрос, который я задавал ранее
              о возможности блокировки пользователей по ипу
              этой строчкой баняться только учетные записи
              _acl bl_users proxy_auth_regex -i '/usr/local/squid/blocked_users'_к сожалению инфы по настройке асл для фряхи я ещё не нашел (но сейчас продолжаю поиск)
              или подскажите какой каким параметром заменить proxy_auth_regex, чтобы блокировался ип?

              1 Reply Last reply Reply Quote 0
              • C
                Clista
                last edited by

                @Clista:

                этой строчкой баняться только учетные записи
                _acl bl_users proxy_auth_regex -i '/usr/local/squid/blocked_users'_к сожалению инфы по настройке асл для фряхи я ещё не нашел (но сейчас продолжаю поиск)
                или подскажите какой каким параметром заменить proxy_auth_regex, чтобы блокировался ип?

                url_regex верно?
                ипы я прописываю вида 192.168.0.х/32

                1 Reply Last reply Reply Quote 0
                • D
                  dvserg
                  last edited by

                  В сквиде есть опция

                  acl banned_hosts src "/var/squid/acl/banned_hosts.acl"
                  

                  содержит

                  10.10.10.10
                  10.100.2.100

                  Только опция появляется, если что-то было добавлено в  Proxy server: Access control  > Banned host addresses

                  Можно в опции настроек ГУИ добавить фиктивный адрес и потом спокойно использовать указанный файл.

                  SquidGuardDoc EN  RU Tutorial
                  Localization ru_PFSense

                  1 Reply Last reply Reply Quote 0
                  • C
                    Clista
                    last edited by

                    ух половину проблемы решили) с такой командой все баняться на отличненько  ;D
                    acl bl_users src "/usr/local/squid/blocked_users"
                    http_access deny bl_users

                    пойду добивать, почему пользователи не добавляются в файл blocked_users

                    1 Reply Last reply Reply Quote 0
                    • D
                      dvserg
                      last edited by

                      @Clista:

                      ух половину проблемы решили) с такой командой все баняться на отличненько  ;D
                      acl bl_users src "/usr/local/squid/blocked_users"
                      http_access deny bl_users

                      пойду добивать, почему пользователи не добавляются в файл blocked_users

                      Попробуй сквид погасить - может он держит файл.

                      SquidGuardDoc EN  RU Tutorial
                      Localization ru_PFSense

                      1 Reply Last reply Reply Quote 0
                      • C
                        Clista
                        last edited by

                        сейчас отключены хавп, сквид и сквидгуард

                        результ прежний =(

                        1 Reply Last reply Reply Quote 0
                        • D
                          dvserg
                          last edited by

                          @Clista:

                          сейчас отключены хавп, сквид и сквидгуард

                          результ прежний =(

                          Какие разрешения на файл?

                          SquidGuardDoc EN  RU Tutorial
                          Localization ru_PFSense

                          1 Reply Last reply Reply Quote 0
                          • C
                            Clista
                            last edited by

                            пробовал развные, включая 777

                            1 Reply Last reply Reply Quote 0
                            • P
                              PlanB
                              last edited by

                              Если нет необходимости вести лог трафика, а нужно лишь контролировать его лимит, то лучше использовать Captive Portal + Radius.
                              Правда, по умолчанию FreeRadius в pfSense не умеет считать трафик, но с помощью командной строки и правки пары конфигурационных файлов его можно этому научить.

                              Вместо CP можно использовать PPPoE или PPTP. Причём лучше второе.

                              Вариант с радиусом позволяет контролировать весь трафик, а не только тот, который проходит через сквид.

                              Если кому интересно, напишу подробнее, что нужно править в конфигурационных файлах.

                              Я реализовывал этот вариант на базе 2.0 RC1, но в промышленную эксплуатацию в нашей компании он не пошёл, так как в этом случае не ведётся логирование, т.е. нельзя узнать кто на что этот трафик потратил.
                              Можно конечно использовать в дополнение к радиусу что-то типа ntop, но во-первых он у меня не заработал (какие-то там библиотеки кривые), а во-вторых железо слабовато (PF стоит на ALIX).

                              1 Reply Last reply Reply Quote 0
                              • V
                                vit2002
                                last edited by

                                @PlanB:

                                Если нет необходимости вести лог трафика, а нужно лишь контролировать его лимит, то лучше использовать Captive Portal + Radius.
                                Правда, по умолчанию FreeRadius в pfSense не умеет считать трафик, но с помощью командной строки и правки пары конфигурационных файлов его можно этому научить.

                                Вместо CP можно использовать PPPoE или PPTP. Причём лучше второе.

                                Такой вариант позволяет контролировать весь трафик, а не только тот, который проходит через сквид.

                                Если кому интересно, напишу подробнее, что нужно править в конфигурационных файлах.

                                Я реализовывал этот вариант на базе 2.0 RC1, но в промышленную эксплуатацию в нашей компании он не пошёл, так как в этом случае не ведётся логирование, т.е. нельзя узнать кто на что этот трафик потратил.
                                Можно конечно использовать что-то типа nmap, но во-первых он у меня не заработал (какие-то там библиотеки кривые), а во-вторых железо слабовато (PF стоит на ALIX).

                                если можно расскажи по подробней плиз очень интересно

                                1 Reply Last reply Reply Quote 0
                                • E
                                  Eugene
                                  last edited by

                                  @PlanB:

                                  Правда, по умолчанию FreeRadius в pfSense не умеет считать трафик, но с помощью командной строки и правки пары конфигурационных файлов его можно этому научить.

                                  Считает вроде без шаманства? что за правки? если не секрет -)

                                  Отредактировано: Считает вроде без шаманства. что за правки? если не секрет -)

                                  http://ru.doc.pfsense.org

                                  1 Reply Last reply Reply Quote 0
                                  • D
                                    DVR
                                    last edited by

                                    Отлично всё работает. Как уже говорилось, для блокирования по ip забиваем через гуи фиктивный адрес, а потом используем файл /var/squid/acl/banned_hosts.acl
                                    Нюансы:

                                    1. нужно пропускать первые 2 строки в файле .total:
                                          $totaluser=<ff>;chomp $totaluser;$totaluser=~s/^user: //;
                                          $totalsize=<ff>;chomp $totalsize;$totalsize=~s/^size: //;
                                      while (<ff>) {
                                        ($user, $size, $hit) = split;
                                        $h{$user}{size}+=$size;
                                        $h{$user}{hit}+=$hit;

                                    2. Если пока никто не забанен, то получается пустой файл, поэтому через скрипт прописываем тот же фиктивный ip в файл banned_hosts.acl:
                                        open FF,">","/var/squid/acl/banned_hosts.acl";
                                        print FF ("фиктивный ip\n");
                                      foreach $user (sort {$h{$b}{size}<=>$h{$a}{size}} keys    %h) {
                                        print FF ("$user\n") if ($h{$user}{size} > $tt{$user}{limit});

                                    3. Так как скрипт пользуется результатами работы скрипта /usr/local/www/lightsquid/lightparser.pl то более логично дописать весь этот функционал именно в него.</ff></ff></ff>

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post
                                    Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.