Loading...
Searching...
No Matches
SSH Call Home Server Configuration
Server » Server Configuration » Call Home Server Configuration

SSH Call Home server configuration creation and deletion. More...

Collaboration diagram for SSH Call Home Server Configuration:

## Functions

int | nc_server_config_add_ch_ssh_hostkey (const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *hostkey_name, const char *privkey_path, const char *pubkey_path, struct lyd_node **config)
| Creates new YANG data nodes for a Call Home SSH hostkey.
int | nc_server_config_add_ch_ssh_keystore_ref (const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *hostkey_name, const char *keystore_reference, struct lyd_node **config)
| Creates new YANG data nodes for a reference to an asymmetric key located in the keystore.
int | nc_server_config_add_ch_ssh_truststore_ref (const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *user_name, const char *truststore_reference, struct lyd_node **config)
| Creates new YANG data nodes for a reference to a public key bag located in the truststore.
int | nc_server_config_add_ch_ssh_user_authkey (const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
| Creates new YANG configuration data nodes for a Call Home SSH user that will use system's authorized_keys to authenticate.
int | nc_server_config_add_ch_ssh_user_interactive (const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
| Creates new YANG configuration data nodes for a Call Home SSH user's keyboard interactive authentication method.
int | nc_server_config_add_ch_ssh_user_password (const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *user_name, const char *password, struct lyd_node **config)
| Creates new YANG data nodes for a Call Home SSH user's password authentication method.
int | nc_server_config_add_ch_ssh_user_pubkey (const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *user_name, const char *pubkey_name, const char *pubkey_path, struct lyd_node **config)
| Creates new YANG data nodes for a Call Home SSH user's public key authentication method.
int | nc_server_config_ch_del_ssh_user_authkey (const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
| Deletes a Call Home SSH user's authorized_keys method from the YANG data.
int | nc_server_config_del_ch_ssh_hostkey (const char *client_name, const char *endpt_name, const char *hostkey_name, struct lyd_node **config)
| Deletes a Call Home hostkey from the YANG data.
int | nc_server_config_del_ch_ssh_keystore_ref (const char *client_name, const char *endpt_name, const char *hostkey_name, struct lyd_node **config)
| Deletes a Call Home keystore reference from the YANG data.
int | nc_server_config_del_ch_ssh_truststore_ref (const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
| Deletes a Call Home SSH truststore reference from the YANG data.
int | nc_server_config_del_ch_ssh_user (const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
| Deletes a Call Home SSH user from the YANG data.
int | nc_server_config_del_ch_ssh_user_interactive (const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
| Deletes a Call Home SSH user's keyboard interactive authentication from the YANG data.
int | nc_server_config_del_ch_ssh_user_password (const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
| Deletes a Call Home SSH user's password from the YANG data.
int | nc_server_config_del_ch_ssh_user_pubkey (const char *client_name, const char *endpt_name, const char *user_name, const char *pubkey_name, struct lyd_node **config)
| Deletes a Call Home SSH user's public key from the YANG data.

## Detailed Description

SSH Call Home server configuration creation and deletion.

Call Home Server Configuration Functions

## Function Documentation

## nc_server_config_add_ch_ssh_hostkey()

int nc_server_config_add_ch_ssh_hostkey | ( | const struct ly_ctx * | ctx,
|  | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | hostkey_name,
|  | const char * | privkey_path,
|  | const char * | pubkey_path,
|  | struct lyd_node ** | config
| ) |  |

Creates new YANG data nodes for a Call Home SSH hostkey.

Parameters

  [in] | ctx | libyang context.
  [in] | client_name | Arbitrary identifier of the Call Home client. If a Call Home client with this identifier already exists, its contents will be changed.
  [in] | endpt_name | Arbitrary identifier of the client's endpoint. If the client's endpoint with this identifier already exists, its contents will be changed.
  [in] | hostkey_name | Arbitrary identifier of the endpoint's hostkey. If the endpoint's hostkey with this identifier already exists, its contents will be changed.
  [in] | privkey_path | Path to a file containing a private key. The private key has to be in a PEM format. Only RSA and ECDSA keys are supported.
  [in] | pubkey_path | Path to a file containing a public key. If NULL, public key will be generated from the private key.
  [in,out] | config | Configuration YANG data tree. If *config is NULL, it will be created. Otherwise the new YANG data will be added to the previous data and may override it.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_del_ch_ssh_hostkey()

int nc_server_config_del_ch_ssh_hostkey | ( | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | hostkey_name,
|  | struct lyd_node ** | config
| ) |  |

Deletes a Call Home hostkey from the YANG data.

Parameters

  [in] | client_name | Identifier of an existing Call Home client.
  [in] | endpt_name | Identifier of an existing endpoint that belongs to the given CH client.
  [in] | hostkey_name | Optional identifier of a hostkey to be deleted. If NULL, all of the hostkeys on the given endpoint will be deleted.
  [in,out] | config | Modified configuration YANG data tree.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_add_ch_ssh_keystore_ref()

int nc_server_config_add_ch_ssh_keystore_ref | ( | const struct ly_ctx * | ctx,
|  | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | hostkey_name,
|  | const char * | keystore_reference,
|  | struct lyd_node ** | config
| ) |  |

Creates new YANG data nodes for a reference to an asymmetric key located in the keystore.

This asymmetric key pair will be used as the Call Home SSH hostkey.

Parameters

  [in] | ctx | libyang context.
  [in] | client_name | Arbitrary identifier of the Call Home client. If a Call Home client with this identifier already exists, its contents will be changed.
  [in] | endpt_name | Arbitrary identifier of the client's endpoint. If the client's endpoint with this identifier already exists, its contents will be changed.
  [in] | hostkey_name | Arbitrary identifier of the endpoint's hostkey. If the endpoint's hostkey with this identifier already exists, its contents will be changed.
  [in] | keystore_reference | Name of the asymmetric key pair to be referenced and used as a hostkey.
  [in,out] | config | Configuration YANG data tree. If *config is NULL, it will be created. Otherwise the new YANG data will be added to the previous data and may override it.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_del_ch_ssh_keystore_ref()

int nc_server_config_del_ch_ssh_keystore_ref | ( | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | hostkey_name,
|  | struct lyd_node ** | config
| ) |  |

Deletes a Call Home keystore reference from the YANG data.

Parameters

  [in] | client_name | Identifier of an existing Call Home client.
  [in] | endpt_name | Identifier of an existing endpoint that belongs to the given CH client.
  [in] | hostkey_name | Identifier of an existing hostkey that belongs to the given CH endpoint.
  [in,out] | config | Modified configuration YANG data tree.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_add_ch_ssh_user_pubkey()

int nc_server_config_add_ch_ssh_user_pubkey | ( | const struct ly_ctx * | ctx,
|  | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | const char * | pubkey_name,
|  | const char * | pubkey_path,
|  | struct lyd_node ** | config
| ) |  |

Creates new YANG data nodes for a Call Home SSH user's public key authentication method.

Parameters

  [in] | ctx | libyang context.
  [in] | client_name | Arbitrary identifier of the Call Home client. If a Call Home client with this identifier already exists, its contents will be changed.
  [in] | endpt_name | Arbitrary identifier of the client's endpoint. If the client's endpoint with this identifier already exists, its contents will be changed.
  [in] | user_name | Arbitrary identifier of the endpoint's user. If the endpoint's user with this identifier already exists, its contents will be changed.
  [in] | pubkey_name | Arbitrary identifier of the user's public key. If the user's public key with this identifier already exists, its contents will be changed.
  [in] | pubkey_path | Path to a file containing a public key.
  [in,out] | config | Configuration YANG data tree. If *config is NULL, it will be created. Otherwise the new YANG data will be added to the previous data and may override it.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_del_ch_ssh_user_pubkey()

int nc_server_config_del_ch_ssh_user_pubkey | ( | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | const char * | pubkey_name,
|  | struct lyd_node ** | config
| ) |  |

Deletes a Call Home SSH user's public key from the YANG data.

Parameters

  [in] | client_name | Identifier of an existing Call Home client.
  [in] | endpt_name | Identifier of an existing endpoint that belongs to the given CH client.
  [in] | user_name | Identifier of an existing SSH user that belongs to the given CH endpoint.
  [in] | pubkey_name | Optional identifier of a public key to be deleted. If NULL, all of the public keys which belong to the given SSH user will be deleted.
  [in,out] | config | Modified configuration YANG data tree.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_add_ch_ssh_user_authkey()

int nc_server_config_add_ch_ssh_user_authkey | ( | const struct ly_ctx * | ctx,
|  | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | struct lyd_node ** | config
| ) |  |

Creates new YANG configuration data nodes for a Call Home SSH user that will use system's authorized_keys to authenticate.

The path to the authorized_keys file must be configured to successfully authenticate, see nc_server_ssh_set_authkey_path_format().

Parameters

  [in] | ctx | libyang context.
  [in] | client_name | Arbitrary identifier of the Call Home client. If a Call Home client with this identifier already exists, its contents will be changed.
  [in] | endpt_name | Arbitrary identifier of the client's endpoint. If the client's endpoint with this identifier already exists, its contents will be changed.
  [in] | user_name | Arbitrary identifier of the endpoint's user. If the endpoint's user with this identifier already exists, its contents will be changed.
  [in,out] | config | Configuration YANG data tree. If *config is NULL, it will be created. Otherwise the new YANG data will be added to the previous data and may override it.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_ch_del_ssh_user_authkey()

int nc_server_config_ch_del_ssh_user_authkey | ( | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | struct lyd_node ** | config
| ) |  |

Deletes a Call Home SSH user's authorized_keys method from the YANG data.

Parameters

  [in] | client_name | Identifier of an existing Call Home client.
  [in] | endpt_name | Identifier of an existing endpoint that belongs to the given CH client.
  [in] | user_name | Identifier of an existing user on the given endpoint.
  [in,out] | config | Modified configuration YANG data tree.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_add_ch_ssh_user_password()

int nc_server_config_add_ch_ssh_user_password | ( | const struct ly_ctx * | ctx,
|  | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | const char * | password,
|  | struct lyd_node ** | config
| ) |  |

Creates new YANG data nodes for a Call Home SSH user's password authentication method.

Parameters

  [in] | ctx | libyang context.
  [in] | client_name | Arbitrary identifier of the Call Home client. If a Call Home client with this identifier already exists, its contents will be changed.
  [in] | endpt_name | Arbitrary identifier of the client's endpoint. If the client's endpoint with this identifier already exists, its contents will be changed.
  [in] | user_name | Arbitrary identifier of the endpoint's user. If the endpoint's user with this identifier already exists, its contents will be changed.
  [in] | password | Clear-text password to be set for the user. It will be hashed.
  [in,out] | config | Configuration YANG data tree. If *config is NULL, it will be created. Otherwise the new YANG data will be added to the previous data and may override it.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_del_ch_ssh_user_password()

int nc_server_config_del_ch_ssh_user_password | ( | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | struct lyd_node ** | config
| ) |  |

Deletes a Call Home SSH user's password from the YANG data.

Parameters

  [in] | client_name | Identifier of an existing Call Home client.
  [in] | endpt_name | Identifier of an existing endpoint that belongs to the given CH client.
  [in] | user_name | Identifier of an existing SSH user that belongs to the given CH endpoint.
  [in,out] | config | Modified configuration YANG data tree.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_add_ch_ssh_user_interactive()

int nc_server_config_add_ch_ssh_user_interactive | ( | const struct ly_ctx * | ctx,
|  | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | struct lyd_node ** | config
| ) |  |

Creates new YANG configuration data nodes for a Call Home SSH user's keyboard interactive authentication method.

One of Linux PAM, local users, or user callback is used to authenticate users with this SSH method (see the documentation).

Parameters

  [in] | ctx | libyang context.
  [in] | client_name | Arbitrary identifier of the Call Home client. If a Call Home client with this identifier already exists, its contents will be changed.
  [in] | endpt_name | Arbitrary identifier of the client's endpoint. If the client's endpoint with this identifier already exists, its contents will be changed.
  [in] | user_name | Arbitrary identifier of the endpoint's user. If the endpoint's user with this identifier already exists, its contents will be changed.
  [in,out] | config | Configuration YANG data tree. If *config is NULL, it will be created. Otherwise the new YANG data will be added to the previous data and may override it.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_del_ch_ssh_user_interactive()

int nc_server_config_del_ch_ssh_user_interactive | ( | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | struct lyd_node ** | config
| ) |  |

Deletes a Call Home SSH user's keyboard interactive authentication from the YANG data.

Parameters

  [in] | client_name | Identifier of an existing Call Home client.
  [in] | endpt_name | Identifier of an existing endpoint that belongs to the given CH client.
  [in] | user_name | Identifier of an existing SSH user that belongs to the given CH endpoint.
  [in,out] | config | Modified configuration YANG data tree.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_del_ch_ssh_user()

int nc_server_config_del_ch_ssh_user | ( | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | struct lyd_node ** | config
| ) |  |

Deletes a Call Home SSH user from the YANG data.

Parameters

  [in] | client_name | Identifier of an existing Call Home client.
  [in] | endpt_name | Identifier of an existing endpoint that belongs to the given CH client.
  [in] | user_name | Identifier of an existing SSH user that belongs to the given CH endpoint.
  [in,out] | config | Modified configuration YANG data tree.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_add_ch_ssh_truststore_ref()

int nc_server_config_add_ch_ssh_truststore_ref | ( | const struct ly_ctx * | ctx,
|  | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | const char * | truststore_reference,
|  | struct lyd_node ** | config
| ) |  |

Creates new YANG data nodes for a reference to a public key bag located in the truststore.

The public key's located in the bag will be used for Call Home SSH client authentication.

Parameters

  [in] | ctx | libyang context.
  [in] | client_name | Arbitrary identifier of the Call Home client. If a Call Home client with this identifier already exists, its contents will be changed.
  [in] | endpt_name | Arbitrary identifier of the client's endpoint. If the client's endpoint with this identifier already exists, its contents will be changed.
  [in] | user_name | Arbitrary identifier of the endpoint's user. If the endpoint's user with this identifier already exists, its contents will be changed.
  [in] | truststore_reference | Name of the public key bag to be referenced and used for authentication.
  [in,out] | config | Configuration YANG data tree. If *config is NULL, it will be created. Otherwise the new YANG data will be added to the previous data and may override it.

Returns
  0 on success, non-zero otherwise.

## nc_server_config_del_ch_ssh_truststore_ref()

int nc_server_config_del_ch_ssh_truststore_ref | ( | const char * | client_name,
|  | const char * | endpt_name,
|  | const char * | user_name,
|  | struct lyd_node ** | config
| ) |  |

Deletes a Call Home SSH truststore reference from the YANG data.

Parameters

  [in] | client_name | Identifier of an existing Call Home client.
  [in] | endpt_name | Identifier of an existing endpoint that belongs to the given CH client.
  [in] | user_name | Identifier of an existing SSH user that belongs to the given CH endpoint.
  [in,out] | config | Modified configuration YANG data tree.

Returns
  0 on success, non-zero otherwise.