iptables방화벽과 머스커레이딩에대한 질문입니다

yanione의 이미지

일단 스크립을 붙이겠습니다

#!/bin/sh
IT="/sbin/iptables"

OUTNET="219.x.x.158/24" (사정상이렇게씁니다)
OUTBCAST="219.x.x.159"
OUTDEV="eth1"

ANYADDR="0/0"

TCPIN="smtp,http"
TCPOUT="smtp,http,ftp,ftp-data,irc,pop3"

UDPIN="domain,pop3"
UDPOUT="domain"

ICMPIN="0,3,11"
ICMPOUT="8,3,11"

start()

{

#로깅 : 방화벽에서 차단된 데이터그램의 로깅을 사용하려면 다음의 행의
# 주석처리를 삭제하면된다.
# LOGGING=1
$IT -F FORWARD
#$IT -P FORWARD DROP (#막았습니다)

#스머프 형식의 공격에 대비하기위해 브로드캐스트 주소로 ICMP를 보내게
#허용하지않는다..

#$IT -A FORWARD -m icmp -p icmp -i $OUTDEV -j DROP
$IT -A FORWARD -f -j ACCEPT

$IT -A FORWARD -m multiport -p tcp -d $OUTNET --dports $TCPIN --tcp-flags SYN,ACK ACK -j ACCEPT
$IT -A FORWARD -m multiport -p tcp -s $OUTNET --sports $TCPOUT --tcp-flags SYN,ACK ACK -j ACCEPT

$IT -A FORWARD -m multiport -p tcp -i $OUTDEV -d $OUTNET --dports $TCPIN --syn -j ACCEPT

$IT -A FORWARD -m multiport -p tcp -i $OUTDEV -d $ANYADDR --dports $TCPOUT --syn -j ACCEPT
$IT -A FORWARD -m multiport -p udp -i $OUTDEV -d $OUTNET --dports $UDPIN -j ACCEPT
$IT -A FORWARD -m multiport -p udp -i $OUTDEV -d $ANYADDR --dports $UDPOUT -j ACCEPT
$IT -A FORWARD -m icmp -p icmp -i $OUTDEV -d $OUTNET -j ACCEPT
$IT -A FORWARD -m icmp -p icmp -i $OUTDEV -d $ANYADDR -j ACCEPT
$IT -t nat -P POSTROUTING DROP
$IT -t nat -A POSTROUTING -o eth1 -j MASQUERADE

}

stop()

{
$IT -F
$IT -X
}

restart()

{

stop

start
}

case $1 in

start)

start

;;

stop)

stop

;;

restart)

restart

;;

*)

echo $"##Usage:$0 {start|stop|restart}##"

;;

esac

exit $?

이제 마지막으로 스크립은 실행이 잘됩니다 문제는
먼저 이더넷의 설정입니다

eth0 10.10.10.254 netmask 255.255.255.0
eth1 219.x.x.158 netmask 255.255.255.224
dns 168.126.63.1

route -N

tination Gateway Genmask Flags Metric Ref Use Iface
219.251.138.128 0.0.0.0 255.255.255.224 U 0 0 0 eth1
10.10.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 219.251.138.129 0.0.0.0 UG 0 0 0 eth1

0.0.0.0 219.x.x.129 default router 라우팅설정은 219.x.x129로
모든ip가 가게만들어놨습니다

그럼 일단 방화벽내의설명입니다. echo "1" > ip_forward 로 forwarding
(좀 줄이겠습니다) 하게만들었습니다
방화벽에서 내부로의 ping은 ?
ping 10.10.10.107
sendmsg permission이라고 나오면서 안됩니다(방화벽내에서입니다)
뭐가잘못된건지 모르겠습니다 커널에대한 설정이라도 해야하는건가요..??

방화벽에서 외부로의 ping은 ?
219.x.x.129 라우터로는 ping 잘 나갑니다

클라이언트에서 ping은 ?
외부로의 10.10.10.x ->219.x.x.129 라우터로의 ping 잘나갑니다 nat가 돼는걸 확인할수있었습니다

내부로의 ping은..?
10.10.10.x -> 10.10.10.x 잘나갑니다

지금안돼는것은 일단 mailserver와 oracle서버는 219.x.x.161/27의 같은 공인ip를 쓰고있습니다

보기쉽게 구성도를 보여드리겠습니다

-----------------------------
외부 네트워크 0/0
-----------------------------
|
------
디폴트 라우터: 219.x.x.129
------
|
|
| eth1: 219.x.x.158
----------------
NAT 게이트웨이 (Linux 머신) ------------- oracleDB : 219.x.x.162
----------------
| mailserver/webserver
| eth0: 10.10.10.254 eth0 10.10.10.161
| eth1 219.x.x.161
------------------------------
내부 네트워크: 10.10.10.0/24

이런구성도입니다
지금 안되는것은 앞에 말씀드린 방화벽내에서의 10.10.10.0/24으로의 network
ping 이 안되는것이고 그리고 클라이언트(10.10.10.107)에서 mail과 oracleDB로의 접속이 불가능합니다
nat는 가능합니다 지금 인터넷과 msn을 잘 쓰고있지만 mail과 oracleDB와의 접속이 안됩니다
방화벽에설정은 eth카드 2개를 가지고 쓰고있습니다
한개는 10.10.10.0/24의 내부네트웍과의 network을 위해서이고 하나는
외부 219.x.x.129와의 연결을 위한 eth1입니다
oracleDB와 wab서버로의 ping 이 안가는게 저의 구성도가 잘못되었는지 알고싶습니다

만약아니라면 어떤식으로 구성을 해야하는지 알고싶습니다.

그리고 hub에는 oracledb와 web서버 그리고 10.10.10.254를준 eth0랜카드에 케이블과 같이쓰고있습니다.

안녕하세요....
많은것을 배우고 나가겠습니다

yanione님이 2004년2월9일 22:14에 수정함, 총 2 번 수정됨

댓글 달기

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