diff options
author | Viacheslav Hletenko <v.gletenko@vyos.io> | 2022-02-10 22:05:19 +0000 |
---|---|---|
committer | Viacheslav Hletenko <v.gletenko@vyos.io> | 2022-02-10 22:10:49 +0000 |
commit | 7f7be911b749b6c65ac3c6e57192e9e4ce2dcd24 (patch) | |
tree | b13be296f44a0067ff381a93e087873ee69cf18e /op-mode-definitions | |
parent | daf27dde3f3ab52ffb383c141959a548d4a0455d (diff) | |
download | vyos-1x-7f7be911b749b6c65ac3c6e57192e9e4ce2dcd24.tar.gz vyos-1x-7f7be911b749b6c65ac3c6e57192e9e4ce2dcd24.zip |
openvpn: T4236: Add generator for ovpn configurations in op-mode
This generator generates client .ovpn files with required initial
configuration
It gets information from interface vtun, pki ca and certificates
Diffstat (limited to 'op-mode-definitions')
-rw-r--r-- | op-mode-definitions/generate-openvpn-config-client.xml.in | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/op-mode-definitions/generate-openvpn-config-client.xml.in b/op-mode-definitions/generate-openvpn-config-client.xml.in new file mode 100644 index 000000000..4f9f31bfe --- /dev/null +++ b/op-mode-definitions/generate-openvpn-config-client.xml.in @@ -0,0 +1,58 @@ +<?xml version="1.0"?> +<interfaceDefinition> + <node name="generate"> + <children> + <node name="openvpn"> + <properties> + <help>Generate OpenVPN client configuration ovpn file</help> + </properties> + <children> + <node name="client-config"> + <properties> + <help>Generate Client config</help> + </properties> + <children> + <tagNode name="interface"> + <properties> + <help>Local interface used for connection</help> + <completionHelp> + <script>${vyos_completion_dir}/list_interfaces.py --type openvpn</script> + </completionHelp> + </properties> + <children> + <tagNode name="ca"> + <properties> + <help>CA certificate</help> + <completionHelp> + <path>pki ca</path> + </completionHelp> + </properties> + <children> + <tagNode name="certificate"> + <properties> + <help>Cerificate used by client</help> + <completionHelp> + <path>pki certificate</path> + </completionHelp> + </properties> + <children> + <tagNode name="key"> + <properties> + <help>Certificate key used by client</help> + </properties> + <command>sudo ${vyos_op_scripts_dir}/generate_ovpn_client_file.py --interface "$5" --ca "$7" --cert "$9" --key "${11}"</command> + </tagNode> + </children> + <command>sudo ${vyos_op_scripts_dir}/generate_ovpn_client_file.py --interface "$5" --ca "$7" --cert "$9"</command> + </tagNode> + </children> + </tagNode> + </children> + </tagNode> + </children> + </node> + </children> + </node> + </children> + </node> +</interfaceDefinition> |