CentOS firewall简单总结
CentOS firewall简单总结
简介
防火墙是安全的重要道防线.
硬件防火墙一般部署再内网的边界区域.作为最外层的防护.
但是一般硬件的防火墙会比较宽松. 不然会导致很多业务不可用
软件防火墙可以部署到每一个虚拟机内部
可以实现资源划分.安全防护.访问限制等重要作用.
最近用到了比较多, 也从同事那里学到很多, 所以最近想总结一下
所以水这一篇文章.
防火墙的简单说明
iptables 是2001年kernel 2.4.0 时代引入的.
在很长的一段时间内可以理解为内核层 netfilter的前端实现.
不仅可以实现防火墙的功能, 包过滤,还可以实现端口转发等内容
核心知识点是四表五链.
随着伯克利包过滤器的越来越强大.新版本的内核可能直接采用
bpfilter代替服役20年的netfilter 实现iptables的功能
firewall
firewalld是centos7的一大特性,
最大的好处有两个:
1. 支持动态更新,不用重启服务;
2. 加入了防火墙的“zone”概念
可惜的是CentOS7 马上要在2024年6月份停服了.
不过大部分国产linux都有这个命令集.
区别与联系
firewalld iptables
配置文件 /usr/lib/ firewalld/&/etc/firewalld /etc/sysconfig/iptables
对规则的修改 不需要全部刷新策略,不丢失现行连接 需要全部刷新策略,丢失连接
防火墙类型 动态防火墙 静态防火墙
firewall 划分的zone
firewalld防火墙预定义了9个区域:
①trusted (信任区域) :允许所有的传入流量。
②public(公共区域):允许与ssh或dhcpv6-client预定义服务匹配的传入流量,其余均拒绝。是新添加网络接口的默认区域。
③external (外部区域) :允许与ssh预定义服务匹配的传入流量,其余均拒绝。
默认将通过此区域转发的IPv4传出流量将进行地址伪装,可用于为路由器启用了伪装功能的外部网络。
④home (家庭区域) :允许与ssh、ipp-client、 mdns、 samba-client或dhcpv6-client预定义服务匹配的传入流量,其余均拒绝
⑤internal (内部区域) :默认值时与home区域相同。
⑥work (工作区域) :允许与ssh、ipp-client、 dhcpv6-client 预定义服务匹配的传入流量,其余均拒绝。
⑦dmz(隔离区域也称为非军事区域):允许与ssh预定义服务匹配的传入流量,其余均拒绝。
⑧block (限制区域) :拒绝所有传入流量。
⑨drop (丢弃区域) :丢弃所有传入流量,并且不产生包含ICMP的错误响应。
防火墙的简单操作.
# 查看防火墙的状态
systemctl status firewalld
# 重启防火墙
systemctl restart firewalld
# 注意有时候重启可能不管用, 需要关闭再启动
systemctl stop firewalld && systemctl start firewalld
防火墙的简单查询操作
# 获取默认区域
firewall-cmd --get-default-zone
# 获取活跃zone的具体配置信息
firewall-cmd --get-active-zones
# 获取哪些服务可以在当前default区域内例外
firewall-cmd --list-services
# 获取哪些端口进行了对外开放
firewall-cmd --list-ports
防火墙的简单设置操作
# 添加例外,可以进行访问
firewall-cmd --zone=trusted --add-source=10.25.11.53 --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
# 删除例外, 保证安全
firewall-cmd --zone=trusted --remove-source=10.25.11.53 --permanent
firewall-cmd --remove-service ssh --permanent
firewall-cmd --zone=public --remove-port=80/tcp --permanent
firewall-cmd --reload
关于防火墙与容器的处理
前期一直有一个困惑, 就是防火墙总是无法显示容器 -p 0.0.0.0:5672:5672 类似暴露的端口
一段时间没办法的情况下仅能够修改为 -p 127.0.0.1:port:port 进行expose来保证安全
最近两天同事帮忙分析了下, 发现可以在systemd 里面关掉docker 对iptables的映射来保证安全.
也就是可以让容器进行转发.forward, 但是不在iptables 上面进行链路规划了. 就可以保证不会被外部访问了.
方法也很简单. 主要如下:
感谢帅男同学的帮助:
思路为在systemd的启动脚本出增加 --iptabls=false的方式来避免插入
需要注意的一点是: /etc/docker/daemon.josn 写入是没有效果的. 可能跟之前的graph的设置一样.高版本只能修改systemd的启动脚本了.
sed -i 's/--iptables=false/ /g' /usr/lib/systemd/system/docker.service
sed -i 's/ExecStart=\/usr\/bin\/dockerd/\EExecStart=\/usr\/bin\/dockerd --iptables=false/g' /usr/lib/systemd/system/docker.service
systemctl daemon-reload
systemctl stop docker
systemctl start docker
docker ps
CentOS firewall简单总结的更多相关文章
- CentOS Firewall简单使用
启动 systemctl start firewalld 停止 systemctl stop firewalld 获取 firewalld 状态 firewall-cmd --state 在不改变状态 ...
- CentOS服务器简单判断CC攻击的命令
使用下面的命令,可以分析下是否在被CC攻击. 第一条命令: tcpdump -s0 -A -n -i any | grep -o -E '(GET|POST|HEAD) .*' 正常的输出结果类似 ...
- centOS 7 简单设置(虚拟机)
1.修改主机名 hostnamectl set-hostname 2.ssh连接慢的问题解决 vim /etc/ssh/sshd_config UseDNS=no GSSAPIAuthenticati ...
- CentOS firewall添加开放端口
添加 firewall-cmd --zone=public --add-port=80/tcp --permanent (–permanent永久生效,没有此参数重启后失效) 重新载入 firewal ...
- Centos NFS 简单设置
Server 端: NFS的安装配置:centos 5 :yum install nfs-utils portmapcentos 6 :yum install nfs-utils rpcbind vi ...
- CentOS Linux 简单安装 clickhouse
本文只是仅仅的介绍安装 至于更多介绍请自信百度 1.本人 linux版本 [root@localhost /]# cat /etc/redhat-releaseCentOS Linux release ...
- *CentOS下简单的MySQL数据库操作
1.登录成功之后退出的话,直接输入quit或者exit即可.
- centos firewall使用笔记
Centos7.x firewalld配置详解推荐文章文章地址:https://blog.csdn.net/jsonxiang/article/details/87873493 一.firewalld ...
- centos7.x firewall简单使用
开放一个端口: firewall-cmd --zone=public --add-port=22/tcp –permanent 开放一个范围端口对外部所有地址生效: firewall-cmd --zo ...
- centos 6 简单安装mysql
yum list installed | grep mysql yum -y remove mysql-libs.i686 yum list installed | grep mysql wget d ...
随机推荐
- 从源码角度详解Java的Callable接口
摘要:本文从源码角度深入解析Callable接口. 本文分享自华为云社区<深入解析Callable接口>,作者: 冰 河 . 本文纯干货,从源码角度深入解析Callable接口,希望大家踏 ...
- 带你了解Node.js包管理工具:包与NPM
摘要:包与NPM Node组织了自身的核心模块,也使得第三方文件模块可以有序的编写和使用. 本文分享自华为云社区<NodeJs深入浅出之旅:包与NPM>,作者:空城机. 包与NPM Nod ...
- APP违法使用个人信息?不用怕,华为云VSS为你保驾护航
摘要:华为云VSS漏洞扫描服务移动应用安全检测,为华为云客户提供移动应用的合规检测能力,遵循工信部164号文要求,针对安卓(apk)和鸿蒙(hap)应用进行安全和隐私合规问题检测. 本文分享自华为云社 ...
- SyntaxError: Non-ASCII character #-*- coding:utf-8 -*-
执行python报错 /usr/bin/python2.7 /root/demo.py File "/root/demo.py", line 2 SyntaxError: Non- ...
- 字节跳动基于火山引擎DataLeap的一站式数据治理架构实践
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在7月22日举行的 ArchSummit 全球架构师峰会(深圳站)上,来自火山引擎DataLeap的技术专家为大家 ...
- # github.com/coreos/etcd/clientv3/balancer/resolver/endpoint
linux使用go连接etcd集群时报错: # github.com/coreos/etcd/clientv3/balancer/resolver/endpoint /root/go/pkg/mod/ ...
- SE11/SE16N修改表数据
1.SE11修改方法 首先修改显示格式 选择SE16标准列表 双击这条数据 输入/H,回车,再回车 修改CODE为EDIT,F8 此时,数据已经可以修改了 2.SE16N修改方法 2.1断点修改 输入 ...
- CMake + Protobuf 自动生成 cpp 文件(pb.h, pb.cc)
[Protoc]VS2019 (VS平台) 使用 CMake 编译安装.使用 Protobuf 库 本文介绍在 macOS 系统下 cmake 和 protobuf 一起使用的一种方式--使用 cma ...
- 使用Python实现基本的学生管理系统
本篇文章主要分享python学生管理系统的使用,文章非常详细地介绍了通过示例代码实现的学生管理系统,该系统对每个人的研究或工作都有一定的参考学习价值,希望你能在其中有所收获. 这个是用python实现 ...
- Vue大数据可视化(大屏展示)解决方案
DataV:组件库基于Vue (React版) ,主要用于构建大屏(全屏)数据展示页面即数据可视化 官网地址: http://datav.jiaminghi.com/guide/#%E7%94%A8% ...