Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Vous pouvez utiliser une clé pré-partagée ou PSK (également appelée secret partagé) pour authentifier le tunnel Cloud VPN auprès de votre passerelle de VPN de pairs. Pour respecter nos bonnes pratiques de sécurité, nous vous recommandons de générer une clé prépartagée sécurisée de 32 caractères.
Utilisez les méthodes suivantes pour générer une clé prépartagée sécurisée de 32 caractères.
Pour connaître la définition des termes utilisés sur cette page, consultez la section Termes clés.
Générer une clé secrète à l'aide de JavaScript
Vous pouvez également générer la clé prépartagée directement dans un document à l'aide de JavaScript avec l'API W3C Web Cryptography. Cette API utilise la méthode Crypto.getRandomValues(), qui permet de générer une clé pré-partagée de manière cryptographique.
Le code suivant génère une chaîne aléatoire de 32 caractères en créant un tableau de 24 octets aléatoires, puis en encodant ces octets en base64 :
var a = new Uint8Array(24);
window.crypto.getRandomValues(a);
console.log(btoa(String.fromCharCode.apply(null, a)));
Pour générer une clé secrète partagée dès maintenant, cliquez sur Regénérer la clé :
Générer une clé PSK à l'aide d'OpenSSL
Dans l'interface de ligne de commande Linux ou macOS, exécutez la commande OpenSSL suivante :
openssl rand -base64 32
Générer une clé secrète à l'aide de /dev/urandom
Sur un système d'exploitation Linux ou macOS, utilisez /dev/urandom en tant que source pseudo-aléatoire pour générer une clé prépartagée.
Dans l'interface de ligne de commande Linux ou macOS, exécutez la commande suivante pour envoyer l'entrée aléatoire à l'élément base64 :
head -c 32 /dev/urandom | base64
Transmettez l'entrée aléatoire via une fonction de hachage, telle que sha256 :
Sous Linux :
head -c 4096 /dev/urandom | sha256sum | cut -b1-32
Sous macOS :
head -c 4096 /dev/urandom | openssl sha256 | cut -b1-32
Étape suivante
Pour utiliser des scénarios à haute disponibilité et à haut débit, ou des scénarios à plusieurs sous-réseaux, consultez la section Configurations avancées.
Pour vous aider à résoudre les problèmes courants que vous pouvez rencontrer lors de l'utilisation de Cloud VPN, consultez la page Dépannage.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/05 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/05 (UTC)."],[],[],null,["# Generate a strong pre-shared key\n\nYou can use a *pre-shared key (PSK)* (also called a *shared secret*) to\nauthenticate the Cloud VPN tunnel to your peer VPN gateway. As a security\nbest practice, we recommend that you generate a strong 32-character\npre-shared key.\n\nUse the following methods to generate a strong 32-character pre-shared key.\n\nFor more information about Cloud VPN, see the\n[Cloud VPN overview](/network-connectivity/docs/vpn/concepts/overview).\n\nFor definitions of terms used on this page, see\n[Key terms](/network-connectivity/docs/vpn/concepts/key-terms).\n\nGenerate a PSK by using JavaScript\n----------------------------------\n\nYou can generate the pre-shared key directly in a document by using JavaScript\nwith the\n[W3C Web Cryptography API](https://www.w3.org/TR/WebCryptoAPI/#Crypto-method-getRandomValues).\nThis API uses the\n[Crypto.getRandomValues() method](https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues),\nwhich provides a cryptographic way of generating a pre-shared key.\n\nThe following code generates a random 32-character string by creating an\narray of 24 random bytes and then base64 encoding those bytes: \n\n```\n var a = new Uint8Array(24);\n window.crypto.getRandomValues(a);\n\n console.log(btoa(String.fromCharCode.apply(null, a)));\n```\n\nTo generate a PSK now, click **Regenerate**:\n\n```\n\n```\nRegenerate\n\nGenerate a PSK by using OpenSSL\n-------------------------------\n\nIn the Linux or macOS command-line interface, run the following\n[OpenSSL](https://www.openssl.org/) command: \n\n```\nopenssl rand -base64 32\n```\n\nGenerate a PSK by using `/dev/urandom`\n--------------------------------------\n\nOn a Linux or macOS operating system, use `/dev/urandom` as a\npseudorandom source to generate a pre-shared key.\n\n1. In the Linux or macOS command-line interface, run the following command to\n send the random input to `base64`:\n\n ```\n head -c 32 /dev/urandom | base64\n ```\n2. Pass the random input through a hashing function, such as `sha256`:\n\n - On Linux:\n\n ```\n head -c 4096 /dev/urandom | sha256sum | cut -b1-32\n ```\n - On macOS:\n\n ```\n head -c 4096 /dev/urandom | openssl sha256 | cut -b1-32\n ```\n\nWhat's next\n-----------\n\n- To use high-availability and high-throughput scenarios or multiple subnet scenarios, see [Advanced configurations](/network-connectivity/docs/vpn/concepts/advanced).\n- To help you solve common issues that you might encounter when using Cloud VPN, see [Troubleshooting](/network-connectivity/docs/vpn/support/troubleshooting)."]]