[완료] 외부의 IP 로 포트포워딩을 하고 싶은데...

planetarium의 이미지

IP가 XXX.XXX.XXX.6 인 서버의 631번 포트에 접근하면
XXX.XXX.XXX.10 서버의 631번 포트로 연결되도록 하고 싶습니다.

그런데 10번 서버가 6번 서버를 거쳐서 외부에 연결되는 구조가 아니고
각자 독립적으로 연결되어 있는 형태라서... 인터넷에 포트포워딩에 대해 검색해봐도
이 경우에 포워딩을 어떻게 시켜주어야 할지 잘 모르겠네요.
iptables 문법은 정말... ㅜㅜ

딱히 다른 방법이 없으면 SSH 터널링을 사용하면 해결이 될것 같은데,
암호화가 필요한 것도 아니고... 좀 더 매끄러운 방법은 없는지 궁금합니다.

자일자일의 이미지

tcp iprelay를 추천합니다.

자세한 내용은 아래의 링크를 참고하세요.

http://kldp.org/node/103423
(tcp iprelay 스크립트/다즐링)

glay의 이미지

만약 그것이 tcp 라면 rinetd 가 최고의 답이 될수 있습니다.

경우에 따라선 squid 도 그런 기능을 하게 할수 있으나 ㅋㅋ 어디까지나 정말로 그것이 필요할 경우이고..

rinetd 가 답이라고 생각합니다.

--------------- 절취선 ------------------------
하늘은 스스로 삽질하는 자를 삽으로 팬다.

http://glay.pe.kr


--------------- 절취선 ------------------------
하늘은 스스로 삽질하는 자를 삽으로 팬다.

http://glay.pe.kr

planetarium의 이미지

두분 답변 감사드립니다.

한가지 추가 질문을 하자면, 혹시 FTP 서비스를 다른 서버로 넘겨줄 수는 없을까요?
rinetd 에 대해서는 "rinetd does not redirect FTP, because FTP requires more than one socket." 라는 문구가 있고,
자일자일 님이 알려주신 tcp iprelay 도 마찬가지로 안될것 같은데요.

Necromancer의 이미지

사용하는 ftp mode가 active / passive인지를 확실하게 결정해야 하고요.
포트를 최소 2개 이상 넘겨 줘야 가능합니다.

일단 ftp 명령이 날라가는 control port(소위 ftp 포트라고 부르는게 이겁니다. 21번이 기본)는 무조건 client -> server로 접속하므로 이에 맞춰서 해주시면 되고요.
ftp 데이터전송시 열리는 포트는 active나 passive냐에 따라 달라지는데.
active mode면 데이터 전송시 source port를 20번으로 해서 server가 client로 접속합니다 (server / port 20 -> client / random port)
passive mode면 active와 반대로 client가 server의 특정 포트로 접속합니다. (접속전 포트번호를 server에서 control port를 통해 알려줌)

active mode 쓰신다면 server의 source port가 20인 경우 client로 날라가도록 해주시기만 하면 되고요
passive mode라면 사용할 포트번호를 연속한 번호로 대여섯개 고른다음 이들 포트번호만 사용하도록 셋팅하신뒤 이들 포트번호 모두 다 날라가도록 해주셔야 합니다. 또 모든 ftp 서버가 이 기능 지원하는것이 아니구요, 만일 안하면 방법 전혀 없습니다.

덧붙여서 방화벽 내부의 서버로 FTP 접속허용하도록 방화벽 셋팅하는것도 까다롭습니다.

Written By the Black Knight of Destruction

Written By the Black Knight of Destruction

planetarium의 이미지

답변 감사드립니다! 당장이라도 해보고 싶은데 사정이 좀 있네요...
항상 행복하세요~

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.