web服务器iptables安全配置

centos6.5的iptables防火墙规则

#!/bin/bash

#

###########clear all chains#########

iptables  --delete-chain

iptables  --flush

###########defaulet policy#########

iptables  -P INPUT DROP

iptables  -P FORWARD DROP

iptables  -P OUTPUT ACCEPT

###########lo policy###########

iptables -A INPUT -i lo -j ACCEPT

iptables -A OUTPUT -o lo -j ACCEPT

###########input chains############################################

iptables -A INPUT -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.1 -d 1.1.1.2 --dport 22 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 213.1.1.1 -d 1.1.1.2 --dport 22 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.2.3 -d 1.1.1.2 --dport 22 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 192.168.1.3 -d 192.168.1.2 --dport 22 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -m iprange --src-range 1.1.1.1-1.1.1.93 -d 106.3.136.2 --dport 22 -m state --state NEW

-j ACCEPT

iptables -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.58 -d 1.1.1.2 --dport 3173 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.4 -d 1.1.1.2 --dport 3173 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.3 -d 1.1.1.2 --dport 3173 -m state --state NEW -j ACCEPT

iptables -A INPUT -p tcp -s 192.168.1.3 --dport 3173 -j ACCEPT

####ftp#######

iptables -A INPUT -p tcp -m iprange --src-range 1.1.1.2-1.1.1.23 --dport 21 -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.3 -d 106.3.136.2 --dport 21 -j ACCEPT

iptables -A INPUT -p tcp -s 1.1.1.4 -d 106.3.136.2 --dport 21 -j ACCEPT

iptables -A INPUT -i eth0 -m multiport -p tcp --dports 25,53,113,111,135,137,139,445,1433,4899 -j DROP

iptables -A INPUT -i eth0 -p udp --dport 1026 -j DROP

iptables -A INPUT -d 106.3.136.2 -p icmp --icmp-type 8 -m limit --limit 6/minute --limit-burst 10 -j ACCEPT ##DDOS

iptables -A INPUT -i eth0 -p icmp --icmp-type echo-request -j DROP ##DDOS

##iptables -I INPUT -p tcp --dport 22 -m connlimit --connlimit-above 5 -j DROP

##iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT

iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP  ##sync-flood

iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP ##to prevent Xmas scanning

iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP   ##

iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP  ##to prevent TCP scanning.

iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP ##to prevent scanning

iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP ##to prevent connected and Disconnected packets

iptables -A INPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j DROP ##To prevent an ACK cheat

iptables -I INPUT -p tcp --dport 22 -m connlimit --connlimit-above 7 -j REJECT

iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -m limit --limit 20/sec --limit-burst 200 -j ACCEPT

###########output chains###########################################

iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -p udp -m udp --dport 53 -j ACCEPT

iptables -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT

iptables -A OUTPUT -p tcp -m tcp --dport 53 -j ACCEPT

############forward chains#########################################

##iptables -A FORWARD -p icmp --icmp-type 11 -j DROP

iptables-save >/etc/sysconfig/iptables

因为开放了ftp服务,那么内核需要加载nf_conntrack_ipv4模块,

cat /proc/sys/net/netfilter/nf_conntrack_max跟踪连接值要设置的大点。

时间: 2024-11-10 14:20:30

web服务器iptables安全配置的相关文章

高性能Web服务器Nginx的配置与部署研究(13)应用模块之Memcached模块+Proxy_Cache双层缓存模式

通过<高性能Web服务器Nginx的配置与部署研究——(11)应用模块之Memcached模块的两大应用场景>一文,我们知道Nginx从Memcached读取数据的方式,如果命中,那么效率是相当高的.那么: 1. 如果不命中呢? 我们可以到相应的数据服务器上读取数据,然后将它缓存到Nginx服务器上,然后再将该数据返回给客户端.这样,对于该资源,只有穿透 Memcached的第一次请求是需要到数据服务器读取的,之后在缓存过期时间之内的所有请求,都是读取Nginx本地的.不过Nginx的 pro

linux学习笔记——搭建基于nginx的web服务器、多核配置、nginx配置参数

