linux安全---iptables防火墙

防火墙分为内核态和用户态:

iptables为用户态的

netfilter为内核态的

iptables综合语法:

iptables -t 表名 [选项]  链名 条件 -j  动作

iptables  -t  raw/mangle/nat/filter  -AI/-DFX/-Lvn--line-numbers INPUT/OUTPUT/FORWARD/PREROTING/POSTROUTING  条件  -j   DROP/ACCEPT/REJECT/LOG

个人电脑设置:

/etc/init.d/iptables  stop   ##清空所有规则,包括默认规则

iptables -I INPUT -i lo -j ACCEPT

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

iptables -P INPUT DROP

iptables -P FORWRAD DROP

/etc/init.d/iptables save

服务器防火墙设置:httpd、dns、dhcp、vsftpd、postfix、dovecot、mysql、smb、ssh

/etc/init.d/iptables  stop

iptables -I INPUT -m multiport -p tcp --dport 20,21,22,25,53,80,110,139,445,50000:510000 -j ACCEPT

iptables -I INPUT -m multiport -p udp  --dports 53,67 -j  ACCEPT

iptables -I INPUT -i lo -j ACCEPT

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

iptables -P INPUT DROP

iptables -P FORWRAD DROP

/etc/init.d/iptables save

SNAT修改源端口  共享一个公网ip使局域网内的所有主机都能上网,可以控制局域网哪个网段可以上网,哪个不可以上

iptables -P INPUT DROP

iptables -P FORWARD DROP

iptables -A FORWARD -s/-d 内网网段 -j ACCEPT

vi /etc/sysctl.conf--->net.ipv4-forword=1--->sysctl -p #开启路由功能

iptables -T NAT -A POSTRUTING -S 192.168.100.0/24 -O eth0 -j SNAT --to-source 公网ip

iptables -T NAT -A POSTRUTING -S 192.168.100.0/24 -O eth0 -j MASQUERADEL(伪装)

内网主机在/etc/resolv.conf中加入公网DNS

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

/etc/init.d/iptables save

DNAT修改目的ip,发布内网服务器,必须结合SNAT才能实现

iptables -t NAT -A PREROUTING -i eth0 -d 公网ip -P tcp --dport 80 -j DNAT --to-destination 内网web服务器IP地址:80

iptables -t NAT -A PREROUTING -i eth0 -d 公网ip -P tcp --dport 123423 -j DNAT --to-destination 内网IP地址:22    #外面连接是用公网ip加连接端口号123423

特殊设置:

设置防火墙入站:

iptables -I INPUT -s 192.168.100.0/24 -m state --state NEW -p tcp --dport 22 -j ACCEPT

iptables -I INPUT -i lo -j ACCEPT

iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -I INPUT -s 192.168.100.0/24 -p icmp --icmp-type 8 -m limit --limit 1/m --limit-burst 5 -j ACCEPT

iptables -P INPUT DROP

设置防火墙转发:

iptables -I FORWARD -p tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec -j ACCEPT ##屏蔽 SYN_RECV 的连接

iptables -A FORWARD -f -m limit --limit 100/sec --limit-burst 100 -j ACCEPT  ##限制IP碎片,每秒钟只允许100个碎片,用来防止DoS攻击

iptables -A FORWARD -p icmp -m limit --limit 1/sec --limit-burst 10 -j ACCEPT  ##限制ping包每秒一个,10个后重新开始

iptables -A FORWARD -p icmp -m icmp --icmp-type 8 -m limit --limit 1/sec -j ACCEPT  ##限制ICMP包回应请求每秒一个

iptables -A FORWARD -i eth0 -o eth1 -s 192.168.100.0/24 -j ACCEPT  ##允许192.168.100.0/24出站(从eth0到eth1)转发

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT  ##允许内网数据回路

iptables -P FORWARD DROP

时间: 2024-10-09 15:46:41

linux安全---iptables防火墙的相关文章

Linux之Iptables防火墙概述~

