32 votes

Comment vérifier le fonctionnement d'un point de terminaison AWS VPC (S3) ?

J'ai ajouté un point d'extrémité VPC à mon VPC en utilisant CloudFormation, et j'ai autorisé l'utilisation de s3. Les routes sont visibles dans la console AWS, mais pas dans les tables de routage locales des instances EC2. instances EC2 :

$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         172.29.4.129    0.0.0.0         UG    0      0        0 eth0
169.254.169.254 0.0.0.0         255.255.255.255 UH    0      0        0 eth0
172.29.4.128    0.0.0.0         255.255.255.128 U     0      0        0 eth0

Comment vérifier que les instances EC2 du VPC utilisent bien le point de terminaison du VPC pour S3, et non la connexion Internet disponible ?

24voto

Valer Points 260

I

Y

F c .

E

$ traceroute -n -T -p 443 s3.amazonaws.com                                
traceroute to s3.amazonaws.com (52.216.204.93), 30 hops max, 60 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  52.216.204.93  0.662 ms  0.668 ms  0.637 ms

E

$ traceroute -n -T -p 443 serverfault.com
traceroute to serverfault.com (151.101.129.69), 30 hops max, 60 byte packets
 1  172.20.10.188  0.206 ms  0.147 ms  0.145 ms
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  100.65.13.49  0.956 ms 100.65.13.113  1.253 ms *
 8  52.93.28.209  1.083 ms 52.93.28.231  1.213 ms 52.93.28.235  1.151 ms
 9  100.100.4.38  1.770 ms 100.100.4.46  2.089 ms 100.100.4.36  1.723 ms
10  103.244.50.242  1.136 ms 100.100.4.44  1.702 ms  2.738 ms
11  151.101.129.69  1.013 ms 103.244.50.244  1.745 ms 151.101.129.69  1.142 ms

15voto

john Points 31

I

  1. L
  2. C
  3. r aws ec2 describe-prefix-lists ; W , Get-EC2PrefixList

T PrefixListId .

F

{
  "Version": "2008-10-17",
  "Statement": [
    {
      "Effect": "Deny",
      "Principal": "*",
      "Action": [
        "s3:ListBucket"
      ],
      "Resource": [
        "arn:aws:s3:::mybucket"
      ],
      "Condition": {
        "StringNotEquals": {
          "aws:sourceVpc": [
            "vpc-121212"
          ]
        }
      }
    }
  ]
}

w

7voto

VictorB Points 41

I

B

C

aws s3 ls /**

I

export AWS_DEFAULT_REGION=us-east-1** ## your region here
aws s3 ls /**

s

5voto

ozeebee Points 111

En développant la solution de @m-glatki, ajoutez une politique sur le seau qui restreint l'accès S3 à un point de terminaison VPC particulier :

{
    "Version": "2008-10-17",
    "Statement": [
        {
            "Effect": "Deny",
            "Principal": "*",
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::mybucket",
            "Condition": {
                "StringNotEquals": {
                    "aws:SourceVpce": "vpce-01ab2c3d4"
                }
            }
        }
    ]
}

Vous ne pourrez répertorier le contenu des seaux qu'à partir d'un processus qui utilise le point de terminaison VPC. Sinon, vous recevrez un message :

An error occurred (AccessDenied) when calling the ListObjectsV2 operation: Access Denied

Pour obtenir l'ID du point final du VPC, utilisez cette commande : aws ec2 describe-vpc-endpoints

Voir ceci lien

1voto

Jason Martin Points 4835

Votre instance transmet les paquets destinés à S3 à la passerelle locale, et de là, le "routeur" VPC les transmet au point d'extrémité S3. Aucune configuration ou connaissance du client n'est requise.

Vous

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X