iptables 들어오는 아이피를 변환하지 않고 그대로 보이게 하려면.

용수철의 이미지

작은 프로젝트를 하구 있구요..
현재 클라이언트 -> 필터링서버 -> 게시판서버 이렇게 구성되어 있습니다.

필터링서버는 단순 욕설걸러네는 건데요.

클라이언트가 게시판서버에 글을 쓰면 ... 필터링서버를 타고 게시판 서버로 가는데요.

문제는 게시판등록글 정보를 보면 클라이언트의 실제주소가 게시판서버에 등록이 되는게 아니라
필터링서버의 주소가 기록이 됩니다.

iptables 를 사용해서 클라이언트의 아이피가 찍히게 하는 방법 없을 까요.

나중에 ip추적을 할수 없는 문제점이 있어서요..
글을 등록하면 죄다 필터링서버ip가 찍힙니다.

정리하자면 필터링은 되고 글을 등록하면 클라이언트의 실제 주소가 찍혔으면 하네요.

도와주세요.,

wariua의 이미지

'필터링서버'의 정체가 궁금합니다만, 말씀하신 내용으로 봐서는 일종의 HTTP 프록시가 아닌가 싶습니다. 그렇게 가정하고서 얘기를 진행해 보자면...

크게 두 가지 해결 방법이 있습니다. 필터링서버에서 게시판서버로 가는 패킷의 출발지 IP 주소 자체를 클라이언트의 것으로 바꿔주는 방법이 하나이고, 좀 더 상위 계층에서 클라이언트의 IP 주소 정보를 전달해 주는 방식이 다른 하나입니다.

"transparent proxy" 정도로 검색을 하다 보면 http://freshmeat.net/projects/tproxy-linux/ 프로젝트를 만나실 수 있습니다. 출발지 IP 주소 자체를 클라이언트의 것으로 바꿔주는 방식입니다. 필터링서버에서의 커널 재컴파일이 필요하고, 프록시 프로그램의 수정이 필요하며, 필터링서버가 클라이언트와 게시판서버 사이의 길목에 위치해야 한다는 정도의 제약이 있습니다.

한편으로 상당수의 프록시 서버는 X-Forwarded-For 같은 HTTP 헤더를 통해 클라이언트의 IP 주소 정보를 전달해 주기도 합니다. 그런 경우라면 게시판서버의 응용 프로그램에서 그 주소를 추출해서 사용할 수도 있을 겁니다. (어떻게 추출해야 하는지, 혹은 과연 추출이 가능하긴 한 건지... 는 잘 모르겠습니다;; ) 혹은 로그인을 하거나 글을 쓰는 HTTP 요청을 전달할 때 CGI 인자에 클라이언트의 IP 주소를 추가해서 전달하도록 필터링서버를 살짝 수정하는 방법도 가능할 테구요. (귀찮겠군요...)

IP 추적이 유일한 목표하고 하면 차라리 필터링서버에서 HTTP 요청을 로그로 남기는 방법도 생각해 볼 수 있겠네요.

어찌되었건 필터링서버가 HTTP 프록시 방식으로 동작하는 거라면 아주 간편하게 문제를 해결할 수 있는 방법을 찾기는 쉽지 않을 듯 합니다.
----
$PWD `date`

$PWD `date`

용수철의 이미지

프록시서버는 아니구요

아파치+톰캣+ssl 연동했습니다.

댓글 달기

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