Linux2-系统自有服务防火墙与计划任务

2024-06-14 09:36

本文主要是介绍Linux2-系统自有服务防火墙与计划任务,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、什么是防火墙

防火墙主要用于防范网络攻击,防火墙一般分为软件防火墙、硬件防火墙

1、Windows中的防护墙设置

2、防火墙的作用

3、Linux中的防火墙分类

Centos6、Centos6==>防火墙=>iptables防火墙 防火墙系统管理工具

Centos7=>防火墙=>firewalld防火墙

4、firewalld防火墙

①区域

firewalld相比于iptables增加区域(zone)的概念,在firewalld中不同的区域会预先准备不同的防火墙策略集合。

案例:在Linux系统中安装httpd服务(web服务)
#yum install httpd -y #systemctl start httpd 安装完成后在浏览器中输入,虚机ens33的ip地址,即可访问服务

出现以上问题的原因是firewall防护墙默认屏蔽httpd(TCP/80端口)流量。所以没办法访问这台服务器的web服务。

解决方法:
# systemctl stop firewalld
systemctl start httpd

访问成功后的页面

②防火墙模式

运行模式:

配置的防火墙策略立即生效,但是不写入配置文件

永久模式:

配置的防火墙策略写入配置文件,但不会立即生效,需要使用reload重新加载后才可生效

5、防火墙设置

①查看运行状态status

#systemctl status firewalld

②启动防火墙start

#systemctl start firewalld

③停止防火墙stop

#systemctl stop firewalld

④重启防火墙restart

#systemctl restart firewalld

⑤重载防火墙reload

#systemctl reload firewalld

⑥开机启动防火墙enable

#systemctl enable firewalld

⑦开机不启动防火墙disable

#systemctl disable firewalld

6、firewalld防火墙规则

6.1、firewalld防火墙管理工具

基本语法:

#firewalld-cmd [选项1] [选项2]

命令帮助--help

-v:打印防火墙版本信息

6.2、查看防火墙的默认区域

#firewall-cmd --get-default-zone

6.3、查看防火墙的默认区域实操

6.4、查看当前系统所有支持的区域

#firewall-cmd --get-zones

6.5、查看当前区域的规则设置

#firewall-cmd --list-all

6.6、查看所有区域的规则设置

#firewall-cmd --list-all-zones

6.7、修改默认区域为trusted操作,允许所有数据包访问

成功访问

把默认区域修改回public

后面详解基于服务器services、端口ports、规则rules来配置防火墙策略

6.8、通过服务的名称添加规则

#firewall-cmd --zone=public --add-service=服务名称

没有加--zone=public,默认添加服务是添加到当前域的策略中

加了--zone=public是指定添加到public中

访问成功

这种模式是临时对http服务放行,运行模式临时生效。对firewall重载或者重启一下,这个服务就会关掉。

以工具的形式重载也可以:#firewall - cmd -- reload

备注:服务必须在/usr/lib/firewalld/services目录中

案例:把http添加到防火墙规则中
#firewall-cmd --zone=public --add-service=http

案例:把http服务从防火墙策略中移除,不让其流量通过防火墙
#firewall-cmd --zone=public --remove-service=http
#firewall-cmd --list-all

永久添加--permanent

访问成功

移除服务--remove:临时删除和永久删除

6.9、通过服务的端口号添加规则

#firewall-cmd --zone=public --add-port=端口号/tcp

查看80端口协议:#netstat -tunlp | grep 80

用的是tcp6协议

不知道该命令的选项是什么意思,可以用帮助命令查看

基于端口号进行放行

访问成功

查看指定域

# firewall - cmd --info-zone=指定域名

临时添加指定域添加端口号服务

# firewall -cmd --zone=指定域名 --add-port=80/tcp

永久移除--remove

案例:移除80端口服务
#firewall-cmd --zone=public --remove-port=80/tcp

6.10、扩展:基于规则设置防火墙

案例:
#firewall- cmd --add- rich- rule='rule family="ipv4" source address=192.168.10.0/24 accept' 

6.11、永久模式

#firewall-cmd --zone=public --add-service=服务名称 --permannet

#firewall-cmd --reload

#firewall-cmd --zone=public --add-port=服务端口号 --permannet

#firewaldd-cmd --reload

二、Linux中的计划任务

1、什么是计划任务

操作系统设置任务不可能完全由人去操作,对一些特定时间点的任务,我们可以设置计划任务,让服务在规定时间去执行。

2、windows中的计划任务

在windows搜索栏搜索控制面板——管理工具


3、Linux中的计划任务

基本语法:
#crontab [选项]
-l:list,显示当前已经设置的计划任务
-e:使用vim编辑器编辑计划任务文件

案例1:
#crontab -l

案例2:
#crontab -e


4、#crontab -e命令:计划任务的编辑