############ 认识nginx #############Nginx:(发音同 engine x)是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设计师Igor Sysoev所开发,最初供俄国大型的入口网站及搜寻引擎Rambler(俄文:Рамблер)使用.  其优点是轻量级(占有内存少),高并发(并发能力强),事实上nginx的并发能力确实在同类型的网页伺服器中表现较好.目前中国大陆使用ngi

[ 总结 ] web server iptables 简单配置

[[email protected] ~]# iptables -F [[email protected] ~]# iptables -X [[email protected] ~]# iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT # 不允许服务器主动建立新连接 [[email protected] ~]# iptables -A INPUT -p tcp -m multiport --sport 22,80 -

Linux服务器 iptables 防火墙配置详解

导读: 很好的一篇关于Linux防火墙 iptables配置, linux防火墙配置很关键, 这牵扯到服务器安全, 安全不是绝对的,但是iptables配的好可以杜绝大多数灰色试探. 转载到老吧博客了, 更多iptables配置可以咨询作者. linux iptables 防火墙配置非常重要, 我们来配置一个filter表的防火墙. 查看本机关于IPTABLES的设置情况 [[email protected] ~]# iptables -L -n 如果你在安装linux时没有选择启动防火墙,什么

pfsense Web服务器负载平衡配置示例

在pfsense的网关和服务器中有两种类型的负载平衡功能.网关负载平衡可以通过多个WAN连接分发Internet绑定的流量.服务器负载平衡管理传入流量,因此它利用多个内部服务器进行负载分配和冗余,服务器负载平衡允许流量在多个内部服务器之间分配,它最常用于Web服务器和SMTP服务器.下面我们就以实例来介绍服务器负载平衡的设置. 下面介绍如何通过pfsense2.32配置Web服务器的负载平衡. 网络环境 服务器负载平衡示例网络环境 上图为示例网络环境.它由单个防火墙组成,使用其WAN IP地址池

七、Web服务器Apache的配置和管理

万维网Web,是在Internet上以超文本为基础形成的信息网.用户通过浏览器可以访问Web服务器上的信息资源,目前在Linux操作系统上最常用的Web服务器软件是Apache.Apache是一种开源的HTTP服务器软件,可以在包括UNIX.Linux以及Windows在内的大多数主流计算机操作系统中运行. 7.1.Apache简介 Apache是一款开源软件,所以得到了开源社区支持,不断开发出新的功能特性,并修补了原来的缺陷 .经过多年来不断的完善,如今的Apache已经是最流行的Web服务器

高性能Web服务器Nginx的配置与部署研究(2)Nginx入门级配置与部署及“Hello World”

1. Nginx 程序包 目前最新的开发版本时1.1.12: Linux/Unix:nginx-1.1.12.tar.gz Windows:nginx-1.1.12.zip 我们可以下载稳定版尝试: Linux/Unix:nginx-1.0.11.tar.gz Windows:nginx-1.0.11.zip 2. 下载.解压.安装 Nginx 我们这里以Linux/Unix:nginx-1.0.11.tar.gz为例.下载并解压缩: wget http://nginx.org/download

高性能Web服务器Nginx的配置与部署研究(1)Nginx简介及入门示例

概述 从这篇博文起,将带领读者们一起领略Nginx的强大. Nginx 是做什么用的?我相信很多朋友都已经使用过,如果你没有,那么你一定知道以下这些名称之一:Apache,Lighttpd,Tomcat,Jetty. 它们占据了目前Web服务器的几乎全部江山,其中 Apache 是知名度最高的,同时也是最为重量级的.Lighttpd.Tomcat 和 Jetty 相对轻量级,其中 Jetty.Tomcat 多用于作为Java服务器容器. Nginx 是一个基于 BSD-like 协议.开源.高性

高性能Web服务器Nginx的配置与部署研究系列(1)-- 入门 hello work

简介: Nginx 是一个基于 BSD-like 协议.开源.高性能.轻量级的HTTP服务器.反向代理服务器以及电子邮件(SMTP.POP3.IMAP)服务器.Nginx 是由一个俄罗斯的名叫“Igor Sysoev”的软件工程师开发的,最初用于 Rambler.ru 网站(该网站在俄罗斯国内访问量排名第二) 例子:hello work 1:配置清单: worker_processes  4; events { worker_connections  1024; } http { server