Що таке SSH_TTY та SSH_CONNECTION?


12

Для чого потрібні SSH_TTYта SSH_CONNECTIONзмінні? У моїй системі Ubuntu обидва вони порожні; які значення вони повинні мати?

Відповіді:


13

З 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.

Оскільки ви не перебуваєте в сеансі ssh, ці змінні не встановлені.


Я розумію це зараз, тож у чому сенс змінних SHELL та HOSTNAME?
користувач3021707

2
Ви можете вводити man bashта шукати значення цих змінних. Вони завжди встановлені, незалежно від того, перебуваєте ви в сеансі ssh чи ні.
cuonglm

2

Обидві змінні визначаються лише тоді, коли ви ввійшли через систему ssh. SSH_TTYвказує вузол пристрою поточного віртуального терміналу (наприклад /dev/pts/25). На SSH_CONNECTIONклієнті та на хост-машині встановлено ip та порт (4 поля, розділені пробілом).


1

Як зазначають інші, ці змінні встановлюються лише під час сеансу. Щоб переконатися в цьому, перевірте значення під час активного сеансу SSH:

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

1

Після успішного з'єднання OpenSSH встановлює кілька змінних середовища.

SSH_CONNECTION показує адресу клієнта, вихідний порт клієнта, адресу сервера та вхідний порт на сервері.

SSH_TTY називає псевдотермінальний пристрій, скорочено Ppty, на сервері, на якому використовується з'єднання.

Наприклад:

SSH_CONNECTION='192.168.223.17 36673 192.168.223.229 22'
SSH_TTY=/dev/pts/6
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.