Complete a 3 Question Survey and Earn a re:Post Badge
Help improve AWS Support Official channel in re:Post and share your experience - complete a quick three-question survey to earn a re:Post badge!
Comment utiliser une instance de base de données Amazon EC2 comme hôte bastion pour me connecter à une instance de base de données Amazon RDS à partir d’un ordinateur local ?
Je souhaite utiliser une instance Amazon Elastic Compute Cloud (Amazon EC2) comme hôte bastion (saut) pour me connecter à une instance de base de données Amazon Relational Database Service (Amazon RDS) privée à partir d’un ordinateur local.
Résolution
Remarque : Si des erreurs surviennent lorsque vous exécutez des commandes de l'interface de la ligne de commande AWS (AWS CLI), consultez la section Résoudre des erreurs liées à l’AWS CLI. Vérifiez également que vous utilisez bien la version la plus récente de l'interface.
Pour une connexion à une instance de base de données Amazon RDS ou Amazon Aurora privée, il est recommandé d’utiliser un VPN ou AWS Direct Connect. Si vous ne pouvez utiliser aucune de ces options, utilisez un hôte bastion.
L'exemple de configuration suivant concerne une instance Amazon RDS pour MySQL qui se trouve dans un Amazon Virtual Private Cloud (Amazon VPC). L'exemple utilise des groupes de sécurité pour restreindre l'accès. Vous pouvez toutefois restreindre la liste de contrôle d'accès réseau (ACL réseau) des sous-réseaux afin de sécuriser la connexion.
Lancer et configurer l'instance EC2
Procédez comme suit :
- Ouvrez la console Amazon EC2, puis sélectionnez Lancer l’instance.
- Sélectionnez une Amazon Machine Image (AMI).
- Choisissez un type d'instance, puis sélectionnez Étape suivante : Configurer les détails de l'instance.
- Dans Réseau, choisissez le VPC utilisé par l'instance de base de données Amazon RDS.
- Dans Sous-réseau, sélectionnez le sous-réseau privé dans le VPC
- Sélectionnez Étape suivante : Ajouter de l'espace de stockage, puis modifiez-le selon vos besoins.
- Sélectionnez Étape suivante : Ajouter des identifications, puis ajoutez des identifications selon vos besoins.
- Sélectionnez Étape suivante : Configurer le groupe de sécurité.
- Sélectionnez Ajouter une règle, puis saisissez les valeurs suivantes :
Dans Type, saisissez Règle TCP personnalisée
Dans Protocole, saisissez TCP
Dans Plage de ports, saisissez 22
Dans Source, saisissez le groupe de sécurité utilisé par votre point de terminaison Amazon EC2 Connect. - Sélectionnez Vérifier et lancer, puis Lancer.
Configurer les groupes de sécurité de l'instance de base de données Amazon RDS
Remarque : Pour connecter automatiquement une ou plusieurs instances EC2 à une base de données Amazon RDS, consultez la section Connecter automatiquement une instance à une base de données RDS à l'aide de la console RDS.
Procédez comme suit :
- Ouvrez la console Amazon RDS.
- Dans le volet de navigation, sélectionnez Bases de données.
- Choisissez le nom de l'instance de base de données Amazon RDS. Si vous n'en avez pas déjà une, créez une instance de base de données RDS.
- Sélectionnez Connectivité et sécurité.
- Dans la section Sécurité, choisissez le lien sous Groupes de sécurité VPC.
- Sélectionnez le groupe de sécurité, choisissez Actions, puis Modifier les règles entrantes.
- Sélectionnez Ajouter une règle, puis saisissez les valeurs suivantes :
Dans Type, saisissez Règle TCP personnalisée
Dans Protocole, saisissez TCP
Dans Plage de ports, saisissez le port de votre instance de base de données Amazon RDS.
Dans Source, saisissez l'adresse IP privée de votre instance EC2. - Sélectionnez Enregistrer.
Cette configuration pour le groupe de sécurité autorise le trafic provenant de l'adresse IP privée de l'instance EC2. Si l'instance EC2 et l'instance de base de données Amazon RDS utilisent le même VPC, vous n'avez pas besoin de modifier la table de routage de l'instance de base de données Amazon RDS. Si le VPC est différent, créez une connexion d'appairage de VPC pour autoriser les connexions entre ces VPC.
Remarque : Si vous utilisez une solution plus évolutive, vérifiez votre configuration. Par exemple, si vous utilisez l'ID du groupe de sécurité dans une règle de groupe de sécurité, assurez-vous que cela ne limite pas l'accès à une instance. À la place, configurez la règle pour restreindre l'accès à toute ressource utilisant l'ID de groupe de sécurité spécifique.
Créer un point de terminaison EC2 Instance Connect
- Ouvrez la console Amazon VPC.
- Dans le volet de navigation, sélectionnez Points de terminaison.
- Sélectionnez Créer un point de terminaison, puis spécifiez les paramètres du point de terminaison.
(Facultatif) Dans Nommer l’identification, saisissez un nom pour le point de terminaison.
Dans Catégorie de service, sélectionnez Point de terminaison EC2 Instance Connect.
Dans VPC, sélectionnez le VPC qui comporte les instances cibles.
(Facultatif) Pour préserver les adresses IP des clients, développez Paramètres supplémentaires et cochez la case. Sinon, le comportement par défaut est d’utiliser l'interface réseau du point de terminaison comme adresse IP du client.
Dans Groupes de sécurité, sélectionnez le groupe de sécurité que vous souhaitez associer au point de terminaison. Sinon, le comportement par d´faut est d’utiliser le groupe de sécurité par défaut pour le VPC.
Dans Sous-réseau, sélectionnez le sous-réseau dans lequel vous souhaitez créer le point de terminaison.
(Facultatif) Pour ajouter une identification, sélectionnez Ajouter une nouvelle identification et saisissez la clé d’identification et la valeur d’identification. - Vérifiez vos paramètres, puis sélectionnez Créer un point de terminaison.
- Le statut initial du point de terminaison est En attente. Pour vous connecter à une instance, vous devez attendre que le statut du point de terminaison soit Disponible. Cette opération peut prendre jusqu'à quelques minutes.
Se connecter à l'instance de base de données RDS à partir de votre ordinateur local
Remarque : Vous devez avoir accès à l'interface de ligne de commande AWS.
Pour vous connecter à partir de votre client MySQL local à une instance RDS privée via un tunnel SSH, procédez comme suit :
Linux ou macOS
-
Exécutez la commande suivante pour ouvrir un tunnel entre l’ordinateur local et l'instance EC2 :
aws ec2-instance-connect open-tunnel --instance-id ec2-instance-ID --local-port 8888
Remarque : Remplacez ec2-instance-ID par l’ID de votre instance EC2.
-
Ouvrez une deuxième connexion et exécutez la commande suivante pour créer un tunnel SSH entre votre hôte local et votre base de données RDS via une instance EC2 :
ssh -i YOUR_EC2_KEY EC2_USER@EC2_HOST -p EC2_TUNNEL_PORT -L LOCAL_PORT:RDS_ENDPOINT:REMOTE_PORT -N -f
Remarque : Remplacez les valeurs suivantes :
YOUR_EC2_KEY par le chemin de votre fichier de clé privée EC2
EC2_USER par le nom d'utilisateur de votre instance EC2
EC2_HOST par le nom d'hôte de votre instance EC2
EC2_TUNNEL_PORT par le port que vous avez configuré
LOCAL_PORT par un port inutilisé sur votre ordinateur local
RDS_ENDPOINT par le point de terminaison de votre instance RDS
REMOTE_PORT par le port que votre base de données Amazon RDS utilise dans l'instance RDS. -
Utilisez une troisième connexion et exécutez la commande suivante pour vous connecter à votre instance Amazon RDS à partir de votre ordinateur local :
mysql -h 127.0.0.1 -P LOCAL_PORT -u RDS_USER -p
Remarque : Remplacez les valeurs suivantes :
LOCAL_PORT par le numéro de votre port local
DB_USER par le nom d'utilisateur de votre base de données RDS
DB password par le mot de passe de la base de données Amazon RDS
Informations connexes
Comment puis-je résoudre les problèmes de connexion à mon instance de base de données Amazon RDS ?
Vidéos associées


Contenus pertinents
- demandé il y a 5 moislg...
- demandé il y a un anlg...
- demandé il y a 8 moislg...
- demandé il y a un anlg...
- demandé il y a 2 anslg...