Я постоянно подключаюсь к нескольким машинам из разных физических мест (и, следовательно, из разных физических машин). Большая часть этого делается, хотя ssh, иногда требуется один или два шлюза (которые я вызываю через ProxyCommandin ~/.ssh/config). Я хотел бы знать, есть ли метод для определения IP или имени хоста машины, которая вызывает начальное соединение (т.е. машины, на которой я работаю) на удаленном конце?
- Я не хочу отправлять переменные окружения, так как на некоторых машинах мне не нужно устанавливать root
PermitUserEnvironment. $SSH_CLIENTПеременная среды используется для прямых соединений, но только перечислены самые последние ворота.
Моя текущая идея для решения заключается в том $SSH_CLIENT, чтобы получить ssh, найти значение этой машины $SSH_CLIENTи повторять до тех пор, пока она не существует; затем захватите имя хоста и вытяните его как-нибудь.
Похоже на хакерскую работу; у кого-нибудь есть лучший метод?
В основном я работаю в оболочке bash, но я также рад любым предложениям, которые тоже не используются.