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

    [RESOLVIDO] Adicionar novos privilégios do sistema.

    Scheduled Pinned Locked Moved Portuguese
    14 Posts 2 Posters 4.3k 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.
    • D
      dmenezes
      last edited by

      o correto seria o pacote instalado ja vim com o arquivo .inc e jogar em /usr/local/pkg/priv

      :)

      1 Reply Last reply Reply Quote 0
      • marcellocM
        marcelloc
        last edited by

        Sim. O openvpn não é nativo?
        Se for parte de algum pacote adicional, posta o arquivo que eu publico.

        Treinamentos de Elite: http://sys-squad.com

        Help a community developer! ;D

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

          OpenVPN sim.

          O pacote e o OpenVPN: Client Export Utility

          E tem outro problema, na WebGUI este pacote fica dentro de OpenVPN

          VPN
          OpenVPN (vpn_openvpn_server.php)

          ou seja para se ter acesso ao OpenVPN: Client Export Utility (vpn_openvpn_export.php)

          vc precisa ter permissao para vpn_openvpn_server.php

          no futuro a opcao OpenVPN deve ser mudada, pois dessa maneira nao e inteligente. (eu nao preciso dar acesso as configuracoes do servidor vpn, apenas para importar os usuarios)

          no meu caso adicionei a opcao Client Export em VPN.

          em fbegin.inc
          $vpn_menu[] = array("Client Export", "/vpn_openvpn_export.php");

          para ser ter um menu direto ao Client Export.

          e criei o openvpnexport.inc

          global $priv_list;

          $priv_list['page-openvpn-client-export'] = array();
          $priv_list['page-openvpn-client-export']['name'] = "WebCfg - OpenVPN: Client Export Utility";
          $priv_list['page-openvpn-client-export']['descr'] = "Allow access to the OpenVPN: Client Export Utility page.";
          $priv_list['page-openvpn-client-export']['match'] = array();
          $priv_list['page-openvpn-client-export']['match'][] = "vpn_openvpn_export.php*";

          ?>

          1 Reply Last reply Reply Quote 0
          • marcellocM
            marcelloc
            last edited by

            dmenezes,

            Vou testar as atualizações e publicar a correção.

            Obrigado pela contribuição.

            Treinamentos de Elite: http://sys-squad.com

            Help a community developer! ;D

            1 Reply Last reply Reply Quote 0
            • marcellocM
              marcelloc
              last edited by

              Acabei de publicar a versão 0.9.7 com o arquivo de permissões e o menu na aba vpn.

              EDIT

              Tive que retirar a opção do menu, o pacote é suportado pelo core team e eles não gostaram muito da idéia.

              testei aqui com sucesso a permissão sem a opção de menu. Quando um usuario só tem permissão para o openvpn-client-export, ele cai direto na tela.
              Quando a permissão inclui o dashboard, o usuario cai na tela do client export quando acessa o menu openvpn.

              Treinamentos de Elite: http://sys-squad.com

              Help a community developer! ;D

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

                Legal!

                Eu tb vejo que nao ha necessidade de criar um outro menu, caso indo na opcao OpenVPN vc tenha acesso ao client export, coisa que nao esta acontecendo!
                apenas criei para facilitar o meu lado com o cliente. :)

                Mas nao obtive sucesso da forma que vc falou… Quando tenho o usuario com a permissao para acessar apenas o Client Export (vpn_openvpn_export.php) (Na opcao OpenVPN)
                e quando vou em OpenVPN esta o link vpn_openvpn_server.php assim indo para o dashboard.

                uma outra solucao para o meu problema seria apenas alterar
                $vpn_menu[] = array("OpenVPN", "/vpn_openvpn_server.php");

                para

                $vpn_menu[] = array("OpenVPN", "/vpn_openvpn_export.php");

                sendo assim o menu OpenVPN cairia direto no link do Client Export
                mas repito solucao para o meu caso... arranjo... e nao para ser modificado dessa forma no projeto...

                .....

                outra coisa...
                acredito que pela organizacao do sistema... os arquivo de privilegios  de pacotes devem ser jogados em /usr/local/pkg/priv
                [2.0-RELEASE][root@pfSense.localdomain]/etc/inc(39): grep -rn '/usr/local/pkg/priv' .
                ./priv.inc:76:if(is_dir("/usr/local/pkg/priv")) {
                ./priv.inc:77:  $dir_array = get_priv_files("/usr/local/pkg/priv");
                ./priv.inc:79:          if (!is_dir("/usr/local/pkg/priv/{$file}") && stristr($file,".inc"))
                ./priv.inc:80:                  include("/usr/local/pkg/priv/{$file}");

                ….

                e no arquivo adicionar a linha em negrito que tb faz parte do utilitario openvpnexport.inc

                global $priv_list;

                $priv_list['page-openvpn-client-export'] = array();
                $priv_list['page-openvpn-client-export']['name'] = "WebCfg - OpenVPN: Client Export Utility";
                $priv_list['page-openvpn-client-export']['descr'] = "Allow access to the OpenVPN: Client Export Utility page.";
                $priv_list['page-openvpn-client-export']['match'] = array();
                $priv_list['page-openvpn-client-export']['match'][] = "vpn_openvpn_export.php*";
                $priv_list['page-openvpn-client-export']['match'][] = "vpn_openvpn_export_shared.php";*

                ?>

                excelente trabalho o seu :)

                1 Reply Last reply Reply Quote 0
                • marcellocM
                  marcelloc
                  last edited by

                  Vou sugerir a alteração ao core team, eles nao gostaram muito da alteração de um pacote 'deles' sem antes discutir sobre o assunto.

                  Com relação a permissão, meu teste foi da seguinte forma:

                  • cria o Usuario

                  • cria um grupo

                  • inclui o Usuario no grupo

                  • inclui a permissão do openvpn somente ou também inclui o 'dashboard all'

                  Aqui funcionou, veja se você consegue o mesmo resultado.

                  Treinamentos de Elite: http://sys-squad.com

                  Help a community developer! ;D

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

                    @marcelloc

                    tenta apenas com essas permissoes

                    WebCfg - Dashboard (all) Allow access to all pages required for the dashboard.
                    WebCfg - OpenVPN: Client Export Utility

                    e ver se funciona…

                    comigo nao funcionou!

                    1 Reply Last reply Reply Quote 0
                    • marcellocM
                      marcelloc
                      last edited by

                      foi exatamente como testei.

                      a única diferença é que apliquei as permissões em um grupo.

                      Treinamentos de Elite: http://sys-squad.com

                      Help a community developer! ;D

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

                        putz! agora estou grilado com isso! hehe nao funciona!
                        ja limpei ate cache hahaha

                        o seu teste foi com apenas essas 2 opcoes nada mais? :o

                        1 Reply Last reply Reply Quote 0
                        • marcellocM
                          marcelloc
                          last edited by

                          o seu teste foi com apenas essas 2 opcoes nada mais?

                          Sim. Vou fazer denovo mais tarde e posto o resultado.

                          Treinamentos de Elite: http://sys-squad.com

                          Help a community developer! ;D

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