The Community Forums

Interact with an entire community of cPanel & WHM users!
  1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

cPanel Backup Script (dofullbackup.html)

Discussion in 'Data Protection' started by oscartapa, Feb 7, 2009.

  1. oscartapa

    oscartapa Registered

    Joined:
    Sep 18, 2007
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    1
    Location:
    Oakville, ON, Canada
    I have found the following script on this forum and other forums.

    Has anyone been successful in FTP'ng in active mode, not passive mode? I tried $ftpmode = "ftp" and the output always shows the in passive mode. I tried "activeftp" and "active" and they both don't work.

    One other related question is whether or not it is the "dest" variable that is used by dofullbackup.html.

    Code:
    <?php
    
    // PHP script to allow periodic cPanel backups automatically.
    // Based on script posted by max.hedroom in cpanel.net forums
    //   This script contains passwords.  KEEP ACCESS TO THIS FILE SECURE!
    
    // ********* THE FOLLOWING ITEMS NEED TO BE CONFIGURED *********
    
    // Info required for cPanel access
    $cpuser = ""; // Username used to login to CPanel
    $cppass = ""; // Password used to login to CPanel
    $domain = ""; // Domain name where CPanel is run
    $skin = "x"; // Set to cPanel skin you use (script won't work if it doesn't match)
    
    // Info required for FTP host
    $ftpuser = ""; // Username for FTP account
    $ftppass = ""; // Password for FTP account
    $ftphost = ""; // Full hostname or IP address for FTP host
    $ftpmode = "ftp"; // FTP mode ("ftp" for active, "passiveftp" for passive)
    
    // Notification information
    $notifyemail = "you@yoursite.com"; // Email address to send results
    
    // Secure or non-secure mode
    $secure = 0; // Set to 1 for SSL (requires SSL support), otherwise will use standard HTTP
    
    // Set to 1 to have web page result appear in your cron log
    $debug = 0;
    
    // *********** NO CONFIGURATION ITEMS BELOW THIS LINE *********
    
    if ($secure) {
       $url = "ssl://".$domain;
       $port = 2083;
    } else {
       $url = $domain;
       $port = 2082;
    }
    
    $socket = fsockopen($url,$port);
    if (!$socket) { echo "Failed to open socket connection... Bailing out!\n"; exit; }
    
    // Encode authentication string
    $authstr = $cpuser.":".$cppass;
    $pass = base64_encode($authstr);
    
    $params = "dest=$ftpmode&email=$notifyemail&server=$ftphost&user=$ftpuser&pass=$ftppass&submit=Generate Backup";
    
    // Make POST to cPanel
    fputs($socket,"POST /frontend/".$skin."/backup/dofullbackup.html?".$params." HTTP/1.0\r\n");
    fputs($socket,"Host: $domain\r\n");
    fputs($socket,"Authorization: Basic $pass\r\n");
    fputs($socket,"Connection: Close\r\n");
    fputs($socket,"\r\n");
    
    // Grab response even if we don't do anything with it.
    while (!feof($socket)) {
      $response = fgets($socket,4096);
      if ($debug) echo $response;
    }
    
    fclose($socket);
    
    ?> 
    
     
Loading...

Share This Page