Check ID:
Provider: AWS
Service:
Severity: MEDIUM
Categories:
Resource type:
vpc_vpn_connection_tunnels_upProvider: AWS
Service:
vpcSeverity: MEDIUM
Categories:
resilienceResource type:
AwsEc2ClientVpnEndpointWhat this check verifies
AWS Site-to-Site VPN connections have two IPsec tunnels. This evaluates tunnel status and detects when any tunnel is notUP, indicating whether both tunnels are concurrently available for high availability.
Risk
With only one active tunnel or none, the link loses redundancy, degrading availability and increasing the chance of outages, session drops, or route blackholing. Failover cannot occur, disrupting critical workloads and cross-environment operations.Recommendation
Maintain both tunnels healthy and ready for failover:- Deploy redundant customer gateways and resilient routing
- Monitor tunnel health with alerts
- Periodically test failover and document runbooks
Remediation
Dashboard steps- In the AWS Console, go to VPC > Site-to-Site VPN connections and select the VPN connection with a tunnel DOWN
- Open the Tunnel details tab
- For each tunnel (1 and 2), choose Actions > Download configuration, select your device/vendor, and download the config
- On your customer gateway device, configure BOTH tunnels using the downloaded parameters (pre-shared key, IKE/IPsec settings, inside CIDR, and routing/BGP as applicable)
- If your device requires different parameters, in the AWS console choose Actions > Modify VPN tunnel options, select the tunnel outside IP, adjust only the necessary options (for example IKE version or pre-shared key), and Save
- Wait a few minutes and verify both tunnels show Status: UP under Tunnel details
References
- https://docs.aws.amazon.com/vpn/latest/s2svpn/modify-vpn-tunnel-options.html
- https://docs.aws.amazon.com/config/latest/developerguide/vpc-vpn-2-tunnels-up.html
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = vpc_vpn_connection_tunnels_up. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks