Linux神奇的proc目录
让我们看看/proc 里面都有什么 查看进程打开的文件 查看进程的环境变量和 env 命令查看到的不同,env 查看的是系统的环境变量,可以理解为默认环境变量,但是进程的环境变量可能不一样,比如说: 这种情况下 vim 进程是有 A 这个环境变量的,可以使用以下命令查看。 内核启动参数 可执行文件 limits进程所受到的限制,比如最大文件打开数等。
Fail2ban配合Docker使用解决暴力破解
fail2ban 正常使用可以参考 使用Fail2ban抵御暴力破解和cc攻击,但是对于使用了 Docker host 网络的容器来说是不生效的。原因最后说, 我们先复原一下部署情况 环境现状服务器是我自己的服务器,使用 Nginx 做入口,反向代理到不同的后端,后端服务和 Nginx 都是运行在 Docker 里,使用 Docker 的自定义网络进行互联。其中 Nginx 容器使用的是 Host 网络 配置 fail2ban确定 Docker 版 Nginx 日志路径Linux 内一切皆文件,Docker 会将日志写入到主机的一个日志文件中。通过 可以查看到容器的日志位置 创建配置文件 /etc/fail2ban/jail.d/nginx-cc.conf 创建配置文件 /etc/fail2ban/filter.d/nginx-cc.conf 复现问题照此配置后,多次访问后,查看 fail2ban-client status nginx-cc,此时 fail2ban 已经显示 ip 被 ban 了: 查看 iptables 规则: 也已经 REJECT 了,但是并没有...
使用Fail2ban抵御暴力破解和cc攻击
fail2ban 是一款防止暴力破解和 cc 攻击的开源工具,采用 Python 编写。 常用组件 工具 作用 fail2ban-client 客户端工具 fail2ban-regex 验证正则匹配 配置文件目录 作用 /etc/fail2ban/jail.d ban 的规则,如多少次触发,触发后封禁多久等 /etc/fail2ban/filter.d 过滤规则,匹配日志的正则配置 规则测试创建配置文件 /etc/fail2ban/jail.d/nginx-cc.conf 配置 说明 备注 enabled 是否开启检测 port 检查的端口 多个端口 , 分隔 ignoreip 忽略 IP 地址(CIDR 格式)或机器名,以空格分隔。 bantime 主机被禁止时长,默认 600 秒。 高版本 Fail2ban 支持 s (秒), m (分)和 d (天)作为时间单位,如 10m 和 1d maxretry 在 findtime 时间窗口中,允...
Hyper-V 自动创建虚拟机快照
首先要允许 PowerShell 执行本地脚本文件: PowerShell 脚本内容:(文件需要保存成 GB2312 编码,不然中文乱码,执行报错。) 定时执行需要配置任务计划:
Windows下运行服务的几种方式
原生命令 sc微软官方文档: https://learn.microsoft.com/zh-cn/windows-server/administration/windows-commands/sc-create 开源工具 servyWindows 服务管理工具https://github.com/aelassas/servy 第三方工具 winsw 2.xhttps://github.com/winsw/winsw/releases/tag/v2.11.0 需要将 winsw 可执行文件和配置文件放在同一目录, 一般放在程序同级目录. 同样以 frpc 为例: service.xml 然后将 winsw.exe 重命名成 service.exe(和 xml 文件保持一致),然后执行 其他命令 第三方工具 winsw 3.x betahttps://github.com/winsw/winsw 注意: 2.x 版本 和 3.x 版本配置文件会有一些不同 官方的 3.x 配置文件文档:https://github.com/winsw/winsw/blob/v3.0.0-al...
Python遍历文件或文件夹
说明root: 当前遍历到的目录, 也就是所在的目录, 字符串dirs: 当前目录下的子目录列表files: 当前目录下的文件列表 比如文件结构 /tmp/1/ : 脚本内容: 输出结果 遍历所有文件夹 遍历所有文件 遍历到最深的文件夹 一个例子, 自动清理 MySQL 备份文件
Python读写文件
使用 Python 读写文件很方便,有多种方法,但是读写大文件还是需要优化的。 python open 文件的模式: 模式 描述 r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。 r+ 打开一个文件用于读写。文件指针将会放在文件的开头。 rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。 w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 ...
gpg使用记录
要了解什么是 GPG,就要先了解 PGP。 1991 年,程序员 Phil Zimmermann 为了避开政府监视,开发了加密软件 PGP。这个软件非常好用,迅速流传开来,成了许多程序员的必备工具。但是,它是商业软件,不能自由使用。所以,自由软件基金会决定,开发一个 PGP 的替代品,取名为 GnuPG。这就是 GPG 的由来。 GPG 有许多用途,本文主要介绍文件加密。至于邮件的加密,不同的邮件客户端有不同的设置。 当前我的系统环境是 Ubuntu 22.04 gpg 版本是 gpg (GnuPG) 2.2.27。 Key 管理Key ID: 该 GPG Key 的唯一标识,值为主公钥的指纹,支持多种格式 (Fingerprint, Long key ID, Short key ID)。UID: 1 个或多个,每个 UID 由 name、email、comment 组成,email 和 comment 可以为空。Expire: 过期时间,可以为永久。主秘钥和主公钥(Primary Key)、子秘钥和子公钥(Sub Key)都是成对出现的,其用途也是一致的。每一对都包含一个 ke...
使用PowerShell操作Windows Defender
首先需要使用到管理员权限运行 PowerShell 查看排除列表 排除指定文件夹
CentOS7更新内核版本
确认当前内核版本 安装内核仓库 仓库的官方地址是: http://elrepo.org/tiki/HomePage 查看可用的内核列表 安装 LTS 版内核 查看当前系统可用的内核 修改默认内核 生成 grub 配置 重启系统 删除旧的内核 (可选) 删除内核有风险,干不干自行评估 查看当前安装的内核 删除旧的内核 参考上一步输出的包名



