ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Network] Proxy 활용 - SSH 터널링
    Study/Network 2023. 1. 8. 22:12

    SSH Proxy

    보통은 원격에서 커맨드 라인으로 접속하기 위해서 사용하지만, SSH를 활용하여 Proxy와 유사한 기능을 수행 할 수 있음

    SSH Tunneling 혹은 SSH Port Forwarding이라고도 부름


    SSH 서버 설정

    기본적으로 Openssh 서버를 설치만 하면 됨

    sudo apt-get install openssh-server

    만약 포트포워딩이 안될 경우, sshd_config파일에서 옵션 확인

    cat /etc/ssh/sshd_config
    ...
    AllowTcpForwarding no -> yes
    X11Forwarding no -> yes
    ...

    SSH Tunneling 종류

    1. Local SSH Tunneling : SSH 클라이언트의 요청이 SSH 서버를 통해 대상 서버로 전달

    2. Remote SSH Tunneling : SSH 서버의 요청이 SSH 클라이언트를 통해 대상 서버로 전달

    3. Dynamic SSH Tunneling : Socks 프로토콜을 이용하여 다양한 프로그램의 요청이 SSH 클라이언트 -> SSH 서버 를 통해, 대상 서버로 전달

     

    1. Local SSH Tunneling

    로컬컴퓨터에서 SSH 서버를 통해 목적지(Target)서버로 요청을 보낼 수 있음

    사용자목적지(Target)서버로 바로 접속할 수 없을때 사용함

     

        예제 시나리오

      1. 사용자는 내부망에 존재하며, 외부에 있는 목적지 서버(targetserver.com)로 접속이 차단되어 있음

      2. 사용자는 외부에 있는 SSH 서버에 연결할 수 있음

      3. SSH 서버목적지 서버로 연결할 수 있음

      4. 사용자는 SSH Local Tunneling을 통해, 내 로컬 포트와 목적지서버의 포트를 연결함

     

    SSH Client Command

    ssh -L 10022:targetserver.com:22 eunbig48@sshserver.org
    ssh -L 10080:targetserver.com:80 eunbig48@sshserver.org

      결과

      1. 목적지 서버에 SSH 연결

      2. 목적지 서버에 웹서비스 접속

     

     

    2. Remote SSH Tunneling

    내부망 컴퓨터에서 SSH 서버와 자신을 통해 목적지(Target)서버로 요청을 보낼 수 있음

     

     

    'Study > Network' 카테고리의 다른 글

    [Network] Proxy  (0) 2023.01.08
Designed by Tistory.