linux的防火墙管理
换oricle-linux7系统后,发现iptables的管理方法有不小的改动,记录一下遇到的问题。
iptables
linux系统已经默认安装了iptables和firewalld两款防火墙管理工具,但是在使用service iptables save命令的时候可能提示找不到命令;另外iptables的配置文件在/etc/sysconfig/iptables,但是新装的服务器可能没有这个文件,一般需要安装iptables-service;
本人习惯使用iptables防火墙工具;
yum -y install iptables-services # 先更新iptables-services,可以发现在/etc/sysconfig/目录下已经有Iptables文件,同时可以使用service来管理iptables了
systemctl stop firewalld # 先关闭防火墙
systemctl start iptables # 启动防火墙
systemctl enable iptables # 将防火墙设置成开机自启动
systemctl iptables save # 将当前配置的防火墙设置保存到/etc/sysconfig/iptables目录下
注意:
firewalld和iptables是相互独立的防火墙管理工具;
‘systemctl iptables save’ 执行时,iptables会去读取/etc/sysconfig/iptables-config文件,然后读取/etc/sysconfig/iptables文件;
扩展
service iptables status # 查看防火墙的状态
service iptables start # 开启防火墙
service iptables stop # 关闭防火墙
service iptables restart # 重启防火墙
- 配置iptables参数
防火墙需要开放端口给外部访问,设置过滤等。因此需要配置文件,所有的配置保存在/etc/sysconfig/iptables中,有两种方法可以配置:
- 方法一:直接修改iptables文件
*filter
:INPUT ACCEPT [0:0] # 允许流量输入
:FORWARD ACCEPT [0:0] # 允许转发
:OUTPUT ACCEPT [0:0] # 允许流出
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT # 允许ping通
-A INPUT -i lo -j ACCEPT # 默认允许网卡流入数据
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT # 添加一条规则,允许22端口
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT # 提交设置
# 在后面添加相关的命令行
- 参数详解
-A :添加一条规则,针对什么数据包,INPUT流入的数据包,OUTPUT流出的数据包,FORWARD转发的数据包
-p :指定协议,如TCP,UDP
–dport:目标端口,当数据从外部进入服务器为目标端口
–sport:源端口,数据从服务器出去,则为数据源端口使用
–j :指定策略规则,ACCEPT(允许接收)、DROP(拒绝接收,无响应)、REJECT(拒绝接收,有响应)
-s : 指定某一个IP地址的访问,加叹号“!”表示除这个IP外
-L 查看规则链
-F 清空规则链
-I num 在规则链的头部加入新规则
-D num 删除某一条规则
-d 匹配目标地址
-i 网卡名称 匹配从这块网卡流入的数据
-o 网卡名称 匹配从这块网卡流出的数据
- 方法二:使用命令行动态修改保存
iptables -P INPUT -j DROP
service iptables save
注意
- 防火墙的规则是按照从上往下依次匹配的,因此一定要把允许动作放到拒绝动作前面,否则所有的流量就将被拒绝掉,从而导致任何主机都无法访问。
firewalld
- linux的另一款防火墙的管理工具;
service firewalld status # 查看防火墙的状态
service firewalld start # 开启防火墙
service firewalld stop # 关闭防火墙
service firewalld restart # 重启防火墙
- 管理端口
# 开启一个端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
# 重新载入
firewall-cmd --reload
# 查看某个端口的状态是否开启
firewall-cmd --zone=public --query-port=80/tcp
# 关闭某个端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
- 参数
--permanent : 设置命令永久有效
--add-port : 开启一个端口
--remove-port : 关闭一个端口
使用systemctl
- systemctl是融合了chkconfig和service的系统管理工具,更加的强大和方便;
systemctl start firewalld # 开启防火墙
systemctl stop firewalld # 关闭防火墙,开机启动
systemctl restart firewalld # 重新启动防火墙
systemctl status firewalld # 查看防火墙的状态
systemctl disable firewalld # 永久关闭防火墙,不再开机自启动
systemctl enable firewalld # 设置防火墙开机自启动
systemctl is-enabled firewalld
systemctl start iptables # 开启防火墙
systemctl stop iptables # 关闭防火墙,开机启动
systemctl restart iptables # 重新启动防火墙
systemctl status iptables # 查看防火墙的状态
systemctl disable iptables # 永久关闭防火墙,不再开机自启动
systemctl enable iptables # 设置防火墙开机自启动
linux的防火墙管理的更多相关文章
- Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)
本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...
- Linux 笔记 - 第十三章 Linux 系统日常管理之(二)Linux 防火墙和任务计划
博客地址:http://www.moonxy.com 一.前言 Linux 下的的防火墙功能是非常丰富的,作为 Linux 系统工程师有必要了解一下.防火墙一般分为硬件防火墙和软件防火墙.但是,不管是 ...
- linux入门系列10--firewalld防火墙管理
上一篇文章学习了用户及文件相关权限,本篇继续学习防火墙技术. 防火墙作为公网与内网之间的保护屏障,对系统至关重要.防火墙又分为硬件防火墙和软件防火墙,主要功能都是依据设置的策略对穿越防火墙的流量进行过 ...
- linux系统中firewalld防火墙管理工具firewall-config(GUI图形用户界面)
firewall-config是firewalld防火墙管理工具的GUI(图形用户界面)版本,几乎可以实现所有以命令行来执行的操作. firewall-config的界面如下图(在终端直接运行fire ...
- Linux iptables 防火墙
内容摘要 防火墙 防火墙定义 防火墙分类 netfilter/iptables netfilter 设计架构 iptables 简述 iptables 命令详解 命令语法 table 参数 comma ...
- [转] Linux下防火墙iptables用法规则详及其防火墙配置
from: http://www.cnblogs.com/yi-meng/p/3213925.html 备注: 排版还不错,建议看以上的链接. iptables规则 规则--顾名思义就是规矩和原则,和 ...
- linux系统日常管理
笔者在前面介绍的内容都为linux系统基础类的,如果你现在把前面的内容全部很好的掌握了,那最好了.不过笔者要说的是,即使你完全掌握了,你现在还是不能作为一名合格的linux系统管理员的,毕竟系统管理员 ...
- 写了个Linux包过滤防火墙
花几天写了个so easy的Linux包过滤防火墙,估计实际意义不是很大.防火墙包括用户态执行程序和内核模块,内核模块完全可以用iptable代替.由于在编写的过程一开始写的是内核模块所以就直接用上来 ...
- Linux firewalld 防火墙
Linux firewalld 防火墙 简介 RHEL 7 系统中集成了多款防火墙管理工具,其中 firewalld(Dynamic Firewall Manager of Linux system ...
随机推荐
- 【.Net】win10 uwp unix timestamp 时间戳 转 DateTime
有时候需要把网络的 unix timestamp 转为 C# 的 DateTime ,在 UWP 可以如何转换? 转换函数可以使用下面的代码 private static DateTime UnixT ...
- BZOJ 2427 软件安装(强连通分量+树形背包)
题意:现在我们的手头有N个软件,对于一个软件i,它要占用Wi的磁盘空间,它的价值为Vi.我们希望从中选择一些软件安装到一台磁盘容量为M计算机上,使得这些软件的价值尽可能大(即Vi的和最大).但是现在有 ...
- bzoj3477[Usaco2014 Mar]Sabotage
题意 给出一个长为n的正整数序列(n<=1e5),要求选出一个非空前缀和一个非空后缀(这两段不能够加起来组成整个序列),使得这个前缀和后缀中的所有数字一起求平均数的结果最小 分析 最大/最小化平 ...
- 【Aizu2292】Common Palindromes(回文树)
[Aizu2292]Common Palindromes(回文树) 题面 Vjudge 神TMD日语 翻译: 给定两个字符串\(S,T\),询问\((i,j,k,l)\)这样的四元组个数 满足\(S[ ...
- 洛谷U14200 Changing 题解 【杨辉三角】
题目描述 有nnn盏灯环形排列,顺时针依次标号为1⋯n1\cdots n1⋯n.初始时刻为000,初始时刻第iii盏灯的亮灭aia_iai给定,000表示灭,111表示亮.下一时刻每盏灯的亮灭取决于 ...
- MSSQL DBA权限获取WEBSHELL的过程
前言 本文主要通过一个案例来演示一下当MSSQL是DBA权限,且不知道路径的时候如何去获取WEBSHELL.当然这种方式对站库分离的无效.我测试的环境是在Win7 64位下,数据库是SQLServer ...
- 导入(移动)数据到hive1.1.0表的方法
hive数据导入代码格式(会移动源文件位置): LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [partit ...
- Codeforces 950.E Data Center Maintenance
E. Data Center Maintenance time limit per test 1 second memory limit per test 512 megabytes input st ...
- mysql日志配置
mysql在错误排查,优化的时候会用到日志 有错误日志,查询日志,慢查询日志,二进制日志 先找到日志文件,linux 一般在/etc/my.cnf中 打开看到 log-error=/webserver ...
- python学习(八)定制类和枚举
`python`定制类主要是实现特定功能,通过在类中定义特定的函数完成特定的功能. class Student(object): def __init__(self, name): self.name ...