[排错] 解决 Linux 普通用户执行 ping 命令时报错 “ping: socket: Address family not supported by protocol” 或者 “Error: ping: socket: Operation not permitted”

解决方法一:修改 net.ipv4.ping_group_range 参数

1.1 确认文件功能没有参数

# getcap /usr/bin/ping

(补充:确认没有输出结果)

1.2 修改 net.ipv4.ping_group_range 参数

# sysctl net.ipv4.ping_group_range="0 2147483647"

解决方法二:设置文件功能参数

2.1 设置文件功能参数

# setcap cap_net_raw+eip /usr/bin/ping

2.2 确认文件功能参数已经设置

# getcap /usr/bin/ping
/usr/bin/ping = cap_net_raw+eip

[步骤] 文件或目录的监控 (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

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

[内容] Linux 路径变量 ($PATH) 的设置

内容一:临时设置路径变量 ($PATH)

1.1 查看当前路径变量 ($PATH) 值

# echo $PATH

1.2 临时设置路径变量 ($PATH) 值

# export PATH=$PATH:/usr/locar/new/bin

内容二:永久设置路径变量 ($PATH)

2.1 给某个用户设置永久路径变量

2.1.1 切换到要永久设置路径变量 ($PATH)的用户
# su - root

(补充:这里以切换到 root 用户为例)

2.1.2 配置 ~/.bashrc 配置文件
# vim ~/.bashrc

添加以下内容:

......
export PATH=$PATH:/usr/locar/new/bin

(补充: 这里以将路径变量 ($PATH) 设置为 /usr/locar/new/bin 为例)

2.1.3 让路径变量 ($PATH) 设置生效
# source ~/.bashrc

2.2 全局永久设置路径变量

2.2.1 配置 /etc/profile 配置文件
# vim /etc/profile

添加以下内容:

......
export PATH=$PATH:/usr/locar/new/bin

(补充: 这里以将路径变量 ($PATH) 设置为 /usr/locar/new/bin 为例)

2.2.2 让路径变量 ($PATH) 设置生效
# source /etc/profile