/usr/share/zentyal/stubs/openvpn/openvpn-client.conf.mas is in zentyal-openvpn 2.3.10+quantal1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 | <%args>
$name
$dev
$proto
@servers
$caCertificate
$certificate
$certificateKey
$localAddr => undef
$lport => undef
$user
$group
$dh
$routeUpCmd => undef
$logFile
$statusLogFile
%proxySettings => undef
$pidFile => undef
$mssFix => 0
</%args>
# Zentyal client-side OpenVPN 2.0 config file #
# for connecting to multi-client server. #
# Client name <% $name %>
# Specify that we are a client and that we
# will be pulling certain config file directives
# from the server.
client
# virtual device
<& valueEntry, entry => 'dev', value => $dev &>
# Are we connecting to a TCP or
# UDP server? Use the same setting as
# on the server.
<& valueEntry, entry => 'proto', value => $proto &>
# The hostname/IP and port of the server.
# You can have multiple remote entries
# to load balance between the servers.
<& .remote, servers => \@servers &>
% if ( keys(%proxySettings) > 1 ) {
# If you are connecting through an
# HTTP proxy to reach the actual OpenVPN
# server, put the proxy server/IP and
# port number here. See the man page
# if your proxy server requires
# authentication.
% if ( exists($proxySettings{authFile}) ) {
http-proxy <% "$proxySettings{server} $proxySettings{port} $proxySettings{authFile} basic" %>
% } else {
http-proxy <% "$proxySettings{server} $proxySettings{port}" %>
% }
http-proxy-retry
% }
# Choose a random host from the remote
# list for load-balancing. Otherwise
# try hosts in the order specified.
;remote-random
# Keep trying indefinitely to resolve the
# host name of the OpenVPN server. Very useful
# on machines which are not permanently connected
# to the internet such as laptops.
resolv-retry infinite
% if ($localAddr) {
local <% $localAddr %>
% }
% if ($lport) {
lport <% $lport %>
% } else {
# Most clients don't need to bind to
# a specific local port number.
nobind
% }
# group and user for the OpenVPN
# daemon's privileges after initialization.
user <% $user %>
group <% $group %>
# Try to preserve some state across restarts.
persist-key
persist-tun
# Write the PID file for compatibility with Ubuntu init.d script
<& valueEntry, entry => 'writepid', value => $pidFile &>
# If you are connecting through an
# HTTP proxy to reach the actual OpenVPN
# server, put the proxy server/IP and
# port number here. See the man page
# if your proxy server requires
# authentication.
;http-proxy-retry # retry on connection failures
;http-proxy [proxy server] [proxy port #]
# Wireless networks often produce a lot
# of duplicate packets. Set this flag
# to silence duplicate packet warnings.
;mute-replay-warnings
# SSL/TLS parms.
# See the server config file for more
# description. It's best to use
# a separate .crt/.key file pair
# for each client. A single ca
# file can be used for all clients.
<& valueEntry, entry => 'ca', value => qq{"$caCertificate"} &>
<& valueEntry, entry => 'cert', value => qq{"$certificate"} &>
<& valueEntry, entry => 'key', value => qq{"$certificateKey"} &> # This file should be kept secret
# Verify server certificate by checking
# that the certicate has the nsCertType
# field set to "server". This is an
# important precaution to protect against
# a potential attack discussed here:
# http://openvpn.net/howto.html#mitm
#
# To use this feature, you will need to generate
# your server certificates with the nsCertType
# field set to "server". The build-key-server
# script in the easy-rsa folder will do this.
;ns-cert-type server
# If a tls-auth key is used on the server
# then every client must also have the key.
;tls-auth ta.key 1
# Select a cryptographic cipher.
# If the cipher option is used on the server
# then you must also specify it here.
;cipher x
# Enable compression on the VPN link.
# Don't enable this unless it is also
# enabled in the server config file.
comp-lzo
# Diffie hellman parameters.
# Generate your own with:
# openssl dhparam -out dh1024.pem 1024
# Substitute 2048 for 1024 if you are using
# 2048 bit keys.
#dh /etc/openvpn/dh1024.pem
<& valueEntry, entry => 'dh', value => $dh &>
# By default, log messages will go to the syslog (or
# on Windows, if running as a service, they will go to
# the "\Program Files\OpenVPN\log" directory).
# Use log or log-append to override this default.
# "log" will truncate the log file on OpenVPN startup,
# while "log-append" will append to it. Use one
# or the other (but not both).
log-append <% $logFile %>
status <% $statusLogFile %>
# Set log file verbosity.
verb 3
% if ($proto eq 'udp') {
# Explicitly notify disconnections
explicit-exit-notify 3
% if ( $mssFix > 0 ) {
mssfix <% $mssFix %>
% }
% }
# Silence repeating messages
;mute 20
% if ($routeUpCmd) {
script-security 2
route-up "<% $routeUpCmd %>"
% }
<%def valueEntry>
<%args>
$entry
$value
</%args>
% if (defined $value) {
<% $entry %> <% $value %>
%}
</%def>
<%def boolEntry>
<%args>
$entry
$value
</%args>
% if ($value) {
<% $entry %>
%}
</%def>
<%def .remote>
<%args>
@servers
</%args>
% foreach my $server_r (@servers) {
% my ($addr, $port) = @{ $server_r };
remote <% "$addr $port" %>
% }
</%def>
|