SSH 터널 인증 프록시만

SSH 터널 인증 프록시만

원격 호스트의 자격 증명을 모르더라도 프록시를 통해 SSH 요청을 프록시할 수 있는 사용 사례가 있습니다.

client -> proxy -> remote

클라이언트가 원격에 매핑된 특정 포트의 프록시에 연결할 수 있는 SSH 터널을 설정하려고 합니다. 리모컨으로 인증을 하고 싶지 않고, 리모컨으로 인증을 처리하길 원합니다.

작업 과정

  1. 에이전트는 SSH 터널을 생성합니다.proxy:9000 -> remote:22
  2. 클라이언트 연결:curl proxy_user@proxy -p 9000
  3. 프록시 계정 자격 증명을 사용하여 인증을 완료하지만 원격에 연결

어떤 배경 지식을 바탕으로 클라이언트가 원격 자격 증명 정보를 모르고 비밀 키를 사용하지 않고 클라이언트에서 원격으로 액세스하고 싶습니다.

아이디어? 어쩌면 이 문제를 해결하는 다른 방법이 있을까요?

혼란이 있었다면 죄송합니다. 명확히 하기 위해 다음과 같이 하고 싶었습니다.

[에이전트] ssh -L 에이전트:9000:localhost:22 원격 user@remote

[클라이언트] ssh -p 9000 Proxy_user@proxy

클라이언트가 원격 자격 증명을 알지 못하길 원합니다.

답변1

설명하려는 내용은 매우 혼란스럽습니다. 그러나 일반적으로 다음과 같이 작동합니다.

  1. 프록시는 SSH 터널인 프록시:9000 -> 원격:22를 생성합니다.

    [proxy]$ ssh -g -L proxy:9000:localhost:22 remote
    
  2. 클라이언트 연결: 컬 Proxy_user@proxy -p 9000

    클라이언트는 연결에 사용해야 합니다 ssh. 그렇지 않습니까?

    [client] ssh -p 9000 proxy
    

그러나 첫 번째 단계는 간단한 포트 전달을 사용하여 설정할 수 있습니다 iptables. 처음 연결할 때 통신은 암호화됩니다 ssh.

관련 정보