Tôi đang cố gắng đưa lệnh ssh multi-hop của mình vào tập tin ssh .ssh / config.
Đây là biểu đồ kết nối của tôi: máy tính xách tay (tôi ở đây) ------> userver -------> máy trạm
Tôi đã đặt các khóa rsa công khai ssh vào 'userver' và 'workstation'. Tại thời điểm này tôi có thể kết nối bằng cách gõ dòng này:
ssh -A -t userserver@userver ssh -A userworkstation@workstation
Tuy nhiên, tôi muốn có thể sử dụng các khả năng của tệp cấu hình trong ~ / .ssh / config để đạt được hiệu quả tương tự nhưng sử dụng một lệnh đơn giản, cũng cho phép tôi sao chép nhanh với 'scp'. Vấn đề duy nhất là 'userver' không có lệnh "nc" và tôi không có siêu người dùng ở đó, chỉ kiểm soát thư mục nhà của tôi. Tuy nhiên, tôi đã thử một số thứ:
Tôi đã có tệp cấu hình này trong máy tính xách tay của mình (~ / .ssh / config):
# laptop config file
Host userver
Hostname userver_hostname
port 22
User server_user
Ngoài ra một tệp cấu hình khác trong userver (~ / .ssh / config)
# userver config file
Host workstation
Hostname workstation_hostname
port 22
user workstation_username
Với tập tin cấu hình này, tôi có thể kết nối như
ssh -A -t userver ssh -A workstation
đó là một cải tiến, nhưng không đủ Tôi đã thử thêm một máy chủ khác trong cấu hình máy tính xách tay của mình, như thế này:
Host hop
ProxyCommand ssh -A -t userver ssh -A workstation
Sau đó, khi tôi làm
ssh hop
tôi nhận được kết quả đầu ra sau có lỗi và không thể kết nối:
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
Có ý kiến gì không?