2009년 11월 6일

ssh 터널링을 이용하여 외부서버에서 내부서버로 파일 복사하기(자동 백업하기)


목적: 외부 파일을 회사내의 윈도우 PC에 정기적으로 백업하기

먼저, 다른 필요에 의해 윈도우XP안에 guest OS로 우분투를 설치했다.
vmware player를 이용하면 어렵지 않게 윈도우안에 우분투를 설치할 수 있다.
그런 다음에 윈도우 안에 백업디렉토리르 생성하고 우분투에서 접근할 수 있게 마운트 해둔다.
그러기 위해서는 윈도우XP안에 공유폴더를 생성하고 (여기서는 share 라는 이름을 사용) smbfs를 이용하여 마운트를 수행한다.
) $ mount -t smbfs -o user=win_user_name -o rw //192.168.88.2/share /mnt/win_share
윈도우 공유폴더 시에 접근권한 준 사용자의 패스워드를 입력하면 아래와 같이 마운트에 성공한다.
위와 같이 192.168.88.2는 우분투에서 보면 자신의 Parent OS이다. 우분투에서만 접근 가능한 내부 IP이다.
(실제 윈도우 IP는 따로 있음)

$df h
(중략)
//192.168.88.2/share  181G  106G   76G  59% /mnt/win_share

시스템 구성은 아래와 같다.

윈도우(guest OS: 우분투) --- 외부서버 (우분투 터미널에서 외부서버에 ssh 터널링으로 접속한다.)
다음의 명령어를 사용한다.
$ ssh 외부서버IP -R 3336/localhost/22

이렇게해서 외부서버에 로그인하게 되면 외부서버에서 localhost 접근으로 3336 포트로 ssh 로그인을 하면 내부의 우분투로 접근할 수 있다.

, 외부서버에서 ssh p 3336 localhost 라고 입력하면 우분투 로그인 화면을 만날 것이다.

성공이 되면 서로간의 key 교환을 통해 패스워드 없이 로그인 되도록 설정하자. (~/.ssh/authorized_keys 파일을 이용하면 됨)

여기까지 성공하면 이제 외부서버에 다음과 같은 명령으로 윈도우의 share 폴더에 파일을 복사할 수 있다.

$ scp P 3336 myTestFile1 localhost:/mnt/win_share/

본인은 이러한 방법으로 외부서버에 생성한 ebs mp3 파일을 회사의 PC로 매일 백업 받고 있다.




댓글 없음:

댓글 쓰기