Amazon AWS offre la possibilité d’utiliser une base MySQL ou PostgreSQL via leur offre Amazon RDS. Une fois votre base de donnée installée, pour peu que vous souhaitiez sécuriser son accès, la première chose à faire est de restreindre la partie réseau. Chez Captain Dash nous utilisons des VPCs, et ceci de telle façon à ce que les bases ne soient pas accessibles sur Internet. Seul les serveurs hébergés sur EC2 peuvent y accéder.
Il peut arriver cependant que vous souhaitiez pouvoir accéder à votre instance RDS, et ce quelque soit l’endroit où vous vous trouvez. Plutôt que de modifier les Security Groups, je vous recommande d’utiliser un tunnel SSH. Chiffré, sécurisé, l’idée est de passer par une machine sur EC2, sur laquelle vous avez un accès SSH, pour se connecter sur l’instance MySQL ou PostgreSQL. A noter aussi que des clients MySQL comme Navicat for MySQL sur Mac, vous permettent de configurer et d’utiliser SSH.
C’est aussi plus facile que de mettre en place SSL/TLS
Pour cela, voici comment créer un tunnel de votre machine de développement vers votre base RDS, via un serveur (ici mon-serveur-ec2)
<span class="s1">ssh -N -L 3308:mon-instance-rds.eu-west-1.rds.amazonaws.com:3306 mon-serveur-ec2</span>
Pour lancer en tâche de fond et
<span class="s1">ssh -f -N -n -L 3308:mon-instance-rds.eu-west-1.rds.amazonaws.com:3306 mon-serveur-ec2</span>
Vous pourrez alors vous connecter sur la base en local :
mysql -h 127.0.0.1 -P 3308 -u dbuser -p db
Commentaires récents