사설 IP 환경내에 있는 PC에 FTP, VNC 서버를 돌리고 싶습니다.

hwayak의 이미지

사설 IP 환경내에 있는 PC에 FTP, VNC 서버를 돌리고 싶습니다.
(아이피가 192 로 시작하기 때문에 사설 IP 가 맞죠?)

그리고 제가 네트워크 관리자 권한이 없기 때문에 사용자 입장에서 할 수 있는 최대한의 방법을 찾고 있습니다.
(참고로 사설 IP 내의 PC는 MS 윈도우즈, 집 PC도 MS 윈도우즈를 사용중입니다.)

VNC 쪽은 SSH 포워딩 방법을 이용해 보았습니다.

외부에 고정 IP 를 가진 리눅스 서버를 1대 돌리고 있기 때문에 이곳을 경유지로 하여 SSH 리모트/로컬 포워딩을 둘다 응용해보았습니다. 즉, 사설 IP 내의 PC에서 고정 IP 리눅스 서버(24시간 동작합니다.)로 리모트 포워딩을 시키고, 다시 집의 PC에서 고정 IP 리눅스 서버로 부터 로컬 포워딩을 했죠. 그런데 사설 IP 내에 있는 PC에서 고정 IP 리눅스 서버로의 SSH 리모트 포워딩을 통해 열어놓은 터널이 자꾸 죽더군요. 그리고 분명이 터널은 살아 있는데, VNC 접속이 안되는 현상이 발생하구요. 또한 VNC 접속이 된 도중에 갑자기 그냥 VNC 접속이 끊어져 버리는 현상 등등..원인 모를 현상들이 나타나더군요.(사설 IP 네트웍 환경에 문제가 있는 것으로 추측하고 있지만..확실치 않습니다. 혹시 어떤 원인인지 아시는 분 계시나요?)

VNC 에 reverse 커넥션 기능이 있어서 사설 IP PC에서 집 PC로 접속이 가능한데, 이것은 항상 집 PC가 켜져 있어서 VNCVIEWER가 listen 상태일 때만 가능하더군요. 집 PC는 항상 켜둘 수가 없어서 말이죠.

그 다음 Zebedee 라는 프로그램을 이용해서 reverse 커넥션을 해보려고 했으나 이 역시 항상 집 PC가 켜져 있어야 하더군요.(생각해보니 reverse 커넥션은 접속을 시도할 당시에 클라이언트가 반드시 listen 이어야 하네요. ^^)

그래서 마지막으로 생각해본 것이 고정 IP 리눅스 서버에 적당히 Proxy 설정을 해서, 사설 IP PC 에서 Proxy 서버로 접속을 항상 시켜놓고, 집 PC에서 Proxy 서버로 접속을 하면 어떻게 되지 않을까..라고 생각하고 있는데 이게 가능한건지 불가능한건지 도저히 모르겠네요. proxy에 대한 개념도 없구요.

이상이 VNC 접속을 위해서 제가 시도 했던 모든 것들입니다.

다음은 FTP 를 돌리기 위해서 제가 시도했던 것들입니다.

우선 SSH 리모트/로컬 포워딩을 이용해 볼려고 했습니다. 근데 이게 잘 안되더군요. SSH 리모트/로컬 포워딩을 이용해서 FTP서버를 사설 IP 내에서 돌리는 방법을 체계적으로 적어놓은 문서도 없구요. 또 VNC에서 겪었던 리모트 터널이 자꾸 죽는 문제 때문에 이 방법은 지금 포기한 상태입니다.-_-

두번째로 Zebedee를 이용해서 reverse 커넥션을 이용해 볼까 했습니다만 이 역시 클라이언트(집 PC)가 켜져 있어야 하는 관계로 포기..

그래서 이것 역시 마지막으로 고정 IP 리눅스 서버에 proxy 설정을 어떻게 잘 하면 되지 않을까..라고 생각하고 있습니다만 방법을 몰라서 시도해보지 못하고 있습니다.

이곳 게시판을 검색해보니 몇몇 분들이 저와 같은 고충(?)을 겪으시는 분들이 많으신거 같은데, 다들 어떻게 해결하셨는지 몹시 궁금하네요.

아, 그리고 추가적으로 간단한 질문이 있는데요. 현재 외부에 있는 고정 IP 리눅스 서버에 FTP 서버가 돌아가고 있습니다. 이 FTP 서버는 Passive 모드를 disable 시켜놓고 있는 상태구요. 이 상태에서 사설 IP 환경내의 PC에서 위 리눅스 FTP 서버로 Active mode로 접속이 가능한가요? 제가 알기론 Active mode로 접속을 할땐 FTP 서버가 클라이언트 쪽으로 Data 포트를 여는것을 시도 하는 리퀘스트를 보내는 것으로 알고 있거등요. 그래서 클라이언트가 사설 IP 환경이라면 Active mode에선 FTP 연결이 안 이루어지는 것으로 알고 있습니다만...현재는 Active mode로 접속이 잘 이루어집니다. -_-
왜 이런거죠?

bugiii의 이미지

아는게 별로 없어서 맨 마지막 질문에 간단히 답변드리겠습니다.

아마도 그건 방화벽이 ftp 프로토콜의 경우 패킷의 내용을 검사해서 ( ftp 클라이언트가 ftp 서버에게 이 포트로 접속하라고 알리는 PORT,xx,xx,xx,xx 같은 명령) 임시로 그 해당 포트를 열어주기 때문으로 알고 있습니다.

다른 내용은 네트웍 고수분들이 설명해주시리라....

Necromancer의 이미지

Passive Mode의 경우 FTP 서버가 던저줄 Passive Port를
일정 범위로 지정해 주어야 합니다.
(proftpd에서는 PassivePorts 지시어가 있습니다)

그리고 이들 Passive Port 범위의 포트는
외부에서 접속이 가능해야 합니다. 즉 이들 포트에 대해서도
열어주거나 포트포워딩을 걸어주거나 해야 하는 거지요.

Active Mode일 경우는 클라이언트의 20번 포트가 외부에서
접속 가능해야 하는데 클라이언트가 사설이거나 하면
별로 방법 없죠.

Written By the Black Knight of Destruction

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.