공용 IP에서 로컬 IP로 SSH 트래픽 전달

공용 IP에서 로컬 IP로 SSH 트래픽 전달

WAN IP 주소에서 로컬 네트워크의 특정 호스트 IP 주소로 SSH 트래픽을 전달하는 방법을 찾아야 합니다. 설정은 다음과 같습니다:

WAN---------|방화벽|----SSH 시스템

외부 |

방화벽 외부의 네트워크 어댑터에서 SSH 시스템으로 SSH 연결을 전달하는 방법이 있습니까?

건배!

편집: 사용 중인 방화벽은 Iptables에서 제공하는 방화벽입니다. 또한 라우터 역할을 하도록 구성됩니다. 명령 프롬프트 SSH 기능을 사용하여 외부 Windows 컴퓨터에 대한 연결 설정

답변1

서문으로, 이와 관련된 모든 정보는 다음에서 제공됩니다.Daywalker에 대한 ServerFault 답변

제가 한 일은 귀하의 사용 사례에 따라 태그를 지정하는 것입니다. 그의 게시물에 대한 설명

첫 번째는 포트 1234로 들어오는 모든 TCP 연결이 내부 컴퓨터 192.168.57.25의 포트 80으로 전송되어야 함을 지정합니다. iptables는 들어오는 모든 연결을 거부하므로 이 규칙만으로는 작업을 수행할 수 없습니다. 그런 다음 eth3에서 포트 1234로 들어오는 연결을 수락합니다. 이 연결은 두 번째 규칙을 통해 공용 IP를 사용하여 인터넷에 연결됩니다. 패킷이 192.168.57.25의 포트 80으로 전달되도록 허용하기 위해 FORWARD 체인에 두 번째 규칙을 추가합니다.

가장 무도회 규칙에 대하여:

연결을 추적합니다. 그렇지 않으면 외부 호스트는 자신이 알지 못하는 내부 IP 192.168.57.25를 보게 됩니다.

   echo "1" > /proc/sys/net/ipv4/ip_forward
   iptables -A PREROUTING -t nat -i <WAN INT> -p tcp --dport <WAN PORT> -j DNAT --to-destination <SSH MACHINE IP>:22
   iptables -A FORWARD -p tcp -d <SSH MACHINE IP> --dport 22 -j ACCEPT
   iptables -A POSTROUTING -t nat -s <SSH MACHINE IP> -o <WAN INT> -j MASQUERADE

관련 정보