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

    Ferramenta for Windows para automatizar backup no pfSense

    Scheduled Pinned Locked Moved Portuguese
    19 Posts 5 Posters 13.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.
    • JackLJ
      JackL
      last edited by

      Boa marcelloc…

      Realmente não tinha separado visualmente o teu "Opção1(Recomendado)" dos demais.

      Show of ball! ;)

      Abraços!
      Jack

      Treinamentos de Elite: http://sys-squad.com
      Soluções: https://conexti.com.br

      1 Reply Last reply Reply Quote 0
      • J
        jaugusto_ap
        last edited by

        @marcelloc:

        tópico relacionado:
        http://forum.pfsense.org/index.php/topic,44768.0.html

        Este arquivo php fica publicado na pasta /usr/local/www do seu pfsense.
        Você deve alterar o parâmetro $password e $zabix_ip para o ip do servidor que vai buscar a configuração e uma senha para garantir a segurança da transferência.
        /usr/local/www/zabix.php

        #zabix server ip
        $zabix_ip='192.168.1.122';
        $password="some_password_to_secure_script";
        if ($_SERVER["REMOTE_ADDR"]==$zabix_ip && $_REQUEST['pass']== $password)
          print base64_encode(file_get_contents('/conf/config.xml'));
        
        ?>
        

        No servidor/estação onde os backups ficarão armazenados, você tem duas formas de execução:

        Opção1(Recomendado)
        crie este script com o nome que voce quiser e altere os valores de $url_pfsense, $password e $dir.

        #!/usr/bin/php
        $url_pfsense="https://192.168.1.1:8443/zabix.php";
        $password="some_password_to_secure_script";
        $dir="/home/marcelloc/backup";
        
        $config=file_get_contents("$url_pfsense?pass=$password");
        $now= date('YmHis');
        file_put_contents($dir."/config.".$now.".xml",base64_decode($config),LOCK_EX);
        
        ?>
        
        

        Opção2
        usando o fetch do freebsd ou wget do linux ou qualquer outro programa de linha de comando que busca url.

        fetch https://ip_do_seu_pfsense/zabix.php?password="sua_senha" > arquivo_de_backup.base64.txt

        Ei parceiro, não consegui fazer esse procedimento aqui, a principio o script chega a salvar um arquivo com o nome definido, porém, o arquivo é salvo com 0 bytes, como pode ver na imagem abaixo. Já tentei até essa dica, mas sem sucesso também: http://www.vivaolinux.com.br/dica/Automoatizar-backup-no-pfSense/

        Segue meus scripts:
        zabix.php

        #server ip
        $ip='172.16.10.1';
        $password="senha";
        if ($_SERVER["REMOTE_ADDR"]==$ip && $_REQUEST['pass']== $password)
          print base64_encode(file_get_contents('/conf/config.xml'));
        
        ?>
        
        

        bkp_pfsense.sh

        #!/usr/bin/php
        $url_pfsense="https://172.16.10.1/zabix.php";
        $password="senha";
        $dir="/mnt/arquivos/ti/Backup-Firewall";
        
        $config=file_get_contents("$url_pfsense?pass=$password");
        $now= date('YmdHis');
        file_put_contents($dir."/config-firewall.coren-".$now.".xml",base64_decode($config),LOCK_EX);
        
        ?>
        
        

        print_01.png_thumb
        print_01.png

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

          jaugusto_ap,

          Bem vindo ao fórum! :)

          Acredito que o único passo errado é este:

          #server ip
          $ip='172.16.10.1';
          

          Você configurou o ip  do pfsense no lugar de configurar o ip do servidor que vai puxar o backup.

          a segurança do script é baseada no ip do servidor que guarda os backups e uma senha.

          if ($_SERVER["REMOTE_ADDR"]==$zabix_ip && $_REQUEST['pass']== $password)
          

          att,
          Marcello Coutinho

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

          Help a community developer! ;D

          1 Reply Last reply Reply Quote 0
          • J
            jaugusto_ap
            last edited by

            @marcelloc:

            jaugusto_ap,

            Bem vindo ao fórum! :)

            Acredito que o único passo errado é este:

            #server ip
            $ip='172.16.10.1';
            

            Você configurou o ip  do pfsense no lugar de configurar o ip do servidor que vai puxar o backup.

            a segurança do script é baseada no ip do servidor que guarda os backups e uma senha.

            if ($_SERVER["REMOTE_ADDR"]==$zabix_ip && $_REQUEST['pass']== $password)
            

            att,
            Marcello Coutinho

            Muito obrigado pelas boas vindas!

            Quanto ao script, não tinha prestado atenção nesse detalhe do remote_addr.

            Agora sim tá funcionando, e ainda agendado no crontab do Debian.

            1 Reply Last reply Reply Quote 0
            • K
              kelsen
              last edited by

              O tal aplicativo só funcionaria se você tivesse seu pfSense respondendo apenas por HTTP (o que é extremamente desaconselhável - sob praticamente qualquer cenário).

              O aplicativo funciona tb para https, basta adicionar a opcao -usessl, testado e aprovado.
              Agora gostaria de saber se não tem algum código malicioso no programa, alguém pode descobrir isso pra gente?

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

                @kelsen:

                Agora gostaria de saber se não tem algum código malicioso no programa.

                Veja o comportamento da maquina que roda ele na internet, bloqueie todas as portas de saida e logue o que a maquina tentar.

                Veja a possibilidade de usar um dos scripts php deste topico, o códico é aberto e pelo menos o que eu fiz, está livre de código malicioso :)

                att,
                Marcello Coutinho

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

                Help a community developer! ;D

                1 Reply Last reply Reply Quote 0
                • K
                  kelsen
                  last edited by

                  @marcelloc:

                  Veja o comportamento da maquina que roda ele na internet, bloqueie todas as portas de saida e logue o que a maquina tentar.

                  Acho que nessa maquina onde instalei não da pra fechar as portas de saida.

                  Veja a possibilidade de usar um dos scripts php deste topico, o códico é aberto e pelo menos o que eu fiz, está livre de código malicioso :)

                  Pelo que entendi, preciso do zabbix instalado? além do mais a maquina é windows, como posso executar esse php nele?
                  Não tem como alguém ver o fonte do programa pra ver se há algo suspeito?

                  Grato!

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

                    @kelsen:

                    Pelo que entendi, preciso do zabbix instalado?

                    Não

                    @kelsen:

                    além do mais a maquina é windows, como posso executar esse php nele?

                    Só instalar o php ou php cli no seu windows

                    @kelsen:

                    Não tem como alguém ver o fonte do programa pra ver se há algo suspeito?

                    Isso foge do contexto do fórum…

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

                    Help a community developer! ;D

                    1 Reply Last reply Reply Quote 0
                    • K
                      kelsen
                      last edited by

                      devo ter confundido por conta do nome Zabix no script.

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

                        Usa o Cobian Backup, faça backup do arquivo xml.

                        /cf/conf/config.xml

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