답변:
매우 간단합니다. 먼저 Mac에서 원격 로그인 서비스를 활성화해야합니다 ( 시스템 환경 설정 -> 공유 -> 원격 로그인 ). ssh 서버가 시작됩니다.
그런 다음 OS X 터미널에서 다음 명령을 실행하십시오.
ssh -L 200.234.XXX.XXX:10000:10.211.55.5:80 -N 127.0.0.1
ssh 로그인을 위해 서버 비밀번호를 입력하고 로컬 비밀번호를 입력해야 할 수도 있습니다. (또한 암호를 묻지 않도록 로컬 ssh 공개 / 개인 키에 로컬을 설정할 수 있습니다. 독자에게 연습으로 남겨 두십시오.)
형식은 다음과 같습니다.
ssh -L local_addr:local_port:remote_addr:remote_port -N 127.0.0.1
다목적 도구 ncat을 사용하여 매우 간단합니다.
sudo ncat --sh-exec "ncat 10.211.55.5 80" -l 1000 --keep-open
공식 웹 사이트 ( http://nmap.org/download.html#macosx) 에서 Mac OS X 용 ncat / nmap 바이너리를 가져옵니다.
편집 : 제한된 포트 <1024에서 청취하기 위해 sudo 추가
Mac OS X 10.5.8 시스템에서 어떻게해야하는지 알려줄 수 있습니다.
NAT에 대한 답변을 시작했지만 실제로 TCP 전달 프로그램을 원한다고 생각합니다 ( '프록시'와 포트 전달을 언급합니다).
내가 좋아하는 짧고 달콤한 방법은 Perl 스크립트 tcpforward 이지만, 필요에 따라 'SSH'조차도 실행할 수있는 몇 가지 방법이 있습니다 .
HTTP 조작이 필요한 경우 (후행 '/'없이 URL에 대한 요청이 올 때 액세스 할 수없는 실제 서버로 리디렉션되지 않도록 HTTP 리디렉션을 조정해야 할 수도 있음) Apache는 다음을 수행 할 수 있습니다. 리버스 프록시 작업. mod_proxy , 특히 ProxyPass 및 ProxyPassReverse 를보고 싶을 것 입니다. 마십시오 하지 앞으로 프록시에 있다고, ProxyRequests 수 있습니다. Mac OS 자체 Apache를 사용하여 실행할 수 있어야합니다 (실행중인 경우). mod_proxy와 함께 제공되며 /etc/httpd/httpd.conf는 업데이트 할 구성 파일입니다.
Apache를 사용하더라도 실제 서버 컨텐츠의 모든 링크가 상대 서버인지 확인해야합니다. 실제 서버를 참조하는 경우 mod_proxy_html 모듈을 사용해 볼 수 있습니다 (어떻게 작동하는지 경험이 없습니다).
기기가 인터넷에 직접 연결되어 있습니까 (IE-라우터 없음)? 일반적으로 라우터에서 포트 전달을 수행하지만 모뎀을 사용하여 직접 연결하는 경우 iptables가 가장 좋습니다.
iptables
질문에 대한 답변을 정확히 사용하는 방법을 자세히 설명하면 유용 할 수 있습니다.
여기 좋은 기사가 있습니다 : http://www.cyberhq.nl/article/384/port-forwarding-in-macos-x
그러나 80으로 전달하기 때문에 웹 서버로 이동하기를 원한다고 가정하므로 웹 서버 구성을 변경하여 리버스 프록시 또는 이와 유사한 것을 설정합니다.