Description


This function generates an SSH key.

 The new SSH key will appear in the user's .ssh directory.


  • We strongly recommend that you use the SSH::genkey function instead of this one.
  • In cPanel & WHM version 78, we redirected this function to the SSH:genkey function. The function will no longer return HTML-formatted text.
  • We strongly recommend that you use UAPI instead of cPanel API 2. However, no equivalent UAPI function exists.


Examples 




https://hostname.example.com:2087/cpsess###########/json-api/cpanel?cpanel_jsonapi_user=user&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_module=SSH&cpanel_jsonapi_func=genkey_legacy&bits=1024&name=user&pass=12345luggage&type=rsa



$cpanel = new CPANEL(); // Connect to cPanel - only do this once.
 
// Generate an SSH key for "user"
$gen_keys = $cpanel->api2(
    'SSH', 'genkey_legacy', 
    array(
        'bits' => '1024',
        'name' => 'user',
        'pass' => '12345luggage',
        'type' => 'rsa',
 ) 
);

 



my $cpliveapi = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once.
 
# Generate an SSH key for "user"
my $gen_keys = $cpliveapi->api2(
    'SSH', 'genkey_legacy',
    { 
        'bits' => '1024',
        'name' => 'user',
        'pass' => '12345luggage',
        'type' => 'rsa',
    }
);

 




cpapi2 --user=username SSH genkey_legacy bits=1024 name=user pass=12345luggage type=rsa



{Renaming existing key by same name to /home/example/.ssh/id_dsa.1415314678<br />
Generating public/private dsa key pair.<br />
Enter passphrase (empty for no passphrase): <br />
Enter same passphrase again: <br />
Your identification has been saved in /home/example/.ssh/id_dsa.<br />
Your public key has been saved in /home/example/.ssh/id_dsa.pub.<br />
The key fingerprint is:<br />
3f:0c:f4:9f:70:38:8b:55:78:1a:03:9e:fd:29:eb:00 <br />
The key&#39;s randomart image is:<br />
+--[ DSA 1024]----+<br />
|        .        |<br />
|       . + .     |<br />
|        + = o    |<br />
|       . . O .   |<br />
|      E S O +    |<br />
|       . * O .   |<br />
|        o * o    |<br />
|         o .     |<br />
|          .      |<br />
+-----------------+<br />
{
  "cpanelresult": {
    "apiversion": 2,
    "func": "genkey_legacy",
    "data": [
      
    ],
    "event": {
      "result": 1
    },
    "module": "SSH"
  }
}




{
  "cpanelresult": {
    "apiversion": 2,
    "func": "genkey",
    "data": [
      {
        "reason":
 "Generating public/private rsa key pair.\nEnter passphrase (empty for 
no passphrase): \nEnter same passphrase again: \nYour identification has
 been saved in /home/example/.ssh/user.\nYour public key has been saved 
in /home/example/.ssh/user.pub.\nThe key fingerprint 
is:\n89:7b:05:97:f7:93:ef:66:95:48:d3:de:e1:0d:21:3f \nThe key's 
randomart image is:\n+--[ RSA 1024]----+\n|                 
|\n|           .. .  |\n|        . o .o.. |\n|       . + . +E+ |\n|     
 . S . . Oo=|\n|       . .   . *+|\n|      . .       o|\n|       .      
 .o|\n|               o.|\n+-----------------+",
        "result": 1
      }
    ],
    "event": {
      "result": 1
    },
    "module": "SSH"
  }
}


   

Parameters

ParameterTypeDescriptionPossible valuesExample
bitsstring

The SSH key's level of encryption.

 

A positive integer of 1024 or more.

1024
namestring

The SSH key's filename.

A valid string.

You cannot use the following names:

  • config
  • known_hosts
  • authorized_keys
  • environment
  • rc
  • identity


user
passstringThe SSH key's password.A secure string of four characters or more.12345luggage
typestringThe SSH key's encryption method for authentication.
  • dsa
  • rsa
This parameter defaults to rsa.


rsa

Returns (Version 76 and earlier)

ReturnTypeDescriptionPossible valuesExample
reasonstring

A reason for failure.

This function only returns a reason value if it failed.


A string that describes the error.

This is an error message.
resultBoolean

Whether the function succeeded.

  • 1 — The function succeeded.
  • 0 — The function failed.
1

Returns (Version 78 and later)

ReturnTypeDescriptionPossible valuesExample
reasonstringThe raw response from the function.A string that contains the fingerprint and file location.


Generating public/private rsa key pair.\nEnter passphrase (empty for no passphrase): \nEnter same passphrase again: \nYour identification has been saved in /home/example/.ssh/user.\nYour public key has been saved in /home/example/.ssh/user.pub.\nThe key fingerprint is:\n89:7b:05:97:f7:93:ef:66:95:48:d3:de:e1:0d:21:3f \nThe key's randomart image is:\n+--[ RSA 1024]----+\n|                 |\n|           .. .  |\n|        . o .o.. |\n|       . + . +E+ |\n|      . S . . Oo=|\n|       . .   . *+|\n|      . .       o|\n|       .       .o|\n|               o.|\n+-----------------+"


reasonstring

A reason for failure.

This function only returns a reason value if it failed.


A string that describes the error.

This is an error message.
resultBoolean

Whether the function succeeded.

  • 1 — The function succeeded.
  • 0 — The function failed.
1