387 lines
9.6 KiB
JSON
387 lines
9.6 KiB
JSON
{
|
|
"date": "2026-10-08",
|
|
"backendSource": "3722fad",
|
|
"frontendSource": "bf43263",
|
|
"name": "mm-acceptance-wg-1791475605238",
|
|
"subnet": "198.18.255.240/30",
|
|
"listenPort": 51879,
|
|
"realRouterOs": true,
|
|
"changes": [
|
|
{
|
|
"method": "POST",
|
|
"path": "/api/wireguard/interfaces",
|
|
"status": 201
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/api/wireguard/interfaces",
|
|
"status": 201
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/api/wireguard/peers",
|
|
"status": 201
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/api/wireguard/peers",
|
|
"status": 201
|
|
},
|
|
{
|
|
"method": "PATCH",
|
|
"path": "/api/wireguard/interfaces/1/*D",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "PATCH",
|
|
"path": "/api/wireguard/interfaces/1/*D",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "GET",
|
|
"path": "/api/wireguard",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/api/wireguard/export",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/api/wireguard/export",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/api/wireguard/export",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/api/wireguard/export",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/api/wireguard/export",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "POST",
|
|
"path": "/api/wireguard/export",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/api/wireguard/peers/1/*9",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/api/wireguard/interfaces/1/*D",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/api/wireguard/peers/2/*6",
|
|
"status": 200
|
|
},
|
|
{
|
|
"method": "DELETE",
|
|
"path": "/api/wireguard/interfaces/2/*9",
|
|
"status": 200
|
|
}
|
|
],
|
|
"pings": [
|
|
{
|
|
"serverId": 1,
|
|
"target": "198.18.255.242",
|
|
"interface": "mm-acceptance-wg-1791475605238",
|
|
"received": 3,
|
|
"rows": [
|
|
{
|
|
"sent": "1",
|
|
"received": "1",
|
|
"packet-loss": "0",
|
|
"time": "54ms786us",
|
|
"avg-rtt": "54ms786us"
|
|
},
|
|
{
|
|
"sent": "2",
|
|
"received": "2",
|
|
"packet-loss": "0",
|
|
"time": "54ms652us",
|
|
"avg-rtt": "54ms719us"
|
|
},
|
|
{
|
|
"sent": "3",
|
|
"received": "3",
|
|
"packet-loss": "0",
|
|
"time": "62ms502us",
|
|
"avg-rtt": "57ms313us"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"serverId": 2,
|
|
"target": "198.18.255.241",
|
|
"interface": "mm-acceptance-wg-1791475605238",
|
|
"received": 3,
|
|
"rows": [
|
|
{
|
|
"sent": "1",
|
|
"received": "1",
|
|
"packet-loss": "0",
|
|
"time": "58ms714us",
|
|
"avg-rtt": "58ms714us"
|
|
},
|
|
{
|
|
"sent": "2",
|
|
"received": "2",
|
|
"packet-loss": "0",
|
|
"time": "56ms781us",
|
|
"avg-rtt": "57ms747us"
|
|
},
|
|
{
|
|
"sent": "3",
|
|
"received": "3",
|
|
"packet-loss": "0",
|
|
"time": "56ms597us",
|
|
"avg-rtt": "57ms364us"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"cleanup": [
|
|
{
|
|
"serverId": 1,
|
|
"/interface/wireguard": true,
|
|
"/interface/wireguard/peers": true,
|
|
"/ip/address": true,
|
|
"/ip/route": true,
|
|
"/ip/firewall/filter": true,
|
|
"/ip/firewall/nat": true,
|
|
"/ip/firewall/mangle": true
|
|
},
|
|
{
|
|
"serverId": 2,
|
|
"/interface/wireguard": true,
|
|
"/interface/wireguard/peers": true,
|
|
"/ip/address": true,
|
|
"/ip/route": true,
|
|
"/ip/firewall/filter": true,
|
|
"/ip/firewall/nat": true,
|
|
"/ip/firewall/mangle": true
|
|
}
|
|
],
|
|
"nativeKeyGenerationConfirmed": true,
|
|
"connectedState": [
|
|
{
|
|
"serverId": 1,
|
|
"interface": {
|
|
"rosId": "*D",
|
|
"appId": "1:*D",
|
|
"name": "mm-acceptance-wg-1791475605238",
|
|
"listenPort": "51879",
|
|
"mtu": "1420",
|
|
"running": "true",
|
|
"disabled": "false",
|
|
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791475605238"
|
|
},
|
|
"addresses": [
|
|
"198.18.255.241/30"
|
|
],
|
|
"peers": [
|
|
{
|
|
"rosId": "*9",
|
|
"name": "mm-acceptance-wg-1791475605238-peer",
|
|
"allowedAddresses": "198.18.255.242/32",
|
|
"endpoint": "104.165.244.7:51879",
|
|
"handshake": "1s",
|
|
"rx": "180",
|
|
"tx": "272",
|
|
"disabled": "false",
|
|
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791475605238"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"serverId": 2,
|
|
"interface": {
|
|
"rosId": "*9",
|
|
"appId": "2:*9",
|
|
"name": "mm-acceptance-wg-1791475605238",
|
|
"listenPort": "51879",
|
|
"mtu": "1420",
|
|
"running": "true",
|
|
"disabled": "false",
|
|
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791475605238"
|
|
},
|
|
"addresses": [
|
|
"198.18.255.242/30"
|
|
],
|
|
"peers": [
|
|
{
|
|
"rosId": "*6",
|
|
"name": "mm-acceptance-wg-1791475605238-peer",
|
|
"allowedAddresses": "198.18.255.241/32",
|
|
"endpoint": "194.226.121.150:51879",
|
|
"handshake": "1s",
|
|
"rx": "124",
|
|
"tx": "180",
|
|
"disabled": "false",
|
|
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791475605238"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"handshakeConfirmed": true,
|
|
"bidirectionalPingPassed": true,
|
|
"catalogMatchesNative": true,
|
|
"exports": [
|
|
{
|
|
"serverId": 1,
|
|
"format": "rsc",
|
|
"status": 200,
|
|
"privateKeyAbsent": true,
|
|
"selectedParametersMatch": true,
|
|
"configurationNotPersisted": true
|
|
},
|
|
{
|
|
"serverId": 1,
|
|
"format": "conf",
|
|
"status": 200,
|
|
"privateKeyAbsent": true,
|
|
"selectedParametersMatch": true,
|
|
"configurationNotPersisted": true
|
|
},
|
|
{
|
|
"serverId": 1,
|
|
"format": "peer-conf",
|
|
"status": 200,
|
|
"privateKeyAbsent": true,
|
|
"configurationNotPersisted": true,
|
|
"selectedPeerAndServerKeyMatch": true,
|
|
"clientEndpointCorrect": false,
|
|
"clientTemplateReady": false
|
|
},
|
|
{
|
|
"serverId": 2,
|
|
"format": "rsc",
|
|
"status": 200,
|
|
"privateKeyAbsent": true,
|
|
"selectedParametersMatch": true,
|
|
"configurationNotPersisted": true
|
|
},
|
|
{
|
|
"serverId": 2,
|
|
"format": "conf",
|
|
"status": 200,
|
|
"privateKeyAbsent": true,
|
|
"selectedParametersMatch": true,
|
|
"configurationNotPersisted": true
|
|
},
|
|
{
|
|
"serverId": 2,
|
|
"format": "peer-conf",
|
|
"status": 200,
|
|
"privateKeyAbsent": true,
|
|
"configurationNotPersisted": true,
|
|
"selectedPeerAndServerKeyMatch": true,
|
|
"clientEndpointCorrect": false,
|
|
"clientTemplateReady": false
|
|
}
|
|
],
|
|
"peerClientDefaults": [
|
|
{
|
|
"serverId": 1,
|
|
"endpointIsRemotePeer": true,
|
|
"endpointIsExportingServer": false,
|
|
"clientAddressPresent": false,
|
|
"allowedAddressIsRemotePeer": true
|
|
},
|
|
{
|
|
"serverId": 2,
|
|
"endpointIsRemotePeer": true,
|
|
"endpointIsExportingServer": false,
|
|
"clientAddressPresent": false,
|
|
"allowedAddressIsRemotePeer": true
|
|
}
|
|
],
|
|
"afterBrowserDelete": [
|
|
{
|
|
"serverId": 1,
|
|
"interface": {
|
|
"rosId": "*D",
|
|
"appId": "1:*D",
|
|
"name": "mm-acceptance-wg-1791475605238",
|
|
"listenPort": "51879",
|
|
"mtu": "1420",
|
|
"running": "true",
|
|
"disabled": "false",
|
|
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791475605238"
|
|
},
|
|
"addresses": [
|
|
"198.18.255.241/30"
|
|
],
|
|
"peers": [
|
|
{
|
|
"rosId": "*9",
|
|
"name": "mm-acceptance-wg-1791475605238-peer",
|
|
"allowedAddresses": "198.18.255.242/32",
|
|
"endpoint": "104.165.244.7:51879",
|
|
"handshake": "1m48s",
|
|
"rx": "1396",
|
|
"tx": "912",
|
|
"disabled": "false",
|
|
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791475605238"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"serverId": 2,
|
|
"interface": {
|
|
"rosId": "*9",
|
|
"appId": "2:*9",
|
|
"name": "mm-acceptance-wg-1791475605238",
|
|
"listenPort": "51879",
|
|
"mtu": "1420",
|
|
"running": "true",
|
|
"disabled": "false",
|
|
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791475605238"
|
|
},
|
|
"addresses": [
|
|
"198.18.255.242/30"
|
|
],
|
|
"peers": [
|
|
{
|
|
"rosId": "*6",
|
|
"name": "mm-acceptance-wg-1791475605238-peer",
|
|
"allowedAddresses": "198.18.255.241/32",
|
|
"endpoint": "194.226.121.150:51879",
|
|
"handshake": "1m48s",
|
|
"rx": "764",
|
|
"tx": "1396",
|
|
"disabled": "false",
|
|
"userComment": "Temporary UX acceptance mm-acceptance-wg-1791475605238"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"limits": [
|
|
"Only own WireGuard interface/peer/IP and connected route changed; no default routes/firewall changes",
|
|
"Export verification is read-only; fixture interfaces and linked objects removed by harness",
|
|
"Private/public/preshared keys omitted from report; native generation and peer association checked in memory",
|
|
"Handshake and short ICMP connectivity, not throughput, RBAC or interrupted mutation",
|
|
"WireGuard audit revisions intentionally retained",
|
|
"Only API export includePrivateKey=false tested; UI live export currently requests private keys for RSC/CONF and was not invoked"
|
|
],
|
|
"finding": {
|
|
"kind": "peer-conf defaults",
|
|
"endpointPointsToRemotePeerInsteadOfExportingServer": true,
|
|
"clientAddressMissingWithoutClientMetadata": true,
|
|
"clientReadyAcceptanceOpen": true
|
|
}
|
|
}
|