jReject

iptables介绍iptables和netfilter

≯℡__Kan透↙ 提交于 2020-12-26 17:39:19
随着互联网技术的方兴未艾,各种网络应用层出不穷,网络攻击、黑客入侵也成了网民畅游互联网的心头大患,互联网安全也愈加受到了人们的重视。网络防火墙,作为一种简单高效的互联网防御手段,逐渐成为了网民畅游网络世界的保护伞。下面笔者介绍下Linux系统的守卫者——iptables/netfilter。 一 兄弟齐心,其利断金 iptables/netfilter就像一对兄弟,netfilter是大哥,善使长钩;iptables是小弟,擅长书记。这两兄弟一武一文,掌握着守城重任。 netfilter大哥师承名门,身负五把长钩,每一个流经他的数据流都逃不过他的法眼,只见得五把长钩上下翻飞舞得水泄不通,将那不符合规则的数据包挑落马下。这五把长钩埋伏在城门的五个位置,分别是:NF_IP_PRE_ROUTING、NF_IP_LOCAL_IN、NF_IP_FORWARD、NF_IP_POST_ROUTING、NF_IP_LOCAL_OUT。他们分别对应了下图的五个位置。 iptables小弟学富五车,手拿生死簿,记载了乱臣贼子的具体情况,netfilter大哥就是按照生死簿的记载检查每个数据包,以辨忠奸。 二 四章生死簿 生死簿内所载内容分为四个章节:raw、mangle、nat、filter raw、mangle记载了极高深的内容,正所谓曲高和寡,平常极少用到。filter里记录了过滤规则

Iptables常用配置和常用协议端口

烈酒焚心 提交于 2020-08-11 11:08:57
由于在服务器部署时,为了方便部署,把本机的iptables都关上了,然后还手欠的保存了设置,再想找回来是不可能了,那就重新设置一些适合我的防火墙策略吧! 如果你使用远程连接到你的服务器,那么ssh端口是不可少的,不要把自己关在外面! ssh默认端口号是22,可以通过/etc/sshd/sshd.conf来修改 iptables -I INPUT -p tcp --dport 22 -j ACCEPT 然后是拒绝所有的进入链接,有很多人用的DROP,下面简单说一下两者的区别: iptables -A INPUT -j REJECT REJECT和DROP的区别是什么?某天听到Sery的解释,感觉说的很容易理解: “就好象骗子给你打电话,drop就是直接拒收。reject的话,相当于你还给骗子回个电话。” 其实对于到底是使用DROP还是REJECT,从很久以前开始就非常多的人提出这方面的疑问。REJECT其实就比DROP多返回一个ICMP错误信息包,两个策略各有优劣,简单总结如下: DROP比REJECT好在节省资源,而且延缓******的进度(因为不会给***返回任何有关服务器的信息);坏在容易让企业的网络问题难以排查,而且在DDoS***的情况容易耗尽所有的带宽。 REJECT比DROP的好处在于容易诊断和调试网络设备或防火墙造成的问题;坏处上面也说了,你给骗子回个电话

Linux命令:iptables网络防火墙

我们两清 提交于 2020-07-26 19:22:15
Linux命令:iptables 网络防火墙 一.iptables的发展: iptables的前身叫ipfirewall (内核1.x时代),这是一个作者从freeBSD上移植过来的,能够工作在内核当中的,对数据包进行检测的一款简易访问控制工具。但是ipfirewall工作功能极其有限(它需要将所有的规则都放进内核当中,这样规则才能够运行起来,而放进内核,这个做法一般是极其困难的)。当内核发展到2.x系列的时候,软件更名为ipchains,它可以定义多条规则,将他们串起来,共同发挥作用,而现在,它叫做iptables,可以 将规则组成一个列表,实现绝对详细的访问控制功能 。 他们都是工作在用户空间中,定义规则的工具,本身并不算是防火墙。它们定义的规则,可以 让在内核空间当中的netfilter来读取 ,并且实现让防火墙工作。而放入内核的地方必须要是特定的位置,必须是tcp/ip的协议栈经过的地方。而这个tcp/ip协议栈必须经过的地方,可以实现读取规则的地方就叫做 netfilter.(网络过滤器) 一共在内核空间中选择了5个位置, 1.内核空间中:从一个网络接口进来,到另一个网络接口去的 2.数据包从内核流入用户空间的 3.数据包从用户空间流出的 4.进入/离开本机的外网接口 5.进入/离开本机的内网接口 二. iptables的工作机制及命令啟用

