본문 바로가기

컴퓨터

[Linux] ssh dynamic port forwarding (proxy server)

SSH dynamic port forwarding이란 ssh jump server와 비슷한데 지정한 포트 이외의 다른 포트로의 요청도 모두 포워딩하는 것이다. 일종의 프록시서버이다. 

 

아래와 같이 설정 가능하다. (이때 ssh 서버에서 AllowTcpForwarding이 yes로 되어있어야 할 수도 있음.)

ssh -D 1080 -C -N -f [ssh_hostname]

Dynamic port forwarding이 지나갈 포트번호는 1080이다(마음대로 설정해도 됨).

옵션은,

-D: dynamic port forwarding을 하겠다

-C: 모든 데이터를 압축해라

-N: remote command를 실행하지 마라

-f: 백그라운드로 실행하라

이다.

컴퓨터 설정(KDE Plasma)에서 프록시설정을 켠 뒤 아래와 같이 설정한다. Use manually specificed proxy configuration을 선택한다. 그리고 SOCKS Proxy칸에 127.0.0.1과 1080포트를 설정한다.

 

파이어폭스는 애플리케이션 내부에서 추가로 설정을 해줘야한다.

 

~/.ssh/config로 설정하려면 아래와 같이 하면 된다.

Host RPIO
  HostName [IP address]
  User user1
  IdentityFile ~/Keys/KEY
  Port 22
  DynamicForward 1080