LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 917|回复: 4

换了防火墙脚本后,机器屏幕自动出现这样的东东!!!

[复制链接]
发表于 2004-2-14 14:07:00 | 显示全部楼层 |阅读模式
  1. UNDEFIND_INPUT: IN=ppp0 OUT= MAC= SRC=219.117.32.232 DST=219.117.47.58 LEN=61 TOS=0x00 PREC=0x00 TTL=116 ID=8938 DF PROTO=TCP SPT=3255 DPT=135 WINDOW=64240 RES=0x00 SYN URGP=0
复制代码


这些东西,是还没登陆系统的时候,自动出现在屏幕上的,很多,ip等参数也不一样..

是说啥问题呢??

我的防火前脚本是这样的 ::
  1. #!/bin/sh
  2. #
  3. # firewall        starting firewall
  4. #
  5. # chkconfig: 2345 98 01
  6. # description: setting firewall
  7. ##########################################################################
  8. # 设定参数
  9. ##########################################################################
  10. INNER_NET=192.168.1.0/24                # LAN 局域网 自由设定
  11. FWALL_IP=192.168.1.1                        # 防火墙的IP 你的机器的真实IP
  12. INNER_PORT=eth1                                # 局域网端IP
  13. OUTER_PORT=ppp0                                # Wan端IP
  14. IPTABLES="/sbin/iptables"                # iptables 命令
  15. MODPROBE="/sbin/modprobe"                # modprobe 命令
  16. ##########################################################################
  17. # 模块的加载和设定为内核工作
  18. ##########################################################################
  19. $MODPROBE ip_tables
  20. $MODPROBE iptable_filter
  21. $MODPROBE ip_conntrack
  22. $MODPROBE iptable_nat
  23. $MODPROBE ip_nat_ftp
  24. $MODPROBE ip_conntrack_ftp
  25. $MODPROBE ipt_state
  26. $MODPROBE ipt_MASQUERADE
  27. $MODPROBE ipt_LOG
  28. $MODPROBE ipt_REJECT
  29. $MODPROBE ipt_limit
  30. # 允许IP masquerade(变换)
  31. echo 1 > /proc/sys/net/ipv4/ip_forward
  32. # 忽视ping的broadcast
  33. echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
  34. # 检查源IP
  35. for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 1 > $f; done
  36. # 记录不可能的(虚假)IP
  37. for f in /proc/sys/net/ipv4/conf/*/log_martians; do echo "1" > $f; done
  38. # 忽视ICMP redirect message
  39. for f in /proc/sys/net/ipv4/conf/*/accept_redirects; do echo 1 > $f; done
  40. ##########################################################################
  41. # 初始化规则
  42. ##########################################################################
  43. $IPTABLES -P INPUT DROP                # 清空INPUT原始定义
  44. $IPTABLES -P OUTPUT DROP        # 清空OUPUT原始定义
  45. $IPTABLES -P FORWARD DROP        # 清空FORWARD原始定义
  46. $IPTABLES -F                        # flash chain
  47. $IPTABLES -F -t nat
  48. $IPTABLES -X                        # 删除用户定义的Chain
  49. ##########################################################################
  50. # 用户定义的chain
  51. ##########################################################################
  52. #
  53. # 记录并丢弃非法的包
  54. #
  55. $IPTABLES -N DROPPACKET                # DROPPACKT chain的生成
  56. $IPTABLES -A DROPPACKET -j LOG --log-prefix "INVALID_PACKET: " \
  57.         --log-level=3 -m limit --limit 1/s --limit-burst 10
  58. $IPTABLES -A DROPPACKET -j DROP
  59. #
  60. # 检查SYNFlood攻击的chain
  61. #
  62. $IPTABLES -N SYNFLOOD                # SYNFLOOD chain的生成
  63. # 没有超过限定值的话返回
  64. $IPTABLES -A SYNFLOOD -m limit --limit 10/s --limit-burst 20 -j RETURN
  65. # 超过限定值,就视为SYNFLOOD攻击,记录并丢弃
  66. $IPTABLES -A SYNFLOOD -m limit --limit 1/s --limit-burst 10 -j LOG \
  67.         --log-level=1 --log-prefix "SYNFLOOD: "
  68. $IPTABLES -A SYNFLOOD -j DROP
  69. #
  70. # 记录非法的Flag TCP,并丢弃
  71. #
  72. $IPTABLES -N DROPFLAGS                # DROPFLAGS chain的生成
  73. $IPTABLES -A DROPFLAGS -j LOG --log-prefix "INVALID_FLAGS: " \
  74.         --log-level=3 -m limit --limit 1/s --limit-burst 10
  75. $IPTABLES -A DROPFLAGS -j DROP
  76. #
  77. # 检查TCP Flag的非法组合
  78. #
  79. $IPTABLES -N CHKFLAGS
  80. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ACK,FIN FIN -j DROPFLAGS
  81. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ACK,PSH PSH -j DROPFLAGS
  82. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ACK,URG URG -j DROPFLAGS
  83. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags FIN,RST FIN,RST -j DROPFLAGS
  84. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROPFLAGS
  85. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags SYN,RST SYN,RST -j DROPFLAGS
  86. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ALL ALL -j DROPFLAGS
  87. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ALL NONE -j DROPFLAGS
  88. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ALL FIN,PSH,URG -j DROPFLAGS
  89. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ALL SYN,FIN,PSH,URG -j DROPFLAGS
  90. $IPTABLES -A CHKFLAGS -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROPFLAGS
  91. #
  92. # 拒绝 Microsoft 网络相关的FORWARD
  93. #
  94. $IPTABLES -N CHKMSNET
  95. $IPTABLES -A CHKMSNET -p tcp --dport 42 -j DROP                # wins dup
  96. $IPTABLES -A CHKMSNET -p tcp --dport 135 -j DROP        # MS-RPC
  97. $IPTABLES -A CHKMSNET -p udp --dport 135 -j DROP        # MS-RPC
  98. $IPTABLES -A CHKMSNET -p udp --dport 137:138 -j DROP        # MS browse
  99. $IPTABLES -A CHKMSNET -p udp --dport 137:138 -j DROP        # MS browse
  100. $IPTABLES -A CHKMSNET -p tcp --dport 139 -j DROP        # SMB
  101. $IPTABLES -A CHKMSNET -p tcp --dport 445 -j DROP        # DHSMB

  102. ##########################################################################
  103. # INPUT Chain
  104. ##########################################################################
  105. # Localhost的话,全部许可
  106. $IPTABLES -A INPUT -i lo -j ACCEPT
  107. # 检查包的正确性
  108. $IPTABLES -A INPUT -m state --state INVALID -j DROPPACKET
  109. # 检查包是否是SYN攻击
  110. $IPTABLES -A INPUT -p tcp --syn -j SYNFLOOD
  111. # TCP FLAG的检查
  112. $IPTABLES -A INPUT -p tcp -j CHKFLAGS
  113. # 许可LAN内的连接
  114. $IPTABLES -A INPUT -i $INNER_PORT -s $INNER_NET -j ACCEPT
  115. # 许可已经建立的连接
  116. $IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  117. # 检查是否是IP伪装
  118. $IPTABLES -A INPUT -i $OUTER_PORT -s $INNER_NET -j DROP
  119. #
  120. # 许可的服务(对外部公开的服务,在下面记述)
  121. #
  122. $IPTABLES -A INPUT -p tcp --dport 21 -m state --state NEW -j ACCEPT        # FTP
  123. $IPTABLES -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT        # HTTP
  124. $IPTABLES -A INPUT -p tcp --dport 443 -m state --state NEW -j ACCEPT        # HTTPS
  125. $IPTABLES -A INPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT        # DOMAIN(DNS)
  126. $IPTABLES -A INPUT -p udp --dport 53 -m state --state NEW -j ACCEPT        # DOMAIN(DNS)
  127. # 拒绝AUTH请求
  128. $IPTABLES -A INPUT -p tcp --dport 113 -j REJECT --reject-with tcp-reset
  129. # icmp (IN)
  130. $IPTABLES -A INPUT -p icmp --icmp-type echo-request -s $INNER_NET -j ACCEPT
  131. $IPTABLES -A INPUT -p icmp --icmp-type echo-reply -s $INNER_NET -j ACCEPT
  132. $IPTABLES -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT
  133. $IPTABLES -A INPUT -p icmp --icmp-type source-quench -j ACCEPT
  134. $IPTABLES -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT
  135. $IPTABLES -A INPUT -p icmp --icmp-type parameter-problem -j ACCEPT
  136. # 除了上面以外所有的包,都记录下来,并通过Default Policy丢弃
  137. $IPTABLES -A INPUT -j LOG --log-prefix "UNDEFIND_INPUT: " \
  138.         --log-level=3 -m limit --limit 1/s --limit-burst 10

  139. ##########################################################################
  140. # OUTPUT Chain
  141. ##########################################################################
  142. # 许可由localhost出来的包
  143. $IPTABLES -A OUTPUT -o lo -j ACCEPT
  144. # TCP FLAG的检查
  145. $IPTABLES -A OUTPUT -p tcp -j CHKFLAGS
  146. # 许可从服务器到Lan的连接
  147. $IPTABLES -A OUTPUT -o $INNER_PORT -s $FWALL_IP -j ACCEPT
  148. # 检查Microsoft网络
  149. $IPTABLES -A OUTPUT -j CHKMSNET
  150. # 许可已经连接的包
  151. $IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  152. # 许可由服务器到互联网的新加连接
  153. $IPTABLES -A OUTPUT -m state --state NEW -j ACCEPT
  154. # icmp(OUT)
  155. $IPTABLES -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
  156. $IPTABLES -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
  157. $IPTABLES -A OUTPUT -p icmp --icmp-type destination-unreachable -j ACCEPT
  158. $IPTABLES -A OUTPUT -p icmp --icmp-type fragmentation-needed -j ACCEPT
  159. $IPTABLES -A OUTPUT -p icmp --icmp-type source-quench -j ACCEPT
  160. $IPTABLES -A OUTPUT -p icmp --icmp-type parameter-problem -j ACCEPT
  161. # 除了上面以外所有的包,都记录下来,并通过Default Policy丢弃
  162. $IPTABLES -A OUTPUT -j LOG --log-prefix "UNDEFIND_ICMP: " --log-level=3 \
  163.         -m limit --limit 1/s --limit-burst 10

  164. ##########################################################################
  165. # IP变换
  166. ##########################################################################
  167. # 检查Microsoft网络
  168. $IPTABLES -A FORWARD -j CHKMSNET
  169. # 许可Lan内机器的IP变换
  170. $IPTABLES -t nat -A POSTROUTING -o $OUTER_PORT -s $INNER_NET -j MASQUERADE
  171. # 从外部到Lan的连接,许可已经连接的FROWARD
  172. $IPTABLES -A FORWARD -i $OUTER_PORT -o $INNER_PORT -d $INNER_NET -m state \
  173.         --state ESTABLISHED,RELATED -j ACCEPT
  174. # 许可LAN到外部的连接
  175. $IPTABLES -A FORWARD -i $INNER_PORT -o $OUTER_PORT -s $INNER_NET -m state \
  176.         --state NEW,ESTABLISHED,RELATED -j ACCEPT
  177. exit 0