iptables 操作命令

依然范特西╮ 提交于 2020-04-27 22:13:19
1.添加路由列表 #INPUT 操作 #拒绝,某一个ip的请求 iptables -I INPUT -S 10.10.20.0 -j REJECT #查询列表 iptables --line -nvL #删除路由 iptables -t INPUT -d 1[查询出的编号] iptables -t filter -D INPUT -s 10.10.20.0 -j REJECT 2.保存路由列表 iptables-save > /etc/sysconfig/iptables #保存 iptables-restore < /etc/sysconfig/iptables #恢复 来源: oschina 链接: https://my.oschina.net/lavedream/blog/4255636

四十七.iptables防火墙 filter表控制 扩展匹配 nat表典型应用

梦想的初衷 提交于 2020-04-27 20:29:17
1.iptables基本管理 关闭firewalld,开启iptables服务 查看防火墙规则 追加、插入防火墙规则 删除、清空防火墙规则 1.1 关闭firewalld,启动iptables服务 1)关闭firewalld服务器 ]# systemctl stop firewalld.service ]# systemctl disable firewalld.service 2)安装iptables-services并启动服务 ]# yum -y install iptables-services ]# systemctl start iptables.service 1.2 熟悉iptables框架 1)iptables的4个表(区分大小写): iptables默认有4个表,nat表(地址转换表)、filter表(数据过滤表)、raw表(状态跟踪表)、mangle表(包标记表)。 2)iptables的5个链(区分大小写): INPUT链(入站规则) OUTPUT链(出站规则) FORWARD链(转发规则) PREROUTING链(路由前规则) POSTROUTING链(路由后规则) 1.3 iptables命令的基本使用方法 1)iptabels语法格式 ]# iptables [-t 表名] 选项 [链名] [条件] [-j 目标操作] ]# iptables -t

iptables基本命令到深入

若如初见. 提交于 2020-04-27 20:28:47
1、关闭firewalld,安装iptables-server并启动服务   systemctl stop firewalld   systemctl disable firewalld   yun -y install iptables-server   yum -y install iptables-server 2、熟悉iptable框架   1)iptables的4个表(区分大小写):     iptables默认有4个表,nat表(地址转换表)、filter表(数据过滤表)、raw表(状态跟踪表)、mangle表(包标记表)。   2)iptables的5个链(区分大小写):     INPUT链(入站规则)     OUTPUT链(出站规则)     FORWARD链(转发规则)     PREROUTING链(路有前规则)     POSTROUTING链(路由后规则) 3、iptables命令的基本使用方法   1)iptables语法的基本格式        iptables [-t 表名 ] 选项 [链名 ] [条件 ] [-j 目标操作 ]     iptables -t filter -I INPUT -p icmp -j REJECT     iptables -t filter -I INPUT -p icmp -j ACCEPT    

我的linux学习之路(第十一节)

