[内容] Linux 软件指定版本的升级或降级 (CentOS Linux 7 版) (以系统版本作为指定维度)

内容一:将软件降级到某个版本

# yum --disablerepo='*' --enablerepo='C7.6*' update openssh

(补充:这里以将 openssh 软件升级到 CentOS Linux 7.6 系统版本里的最新版本为例为例)

或者:

# yum --disablerepo='*' --enablerepo='C7.6*' upgrade openssh

(补充:这里以将 openssh 软件升级到 CentOS Linux 7.6 系统版本里的最新版本为例为例)

内容二:将软件降级到某个版本

# yum --disablerepo='*' --enablerepo='C7.6*' downgrade openssh

(补充:这里以将 openssh 软件降级到 CentOS Linux 7.6 系统版本里的最新版本为例为例)

[步骤] Linux 系统指定版本的升级 (CentOS Linux 7 版)

步骤一:安装其他版本软件源

1.1 安装 centos-release

# yum install centos-release

1.2 查看当前所有软件源

# yum repolist all

或者:

# cat /etc/yum.repos.d/CentOS-Vault.repo

步骤二:清除 yum 缓存

2.1 除 yum 缓存

# yum clean all

2.2 删除 yum 缓存目录

# rm -rf /var/cache/yum

步骤三:将系统或软件升级到指定版本

3.1 方案一:将整个系统升级到指定版本

# yum --disablerepo='*' --enablerepo='C7.6*' update

(补充:这里以将整个系统升级到 CentOS Linux 7.6 版本为例)

(注意:系统中其他所有软件都会升级到 CentOS Linux 7.6 系统版本中的最新版本)

或者:

# yum --disablerepo='*' --enablerepo='C7.6*' upgrade

(补充:这里以将整个系统升级到 CentOS Linux 7.6 版本为例)

(注意:系统中其他所有软件都会升级到 CentOS Linux 7.6 系统版本中的最新版本)

3.2 方案二:只将系统内核或某个软件升级到指定版本

# yum --disablerepo='*' --enablerepo='C7.6*' update kernel

(补充:这里以只将系统内核 kernel 升级到 CentOS Linux 7.6 系统版本里的最新版本为例)

或者:

# yum --disablerepo='*' --enablerepo='C7.6*' upgrade kernel

(补充:这里以只将系统内核 kernel 升级到 CentOS Linux 7.6 系统版本里的最新版本为例)

[内容] Linux SSL 证书 KEY 私钥密码的添加 (OpenSSL 版)

内容一:给 SSL 证书 KEY 私钥添加密码

交互式给 SSL 证书 KEY 私钥添加密码

# openssl rsa -des -in eternalcenter.com.key -out one.eternalcenter.com.key

(补充:这里以给 eternalcenter.com.key)

内容二:取消 SSL 证书 KEY 私钥添加密码

2.1 交互式取消 SSL 证书 KEY 私钥添加密码

# openssl rsa -in one.eternalcenter.com.key -out two.eternalcenter.com.key

2.2 非交互式取消 SSL 证书 KEY 私钥添加密码

# openssl rsa -in one.eternalcenter.com.key -passin pass:eternalcenter -out two.eternalcenter.com.key

[步骤] auditd 日志时间转换成可读格式以后再显示

方法一:通过创建额外的脚本实现 adutitd 日志时间格式的转换

1.1 创建用于 auditd 转换日志时间格式的脚本

# vim time_format_conversion.pl

创建以下内容:

s/(1\d{9})/localtime($1)/e

(补充:这里以创建名为 time_format_conversion.pl 的用于转换 auditd 日志时间格式的脚本为例)

1.2 转换 auditd 日志时间格式

# cat /var/log/audit/audit.log | perl -p time_format_conversion.pl

或者:

# less /var/log/audit/audit.log | perl -p time_format_conversion.pl

或者:

# more /var/log/audit/audit.log | perl -p time_format_conversion.pl

或者:

# head /var/log/audit/audit.log | perl -p time_format_conversion.pl

或者:

# tail /var/log/audit/audit.log | perl -p time_format_conversion.pl

或者:

# tail -f /var/log/audit/audit.log | perl -p time_format_conversion.pl

(补充:这里以使用名为 time_format_conversion.pl 的用于转换 auditd 日志时间格式的脚本为例)

方法二:使用 /usr/sbin/ausearch 命令实现 adutitd 日志时间格式的转换

# /usr/sbin/ausearch --start $(date +\%m/\%d/\%Y -d "-1 month") -i --input-logs | egrep "/sftp*[0-9a-zA-Z].*txt.*nametype=" | grep -v Log.txt | awk '{print $2,$3,$6}' | uniq

(补充:这里以显示在 /sftp 目录下以 txt 结尾的文件的 auditd 日志为例)

[步骤] 文件或目录的监控 (audit 版)

步骤一:使用 audit 监控文件或目录

1.1 在 audit 的策略里添加要监控的目录或文件

1.1.1 案例一:监控某个目录以及目录下的目录和文件
# vim /etc/audit/rules.d/audit.rules

添加以下内容:

......
-a exit,always -F dir=/tmp -F perm=rwxa

(补充:这里以监控目录 /tmp 里的目录和文件为例)

1.1.2 案例二:监控某个文件
# vim /etc/audit/rules.d/audit.rules

添加以下内容:

......
-a exit,always -S unlink -S unlinkat -S rmdir -S rename -S renameat -F path=/dev/null

(补充:这里以监控目录 /dev/null 文件为例)

1.2 让监控目录或文件的配置生效

# service auditd restart

步骤二:显示 audit 监控记录

# cat /var/log/audit


补充:记录里的
1) nametype=CREATE 字段代表创建
2) nametype=NORMAL 字段代表普通
3) nametype=DELETE 字段代表删除

或者:

# sudo ausearch -i -k user-modify

(补充:这里以显示文件被修改的记录为例)