Que sont SSH_TTY et SSH_CONNECTION?

A quoi servent les variables SSH_TTY et SSH_CONNECTION ? Sur mon système Ubuntu, les deux sont vides; quelles valeurs devraient-ils avoir?

De la page de manuel ssh :

 SSH_CONNECTION Identifies the client and server ends of the connection. The variable contains four space-separated values: client IP address, client port number, server IP address, and server port number. .... SSH_TTY This is set to the name of the tty (path to the device) associated with the current shell or command. If the current session has no tty, this variable is not set. 

Étant donné que vous n'êtes pas dans une session ssh, ces variables ne sont pas définies.

Les deux variables ne sont définies que lorsque vous êtes connecté via ssh . SSH_TTY spécifie le noeud de périphérique du terminal virtuel actuel (par exemple /dev/pts/25 ). Le SSH_CONNECTION est défini sur ip et port sur le client et sur la machine hôte (4 champs séparés par des espaces).

Comme mentionné par d'autres, ces variables ne sont définies que lors d'une session. Pour voir cela par vous-même, inspectez les valeurs sous une session SSH active:

 ssh user@host 'echo SSH_TTY: $SSH_TTY SSH_CONNECTION: $SSH_CONNECTION' 

Sur une connection réussie, OpenSSH définit plusieurs variables d'environnement.

SSH_CONNECTION affiche l'adresse du client, le port sortant sur le client, l'adresse du server et le port entrant sur le server.

SSH_TTY nomme le périphérique pseudo-terminal, abrégé Ppty, sur le server utilisé par la connection.

Par exemple:

 SSH_CONNECTION='192.168.223.17 36673 192.168.223.229 22' SSH_TTY=/dev/pts/6