Log connections established over EC2 Instance Connect Endpoint
You can log resource operations and audit connections established over the EC2 Instance Connect Endpoint with AWS CloudTrail logs.
For more information about using AWS CloudTrail with Amazon EC2, see Log Amazon EC2 API calls using AWS CloudTrail.
Log EC2 Instance Connect Endpoint API calls with AWS CloudTrail
EC2 Instance Connect Endpoint resource operations are logged to CloudTrail as management events. When the following API calls are made, the activity is recorded as a CloudTrail event in Event history:
-
CreateInstanceConnectEndpoint
-
DescribeInstanceConnectEndpoints
-
DeleteInstanceConnectEndpoint
You can view, search, and download recent events in your AWS account. For more information, see Viewing events with CloudTrail Event history in the AWS CloudTrail User Guide.
Use AWS CloudTrail to audit users who connect to an instance using EC2 Instance Connect Endpoint
Connection attempts to instances via EC2 Instance Connect Endpoint are logged in CloudTrail in
Event history. When a connection to an instance is
initiated through an EC2 Instance Connect Endpoint, the connection is logged as a CloudTrail management
event with the eventName
of OpenTunnel
.
You can create Amazon EventBridge rules that route the CloudTrail event to a target. For more information, see the Amazon EventBridge User Guide.
The following is an example of an OpenTunnel
management event that
was logged in CloudTrail.
{ "eventVersion": "1.08", "userIdentity": { "type": "IAMUser", "principalId": "ABCDEFGONGNOMOOCB6XYTQEXAMPLE", "arn": "arn:aws:iam::1234567890120:user/IAM-friendly-name", "accountId": "123456789012", "accessKeyId": "ABCDEFGUKZHNAW4OSN2AEXAMPLE", "userName": "IAM-friendly-name" }, "eventTime": "2023-04-11T23:50:40Z", "eventSource": "ec2-instance-connect.amazonaws.com", "eventName": "OpenTunnel", "awsRegion": "us-east-1", "sourceIPAddress": "1.2.3.4", "userAgent": "aws-cli/1.15.61 Python/2.7.10 Darwin/16.7.0 botocore/1.10.60", "requestParameters": { "instanceConnectEndpointId": "eici-0123456789EXAMPLE", "maxTunnelDuration": "3600", "remotePort": "22", "privateIpAddress": "10.0.1.1" }, "responseElements": null, "requestID": "98deb2c6-3b3a-437c-a680-03c4207b6650", "eventID": "bbba272c-8777-43ad-91f6-c4ab1c7f96fd", "readOnly": false, "resources": [{ "accountId": "123456789012", "type": "AWS::EC2::InstanceConnectEndpoint", "ARN": "arn:aws:ec2:us-east-1:123456789012:instance-connect-endpoint/eici-0123456789EXAMPLE" }], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management" }