Was sind SSH_TTY und SSH_CONNECTION?

11

Wofür sind die SSH_TTYund SSH_CONNECTIONVariablen? Auf meinem Ubuntu-System sind beide leer. Welche Werte sollten sie haben?

user3021707
quelle

Antworten:

13

Von der sshManpage:

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.

Da Sie sich nicht in einer SSH-Sitzung befinden, werden diese Variablen nicht festgelegt.

cuonglm
quelle
Ich verstehe es jetzt. Was bedeuten also auch die Variablen SHELL und HOSTNAME?
user3021707
2
Sie können man bashdie Bedeutung dieser Variablen eingeben und suchen. Sie sind immer festgelegt, unabhängig davon, ob Sie sich in einer SSH-Sitzung befinden oder nicht.
Cuonglm
2

Beide Variablen werden nur definiert, wenn Sie angemeldet sind ssh. SSH_TTYGibt den Geräteknoten des aktuellen virtuellen Terminals an (z /dev/pts/25. B. ). Das SSH_CONNECTIONist auf IP und Port auf dem Client und auf dem Host-Computer eingestellt (4 durch Leerzeichen getrennte Felder).

Orion
quelle
1

Wie von anderen erwähnt, werden diese Variablen nur festgelegt, wenn eine Sitzung durchgeführt wird. Überprüfen Sie die Werte in einer aktiven SSH-Sitzung, um sich selbst davon zu überzeugen:

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

quelle
1

Nach einer erfolgreichen Verbindung legt OpenSSH mehrere Umgebungsvariablen fest.

SSH_CONNECTION Zeigt die Adresse des Clients, den ausgehenden Port auf dem Client, die Adresse des Servers und den eingehenden Port auf dem Server an.

SSH_TTY Benennt das Pseudo-Endgerät mit der Abkürzung Ppty auf dem von der Verbindung verwendeten Server.

Beispielsweise:

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