Linux的防火墙体系主要工作在网络层,针对TCP/IP数据包实现过滤和机制,属于典型的包过滤防火墙(或称之为网络层防火墙). Netfilter和Iptables区别: Netfilter:指的是Linux内核中实现包过滤防火墙的内部结构,不以程序或文件的形式存在,属于"内核态"(kernel space,又称为内核空间)的防火墙功能体系. Iptables:指的是Linux防护墙的命令工具,程序通常位于/sbin/iptables,属于"用户态"(User sp

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

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

LINUX中IPTABLES防火墙使用

对于有公网IP的生产环境VPS,仅仅开放需要的端口,即采用ACL来控制IP和端口(Access Control List). 这里可以使用Linux防火墙netfilter的用户态工具 iptables有4种表:raw-->mangle(修改报文原数据)-->nat(定义地址转换)-->filter(定义允许或者不允许的规则) 每个表可以配置多个链: 对于filter来讲一般只能做在3个链上:INPUT ,FORWARD ,OUTPUT 对于nat来讲一般也只能做在3个链上:PREROU

Linux中iptables防火墙指定端口范围

我需要700至800之间的端口都能tcp访问 代码如下 复制代码 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 700 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 701 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp

linux设置iptables防火墙的详细步骤(centos防火墙设置方法)

我们 来讨论一下如何为你的CentOS 服务器来设置简单的防火墙. 这里我们以DigitalOcean的CentOS 6 VPS为基础来讨论的,同样也适用于 阿里云上其他类型的LINUX系统. (阿里云有个云盾系统,因此在你自己的VPS上不设置防火墙也是可以的) 需要说明的是: 本文只涉及最基础最常用的防火墙设置,能屏蔽一些常用的攻击,但并不能彻底保证你的服务器的安全. 系统的随时更新 以及 关闭不必要的服务 仍然是保证系统安全非常重要的步骤. 如果你需要更全面的了解iptables,阅读本文后

CentOS linux关闭iptables防火墙(Linux中的防火墙叫iptables)

linux服务器下防火墙为iptables组件,在安装一些软件的时候,iptables防火墙会阻止我们一些必要的连接. 查看iptables状态:service iptables status iptables开机自动启动: 开启: chkconfig iptables on 关闭: chkconfig iptables off iptables关闭服务: 开启: service iptables start 关闭: service iptables stop 重启防火墙服务:service i

【linux】iptables防火墙SNAT和DNAT的简单演示

首先说明SNAT和DNAT都大致相当于网络中的NAT和PAT协议,本实验是通过用一台linxu虚拟机来模拟内网网关,并且利用linux上的iptables防火墙策略,达到地址转换和端口映射的目的. SNAT 实验结构: 真机----------------(v1)网关服务器s1(v2)--------------(v2)外网服务器s2 开2台虚拟机linux,分别模拟s1和s2. 其中,s1上另增加一块网卡,使用vmnet1与真机相连. 使用vmnet2与外网服务器的s2的vmnet2相连. I

为Linux设置IPTables防火墙

我们 来讨论一下如何为你的CentOS 服务器来设置简单的防火墙. 这里我们以DigitalOcean的CentOS 6 VPS为基础来讨论的,同样也适用于 阿里云上其他类型的LINUX系统. (阿里云有个云盾系统,因此在你自己的VPS上不设置防火墙也是可以的) 需要说明的是: 本文只涉及最基础最常用的防火墙设置,能屏蔽一些常用的攻击,但并不能彻底保证你的服务器的安全. 系统的随时更新 以及 关闭不必要的服务 仍然是保证系统安全非常重要的步骤. 如果你需要更全面的了解iptables,阅读本文后

linux下iptables防火墙详解

Linux网络防火墙基础知识 工作在主机或网络的边缘,对于进出的数据报文按照事先定义好的规则中的匹配标准进行检查,并做出对应的处理办法的机制称作防火墙. IP报文首部:主要包含源IP,目标IP TCP报文首部:主要包含源端口,目标端口,标志位SYN,ACK,RST,FIN 匹配标准解释: IP: 源IP,目标IP TCP: 源端口,目标端口 TCP三次握手三个阶段表示: 第一阶段:  SYN=1,FIN=0,RST=0,ACK=0; 第二阶段: SYN=1,ACK=1,FIN=0,RST=0;

Linux上iptables防火墙的基本应用教程

1.安装iptables防火墙 如果没有安装iptables需要先安装,CentOS执行: yum install iptables Debian/Ubuntu执行: apt-get install iptables 2.清除已有iptables规则 iptables -F iptables -X iptables -Z 3.开放指定的端口 #允许本地回环接口(即运行本机访问本机) iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT # 允