# man 7 regex
[内容] Linux 文件 profile 和 bashrc (用户登录环境的设置)
内容一:profile 文件
1.1 profile 全局文件的位置 (影响所有用户)
/etc/profile
1.2 profile 局部文件的位置 (只影响单个用户)
~/.bash_profile
或者:
~/.bash_login
或者:
~/.profile
1.3 profile 文件的作用
在用户登录时设置用户的环境变量,只在用户登录时才会生效
1.4 登录 Linux 时执行 profile 文件的顺序
第一步,执行:
/etc/profile
第二步,按以下顺序一一尝试执行以下 3 个文件中的 1 个,当执行成功后则停止尝试下 1 个文件:
~/.bash_profile
~/.bash_login
~/.profile
第三步:开始调用解释器
(如果是调用 bash 解释器,则继续执行登录 bash 时执行 bashrc 文件的顺序)
内容二:bashrc 文件
2.1 bashrc 全局文件的位置 (影响所有用户)
/etc/bashrc
或者:
/etc/bash.bashrc
2.2 bashrc 局部文件的位置 (只影响单个用户)
~/.bashrc
2.3 bashrc 文件的作用
在用户使用 bash 解释器或登录 bash 解释器时设置用户的环境变量,每次调用 bash 解释器时都会生效
2.4 使用 bash 或登录 bash 时执行 bashrc 文件的顺序
第一步,执行以下 2 个文件中的 1 个:
/etc/bashrc
/etc/bash.bashrc
第二步,执行:
~/.bashrc
Linux 防范黑客入侵的思路
黑客发现阶段
黑客在入侵前往往会先对整个网络进行扫描,尝试发现我们的系统。在这个阶段我们可以尝试的防范措施有:
1) 关闭 ICMP 协议,让黑客无法通过 ping 发现我们的系统
2) 关闭所有不需要的端口
3) 通过防火墙只让允许访问的 IP 地址访问对应的端口
4) 让防火墙使用 drop 操作丢掉所有没有被允许的访问请求
黑客列举阶段和黑客立足阶段
黑客在发现了我们的系统之后。会根据我们系统和软件的版本,列举不同的破解方法并进行取舍,并最终会选择一种或多种方法进行尝试。在这两个阶段我们可以尝试的防范措施有:
1) 不使用盗版的系统和软件
2) 不使用有漏洞的系统和软件
3) 尽量将所有的系统和软件升级到最新的版本
4) 删除所有非必须的软件
5) 在用户尝试登录系统时,取消显示系统的版本
6) 删除或禁用所有不需要的用户
7) 让所有的用户都使用复杂的密码
8) 定期检查和修改所有用户的密码
9) 定期检查和修改所有用户 ~/.ssh/ 目录中的密钥
10) 限制错误密码尝试的次数,以防止暴力破解
11) 定期检查系统防火墙策略
12) 定期检查系统开启的所有端口
13) 定期检查系统开启的所有进程
14) 定期查看 /var/log/message 中的尝试登录失败的日志记录
黑客保持持久性阶段
黑客在成功进入系统以后,会尝试为自己下次进入系统准备方法,以让入侵保持持久性。在这个阶段我们可以尝试的防范措施有:
1) 定期检查系统中的所有用户的名称和数量
2) 定期检查系统中所有拥有 root 权限的名称和数量
3) 定期检查和修改所有用户的密码
4) 定期检查和修改所有用户 ~/.ssh/ 目录中的密钥
5) 定期检查系统防火墙策略
6) 定期检查系统开启的所有端口
7) 定期检查系统开启的所有进程
8) 缩小重要文件的权限
9) 定期检查所有用户的登录日志
10) 通过 auditd 服务监控所有重要配置文件,并定期检查监控日志
黑客掩盖痕迹阶段
黑客让入侵保持持久性后,会尝试掩盖自己的痕迹。在这个阶段我们可以尝试的防范措施有:
1) 定期检查系统中的所有用户的名称和数量
2) 定期检查系统中所有拥有 root 权限的名称和数量
3) 定期检查和修改所有用户的密码
4) 定期检查和修改所有用户 ~/.ssh/ 目录中的密钥
5) 定期检查系统防火墙策略
6) 定期检查系统开启的所有端口
7) 定期检查系统开启的所有进程
8) 缩小重要文件的权限
9) 定期检查所有用户的登录日志,注意日志的时间是否连贯
10) 通过 auditd 服务监控所有重要配置文件,并定期检查监控日志,注意日志的时间是否连贯
[内容] AppArmor 的设置
内容一:显示 AppArmor 保护进程的情况
1.1 显示所有 AppArmor 保护进程的情况
# aa-status
1.2 显示所有正在运行并监听网络但是没有被 AppArmor 保护的进程
# aa-unconfined
内容二:设置 AppArmor 保护进程的策略
2.1 将所有 AppArmor 进程规则设置为 enforce 模式
# aa-enforce /etc/apparmor.d/*
2.2 将所有 AppArmor 进程规则设置为 complain 模式
# aa-complain /etc/apparmor.d/*
2.3 将所有 AppArmor 进程规则设置为 disable 模式
# aa-disable /etc/apparmor.d/*
[内容] audit 常用的监控规则
内容一:监控 SELinux 配置文件
1.1 在 audit 添加监控 SELinux 配置文件的规则
# vim /etc/audit/rules.d/audit.rules
添加以下内容:
......
-w /etc/selinux/ -p wa -k MAC-policy
-w /usr/share/selinux/ -p wa -k MAC-policy
1.2 让添加的监控 SELinux 配置文件的规则生效
# service auditd restart
1.3 确认添加的监控 SELinux 配置文件的规则已生效
# auditctl -l | grep -i selinux
内容二:监控 AppArmor 配置文件
2.1 在 audit 添加监控 AppArmor 配置文件的规则
# vim /etc/audit/rules.d/audit.rules
添加以下内容:
......
-w /etc/apparmor/ -p wa -k MAC-policy
-w /etc/apparmor.d/ -p wa -k MAC-policy
2.2 让添加的监控 AppArmor 配置文件的规则生效
# service auditd restart
2.3 确认添加的监控 AppArmor 配置文件的规则已生效
# auditctl -l | grep -i apparmor