2024523-面筋实战1

1.防火墙黑白名单

黑名单(阻止特定IP访问)

如:

sudo iptables -A INPUT -s 192.168.1.100 -j DROP

白名单(允许特定IP访问)

  1. 设置默认策略为拒绝所有入站连接:
sudo iptables -P INPUT DROP

2.允许特定IP地址的访问

例如:

sudo iptables -A INPUT -s 192.168.1.100 -j ACCEPT

保存与恢复

定义Unit File, CentOS 7,8 可以安装iptables-services 实现iptables.service

yum install iptables-services
iptables-save > /etc/sysconfig/iptables
iptables-restore < /etc/sysconfig/iptables
systemctl enable iptables.service

转发本地端口

[root@localhost ~]# iptables -t nat -A PREROUTING -p tcp --dport 6666 -j REDIRECT --to-port 22
6666也可以访问ssh
[root@localhost ~]# iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port 80
8080也可以转到80

2.自动化运维

1.计划任务

1.1一次调度:at(atd服务)
[root@localhost ~]# systemctl start atd
[root@localhost ~]# at now +1min
at> useradd xwz
at> <EOT>        # Ctrl+D结束
job 1 at Thu Aug 27 15:35:00 2020
[root@localhost ~]# atq
1    Thu Aug 27 15:35:00 2020 a root
1.2循环调度(守护进程crond

cron语法格式:

分 时 日 月 星期 命令

存储位置:

/var/spool/cron

2.文本三剑客

1.grep

实用:查看配置文件时去除所有的注释和空行

[root@localhost ~]# grep -Ev "^#|^$" /etc/ssh/sshd_config

2.sed

3.awk

3.shell脚本

练习题:

练习1:计算/etc/passwd文件中第10个用户和第15个用户的ID之和

#!/bin/bash  
# 使用 awk 直接从 /etc/passwd 文件中获取第10个和第15个用户的ID  
userid1=$(awk -F: 'NR==10{print $3}' /etc/passwd)  
userid2=$(awk -F: 'NR==15{print $3}' /etc/passwd)  
# 使用 bash 的算术扩展来计算两个ID的和  
userid_sum=$((userid1 + userid2))  
# 输出结果  
echo $userid_sum

练习2:传递两个文件路径参数给脚本,计算这两个文件之中所有空白行之和
#!/bin/bash  
# 计算第一个文件的空白行数量  
blank1=$(grep "^$" "$1" | wc -l)  
# 计算第二个文件的空白行数量  
blank2=$(grep "^$" "$2" | wc -l)  
# 计算两个文件空白行之和  
allblank=$((blank1 + blank2))  
# 输出结果  
echo "The sum of blank lines: $allblank"

练习3:统计/etc/,/var/,/usr/目录下有多少目录和文件
#!/bin/bash
sum_etc=$(find /etc/ | wc ‐l)
sum_var=$(find /var/ | wc ‐l)
sum_usr=$(find /usr/ | wc ‐l)
sum_all=$[$sum_etc + $sum_var + $sum_usr]
echo $sum_all

注意练习二将将参数传递给脚本:如 chmod +x count_blank_lines.sh ./count_blank_lines.sh file1.txt file2.txt

4.zabbix
  • 在性能和功能上都强大很多
  • 图形相当漂亮
  • 支持多种监控方式等等
  • 支持分布式监控,能监控的 agent 非常多
  • 有图形的 web 配置界面,配置简洁
  • 支持自动发现功能

实验效果见网址http://www.guixiang.fun/?page_id=231

5.ansible

批量系统部署、批量程序部署,批量运行命令等功能。ansible是基于模块工作的,本身没有批量部署的能力,真正具有批量部署能力的是ansible运行的模块,ansible只是提供一个框架。

3.docker守护进程+必备指令

守护进程可以理解为进程守护(进程的守护),是用于监控指定的进程,当发现目标进程工作异常时,可以对该目标进程进行控制。如关闭该进程,并重新启动该进程。 守护进程(守护者程序),目标进程(被守护进程)。 一个守护进程可以对多个目标进程进行守护

镜像指令:

搜索镜像:
docker search centos
下载镜像:
docker pull centos
查看镜像信息
docker images
命令来为本地镜像添加新的标签
docker tag centos:latest mycentos:latest
获取该镜像的详细信息
docker inspect centos:latest 
镜像导入
 docker save centos:latest > /opt/centos-1.tar.gz
导出
docker load < /opt/centos.tar.gz 
删除镜像
docker rmi centos:latest 

容器指令:

启动一个容器
docker run -it centos:latest bash
显示正在运行的容器
docker ps -a
指定端口映射
docker run -p 80:80 --name nginx nginx:latest 
后台启动容器
docker run -d -P 80:80 --name nginx nginx:latest
终止、启动容器
docker stop 容器id
docker start 容器id
删除容器
docker rm -f 容器id
批量删除容器
 docker rm -f `docker ps -a -q`
导入导出容器
docker export -o /opt/centos.tar 容器id
docker import /opt/centos.tar mycentos:v1

搭建硬盘

我们用fdisk工具辅助,咱不装逼,脚踏实地。

fdisk交互参数(十分重要)

参数作用
m查看全部可用的参数
n添加新的分区
d删除某个分区信息
l列出所有可用的分区类型
t改变某个分区的类型
p查看分区信息
w保存并退出
q不保存直接退出

lsblk列出块设备(如果有sdb空余)

fdisk /dev/sdb			进入fdisk分区交互
注意内存可以用G表示

分区完后建立文件系统(adb1是分区交互时建立的编号)

mkfs.ext4 /dev/sdb1

建立挂载目录

mkdir /data1

将挂载目录与分区联系

mount /dev/sdb1 /data1

如何解决内存空间不足呢?

命令:

free -h

命令会显示系统的内存总量,已使用的内存量,空网内任量和缓存区内存量等位息,如果要直看更洋细的内存信息,可以使用top 解决方案: 1.提出占用大量内存的进程;使用top查当前系统中正在运行的进程,并直找占用大量内存的进程,可以杀死这些进程,或者使用 书 renice 命令降低它们的优先级,以减少它们对内存的需求。 2.增加内存:如果系统的内存不足,可以增加内存来提高系统性能,这可能需要开级硬件或者将系统迁移到更强大的服务留上。 3.优化服务配置:对于某些服务,例如数据库服务或web服务器,可以通过优化其配置文件来减少对内存的需求。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