Module: Net::Openvpn::Generators::Keys::Properties
- Defined in:
- lib/net/openvpn/generators/keys/properties.rb
Class Method Summary collapse
-
.default ⇒ Object
(also: defaults)
Returns the default set of properties as per the easy-rsa ‘vars’ script.
-
.to_cli_vars(props) ⇒ Object
Creates a list of variables to preceed a bash command.
-
.validate!(props) ⇒ Object
Ensures that all the required properties are available to stop the easy-rsa scripts having a cry.
-
.yaml ⇒ Object
Returns the properties loaded from a YAML file located in /etc/openvpn/props.yml.
Class Method Details
.default ⇒ Object Also known as: defaults
Returns the default set of properties as per the easy-rsa ‘vars’ script
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/net/openvpn/generators/keys/properties.rb', line 17 def default props = { easy_rsa: "/usr/share/easy-rsa", openssl: "openssl", pkcs11tool: "pkcs11-tool", grep: "grep", key_dir: "#{Openvpn.basepath}/keys", key_dir_owner: "root", key_dir_group: "root", key_dir_permission: 0700, pkcs11_module_path: "dummy", pkcs11_pin: "dummy", key_size: 1024, ca_expire: 3650, key_expire: 3650, key_country: "US", key_province: "CA", key_city: "SanFrancisco", key_org: "Fort-Funston", key_email: "[email protected]", key_cn: "changeme", key_name: "changeme", key_ou: "changeme", pkcs11_module_path: "changeme", pkcs11_pin: 1234 } props[:key_config] = "#{props[:easy_rsa]}/openssl-1.0.0.cnf" props[:key_index] = "#{props[:key_dir]}/index.txt" props end |
.to_cli_vars(props) ⇒ Object
Creates a list of variables to preceed a bash command
59 60 61 62 63 64 65 66 |
# File 'lib/net/openvpn/generators/keys/properties.rb', line 59 def to_cli_vars(props) string = "" props.each do |key, value| prop = key.to_s.upcase string+= "#{prop}=\"#{value}\" " end "export #{string}; " end |
.validate!(props) ⇒ Object
Ensures that all the required properties are available to stop the easy-rsa scripts having a cry
54 55 56 |
# File 'lib/net/openvpn/generators/keys/properties.rb', line 54 def validate!(props) end |
.yaml ⇒ Object
Returns the properties loaded from a YAML file located in /etc/openvpn/props.yml
10 11 12 13 |
# File 'lib/net/openvpn/generators/keys/properties.rb', line 10 def yaml return {} unless File.exist? Openvpn.basepath "props.yml" YAML.load(File.read(Openvpn.basepath "props.yml")) end |