WARNING: untranslated string: regenerate host certificate = Renew Host Certificate
WARNING: untranslated string: reiserfs warning1 = Reiserfs is deprecated and scheduled to be removed from the kernel in 2025.
WARNING: untranslated string: reiserfs warning2 = Ensure a fresh installation is made using either ext4 or xfs filesystems before that date.
+WARNING: untranslated string: remarks = unknown string
WARNING: untranslated string: remote subnets = Remote Subnets
WARNING: untranslated string: required = Required
WARNING: untranslated string: route config changed = unknown string
WARNING: untranslated string: subscription code = Subscription code
WARNING: untranslated string: user management = User Management
WARNING: untranslated string: wg create peer = Create A New Peer
+WARNING: untranslated string: wg edit peer = Edit Peer
WARNING: untranslated string: wg invalid endpoint address = Invalid endpoint address
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: release = Release
WARNING: untranslated string: remark = Remark
WARNING: untranslated string: remark title = Remark:
+WARNING: untranslated string: remarks = unknown string
WARNING: untranslated string: remote access = Remote access
WARNING: untranslated string: remote announce = Remote Announce
WARNING: untranslated string: remote browse sync = Remote Browse Sync
WARNING: untranslated string: wednesday = Wednesday
WARNING: untranslated string: weeks = Weeks
WARNING: untranslated string: wg create peer = Create A New Peer
+WARNING: untranslated string: wg edit peer = Edit Peer
WARNING: untranslated string: wg invalid endpoint address = Invalid endpoint address
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: regenerate host certificate = Renew Host Certificate
WARNING: untranslated string: reiserfs warning1 = Reiserfs is deprecated and scheduled to be removed from the kernel in 2025.
WARNING: untranslated string: reiserfs warning2 = Ensure a fresh installation is made using either ext4 or xfs filesystems before that date.
+WARNING: untranslated string: remarks = unknown string
WARNING: untranslated string: remote subnets = Remote Subnets
WARNING: untranslated string: route config changed = unknown string
WARNING: untranslated string: routing = Routing
WARNING: untranslated string: transport mode does not support vti = VTI is not support in transport mode
WARNING: untranslated string: warning = Warning
WARNING: untranslated string: wg create peer = Create A New Peer
+WARNING: untranslated string: wg edit peer = Edit Peer
WARNING: untranslated string: wg invalid endpoint address = Invalid endpoint address
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: processors = Processors
WARNING: untranslated string: public key = Public Key
WARNING: untranslated string: reg_file_data_sampling = Register File Data Sampling (RFDS)
+WARNING: untranslated string: remarks = unknown string
WARNING: untranslated string: remote subnets = Remote Subnets
WARNING: untranslated string: routing = Routing
WARNING: untranslated string: routing config added = unknown string
WARNING: untranslated string: total = Total
WARNING: untranslated string: warning = Warning
WARNING: untranslated string: wg create peer = Create A New Peer
+WARNING: untranslated string: wg edit peer = Edit Peer
WARNING: untranslated string: wg invalid endpoint address = Invalid endpoint address
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: reiserfs warning1 = Reiserfs is deprecated and scheduled to be removed from the kernel in 2025.
WARNING: untranslated string: reiserfs warning2 = Ensure a fresh installation is made using either ext4 or xfs filesystems before that date.
WARNING: untranslated string: release = Release
+WARNING: untranslated string: remarks = unknown string
WARNING: untranslated string: remote subnets = Remote Subnets
WARNING: untranslated string: required = Required
WARNING: untranslated string: required field = Required field
WARNING: untranslated string: vulnerable = Vulnerable
WARNING: untranslated string: warning = Warning
WARNING: untranslated string: wg create peer = Create A New Peer
+WARNING: untranslated string: wg edit peer = Edit Peer
WARNING: untranslated string: wg invalid endpoint address = Invalid endpoint address
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: regenerate host certificate = Renew Host Certificate
WARNING: untranslated string: reiserfs warning1 = Reiserfs is deprecated and scheduled to be removed from the kernel in 2025.
WARNING: untranslated string: reiserfs warning2 = Ensure a fresh installation is made using either ext4 or xfs filesystems before that date.
+WARNING: untranslated string: remarks = unknown string
WARNING: untranslated string: remote subnets = Remote Subnets
WARNING: untranslated string: required = Required
WARNING: untranslated string: required field = Required field
WARNING: untranslated string: vulnerable = Vulnerable
WARNING: untranslated string: warning = Warning
WARNING: untranslated string: wg create peer = Create A New Peer
+WARNING: untranslated string: wg edit peer = Edit Peer
WARNING: untranslated string: wg invalid endpoint address = Invalid endpoint address
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: reiserfs warning1 = Reiserfs is deprecated and scheduled to be removed from the kernel in 2025.
WARNING: untranslated string: reiserfs warning2 = Ensure a fresh installation is made using either ext4 or xfs filesystems before that date.
WARNING: untranslated string: release = Release
+WARNING: untranslated string: remarks = unknown string
WARNING: untranslated string: remote subnets = Remote Subnets
WARNING: untranslated string: required = Required
WARNING: untranslated string: required field = Required field
WARNING: untranslated string: vulnerable = Vulnerable
WARNING: untranslated string: warning = Warning
WARNING: untranslated string: wg create peer = Create A New Peer
+WARNING: untranslated string: wg edit peer = Edit Peer
WARNING: untranslated string: wg invalid endpoint address = Invalid endpoint address
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: reiserfs warning1 = Reiserfs is deprecated and scheduled to be removed from the kernel in 2025.
WARNING: untranslated string: reiserfs warning2 = Ensure a fresh installation is made using either ext4 or xfs filesystems before that date.
WARNING: untranslated string: release = Release
+WARNING: untranslated string: remarks = unknown string
WARNING: untranslated string: remote subnets = Remote Subnets
WARNING: untranslated string: required = Required
WARNING: untranslated string: required field = Required field
WARNING: untranslated string: vulnerable = Vulnerable
WARNING: untranslated string: warning = Warning
WARNING: untranslated string: wg create peer = Create A New Peer
+WARNING: untranslated string: wg edit peer = Edit Peer
WARNING: untranslated string: wg invalid endpoint address = Invalid endpoint address
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
WARNING: untranslated string: reiserfs warning1 = Reiserfs is deprecated and scheduled to be removed from the kernel in 2025.
WARNING: untranslated string: reiserfs warning2 = Ensure a fresh installation is made using either ext4 or xfs filesystems before that date.
WARNING: untranslated string: release = Release
+WARNING: untranslated string: remarks = unknown string
WARNING: untranslated string: remote subnets = Remote Subnets
WARNING: untranslated string: required = Required
WARNING: untranslated string: retbleed = Retbleed
WARNING: untranslated string: vulnerable = Vulnerable
WARNING: untranslated string: warning = Warning
WARNING: untranslated string: wg create peer = Create A New Peer
+WARNING: untranslated string: wg edit peer = Edit Peer
WARNING: untranslated string: wg invalid endpoint address = Invalid endpoint address
WARNING: untranslated string: wg invalid endpoint port = Invalid endpoint port
WARNING: untranslated string: wg invalid local subnet = Invalid local subnet
< vpn configuration main
< wg
< wg create peer
+< wg edit peer
< wg invalid endpoint address
< wg invalid endpoint port
< wg invalid local subnet
< warning
< wg
< wg create peer
+< wg edit peer
< wg invalid endpoint address
< wg invalid endpoint port
< wg invalid local subnet
< warning
< wg
< wg create peer
+< wg edit peer
< wg invalid endpoint address
< wg invalid endpoint port
< wg invalid local subnet
< Weekly
< wg
< wg create peer
+< wg edit peer
< wg invalid endpoint address
< wg invalid endpoint port
< wg invalid local subnet
< Weekly
< wg
< wg create peer
+< wg edit peer
< wg invalid endpoint address
< wg invalid endpoint port
< wg invalid local subnet
< Weekly
< wg
< wg create peer
+< wg edit peer
< wg invalid endpoint address
< wg invalid endpoint port
< wg invalid local subnet
< Weekly
< wg
< wg create peer
+< wg edit peer
< wg invalid endpoint address
< wg invalid endpoint port
< wg invalid local subnet
< Weekly
< wg
< wg create peer
+< wg edit peer
< wg invalid endpoint address
< wg invalid endpoint port
< wg invalid local subnet
&General::system("/usr/local/bin/wireguardctrl", "stop");
}
+# Edit an existing peer
+} elsif ($cgiparams{"ACTION"} eq $Lang::tr{'edit'}) {
+ my $key = $cgiparams{'KEY'};
+
+ # Fail if the peer does not exist
+ unless (exists $peers{$key}) {
+ goto MAIN;
+ }
+
+ # Fetch type
+ my $type = $peers{$key}[1];
+
+ # Flush CGI parameters & load configuration
+ %cgiparams = (
+ "KEY" => $key,
+ "ENABLED" => $peers{$key}[0],
+ "TYPE" => $peers{$key}[1],
+ "NAME" => $peers{$key}[2],
+ "PUBLIC_KEY" => $peers{$key}[3],
+ "ENDPOINT_ADDRESS" => $peers{$key}[4],
+ "ENDPOINT_PORT" => $peers{$key}[5],
+ "REMOTE_SUBNETS" => $peers{$key}[6],
+ "REMARKS" => &MIME::Base64::decode_base64($peers{$key}[7]),
+ "LOCAL_SUBNETS" => $peers{$key}[8],
+ );
+
+ # Jump to the editor
+ if ($type eq "net") {
+ goto EDITOR;
+ }
+
} elsif ($cgiparams{"ACTION"} eq "SAVE-PEER-NET") {
my @local_subnets = ();
my @remote_subnets = ();
+ # Fetch or allocate a new key
+ my $key = $cgiparams{'KEY'} || &General::findhasharraykey(\%peers);
+
# Check if the name is valid
unless (&name_is_valid($cgiparams{"NAME"})) {
push(@errormessages, $Lang::tr{'wg invalid name'});
goto EDITOR if (scalar @errormessages);
# Save the connection
-
- # Allocate a new key
- my $key = &General::findhasharraykey(\%peers);
-
- # Store all values
$peers{$key} = [
# 0 = Enabled
"on",
# Show any error messages
&Header::errorbox(@errormessages);
+ # Fetch the key
+ my $key = $cgiparams{'KEY'};
+
# Open a new box
- &Header::openbox('100%', '', $Lang::tr{'wg create peer'});
+ &Header::openbox('100%', '',
+ (defined $key) ? $Lang::tr{'wg edit peer'} : $Lang::tr{'wg create peer'});
# Set defaults
- &General::set_defaults(\%cgiparams, {
- "ENDPOINT_PORT" => $DEFAULT_PORT,
- "LOCAL_SUBNETS" =>
- $Network::ethernet{"GREEN_NETADDRESS"}
- . "/" . $Network::ethernet{"GREEN_NETMASK"},
- });
+ unless (defined $key) {
+ &General::set_defaults(\%cgiparams, {
+ "ENDPOINT_PORT" => $DEFAULT_PORT,
+ "LOCAL_SUBNETS" =>
+ $Network::ethernet{"GREEN_NETADDRESS"}
+ . "/" . $Network::ethernet{"GREEN_NETMASK"},
+ });
+ }
print <<END;
<form method="POST" ENCTYPE="multipart/form-data">
<input type="hidden" name="ACTION" value="SAVE-PEER-NET">
+ <input type="hidden" name="KEY" value="$cgiparams{'KEY'}">
<table class="form">
<tr>
'weeks' => 'Weeks',
'wg' => 'WireGuard',
'wg create peer' => 'Create A New Peer',
+'wg edit peer' => 'Edit Peer',
'wg invalid endpoint address' => 'Invalid endpoint address',
'wg invalid endpoint port' => 'Invalid endpoint port',
'wg invalid local subnet' => 'Invalid local subnet',