Maison > base de données > tutoriel mysql > Comment se connecter en toute sécurité à une base de données MySQL via le tunnel SSH en PHP ?

Comment se connecter en toute sécurité à une base de données MySQL via le tunnel SSH en PHP ?

Patricia Arquette
Libérer: 2024-11-29 00:52:11
original
728 Les gens l'ont consulté

How to Securely Connect to a MySQL Database via SSH Tunnel in PHP?

Connexion à MySQL via SSH en PHP

Contexte : Tunneling SSH pour la connectivité de la base de données

La connexion à une base de données distante via SSH offre une connexion sécurisée et efficace moyens d’accès aux données. SSH sert de canal crypté par lequel vos requêtes MySQL sont transmises, protégeant les informations sensibles de l'interception.

Configuration du tunnel SSH

Pour établir le tunnel SSH, utilisez la commande ssh avec le commutateur -L pour spécifier la redirection de port local. Ce commutateur redirige le trafic d'un port local spécifié vers l'adresse IP et le port distant du serveur de base de données via SSH.

Par exemple, la commande suivante configure un tunnel entre le port local 3307 et le serveur de base de données à l'adresse 10.3.1.55 : 3306 via le proxy SSH sur ssh-jumpbox.com :

ssh -fNg -L 3307:10.3.1.55:3306 [email protected] 
Copier après la connexion

Connexion MySQL via Tunnel

Maintenant que le tunnel est établi, configurez votre application PHP pour qu'elle se connecte à la base de données via le port local. Cela implique de spécifier "127.0.0.1:3307" comme paramètre hôte dans votre fonction de connexion MySQL, comme le montre l'exemple ci-dessous :

$smysql = mysql_connect("127.0.0.1:3307", "dbuser", "passphrase");
Copier après la connexion

Cette chaîne de connexion indique à MySQL d'utiliser le port local 3307, qui être transféré via le tunnel SSH vers le serveur de base de données.

Dépannage : résolution du paramètre Incompatibilité

L'erreur "mysqli_connect() s'attend à ce que le paramètre 6 soit une chaîne, ressource donnée" lors de l'utilisation de mysqli_connect indique une incompatibilité dans les paramètres de la fonction. Assurez-vous que le cinquième paramètre (qui doit être la ressource du tunnel) est une chaîne contenant les détails de connexion à la ressource, plutôt que la ressource elle-même.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal