Я намагаюся помістити свою команду multi-hop ssh у файл ssh .ssh / config.
Це мій графік підключення: ноутбук (я тут) ------> userver -------> робоча станція
Я поставив ssh-загальнодоступні ключі rsa у "userver" та "workstation". На даний момент я можу підключитися, ввівши цей рядок:
ssh -A -t userserver@userver ssh -A userworkstation@workstation
Однак я хотів би мати можливість використовувати конфігураційний файл у ~ / .ssh / config, щоб досягти того самого ефекту, але за допомогою однієї простої команди, яка також дозволила б мені зробити швидку копію "scp". Єдина проблема полягає в тому, що у "userver" немає команди "nc", і у мене немає суперпользователя, просто управління моєю домашньою папкою. Тим не менш, я спробував деякі речі:
У мене цей конфігураційний файл у моєму ноутбуці (~ / .ssh / config):
# laptop config file
Host userver
Hostname userver_hostname
port 22
User server_user
Також інший конфігураційний файл у користувальницькому (~ / .ssh / config)
# userver config file
Host workstation
Hostname workstation_hostname
port 22
user workstation_username
З цим файлом конфігурації я можу підключитися як
ssh -A -t userver ssh -A workstation
що є вдосконаленням, але недостатньо. Я спробував додати ще один хост у конфігурацію своїх ноутбуків, наприклад:
Host hop
ProxyCommand ssh -A -t userver ssh -A workstation
Потім, коли я це роблю
ssh hop
я отримую наступний вихід з помилками і не можу підключитися:
Pseudo-terminal will not be allocated because stdin is not a terminal.
Pseudo-terminal will not be allocated because stdin is not a terminal.
-bash: line 1: $'SSH-2.0-OpenSSH_6.4\r': command not found
Будь-які ідеї?