day16

1.firewalld的主要概念

区域

​ 一个zone就是一套过滤规则,数据包必须要经过某个zone才能入站或出站。可以把zone看作是一个个出站或入站必须经过的安检门,有的严格、有的宽松、有的检查的细致、有的检查的粗略。

常规的区域及其相应策略规则

运行模式和永久模式

运行模式:此模式下,配置的防火墙策略立即生效,但是不写入配置文件,重新加载防火墙后该策略失效

永久模式:此模式下,配置的防火墙策略写入配置文件,不会立即生效需要reload重新加载才能生效。

2.firewalld防火墙的配置

管理防火墙服务常见命令

systemctl  start  firewalld      开启防火墙
systemctl  stop  firewalld       停止防火墙
systemctl  status  firewalld     检查防火墙运行状态
systemctl  restart  firewalld    重启防火墙
systemctl  disable  firewalld    禁止防火墙开机自启(这个防火墙不好用,建议直接永久禁用)

管理firewall配置

命令:firewall-cmd

作用:管理firewall具体配置

语法:#firewall-cmd [参数选项1] ....[参数选项n]

常用选项:
列出区域模板,以及具体的信息
[root@localhost~]# firewall-cmd --list-all-zones

列出所有的区域的名字
[root@localhost ~]# firewall-cmd --get-zones

查看当前的public区域,以及其详细信息
[root@localhost ~]# firewall-cmd --list-all

快速运行一个80端口服务的py语法
python -m SimpleHTTPServer 80

注意临时生效和永久保存

[root@localhost ~]#  firewall-cmd --zone=public --add-service=http
success
[root@localhost ~]# 
这个是临时添加一个服务,重新加载防火墙后就失效了


[root@localhost ~]# firewall-cmd --permanent --add-service=http
success
[root@localhost ~]# cat /etc/firewalld/zones/public.xml
<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Public</short>
  <description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
  <service name="ssh"/>
  <service name="dhcpv6-client"/>
  <service name="http"/>
</zone>
[root@localhost ~]# 
[root@localhost ~]# firewall-cmd --list-all
public
  target: default
  icmp-block-inversion: no
  interfaces: 
  sources: 
  services: ssh dhcpv6-client http
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules: 
  这个是将添加的服务写入到防火墙的配置文件中永久保存,重启防火墙后永久生效

定时任务,crontab

定时任务的作用

服务器每时每刻都在有人访问,但后台不可能一直有人都在维护,这时就需要设置定时任务来在固定的时间去执行对应的操作,从而保持服务器的正常运行。


语法

crontab 
-l 列出当前用户有哪些计划任务
-e  编辑当前用户的计划任务
-r 删除当前用户的计划任务
-u 指定的用户名,如果不指定,则表示当前用户

*  *   *  *  *   
分 时  日  月  周  命令的绝对路径

取值范围:
分:0~59
时:0~23
日:1~31
月:1~12
周:0~7,0 和 7 表示星期天

四个符号:
*:表示取值范围中的每一个数字
-:做连续区间表达式的,要想表示1~7,则可以写成:1-7
/:表示每多少个,想每 10 分钟一次,则可以在分的位置写:*/10
,:表示多个取值,比如想在 1 点,2 点 6 点执行,则可以在时的位置写:1,2,6

查看定时任务
[root@yuchao-linux01 ~]# crontab -l

定时任务写入后,会自动记录到一个文件中,文件路径在如下路径,以用户名区分,不同的定时任务

[root@localhost ~]# ls /var/spool/cron/
 root

一张图清楚定时任务怎么玩

定时命令实战练习
每隔2个月的周六,夜里2点30 去见网友
30   2   *   */2   6

工作日的工作时间内(一个早9晚9,996的程序员工作日)的每小时整点执行脚本。
*   9-21   *   *   1-6

每周3的下午4点15分执行命令
15  4   *  *  3


每隔两天的上午8点到11点的第3和第15分钟执行一次重启
3,15   8,11   */2   *   *


每个星期6、7日的1:45 重启java后端
45  1   *   *   6,7

5 4 * * 6 /var/www/test.sh 
每周六4点5分执行一次

40 8 * * * /var/www/test.sh  
每天的8点40执行一次

31 10-23/2 * * *    /var/www/test.sh   
每天的10-23点每隔两个小时的31分执行一次

0 2 * * 1-5 /var/www/test.sh   
每周一到周五的2点整执行一次

0 8,9 * * 1-5  /var/www/test.sh   
每周一到周五的8点和9点整执行一次

0 10,16 * * *  /var/www/test.sh
每天的10点和16点整执行一次

关于定时任务的黑白名单

文件路径
/etc/cron.deny 黑名单文件 


/etc/cron.allow 白名单 ,优先级高于黑名单 (系统默认所有人都是可以创建定时任务的,如果将某个用户加入到空白的白名单中,可能导致其他用户无法创建定时任务。)

定时任务,服务端的运行日志文件目录

/var/log/cron

定时任务会在系统中,生成大量的邮件日志,会占用磁盘,永久禁用该服务即可

查找邮件服务的路径
[root@yuchao-linux01 ~]# find / -type f  -name 'post*.service'
/usr/lib/systemd/system/postfix.service


systemctl服务管理命令
[root@yuchao-linux01 ~]# systemctl list-units |grep post
postfix.service                                                                                                  loaded active running   Postfix Mail Transport Agent

查看邮件服务运行状态
systemctl status postfix

停止邮件服务运行
systemctl stop postfix

禁止开机自启
systemctl disable postfix
posted @   刘条缝  阅读(35)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示