From 08c588789bb4663f38cbe53e2055b530d2029b60 Mon Sep 17 00:00:00 2001
From: laking <laking@ispconfig3>
Date: Sun, 03 Apr 2011 23:53:30 -0400
Subject: [PATCH] Implemented passwordless ssh-rsa authentication support.
---
interface/web/client/client_edit.php | 15 ++++++++++++---
1 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/interface/web/client/client_edit.php b/interface/web/client/client_edit.php
index 0cee48a..9b57d72 100644
--- a/interface/web/client/client_edit.php
+++ b/interface/web/client/client_edit.php
@@ -149,9 +149,17 @@
$active = 1;
$language = $app->db->quote($this->dataRecord["language"]);
+ //Generate ssh-rsa-keys
+ exec('ssh-keygen -t rsa -C '.$username.'-rsa-key-'.time().' -f /tmp/id_rsa -N ""');
+
+ $privatekey = file_get_contents('/tmp/id_rsa');
+ $publickey = file_get_contents('/tmp/id_rsa.pub');
+
+ exec('rm -f /tmp/id_rsa /tmp/id_rsa.pub');
+
// Create the controlpaneluser for the client
- $sql = "INSERT INTO sys_user (username,passwort,modules,startmodule,app_theme,typ,active,language,groups,default_group,client_id)
- VALUES ('$username',md5('$password'),'$modules','$startmodule','$usertheme','$type','$active','$language',$groups,$groupid,".$this->id.")";
+ $sql = "INSERT INTO sys_user (username,passwort,modules,startmodule,app_theme,typ,active,language,groups,default_group,client_id,id_rsa,ssh_rsa)
+ VALUES ('$username',md5('$password'),'$modules','$startmodule','$usertheme','$type','$active','$language',$groups,$groupid,".$this->id.",'$privatekey','$publickey')";
$app->db->query($sql);
//* If the user who inserted the client is a reseller (not admin), we will have to add this new client group
@@ -214,6 +222,7 @@
$sql = "UPDATE sys_user SET modules = '$modules' WHERE client_id = $client_id";
$app->db->query($sql);
}
+
/*
* If there is a client-template, process it */
applyClientTemplates($this->id);
@@ -225,4 +234,4 @@
$page = new page_action;
$page->onLoad();
-?>
\ No newline at end of file
+?>
--
Gitblit v1.9.1