
Kürzlich erhielt ich eine E-Mail, in der mir mitgeteilt wurde, dass einige IE-Verbindungen Zugriff auf meinen Bucket haben:
eu-central-1|media.myapp | REST.GET.OBJECT|TLSv1|9|[Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NE
eu-central-1|media.myapp | REST.GET.OBJECT|TLSv1|54|[Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; InfoPath.1; .NET CLR 3.5.30729; .NET CLR 3.0.30618; .NET4.0C;
Aber ich möchte wissen, um welche Geräte es sich handelt und welche IP-Adresse sie verwenden, um die Ursache des Problems zu diagnostizieren (Legacy-Infrastruktur, keine Dokumente). Gibt es eine Möglichkeit, ein Zugriffsprotokoll darüber zu führen, welche IAM-Konten und Geräte unter welcher IP und MAC Elemente aus meinem Bucket empfangen?
Antwort1
Ich bin nicht sicher, ob ich Ihre Frage richtig verstehe, aber falls Sie wissen möchten, wie Sie nur bestimmten Benutzern oder IP-Adressen den Zugriff auf Ihren S3-Bucket erlauben (und ich gehe davon aus, dass Sie vom öffentlichen Internet sprechen), finden Sie hier einen Block einer Bucket-Richtlinie, die ich verwendet habe, um beispielsweise nur den von mir gewünschten öffentlichen IP-Adressen den Zugriff auf den Bucket zu erlauben:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "IPAllow",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::<bucket name>/*",
"Condition": {
"IpAddress": {
"aws:SourceIp": [
"<first IP/32",
"<second IP>/32",
"<third IP>/32",
"<fourth IP>/32"
]
}
}
}
]
}
Hoffentlich kann Ihnen das zumindest in die richtige Richtung weisen.
Antwort2
Im Amazon S3-Benutzerhandbuch wird die Anforderungsprotokollierung erläutert.
Die Serverzugriffsprotokollierung liefert detaillierte Aufzeichnungen der an einen Bucket gestellten Anforderungen. Serverzugriffsprotokolle sind für viele Anwendungen nützlich. Beispielsweise können Zugriffsprotokollinformationen bei Sicherheits- und Zugriffsprüfungen hilfreich sein.
https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerLogs.html
Sie können keine MAC-Adressen erfahren, da diese nie über das Internet übertragen werden, aber die IP-Adresse des Geräts (oder die öffentliche NAT-Adresse, wenn sich das Gerät hinter einem NAT-Router befindet) wird erfasst. Um bestimmte Geräte im LAN hinter einem NAT-Router zu identifizieren, ist Zugriff auf die Geräte und/oder den Router erforderlich.
In den Protokollen werden außerdem die gegebenenfalls für den Zugriff auf das Objekt verwendeten IAM-Anmeldeinformationen erfasst.
Über die Informationen in diesen Protokollen hinaus kann von AWS nichts weiter über die Geräte in Erfahrung gebracht werden.
Vermutlich bezieht sich die E-Mail, auf die Sie sich beziehen, auf die Tatsache, dass diese Geräte TLSv1 verwenden, für das AWS den Support bald einstellt.
Als Reaktion auf die sich entwickelnde Technologie und die regulatorischen Standards für Transport Layer Security (TLS) aktualisieren wir die TLS-Konfiguration für alle AWS-Service-API-Endpunkte auf mindestens Version TLS 1.2. Dieses Update bedeutet, dass Sie die TLS-Versionen 1.0 und 1.1 ab dem 28. Juni 2023 nicht mehr mit allen AWS-APIs in allen AWS-Regionen verwenden können.
https://aws.amazon.com/blogs/security/tls-1-2-required-for-aws-endpoints/
Sie können alte Versionen von TLS jetzt, bevor die API-Änderungen wirksam werden, mit einem entsprechendenRichtlinie verweigern. Dies könnte Ihnen möglicherweise dabei helfen, die Geräte anhand von Fehlerberichten zu identifizieren. Indem Sie die Richtlinie jetzt regelmäßig hinzufügen und entfernen, können Sie die Geräte möglicherweise identifizieren, ohne einen dauerhaften Ausfall zu verursachen, wie es passieren wird, wenn die API-Änderungen von AWS veröffentlicht werden. Abgelehnte Anfragen werden weiterhin von S3 protokolliert, aber mit einer HTTP 403-Antwort und einem Fehler von beantwortet AccessDenied
.