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

    Получить список ваучеров через wget

    Scheduled Pinned Locked Moved Russian
    8 Posts 3 Posters 3.5k 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.
    • B
      Bansher
      last edited by

      Возможен ли сабж? Или другими средствами но из shell?

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

        http://***/services_captiveportal_vouchers.php?act=csv&id=xx
        xx - номер ролла

        вот кусок кода для скрипта

        /* print all vouchers of the selected roll */
        if ($_GET['act'] == "csv") {
        	$privkey = base64_decode($config['voucher']['privatekey']);
        	if (strstr($privkey,"BEGIN RSA PRIVATE KEY")) {
        		$fd = fopen("{$g['varetc_path']}/voucher.private","w");
        		if (!$fd) {
        			$input_errors[] = gettext("Cannot write private key file") . ".\n";
        		} else {
        			chmod("{$g['varetc_path']}/voucher.private", 0600);
        			fwrite($fd, $privkey);
        			fclose($fd);
        			$a_voucher = &$config['voucher']['roll'];
        			$id = $_GET['id'];
        			if (isset($id) && $a_voucher[$id]) {
        				$number = $a_voucher[$id]['number'];
        				$count = $a_voucher[$id]['count'];
        				header("Content-Type: application/octet-stream");
        				header("Content-Disposition: attachment; filename=vouchers_roll$number.csv");
        				system("/usr/local/bin/voucher -c {$g['varetc_path']}/voucher.cfg -p {$g['varetc_path']}/voucher.private $number $count");
        				unlink("{$g['varetc_path']}/voucher.private");
        				exit;
        			}
        		}
        	} else {
        		$input_errors[] = gettext("Need private RSA key to print vouchers") . "\n";
        	}
        }
        
        /usr/local/bin/voucher -c /ver/etc/voucher.cfg -p var/etc/voucher.private $number $count
        

        SquidGuardDoc EN  RU Tutorial
        Localization ru_PFSense

        1 Reply Last reply Reply Quote 0
        • B
          Bansher
          last edited by

          Простите, я видимо неправильно выразился. Нужен сформированный .csv список c кодами ваучеров. Пытаюсь wget-у передать ссылку https://ipaddress/services_captiveportal_vouchers.php?act=csv&id=0, но на выходе получаю страницу с HTML кодом. А сам список vouchers_roll.csv через shell можно достать?

          1 Reply Last reply Reply Quote 0
          • B
            Bansher
            last edited by

            Так что, нет вариантов? :(

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

              Видимо готового рецепта нет. Разберитесь сами или обратитесь к кому-нибудь кто заинтересуется.

              SquidGuardDoc EN  RU Tutorial
              Localization ru_PFSense

              1 Reply Last reply Reply Quote 0
              • B
                Bansher
                last edited by

                В общем мне удалось придумать только один способ как получить коды ваучеров не заходя на pfsense. У lynx есть функция записи последовательности действий.

                lynx  https://urlpfsense -cmd_log=/home/user/lynx.log
                

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

                lynx  https://urlpfsense -cmd_script=/home/user/lynx.log
                

                И lynx повторит все действия, что были записаны.

                1 Reply Last reply Reply Quote 0
                • A
                  alexandrnew
                  last edited by

                  тоже интересен данный вопрос.

                  пробовал создавать с помощью /usr/local/bin/voucher -c /ver/etc/voucher.cfg -p var/etc/voucher.private $number $count
                  выдает ключи, но в гуе их нет…

                  в идеале  -необходимо с консоли создавать + добавлять комментарий
                  надо скачивать...
                  а также надо удалять... и все с консоли...

                  1 Reply Last reply Reply Quote 0
                  • A
                    alexandrnew
                    last edited by

                    скачивание и удаление - решил, с помощью вгета, авторизация - как в скрипте удаленного бекапа вгетом ( в вики есть), через пост….
                    еще надо научиться создавать...

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