![查看所有 Ubuntu Linux 相关常见问题解答](https://www.alaica.com/wp-content/uploads/linux-15.jpg)
ppArmor (“Application Armor”)是Linux 内核的安全模块,集成到内核和 Ubuntu Linux 中。如何在 Ubuntu 或 Novell Suse Enterprise Linux 下禁用 AppArmor 对 mysql 配置文件/服务的保护?
教程详情 | |
---|---|
难度级别 | 中间的 |
根权限 | 是的 |
要求 | Ubuntu/Suse Linux |
美东时间。阅读时间 | 2分钟 |
使用apparmor_status或aa-status命令查看有关当前 AppArmor 策略的各种信息。以 root 用户身份键入以下命令或通过 sudo 命令使用它:
$ sudo apparmor_status
或者
$ sudo aa-status
输出示例:
apparmor 模块已加载。
已加载 6 个配置文件。
6 个配置文件处于强制模式。
/sbin/dhclient
/usr/lib/NetworkManager/nm-dhcp-client.action
/usr/lib/connman/scripts/dhclient 脚本
/usr/sbin/mysqld
/usr/sbin/ntpd
/usr/sbin/tcpdump
0 个配置文件处于投诉模式。
2 个进程已定义配置文件。
2 个进程处于强制模式。
/usr/sbin/mysqld (27816)
/usr/sbin/ntpd (31952)
0 个进程处于抱怨模式。
0 个进程不受限制,但已定义配置文件。
/sys/kernel/security/apparmor/profiles您还可以键入以下命令来查看当前使用文件加载的配置文件的列表:
$ cat /sys/kernel/security/apparmor/profiles
示例输出:
/sys/kernel/security/apparmor/profiles /usr/sbin/mysqld(强制) /usr/sbin/tcpdump(强制) /usr/sbin/ntpd(强制) /usr/lib/connman/scripts/dhclient-script(强制) /usr/lib/NetworkManager/nm-dhcp-client.action(强制) /sbin/dhclient(强制)
所有 apparmor 配置文件传统上都存储在 /etc/apparmor.d/ 目录中的各种文件名下的文件中。
禁用一个配置文件的命令
语法是:
sudo ln -s /etc/apparmor.d/ { profile.name - here } /etc/apparmor.d/disable/sudo apparmor_parser -R /etc/apparmor.d/ { profile.name - name - here }
要禁用名为 mysql 的配置文件,即禁用 mysql 服务器的 apparmore 保护,请输入:
sudo ln -s /etc/apparmor.d/usr.sbin.mysqld /etc/apparmor.d/disable/sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.mysqld
验证 mysqld 保护是否已禁用:
sudo aa-status
示例输出:
apparmor 模块已加载。 已加载 5 个配置文件。 5 个配置文件处于强制模式。 /sbin/dhclient /usr/lib/NetworkManager/nm-dhcp-client.action /usr/lib/connman/scripts/dhclient 脚本 /usr/sbin/ntpd /usr/sbin/tcpdump 0 个配置文件处于投诉模式。 1 个进程已定义配置文件。 1 个进程处于强制模式。 /usr/sbin/ntpd (31952) 0 个进程处于抱怨模式。 0 个进程不受限制,但已定义配置文件。
如何再次打开(启用)mysql的apparmor保护?
键入以下命令:
sudo rm /etc/apparmor.d/disable/usr.sbin.mysqld sudo apparmor_parser -r /etc/apparmor.d/usr.sbin.mysqld sudo aa - status