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

    2.1 release Captiveportal Squid Transparent Problemi

    Scheduled Pinned Locked Moved Turkish
    15 Posts 4 Posters 4.4k 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.
    • M
      mendilli
      last edited by

      squid3-dev de patch captive portal seçeneği bu amaçla konulmuştur

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

        Hiç kullanma gereksinimin olmadı ama bu konuda freeradius yardımcı olabileceğini düşünüyorum.

        1 Reply Last reply Reply Quote 0
        • S
          StrGt
          last edited by

          2.0.3 versiyonunda Cp de bir dosya degişikligi yapılmıştı. deneyip işe yaramıştı dosyayı bulunca bir upload eder 2.1 de denersiniz.

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

            mendilli arkadaşımın dediğini yaptım ancak hiç bir işe yaramadı. Yalnız ben squid 3' te bunu yaptım. Developer sürümünü kurunca servis çalışmadı. Kaldırıp önce eski sürümü sonra dev' i kurdum.Yine servis durdu. Squid 3' te de patch kısmını tıkladım ama durum aynı.

            Eniqma27 sistemimde freeradius2 kurulu captive portala bağlı, ancak nasıl çözebilirim hiç bir fikrim yok. Nasıl yapabiliriz.

            StrGt valla bulabilirsen çok sevinirim. Zahmet veriyorum.

            İlgilendiğiniz için teşekkürler.

            1 Reply Last reply Reply Quote 0
            • M
              mendilli
              last edited by

              çok ilginç ben squid deki patch captive portal özelliğini sorunsuzca kullanıyorum( squid 2.7.3'e entegre ettim) , neyse şöyle birşey deneyebilirsiniz, bu sorun ilk tespit edildiğinde forumlarda geçen bir tavsiye vardı, eğer lan üzerinde doğrudan squid proxy portuna giden bağlantıları bloklayacak bir firewall kuralı oluşturursanız sorun çözülüyordu.

              Squid3-dev çalışmaması ile ilgili gerekli olan yanılmıyorsam 6 adet dosyanın manuel olarak sisteme eklenmesi gerekiyor, paket ile ilgili şu POST'taki http://forum.pfsense.org/index.php/topic,62256.msg336303.html#msg336303 işlemleri uygulamanız lazım

              http://e-sac.siteseguro.ws/pfsense/8/amd64/All/ldd/ (64 bit için)
              http://e-sac.siteseguro.ws/pfsense/8/All/ldd/ (32 bit için)

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

                mendilli öncelikle kusura bakma sana çok zahmet veriyorum, squid3-dev i çalıştırmayı başarabildim. dediğim patch' işaretledim ve save ettim, sistemide yeniden başlattım. Ama sonuç aynı, browser' a proxy yazınca cp' ı atlatıyor. Bende squid' den Authentication tabından captive portalı seçtim. proxy girince internete çıkarmıyor. Ama benim için önemli olan proxy varken de kullanıcıya captive portal  ekranı gelmesi. Bunu nasıl sağlarız.

                1 Reply Last reply Reply Quote 0
                • M
                  mendilli
                  last edited by

                  captive portal ya da squid için kullandığınız portlar standart portlar mı yoksa kendiniz özel başka port mu belirlediniz, öyleyse standart(default) portları kullanarak bi daha deneyin, bu da çözüm olmazsa artık aklıma tek çözüm olarak 2.0.3 versiyonuna dönmeniz geliyor, ben şu anda sorunsuz olarak browser'a da girsem wpad/pac le de proxy atasam her şekilde login sayfası ile karşılaşıyorum

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

                    mendilli sen 2.0.3 mü kullanıyorsun? squid ve squidguard hangi versiyonları kullanıyorsun. paketleri bi yazarsan sevinirim. Sence 2.1 için daha erken mi diyorsun? Birde ben önce freeradiusu kurdum. ardından cp' ı yapılandırdım. squidi sonra kurdum bunun bir etkisi olur mu? Ama squidi kurduktan sonra olmayınca, cp' ı sildim yeniden oluşturup öylede denedim olmadı. Acaba baştan 2.1 kursam ilk önce paketlerin tümünü kursam sonra cp' ı yapılandırsam ne dersin? Olmazsa 2.0.3 e geçim dediğin gibi. Ama her halükarda squid3-dev ve squidGuard-dev mi kurmalıyım, yoksa squid3-dev kurup squidguardı düzmü kurayım?

                    1 Reply Last reply Reply Quote 0
                    • M
                      mendilli
                      last edited by

                      @cenkata:

                      mendilli sen 2.0.3 mü kullanıyorsun? squid ve squidguard hangi versiyonları kullanıyorsun. paketleri bi yazarsan sevinirim. Sence 2.1 için daha erken mi diyorsun? Birde ben önce freeradiusu kurdum. ardından cp' ı yapılandırdım. squidi sonra kurdum bunun bir etkisi olur mu? Ama squidi kurduktan sonra olmayınca, cp' ı sildim yeniden oluşturup öylede denedim olmadı. Acaba baştan 2.1 kursam ilk önce paketlerin tümünü kursam sonra cp' ı yapılandırsam ne dersin? Olmazsa 2.0.3 e geçim dediğin gibi. Ama her halükarda squid3-dev ve squidGuard-dev mi kurmalıyım, yoksa squid3-dev kurup squidguardı düzmü kurayım?

                      ben 2.0.3 ü kullanıyorum açıkçası 2.1 i kurup denedim ama çok stabil gelmedi bana, ben squid 2.7.9 u ve squidguard 1.4_4 paketini kullanıyorum, freeradius şu anda kullanmıyorum ancak onu da daha önce denedim ve herhangi bir sorunla karşılaşmadım, yalnız ben squid 2.7.9 da patch captive portal özelliği olmadığı için squid.xml ve squid.inc dosyaları ile oynayarak bu özelliği ekledim.

                      arayüze seçenek eklemek için squid.xml dosyasının field bölümünde istedğin yere şu satırları ekle

                      <field><fielddescr>Patch captive portal</fielddescr>
                      <fieldname>patch_cp</fieldname>
                      <description>NOTE: You may need to reapply captive portal config after changing this option.]]></description>
                      <type>checkbox</type></field>

                      squid.inc dosyasında ise aşağıdaki alanı bulup kırmızı ile gösterilen kodları ekle

                      function squid_generate_rules($type) {
                      global $config;

                      $squid_conf = $config['installedpackages']['squid']['config'][0];

                      //check captive portal option
                      $cp_file='/etc/inc/captiveportal.inc';
                      $pfsense_version=preg_replace("/\s/","",file_get_contents("/etc/version"));
                      $port = ($settings['proxy_port'] ? $settings['proxy_port'] : 3128);
                      $cp_inc = file($cp_file);
                      $new_cp_inc="";
                      $found_rule=0;
                      foreach ($cp_inc as $line){
                      $new_line=$line;
                      //remove applied squid patch
                      if (preg_match('/skipto 65314 ip/',$line)){
                      $found_rule++;
                      $new_line ="";
                      }
                      if (substr($pfsense_version,0,3) > 2.0){
                      if (preg_match('/255.255.255.255/',$line) && $squid_conf['patch_cp']){
                      $found_rule++;
                      $new_line .= "\n\t".'$cprules .= "add {$rulenum} skipto 65314 ip from any to {$ips} '.$port.' in\n";'."\n";
                      $new_line .= "\t".'$cprules .= "add {$rulenum} skipto 65314 ip from {$ips} '.$port.' to any out\n";'."\n";
                      }
                      }
                      else{
                      //add squid patch option based on current config            
                      if (preg_match('/set 1 pass ip from any to/',$line) && $squid_conf['patch_cp']){
                      $found_rule++;
                      $new_line = "\t".'$cprules .= "add {$rulenum} set 1 skipto 65314 ip from any to {$ips} '.$port.' in\n";'."\n";
                      $new_line .= $line;
                      }
                      if (preg_match('/set 1 pass ip from {/',$line) && $squid_conf['patch_cp']){
                      $found_rule++;
                      $new_line = "\t".'$cprules .= "add {$rulenum} set 1 skipto 65314 ip from {$ips} '.$port.' to any out\n";'."\n";
                      $new_line .= $line;
                      }
                      }
                      $new_cp_inc .= $new_line;
                      }
                      if (!file_exists('/root/'.$pfsense_version.'.captiveportal.inc.backup')) {
                      copy ($cp_file,'/root/'.$pfsense_version.'.captiveportal.inc.backup');
                      }
                      if($found_rule > 0){
                      file_put_contents($cp_file,$new_cp_inc, LOCK_EX);
                      }
                      //normal squid rule check
                      if (($squid_conf['transparent_proxy'] != 'on') || ($squid_conf['allow_interface'] != 'on')) {
                      return;
                      }

                      bu şekilde sende 2.7.9 da patch captive portal özelliğine sahip olacaksın.

                      birde şu hususlar var:

                      1-tarayıcında anasayfan https ie başlıyorsa onu http yap (önrek = https://www.google.com yerine http://www.google.com yaz)
                      2-transparent squid kullanıyorsan lan bacağında doğrudan 3128'e (proxy portu)  giden bağlantıları BLOKLAYAN bir kural oluştur.
                      3-non-transparent proxy kullanıyorsan lan bacağında doğrudan 80 (http) ve 443 (https) portalarına gidiş için BLOK kuralı oluştur.

                      paket kurulum sırasının çok önemli olmadığını düşünüyorum

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

                        Bunları deneyip bilgi vereceğim. Mendilli çok teşekkür ederim. Daha öncede dns forwerd ile ilgili yardımcı olmuştun. Emeklerin için allah razı olsun.

                        1 Reply Last reply Reply Quote 0
                        • M
                          mendilli
                          last edited by

                          @cenkata:

                          Bunları deneyip bilgi vereceğim. Mendilli çok teşekkür ederim. Daha öncede dns forwerd ile ilgili yardımcı olmuştun. Emeklerin için allah razı olsun.

                          rica ederim inşallah bi tanesi işe yarar

                          1 Reply Last reply Reply Quote 0
                          • S
                            StrGt
                            last edited by

                            Selam,
                            2.1 sürümünde cp denemedim ama eski sürümlerde denedim işe yaramıştı.

                            /etc/inc/captiveportal.inc dosyasını yedegini alıp
                            aşagıdaki kod ile değiştirmen yeterlidir..

                            Not: Kodları almadıgı için aşagıdaki linkten alabilirsin.

                            https://github.com/downloads/marcelloc/pfsense-packages/captiveportal_201_amd64.inc

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