Linux防火墙-常用命令

news/2024/10/6 23:41:46 标签: linux, 运维, 服务器

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

我们经过上小章节讲了Linux的部分进阶命令,我们接下来一章节来讲讲Linux防火墙。由于目前以云服务器为主,而云服务器基本上就不会使用系统自带的防火墙,而是使用安全组来代替了防火墙的功能,可以简单理解安全组就是web版的防火墙,我们主要从以下几个方面来讲解Linux防火墙:

Linux防火墙-什么是防火墙

Linux防火墙-4表5链

Linux防火墙-filter表

Linux防火墙-nat表

Linux防火墙-常用命令(本章节)

Linux防火墙-案例(一)

Linux防火墙-案例(二)

Linux防火墙-小结

iptables就是通过命令去控制防火墙的规则,虽然我们在讲filter和nat表的时候讲了几个命令,本节就主要讲解常用的命令。

iptables 是 Linux 中用于配置网络过滤规则的工具,它允许系统管理员设置防火墙规则来控制进出网络的数据包。下面是一些常用的 iptables 命令及其说明。

基本命令格式

iptables [选项] [链] [匹配条件] [目标]

选项

-A 添加规则到末尾
-I 添加规则到最前面
-D 删除规则
-N 创建链(为了将同类的内容放置到一起)

-t 表 -L 链
#默认表是filter

匹配条件:​​​​​​​

-p 协议类型,包括tcp,udp,icmp
-s 来源ip地址,支持网段
-d 目标ip地址,支持网段
--sport 源端口(一般需要配合-s和-d使用)
--dport 目标端口(一般需要配合-s和-d使用)
-i 进入网卡
-o 流出网卡
--state 连接状态(涉及到tcp的协议状态)
--string 匹配数据包内容(使用较少)

目标:​​​​​​​

常用命令

显示规则

查看所有表上的规则​​​​​​​

iptables -L
#默认是显示filter链,如果要显示其他链
iptables -L -t nat

查看特定链上的规则

iptables -L INPUT -t nat

查看所有链上的规则,并显示行号​​​​​​​

iptables -L --line-numbers
#这个是为了后期通过行号删除

清空规则

清空某个链中的所有规则

iptables -F INPUT

清空所有链中的所有规则​​​​​​​

iptables -F
#清空规则的的时候要确保默认规则是允许的,否则会被自己给屏蔽

清除NAT表的所有规则

iptables -t nat -F

设置所有链的默认策略

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
#一般只需要设置filter表下dd INPUT需要这样配置

添加规则

允许所有入站流量

iptables -A INPUT -j ACCEPT

允许特定端口的TCP流量

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

拒绝特定端口的TCP流量

iptables -A INPUT -p tcp --dport 22 -j DROP

允许来自特定IP地址的流量

iptables -A INPUT -s 192.168.1.100 -j ACCEPT

删除规则

删除特定规则

iptables -D INPUT 1

删除特定条件的规则

iptables -D INPUT -p tcp --dport 80 -j ACCEP

其他命令

保存规则到文件

iptables-save > /etc/iptables/rules.v4

加载规则从文件

iptables-restore < /etc/iptables/rules.v4

总结

  1. 由于iptables是顺序执行,所以如果插入到最前面和追加到最后面是有区别的,需要注意。

  2. 如果在INPUT链里面默认是DROP的情况下,千万不要执行-F清空规则,否则会把自己关在外面。

  3. 添加顺序是先允许,后拒绝。

  4. 这里的的规则都是临时性的,重启将丢失。

运维小路

一个不会开发的运维!一个要学开发的运维!一个学不会开发的运维!欢迎大家骚扰的运维

关注微信公众号《运维小路》获取更多内容。


http://www.niftyadmin.cn/n/5692290.html

相关文章

尝试从 http://pypi.doubanio.com/simple 这个索引源安装 webdriver 时出现了问题

问题如下&#xff1a; WARNING: The repository located at pypi.doubanio.com is not a trusted or secure host and is being ignored. If this repository is available via HTTPS we recommend you use HTTPS instead, otherwise you may silence this warning and allow …

原码、反码、补码极简理解

原码、反码、补码 1、概述 计算机里都是以补码的形式存储数据&#xff0c;单纯给我们补码形式的数据&#xff0c;我们是不认识的&#xff0c;只有把补码转换成原码&#xff0c;我们才能知道这份数据的意思 2、基本介绍 原码&#xff1a;最高位为符号位&#xff0c;0 代表正数…

go+redis基于tcp实现聊天室

goredis实现聊天室 基于tcp连接通过redis实现了消息的广播&#xff0c;命令改名&#xff0c;查询在线人数&#xff0c;查询用户活跃度 serverclinet server 聊天室服务端的流程可以分为几个主要部分&#xff1a;初始化、监听连接、处理每个连接以及消息的处理和转发 1. 初…

python的可迭代对象包含哪些?

可迭代对象&#xff08;Iterable&#xff09;指的是那些能够一次返回一个元素的对象&#xff0c;这样就可以在 for 循环或者在其他需要迭代的上下文中使用。以下是一些常见的可迭代对象类型&#xff1a; 列表&#xff08;List&#xff09;&#xff1a;如 [a, b, c]。元组&…

SpringBoot框架下校园资料库的构建与优化

1系统概述 1.1 研究背景 如今互联网高速发展&#xff0c;网络遍布全球&#xff0c;通过互联网发布的消息能快而方便的传播到世界每个角落&#xff0c;并且互联网上能传播的信息也很广&#xff0c;比如文字、图片、声音、视频等。从而&#xff0c;这种种好处使得互联网成了信息传…

大学生就业招聘:Spring Boot系统的架构分析

大学生就业招聘系统的设计与实现 摘要 随着信息互联网信息的飞速发展&#xff0c;大学生就业成为一个难题&#xff0c;好多公司都舍不得培养人才&#xff0c;只想要一专多能之人才&#xff0c;不愿是承担社会的责任&#xff0c;针对这个问题开发一个专门适应大学生就业招聘的网…

Flet介绍:平替PyQt的好用跨平台Python UI框架

随着Python在各个领域的广泛应用&#xff0c;特别是在数据科学和Web开发领域&#xff0c;对于一个简单易用且功能强大的用户界面&#xff08;UI&#xff09;开发工具的需求日益增长。传统的Python GUI库如Tkinter、PyQt虽然功能强大&#xff0c;但在易用性和现代感方面略显不足…

Chromium 中JavaScript File API接口c++代码实现

构造函数File - Web API | MDN (mozilla.org)构造函数 File() 返回一个新构建的 File 对象。 实例属性 File 接口还继承了 Blob 接口的属性。 File.lastModified 只读 返回文件的最后修改时间&#xff0c;以 UNIX 纪元&#xff08;1970 年 1 月 1 日午夜&#xff09;以来…