橙三吉。 提交于 2020-03-08 12:33:56
( 一) iptables 与Firewalld 防火墙 防火墙策略可以基于流量的源目地址、端口号、协议、应用等信息来定制。在RHEL7系统中,firewalld防火墙取代了iptables防火墙。iptables与firewalld都不是真正的防火墙,而是一种服务,是用来定义防火墙策略的防火墙管理工具。iptables服务会把配置好的防火墙策略交由内核层面的netfilter网络过滤器来处理,而firewalld服务则是把配置好的防火墙策略交由内核层面的nftables包过滤框架来处理。 防火墙会从上至下的顺序来读取配置的策略规则,在找到匹配项后就立即结束匹配工作并去执行匹配项中定义的行为(即放行或阻止)。如果在读取完所有的策略规则之后没有匹配项,就去执行默认的策略。 1.1 、iptables iptables 服务把用于处理或过滤流量的策略条目称之为规则,多条规则可以组成一个规则链,而规则链则依据数据包处理位置的不同进行分类,具体如下: 在进行路由选择前处理数据包(PREROUTING); 即SNAT源地址转换 。 处理流入的数据包(INPUT); WAN à LAN 。 处理流出的数据包(OUTPUT); LAN à WAN 。 处理转发的数据包(FORWARD); 在进行路由选择后处理数据包(POSTROUTING); 即DNAT目的地址转换 。 ACCEPT(

linux-防火墙

强颜欢笑 提交于 2020-03-08 11:43:13
iptables与firewalld都是用来定义防火墙策略的防火墙管理工具,或者说只是一种服务。 iptables服务会把配置好的防火墙策略交由内核的netfilter网络过滤器来处理。 firewalld服务则是把配置好的防火墙策略交由内核netables包过滤框架处理。 1.iptables iptables服务在RHEL7.2以后的版本中已经没有了。 防火墙会从上到下的顺序来读取配置的策略规则,找到匹配项后就立即结束匹配工作并执行匹配项中定义的行为。 从上到下匹配,上面的规则优先级更高。 iptables规则链 INPUT 外部到内部的规则链,处理流入的数据包 OUTPUT 内网到外部的规则链,处理流出的数据包 FORWARD 转发的规则链,处理转发的数据包 iptables的处理动作: REJECT 拒绝流量通过,并反馈拒绝信息 DROP 拒绝流量通过,且不响应 ACCEPT 允许流量通过 LOG 记录日志信息 防火墙策略规则的设置有两种: 一种是通,默认策略为允许时,就要设置拒绝规则 一种是堵,默认策略为拒绝时,就要设置允许规则 iptables 常用参数 参数 作用 -P 设置默认策略 -F 清空规则链 -L 查看规则链 -A 在规则链的 末尾 加入新规则 -I num 在规则链的 头部 加入新规则 -D num 删除某一条规则 -s 匹配来源地址IP/MASK,加叹号

Gnu/Linux 防止暴力扫描及其它

一笑奈何 提交于 2019-12-07 01:01:14
RedHat7 手工脚本: # iptables iptables -A INPUT -i eno16777728 -p tcp -m multiport --destination-port 135,136,137,138,139,445,4899,1900 -j LOG iptables -A INPUT -p tcp -m multiport --destination-port 135,136,137,138,139,445,4899,1900,3389 -j DROP # iptables iptables -A INPUT -i eno16777728 -p udp -m multiport --destination-port 135,136,137,138,139,445,4899,1900 -j LOG iptables -A INPUT -p udp -m multiport --destination-port 135,136,137,138,139,445,4899,1900,3389 -j DROP iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p icmp -j ACCEPT iptables -A INPUT -i lo -j

如何把你的Linux系统变得更加安全

余生颓废 提交于 2019-12-04 22:52:15
做为一个小白,以为自己懂了点 Linux 知识,会搭建Linux各种服务就觉得自己牛的不要要的。在我们团队里面,我将使用了一台破电脑搭建Linux服务器,上面跑着Ftp服务存放着资源,ssh服务可以远程登录,VPN业务可以访问内网的网络,Web服务存放着我们业务的各种脚本方便同事们随意查看资料,以及正在搞的多媒体服务。我了个去,那天上班,发现各种服务没了,然后登录上破电脑一看,啥资料都没了。 当时一脸蒙蔽,不知发生了什么事情谁让是小白呢。找了朋友看,你被黑了,……。我脸真黑,他说也别查其它的了,重新安装系统和服务,重新加固系统安全,不要以为Linux安装好,就能在互联网上面直接裸奔。我无语! 安装用到的服务 如果你在运行一台服务器,选择自己所需要的服务,尽量不要安装用不到的程序。尽管你可以在自己的服务器上安装任意软件。不过,别犯想当然的毛病。Linux服务器会有人在该服务器上运行的任何未打补丁或易受攻击的软件组件的空子而被劫持。这样你就悲剧了。 所以,尽量让你的服务器更加精简。只安装你确实需要的那些程序。如果没有或者不需要的程序包,那就卸载掉。程序包数量越少,代码没打上补丁的可能性就越小,遭受潜在的危险就越小。 运行需要的服务程序 就是只运行需要的那些服务程序,许多发行版或程序包可能会开启某些服务,并在不同的端口上运行。这就会带来安全风险,打开终端,运行下列命令:netstat