dissect.target.plugins.apps.vpn.openvpn#

Module Contents#

Classes#

OpenVPNPlugin

OpenVPN configuration parser.

Attributes#

dissect.target.plugins.apps.vpn.openvpn.COMMON_ELEMENTS = [('string', 'name'), ('string', 'proto'), ('string', 'dev'), ('string', 'ca'), ('string',...#
dissect.target.plugins.apps.vpn.openvpn.OpenVPNServer#
dissect.target.plugins.apps.vpn.openvpn.OpenVPNClient#
dissect.target.plugins.apps.vpn.openvpn.CONFIG_COMMENT_SPLIT_REGEX#
class dissect.target.plugins.apps.vpn.openvpn.OpenVPNPlugin(target)#

Bases: dissect.target.plugin.Plugin

OpenVPN configuration parser.

References

  • man (8) openvpn

__namespace__ = 'openvpn'#
config_globs = ['/etc/openvpn/*.conf', '/etc/openvpn/server/*.conf', '/etc/openvpn/client/*.conf',...#
user_config_paths#
check_compatible() None#

Perform a compatibility check with the target.

This function should return None if the plugin is compatible with the current target (self.target). For example, check if a certain file exists. Otherwise it should raise an UnsupportedPluginError.

Raises:

UnsupportedPluginError – If the plugin could not be loaded.

config() Iterator[OpenVPNServer | OpenVPNClient]#

Parses config files from openvpn interfaces.