复制代码
发表于 2004-2-15 19:25:16 | 显示全部楼层
将以下的脚本写入/etc/rc.d/rc.local
#change loglevel
echo "3 4 1 7" > /proc/sys/kernel/printk


修改iptables的脚本

将比如:
$IPTABLES -A OUTPUT -j LOG --log-prefix "UNDEFIND_ICMP: " --log-level=3 \
        -m limit --limit 1/s --limit-burst 10
里面的--log-level=3 改为--log-level=6
发表于 2004-4-6 15:06:59 | 显示全部楼层
楼上的老兄能说一下这些改动的意思吗?
发表于 2004-4-6 15:07:27 | 显示全部楼层
楼上的老兄能说一下这些改动的意思吗?
发表于 2004-4-6 15:33:35 | 显示全部楼层
/proc/sys/kernel/printk
该文件有四个数字值,它们根据日志记录消息的重要性,定义将其发送到何处。关于不同日志级别的更多信息,请阅读 syslog(2) 联机帮助页。该文件的四个值为:

控制台日志级别:优先级高于该值的消息将被打印至控制台
缺省的消息日志级别:将用该优先级来打印没有优先级的消息
最低的控制台日志级别:控制台日志级别可被设置的最小值(最高优先级)
缺省的控制台日志级别:控制台日志级别的缺省值

缺省设置:6 4 1 7
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表