WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: wg invalid name = Invalid name (Only letters, numbers, space and hyphen are allowed)
+WARNING: untranslated string: wg invalid psk = Invalid pre-shared key
WARNING: untranslated string: wg invalid public key = Invalid public key
WARNING: untranslated string: wg invalid remote subnet = Invalid remote subnet
WARNING: untranslated string: wg name is already used = The name is already in use
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: wg invalid name = Invalid name (Only letters, numbers, space and hyphen are allowed)
+WARNING: untranslated string: wg invalid psk = Invalid pre-shared key
WARNING: untranslated string: wg invalid public key = Invalid public key
WARNING: untranslated string: wg invalid remote subnet = Invalid remote subnet
WARNING: untranslated string: wg name is already used = The name is already in use
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: wg invalid name = Invalid name (Only letters, numbers, space and hyphen are allowed)
+WARNING: untranslated string: wg invalid psk = Invalid pre-shared key
WARNING: untranslated string: wg invalid public key = Invalid public key
WARNING: untranslated string: wg invalid remote subnet = Invalid remote subnet
WARNING: untranslated string: wg name is already used = The name is already in use
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: wg invalid name = Invalid name (Only letters, numbers, space and hyphen are allowed)
+WARNING: untranslated string: wg invalid psk = Invalid pre-shared key
WARNING: untranslated string: wg invalid public key = Invalid public key
WARNING: untranslated string: wg invalid remote subnet = Invalid remote subnet
WARNING: untranslated string: wg name is already used = The name is already in use
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: wg invalid name = Invalid name (Only letters, numbers, space and hyphen are allowed)
+WARNING: untranslated string: wg invalid psk = Invalid pre-shared key
WARNING: untranslated string: wg invalid public key = Invalid public key
WARNING: untranslated string: wg invalid remote subnet = Invalid remote subnet
WARNING: untranslated string: wg name is already used = The name is already in use
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: wg invalid name = Invalid name (Only letters, numbers, space and hyphen are allowed)
+WARNING: untranslated string: wg invalid psk = Invalid pre-shared key
WARNING: untranslated string: wg invalid public key = Invalid public key
WARNING: untranslated string: wg invalid remote subnet = Invalid remote subnet
WARNING: untranslated string: wg name is already used = The name is already in use
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: wg invalid name = Invalid name (Only letters, numbers, space and hyphen are allowed)
+WARNING: untranslated string: wg invalid psk = Invalid pre-shared key
WARNING: untranslated string: wg invalid public key = Invalid public key
WARNING: untranslated string: wg invalid remote subnet = Invalid remote subnet
WARNING: untranslated string: wg name is already used = The name is already in use
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: wg invalid name = Invalid name (Only letters, numbers, space and hyphen are allowed)
+WARNING: untranslated string: wg invalid psk = Invalid pre-shared key
WARNING: untranslated string: wg invalid public key = Invalid public key
WARNING: untranslated string: wg invalid remote subnet = Invalid remote subnet
WARNING: untranslated string: wg name is already used = The name is already in use
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: wg invalid name = Invalid name (Only letters, numbers, space and hyphen are allowed)
+WARNING: untranslated string: wg invalid psk = Invalid pre-shared key
WARNING: untranslated string: wg invalid public key = Invalid public key
WARNING: untranslated string: wg invalid remote subnet = Invalid remote subnet
WARNING: untranslated string: wg name is already used = The name is already in use
< wg invalid endpoint port
< wg invalid local subnet
< wg invalid name
+< wg invalid psk
< wg invalid public key
< wg invalid remote subnet
< wg name is already used
< wg no local subnets
< wg no remote subnets
< wg peer does not exist
+< wg pre-shared key (optional)
< winbind daemon
< wireguard
< wlanap 802.11w disabled
< wg invalid endpoint port
< wg invalid local subnet
< wg invalid name
+< wg invalid psk
< wg invalid public key
< wg invalid remote subnet
< wg name is already used
< wg no local subnets
< wg no remote subnets
< wg peer does not exist
+< wg pre-shared key (optional)
< whitelisted
< wireguard
< wlanap
< wg invalid endpoint port
< wg invalid local subnet
< wg invalid name
+< wg invalid psk
< wg invalid public key
< wg invalid remote subnet
< wg name is already used
< wg no local subnets
< wg no remote subnets
< wg peer does not exist
+< wg pre-shared key (optional)
< whitelisted
< wireguard
< wlanap hide ssid
< wg invalid endpoint port
< wg invalid local subnet
< wg invalid name
+< wg invalid psk
< wg invalid public key
< wg invalid remote subnet
< wg name is already used
< wg no local subnets
< wg no remote subnets
< wg peer does not exist
+< wg pre-shared key (optional)
< whitelisted
< whois results from
< winbind daemon
< wg invalid endpoint port
< wg invalid local subnet
< wg invalid name
+< wg invalid psk
< wg invalid public key
< wg invalid remote subnet
< wg name is already used
< wg no local subnets
< wg no remote subnets
< wg peer does not exist
+< wg pre-shared key (optional)
< whitelisted
< whois results from
< winbind daemon
< wg invalid endpoint port
< wg invalid local subnet
< wg invalid name
+< wg invalid psk
< wg invalid public key
< wg invalid remote subnet
< wg name is already used
< wg no local subnets
< wg no remote subnets
< wg peer does not exist
+< wg pre-shared key (optional)
< whitelisted
< whois results from
< winbind daemon
< wg invalid endpoint port
< wg invalid local subnet
< wg invalid name
+< wg invalid psk
< wg invalid public key
< wg invalid remote subnet
< wg name is already used
< wg no local subnets
< wg no remote subnets
< wg peer does not exist
+< wg pre-shared key (optional)
< whitelisted
< whois results from
< winbind daemon
< wg invalid endpoint port
< wg invalid local subnet
< wg invalid name
+< wg invalid psk
< wg invalid public key
< wg invalid remote subnet
< wg name is already used
< wg no local subnets
< wg no remote subnets
< wg peer does not exist
+< wg pre-shared key (optional)
< whitelisted
< whois results from
< winbind daemon
"REMOTE_SUBNETS" => $peers{$key}[6],
"REMARKS" => &decode_base64($peers{$key}[7]),
"LOCAL_SUBNETS" => $peers{$key}[8],
+ "PSK" => $peers{$key}[9],
);
# Jump to the editor
push(@errormessages, $Lang::tr{'wg invalid public key'});
}
+ # Check PSK
+ if (defined $cgiparams{'PSK'} && !&publickey_is_valid($cgiparams{'PSK'})) {
+ push(@errormessages, $Lang::tr{'wg invalid psk'});
+ }
+
# Check the endpoint address
unless (&Network::check_ip_address($cgiparams{'ENDPOINT_ADDRESS'})) {
push(@errormessages, $Lang::tr{'wg invalid endpoint address'});
&encode_remarks($cgiparams{"REMARKS"}),
# 8 = Local Subnets
join("|", @local_subnets),
+ # 9 = PSK
+ $cgiparams{"PSK"} || "",
];
# Store the configuration
min="1" max="65535" placeholder="${DEFAULT_PORT}"/>
</td>
</tr>
+
+ <tr>
+ <td>$Lang::tr{'wg pre-shared key (optional)'}</td>
+ <td>
+ <input type="text" name="PSK"
+ value="$cgiparams{'PSK'}" />
+ </td>
+ </tr>
</table>
<h6>$Lang::tr{'routing'}</h6>
'wg invalid endpoint port' => 'Invalid endpoint port',
'wg invalid local subnet' => 'Invalid local subnet',
'wg invalid name' => 'Invalid name (Only letters, numbers, space and hyphen are allowed)',
+'wg invalid psk' => 'Invalid pre-shared key',
'wg invalid public key' => 'Invalid public key',
'wg invalid remote subnet' => 'Invalid remote subnet',
'wg name is already used' => 'The name is already in use',
'wg no local subnets' => 'No local subnets given',
'wg no remote subnets' => 'No remote subnets given',
'wg peer does not exist' => 'Peer does not exist',
+'wg pre-shared key (optional)' => 'Pre-Shared Key (optional)',
'whitelisted' => 'Whitelisted',
'whois results from' => 'WHOIS results from',
'wildcards' => 'Wildcards',
local endpoint
local port
local routes
+ local remarks
+ local local_subnets
+ local psk
local _rest
local route
# Flush all previously set routes
ip route flush dev "${INTF}"
- while read -r id enabled type name pubkey endpoint port routes _rest; do
+ while read -r id enabled type name pubkey endpoint port routes \
+ remarks local_subnets psk _rest; do
# Skip peers that are not enabled
[ "${enabled}" = "on" ] || continue
echo "[Peer]"
echo "PublicKey = ${pubkey}"
+ # Set PSK (if set)
+ if [ -n "${psk}" ]; then
+ echo "PresharedKey= ${psk}"
+ fi
+
# Set endpoint
if [ -n "${endpoint}" ]; then
echo "Endpoint = ${endpoint}${port:+:}${port}"