Я підключаюсь до ряду машин постійно, з різних фізичних місць (і, отже, різних фізичних машин). Більшість це робиться за допомогою ssh, іноді потрібна машина шлюзу або два (що я викликаю через ProxyCommand
в ~/.ssh/config
). Мені хотілося б знати, чи існує метод ідентифікації IP-адреси або імені хоста машини, яка викликає початкове з'єднання (тобто машини, над якою я працюю) на віддаленому кінці?
- Я не хочу надсилати змінні середовища, оскільки деякі машини, у яких я не маю встановити root
PermitUserEnvironment
. $SSH_CLIENT
Змінна середовища використовується для прямих з'єднань, але тільки перераховані найостанніші ворота.
Моя поточна ідея рішення полягає в тому, щоб схопити $SSH_CLIENT
, сш на нього, знайти значення цієї машини $SSH_CLIENT
і повторити, поки воно не існує; потім схопіть ім’я хоста і якось відтягніть його назад.
Схоже, трохи зламати роботу; хтось має кращий метод?
Я працюю в основному в bash shell, але також радий будь-яким пропозиціям, які також не використовують його.