Prise en charge SSH pour Azure App Service sur LinuxSSH support for Azure App Service on Linux

Secure Shell (SSH) est couramment utilisé pour exécuter des commandes d’administration à distance à partir d’un terminal de ligne de commande.Secure Shell (SSH) is commonly used to execute administrative commands remotely from a command-line terminal. App Service sur Linux assure la prise en charge SSH dans le conteneur d’application avec chacune des images Docker intégrées utilisées pour la pile d’exécution des nouvelles applications web.App Service on Linux provides SSH support into the app container with each of the built-in Docker images used for the Runtime Stack of new web apps.

Piles d’exécution

Pour les images Docker personnalisées, en configurant le serveur SSH dans votre image personnalisée.For custom Docker images, by configuring SSH server in your custom image.

Vous pouvez également vous connecter au conteneur directement à partir de votre machine de développement locale par SSH et SFTP.You can also connect to the container directly from your local development machine using SSH and SFTP.

Ouvrir une session SSH dans un navigateurOpen SSH session in browser

Pour établir une session SSH directe avec votre conteneur, votre application doit être en cours d’exécution.To make open a direct SSH session with your container, your app should be running.

Collez l’URL suivante dans votre navigateur, puis remplacez <app-name> par le nom de votre application :Paste the following URL into your browser and replace <app-name> with your app name:

https://<app-name>.scm.azurewebsites.net/webssh/host

Si vous n’êtes pas encore authentifié, vous devez le faire avec votre abonnement Azure pour vous connecter.If you're not yet authenticated, you're required to authenticate with your Azure subscription to connect. Une fois authentifié, vous voyez un interpréteur de commandes dans le navigateur, vous permettant d’exécuter des commandes à l’intérieur de votre conteneur.Once authenticated, you see an in-browser shell, where you can run commands inside your container.

Connexion SSH

Utiliser la prise en charge SSH avec des images Docker personnaliséesUse SSH support with custom Docker images

Consultez Configurer SSH dans un conteneur personnalisé.See Configure SSH in a custom container.

Ouvrir une session SSH à partir d’un interpréteur de commandes à distanceOpen SSH session from remote shell

Notes

Cette fonctionnalité est actuellement en préversion.This feature is currently in Preview.

À l’aide du tunneling TCP, vous pouvez créer une connexion réseau entre votre machine de développement et Web App pour conteneurs via une connexion WebSocket authentifiée.Using TCP tunneling you can create a network connection between your development machine and Web App for Containers over an authenticated WebSocket connection. Il vous permet d’ouvrir une session SSH avec votre conteneur en cours d’exécution dans App Service à partir du client de votre choix.It enables you to open an SSH session with your container running in App Service from the client of your choice.

Pour commencer, vous devez installer Azure CLI.To get started, you need to install Azure CLI. Pour voir comment il fonctionne sans installer Azure CLI, ouvrez Azure Cloud Shell.To see how it works without installing Azure CLI, open Azure Cloud Shell.

Ouvrez une connexion à distance vers votre application à l’aide de la commande az webapp remote-connection create.Open a remote connection to your app using the az webapp remote-connection create command. Spécifiez <id-abonnement> , <nom-groupe> et _<nom-application>_ pour votre application.Specify <subscription-id>, <group-name> and _<app-name>_ for your app.

az webapp create-remote-connection --subscription <subscription-id> --resource-group <resource-group-name> -n <app-name> &

Conseil

& à la fin de la commande est simplement présent pour des raisons pratiques si vous utilisez Cloud Shell.& at the end of the command is just for convenience if you are using Cloud Shell. Il exécute le processus en arrière-plan afin que vous puissiez exécuter la commande suivante dans le même interpréteur de commandes.It runs the process in the background so that you can run the next command in the same shell.

La sortie de commande vous donne les informations dont vous avez besoin pour ouvrir une session SSH.The command output gives you the information you need to open an SSH session.

Port 21382 is open
SSH is available { username: root, password: Docker! }
Start your favorite client and connect to port 21382

Ouvrez une session SSH avec votre conteneur au moyen du client de votre choix, en utilisant le port local.Open an SSH session with your container with the client of your choice, using the local port. L’exemple suivant utilise la commande ssh par défaut :The following example uses the default ssh command:

ssh root@127.0.0.1 -p <port>

Lorsque cela vous est demandé, tapez yes pour poursuivre la connexion.When being prompted, type yes to continue connecting. Vous êtes alors invité à entrer le mot de passe.You are then prompted for the password. Utilisez Docker!, qui vous a été indiqué précédemment.Use Docker!, which was shown to you earlier.

Warning: Permanently added '[127.0.0.1]:21382' (ECDSA) to the list of known hosts.
root@127.0.0.1's password:

Une fois authentifié, vous devez voir l’écran d’accueil de session.Once you're authenticated, you should see the session welcome screen.

  _____
  /  _  \ __________ _________   ____
 /  /_\  \___   /  |  \_  __ \_/ __ \
/    |    \/    /|  |  /|  | \/\  ___/
\____|__  /_____ \____/ |__|    \___  >
        \/      \/                  \/
A P P   S E R V I C E   O N   L I N U X

0e690efa93e2:~#

Vous êtes maintenant connecté à votre connecteur.You are now connected to your connector.

Essayez d’exécuter la commande top.Try running the top command. Vous devez être en mesure de voir les processus de votre application dans la liste des processus.You should be able to see your app's process in the process list. Dans l’exemple ci-dessous, il s’agit de celui avec PID 263.In the example output below, it's the one with PID 263.

Mem: 1578756K used, 127032K free, 8744K shrd, 201592K buff, 341348K cached
CPU:   3% usr   3% sys   0% nic  92% idle   0% io   0% irq   0% sirq
Load average: 0.07 0.04 0.08 4/765 45738
  PID  PPID USER     STAT   VSZ %VSZ CPU %CPU COMMAND
    1     0 root     S     1528   0%   0   0% /sbin/init
  235     1 root     S     632m  38%   0   0% PM2 v2.10.3: God Daemon (/root/.pm2)
  263   235 root     S     630m  38%   0   0% node /home/site/wwwroot/app.js
  482   291 root     S     7368   0%   0   0% sshd: root@pts/0
45513   291 root     S     7356   0%   0   0% sshd: root@pts/1
  291     1 root     S     7324   0%   0   0% /usr/sbin/sshd
  490   482 root     S     1540   0%   0   0% -ash
45539 45513 root     S     1540   0%   0   0% -ash
45678 45539 root     R     1536   0%   0   0% top
45733     1 root     Z        0   0%   0   0% [init]
45734     1 root     Z        0   0%   0   0% [init]
45735     1 root     Z        0   0%   0   0% [init]
45736     1 root     Z        0   0%   0   0% [init]
45737     1 root     Z        0   0%   0   0% [init]
45738     1 root     Z        0   0%   0   0% [init]

Étapes suivantesNext steps

Vous pouvez poser des questions et signaler vos préoccupations sur le forum Azure.You can post questions and concerns on the Azure forum.

Pour plus d’informations sur Web App pour conteneurs, consultez :For more information on Web App for Containers, see: