이 기술은 ssh 의 기본적인 특징중 하나이다 : port forwarding
당신은 ssh 클라이언트를 필요로 하는데 다음에서 구할수 있다.
http://www.ssh.fi/ 와 미러들. RPM은 다음에서. ftp://ftp.replay.com/pub/crypto/ 그리고 데비안 패키지는 이곳에. ftp://non-us.debian.org/debian-non-US/ (그리고 각각의 미러들에서).
포트 포워딩은 다음과 같이 한다:
ssh -C -f popserver -L 11110:popserver:110 sleep 5
이 명령에 대해 자세히 살펴 보자
sshssh 클라이언트 실행 파일 그 자체 (모든 것을 가능케 해주는 마술 프로그램 :-)).
-C이 것은 데이터 스트림의 압축을 가능하게 한다, 이것은 옵션이지만, 특히 전화 모뎀 사용자들에게는 유용하다.
-fssh 가 인증에 성공하고 포트 포워딩에 성공하고 나면, 다음 프로그램을 실행할수 있도록 백그라운드로 포크된다. 우리는 단지 ssh의 포트 포워딩 기능만을 사용할 것이므로 tty 는 필요없다.
popserver우리가 접속할 POP 서버.
-L 11110:popserver:110POP 서버 포트 110을 로컬 포트 11110으로 포워드 한다. 누구나 사용할수 있는 높은 숫자의 로컬 포트를 사용한다.
sleep 5ssh 가 백그라운드로 포크된후, 이 명령을 실행한다. 이것은 당신의 메일 클라이언트가 로컬 포트에 접속할때 까지 접속을 유지하게 된다. 5초는 일반적으로 충분한 시간이다. (역자주: 당신의 시스템이 충분히 빠른 시스템이라면, 이 명령이 필요하지 않거나, 숫자를 줄일수 있다. 실험해 볼것)
이외에도 당신은 다른 ssh 의 적당한 옵션들을 사용할수 있다.
물론 이것은 POP 서버에서 sshd 도 지원해야 한다. 그러나 반듯이 쉘 계정을 가지고 있어야 하는 것은 아니다. 우리가 필요한 시간은 서버가 "텔넷 접속을 허용하지 않습니다"라고 표시하는 동안에도 충분히 확보할수 있다.
포트 포워딩을 위한 자세한 명령을 알아 보았다면 이제 실제로 테스트 해보자:
$ ssh -C -f msingh@popserver -L 11110:popserver:110 sleep 1000
popserver 는 POP 서버이다. 나의 로컬머신의 사용자 이름이 manish 이므로,
msingh 라고 POP 사용자를 명시해 주었다. (만약 로컬과 원격 사용자 이름이
동일하다면 필요하지 않다.)
잠시후 다음과 같이 암호를 물어 올것이다:
msingh@popserver's password:
내 POP 암호를 입력 (만약 당신의 쉘 계정을 가지고 있고, 그 암호가 POP 암호와 다르다면 쉘계정의 암호를 입력해야 한다). 끝 ! 이제 다음과 같이 로컬 포트로 포워딩된 POP 서버로 접속을 해볼수 있다.
$ telnet localhost 11110
다음과 비슷한 결과를 보여야 한다:
QUALCOMM POP v3.33 ready.
꺄오! 되는데! 이제 데이터는 암호화되는 네트워크 상에 있게 된다. 유일하게 암호화 되지 않은 텍스트는 로컬 루프백 인터페이스 내 에서만 사용된다.