bash 스크립트를 사용하여 SSH 클라이언트에 명령을 보내시겠습니까?

bash 스크립트를 사용하여 SSH 클라이언트에 명령을 보내시겠습니까?

안녕하세요 여러분,

<enter>~C나는 최근 다음과 같은 이스케이프 시퀀스를 사용하여 원격 SSH 연결에서 로컬 워크스테이션으로 명령을 다시 보낼 수 있다는 사실을 알게 되었습니다 .

[root@host ~]# 
[root@host ~]# 
ssh> !ip ad

이제 bash 스크립트를 사용하여 로컬 워크스테이션에서 명령을 자동으로 실행하거나 다른 작업을 수행할 수 있기를 원하지만 프로그래밍 방식으로 이 셸에 명령을 다시 보내는 방법을 찾을 수 없었고 누구도 찾을 수 없었습니다. 다른 사람이 질문/시도했습니다. 분명히 말하면 SSH를 통해 원격 서버로 명령을 보내려는 것이 아닙니다. 위 그림과 같이 클라이언트를 통해 SSH 연결에서 내 워크스테이션으로 명령을 다시 보내려고 합니다.

누군가 제안 사항이 있거나 이를 수행하는 방법을 알고 있다면 귀하의 도움에 크게 감사하겠습니다. 감사해요!

답변1

이스케이프 문자가 원격 시스템의 Bash에 도착하지 않기 때문에 이것이 불가능하다고 생각합니다. 원격 bash가 이를 설정할 수 있기 전에 로컬 SSH 클라이언트에 의해 가로채어집니다.

귀하가 요청한 것이 아니며 귀하의 상황에 따라 실행 가능하지 않을 수도 있지만 대체 솔루션을 사용하면 귀하의 목표를 달성할 수 있다는 것을 알고 있습니다.

원격 시스템에서 SSH로 다시 연결하여 로컬 시스템에서 명령을 실행합니다.

[root@remote-host ~]# ssh your-local-machine ip ad

답변2

이는 보안상의 문제이므로 SSH 연결 내에서 멀리 떨어진 호스트에서 로컬 명령을 실행할 수 없습니다.

명령을 전달하기 위해 연결을 탈출하는 방법은 터미널을 통하는 것입니다. 로컬 서버에서.

따라서 SSH 연결을 통해 연결과 스크립트를 모두 실행하려는 경우 예상대로 살펴볼 수 있지만 원격 셸에서 직접 연결하는 것이 아니라 SSH 연결을 다른 애플리케이션에 포함하거나 래핑하는 방식으로 수행됩니다.

관련 정보