HEX
Server: Apache/2.4.67 (Debian)
System: Linux hosting103 6.1.0-49-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
User: muzikaecom (1013)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //usr/local/share/hostingplatform/scripts/setDomainPrivateKey
#!/usr/bin/env php
<?php
require_once("/usr/local/share/hostingplatform/esrpc.php");

$server = new ESRPCConnection();
$worker = new Worker($server->get());
$server->setTarget($worker);
$server->connect();
$server->serve();

class Worker {
	var $api;

	var $private_key_dir      = "/etc/ssl/private";
	var $private_key_dir_mode = 0755;
	var $private_key_mode     = 0400;

	function __construct($api) {
		$this->api = $api;
	}

	function setDomainPrivateKey($packagename, $domainname, $key) {
		// create private key dir if non existent
		if (!is_dir($this->private_key_dir))
			mkdir($this->private_key_dir,
                              $this->private_key_dir_mode,
                              true
			);

		$private_key_file = $this->private_key_dir . "/$packagename-$domainname.key";
		
		// write private key file
		file_put_contents($private_key_file, $key);

		// set permissions and owner
		chmod($private_key_file, $this->private_key_mode);
		chown($private_key_file, "root");
		chgrp($private_key_file, "ssl-cert");

		return true;
	}
}