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

    [Solved] Multiple CP Not Working

    Scheduled Pinned Locked Moved Captive Portal
    12 Posts 4 Posters 1.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.
    • R
      robertolw
      last edited by

      Vlan 101-103 are on “CP1” and Vlan 108 is on “CP2”

      0_1530620574326_squi1.JPG 0_1530620580093_squi2.JPG

      1 Reply Last reply Reply Quote 0
      • GertjanG
        Gertjan
        last edited by

        Why did you post your CP settings of one of your CP zones ?

        @jimp said in Multiples CP Not Working:

        That’s a squid problem, not a captive portal problem.

        No "help me" PM's please. Use the forum, the community will thank you.
        Edit : and where are the logs ??

        1 Reply Last reply Reply Quote 0
        • R
          robertolw
          last edited by

          0_1530631036764_cp1.JPG
          0_1530631040900_cp2.JPG
          0_1530631044510_cp3.JPG

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

            The problem is that the code in /usr/local/bin/check_ip.php is incorrect.
            del /usr/local/bin/check_ip.php and use the following code.

            #!/usr/local/bin/php-cgi -q
            <?php
            /*
             * check_ip.php
             *
             * part of pfSense (https://www.pfsense.org)
             * Copyright (c) 2016-2017 Rubicon Communications, LLC (Netgate)
             * Copyright (c) 2013-2016 Marcello Coutinho
             * All rights reserved.
             *
             * Licensed under the Apache License, Version 2.0 (the "License");
             * you may not use this file except in compliance with the License.
             * You may obtain a copy of the License at
             *
             * http://www.apache.org/licenses/LICENSE-2.0
             *
             * Unless required by applicable law or agreed to in writing, software
             * distributed under the License is distributed on an "AS IS" BASIS,
             * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
             * See the License for the specific language governing permissions and
             * limitations under the License.
             */
            
            require_once("config.inc");
            require_once("globals.inc");
            error_reporting(0);
            global $g;
            // stdin loop
            if (!defined(STDIN)) {
            	define("STDIN", fopen("php://stdin", "r"));
            }
            if (!defined(STDOUT)) {
            	define("STDOUT", fopen('php://stdout', 'w'));
            }
            while (!feof(STDIN)) {
            	$check_ip = trim(fgets(STDIN));
            	$dbs = glob("{$g['vardb_path']}/captiveportal*.db");
            	$status = NULL;
            	
            	foreach ($dbs as $db) {
            		if(!strpos($db, "_radius")) {
            			$status = squid_check_ip($db, $check_ip);
            			if (isset($status)){
            				break;
            			}
            		}
            	}
            	if (!is_null($status)) {
            		fwrite(STDOUT, "OK user={$status}\n");
            	} else {
            		fwrite(STDOUT, "ERR\n");
            	}
            }
            
            function squid_check_ip($db, $check_ip) {
            	exec("/usr/local/bin/sqlite3 {$db} \"SELECT ip FROM captiveportal WHERE ip='{$check_ip}'\"", $ip);
            	if ($check_ip == $ip[0]) {
            		exec("/usr/local/bin/sqlite3 {$db} \"SELECT username FROM captiveportal WHERE ip='{$check_ip}'\"", $user);
            		return $user[0];
            	}
            }
            
            ?>
            
            
            1 Reply Last reply Reply Quote 0
            • GertjanG
              Gertjan
              last edited by

              Can't find /usr/local/bin/check_ip.php
              It's dealing with files related to the captive portal.

              Is this a file part of a package ?

              No "help me" PM's please. Use the forum, the community will thank you.
              Edit : and where are the logs ??

              M 1 Reply Last reply Reply Quote 0
              • M
                magokbas @Gertjan
                last edited by

                @gertjan With squid. What is your pfsense version?

                1 Reply Last reply Reply Quote 0
                • GertjanG
                  Gertjan
                  last edited by

                  The latest :
                  2.4.3-RELEASE-p1 (amd64)
                  built on Thu May 10 15:02:52 CDT 2018
                  FreeBSD 11.1-RELEASE-p10

                  No "help me" PM's please. Use the forum, the community will thank you.
                  Edit : and where are the logs ??

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    magokbas @Gertjan
                    last edited by

                    @gertjan If you can not find this file, you do not have squid installed

                    GertjanG 1 Reply Last reply Reply Quote 0
                    • GertjanG
                      Gertjan @magokbas
                      last edited by

                      I know.
                      This thread talks about a Squid problem, not a captive portal problem.
                      See also what @jimp said ;)

                      No "help me" PM's please. Use the forum, the community will thank you.
                      Edit : and where are the logs ??

                      1 Reply Last reply Reply Quote 0
                      • R
                        robertolw
                        last edited by

                        @magokbas Thanks, it worked!

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