计划任务的规则语法格式,以行为单位,一行就是一个计划
分 时 日 月 周 要执行的命令(必须使用该命令的完整路径,可以使用which查看

which命令

取值范围
分:0-59
时:0-23
日:1-31
月:1-12
周:0-7,0和7表示星期天
四个符号 :
*:表示取值范围中的每一个数字
-:做连续区间表达式的,表示1-7;可以写为1-7
/:表示每多少个执行一次,如:每30分钟一次,*/30 ,
:表示多个取值,例如每个月的1号5号15号执行,1,5,15


5、计划任务案例

案例1:每月1、10、22日的4:45 重启network服务
①定制格式
分 时 日 月 周 /usr/bin/systemctl restart network
45 4 1,10,12 * * /usr/bin/systemctl restart network

案例2:每周六、周日的1:10分 重启network服务
①定制格式
分 时 日 月 周 /usr/bin/systemctl restart networktl restart network
10 1 * * 6,7 /usr/bin/systemctl restart network

案例3:每天18:00到23:00之间每隔30分钟重启network服务
①定制格式
分 时 日 月 周 /usr/bin/systemctl restart networktl restart network
*/30 18-23 * * * /usr/bin/systemctl restart networktl restart network

案例4:每隔两天的上午8点到11点的第三分钟和第十五分钟执行一次重启network服务
①定制格式
分 时 日 月 周 /usr/bin/systemctl restart networktl restart network
3,15 8-11 */2 * * /usr/bin/systemctl restart networktl restart network

案例:*
#crontab -e
* * * * * /usr/bin/echo 1 >> /root/readme.txt
注意:想要执行该计划任务,要确保crond是运行状态
#systemctl status crond
#systemctl start crond

实操:

第一步:先确保服务是运行状态

第二步:查看当前的计划任务
#crontab -l

第三步:编辑计划任务
#crontab -e

每周每月每天每时每隔一分钟创建此文件

:wq保存并退出

date命令:查看当前时间


设置时间区间创建文件

设置整点时间创建文件


第四步、删除计划任务

进编辑界面删掉命令即可


6、计划任务的权限

①黑名单

crontab默认情况下是可以让任何用户都去编辑计划任务的,如果想限制某个用户不能编辑计划任务,可以将该用户写入黑名单文件
黑名单文件 --/etc/cron.dent
#su - root
#vim /etc/cron.deny
zhangshan

②白名单

白名单优先级优于黑名单,如果一个用户同时存在两个名单文件,则会被默认允许创建计划任务

7、计划任务的保存文件

计划任务的文件具体保存在/var/spool/cron/用户名称
#ll /var/spool/cron [root@aliyun zhangsan]
# ll /var/spool/cron total 8
-rw-------. 1 root root 47 Oct 11 21:47 root
-rw-------. 1 zhangsan zhangsan 42 Oct 12 19:04 zhangsan

8、计划任务的日志程序

在实际应用中,一般会通过计划任务日志,去 查看任务的运行情况
#tail -f /var/log/cron


9、at命令

①安装at
#yum install at -y

过滤查看此安装包

②启动atd服务
#systemctl start atd
#systemctl enable atd

③案例

案例1:三天后下午5点执行/bin/ls
#at 5pm+3 days
at>/bin/ls >> /root/readme.txt
at>Ctrl+D
案例2:明天下午18点,输出时间到指定的文件中
#at 18:00 tomorrow
at>date > /root/readme.txt
at>Ctrl+D (退出)

查看还没有执行的计划任务
#atq

删除指定的计划任务
#atq 查看任务的IP
#atrm 任务id 删除任务

这篇关于Linux2-系统自有服务防火墙与计划任务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1060036

相关文章

Mac系统下卸载JAVA和JDK的步骤

《Mac系统下卸载JAVA和JDK的步骤》JDK是Java语言的软件开发工具包,它提供了开发和运行Java应用程序所需的工具、库和资源,:本文主要介绍Mac系统下卸载JAVA和JDK的相关资料,需... 目录1. 卸载系统自带的 Java 版本检查当前 Java 版本通过命令卸载系统 Java2. 卸载自定

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

SpringBoot服务获取Pod当前IP的两种方案

《SpringBoot服务获取Pod当前IP的两种方案》在Kubernetes集群中,SpringBoot服务获取Pod当前IP的方案主要有两种,通过环境变量注入或通过Java代码动态获取网络接口IP... 目录方案一:通过 Kubernetes Downward API 注入环境变量原理步骤方案二:通过

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

Linux系统中的firewall-offline-cmd详解(收藏版)

《Linux系统中的firewall-offline-cmd详解(收藏版)》firewall-offline-cmd是firewalld的一个命令行工具,专门设计用于在没有运行firewalld服务的... 目录主要用途基本语法选项1. 状态管理2. 区域管理3. 服务管理4. 端口管理5. ICMP 阻断

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

Windows 系统下 Nginx 的配置步骤详解

《Windows系统下Nginx的配置步骤详解》Nginx是一款功能强大的软件,在互联网领域有广泛应用,简单来说,它就像一个聪明的交通指挥员,能让网站运行得更高效、更稳定,:本文主要介绍W... 目录一、为什么要用 Nginx二、Windows 系统下 Nginx 的配置步骤1. 下载 Nginx2. 解压

如何确定哪些软件是Mac系统自带的? Mac系统内置应用查看技巧

《如何确定哪些软件是Mac系统自带的?Mac系统内置应用查看技巧》如何确定哪些软件是Mac系统自带的?mac系统中有很多自带的应用,想要看看哪些是系统自带,该怎么查看呢?下面我们就来看看Mac系统内... 在MAC电脑上,可以使用以下方法来确定哪些软件是系统自带的:1.应用程序文件夹打开应用程序文件夹

windows系统上如何进行maven安装和配置方式

《windows系统上如何进行maven安装和配置方式》:本文主要介绍windows系统上如何进行maven安装和配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录1. Maven 简介2. maven的下载与安装2.1 下载 Maven2.2 Maven安装2.

使用Python实现Windows系统垃圾清理

《使用Python实现Windows系统垃圾清理》Windows自带的磁盘清理工具功能有限,无法深度清理各类垃圾文件,所以本文为大家介绍了如何使用Python+PyQt5开发一个Windows系统垃圾... 目录一、开发背景与工具概述1.1 为什么需要专业清理工具1.2 工具设计理念二、工具核心功能解析2.